1/29
Vocabulary terms and definitions from Module II of AED 307 Computer Software Engineering, covering software design, UI paradigms, testing methodologies and levels, documentation, maintenance, and project management tools.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Software Design
A process that transforms user requirements into a suitable form to assist programmers with coding and implementation, defining how to accomplish the goals established in the analysis phase.
Modeling Language
Any artificial graphical or textual language used to express information, knowledge, or systems in a structure governed by a consistent set of rules for interpretation.
User Interface (UI)
The front-end application view that a user interacts with to manipulate and control software and hardware, focused on maximizing user experience.
Command Line Interface (CLI)
A minimal text-based software interface consisting of a command prompt, cursor, and command input, which consumes fewer computer resources than a GUI.
Graphical User Interface (GUI)
An interface providing graphical means for users to interact with and interpret software, often comprising both hardware and software components.
Top-Down Design
A design approach that begins at the uppermost components of a hierarchy and proceeds level by level downward, systematically breaking a problem into smaller, manageable parts.

Structure Chart (Hierarchy Chart)
A top-down hierarchical diagram demonstrating modular decomposition, showing how a high-level system (such as Payroll) breaks down into subordinate modules like Get Data, Calculations, and Output Results.
Modular Development
The process of developing software modules individually and subsequently combining them to form a solution to an overall problem.
Software Testing
An investigation involving the execution of a software component or system to evaluate properties of interest and inform stakeholders about product quality.
Static Testing
A verification approach to software testing that involves reviews, walkthroughs, or inspections without executing the code.
Dynamic Testing
A validation approach to software testing that involves executing programmed code with a specific set of test cases.
White-Box Testing
A testing method (also called glass-box testing) based on knowing the internal structure of the software, utilizing methodologies such as basis path testing and control structure testing.
Black-Box Testing
A testing technique that evaluates software inputs and outputs without knowing its internal structure or implementation, using techniques such as exhaustive, random, and boundary-value testing.
Unit Testing
Component testing that verifies the functionality of a specific section of code, usually at the function level, ensuring individual building blocks work independently.
Integration Testing
Testing aimed at exposing defects in the interfaces and interactions between integrated software components or modules against the software design.
Component Interface Testing
A testing practice used to check the handling of data passed between various units or subsystem components beyond full integration testing.
System Testing
End-to-end testing of a completely integrated system to verify that it satisfies all specified functional and operational requirements.
Bottom-Up Testing
An integrated testing approach where the lowest-level components (modules, procedures, functions) are tested first, integrated, and used to facilitate testing of higher-level components.
Software Security Assessment
The process of evaluating an application to identify potential vulnerabilities, weaknesses, and threats via penetration testing, vulnerability assessments, and security auditing.
Software Maintenance
All modifications and updates performed on a software product following delivery due to market conditions, client requests, host modifications, or organizational changes.
User Documentation
Also called a user guide; step-by-step instructions and tutorials written for both novice and expert users explaining how to use software features.
System Documentation
Documentation that defines the software itself across all four phases of system development, allowing the software to be maintained and modified by outside developers.
Technical Documentation
Documentation describing how software should be installed on clients/servers (installation documentation) and how it should be serviced and updated (service documentation).
Software Project
The complete procedure of software development from requirement gathering to testing and maintenance, executed within a specified timeframe to achieve an intended product.

Project Triangle
A geometric representation of project constraints, showing Scope positioned at the center with directional vectors targeting core project parameters.

Gantt Chart
A project management tool that maps project activities (such as planning, design, coding, testing, and delivery) horizontally against a timeline of time units (such as weeks).

PERT Chart
A project management network diagram representing milestones as numbered circles and activities or tasks as directional arrows between them.

Resource Histogram
A project management bar chart illustrating the required allocation of personnel roles (such as designers, developers, and testers) plotted across days.
Project Scheduling
The roadmap of all project activities arranged in a specified order and assigned time slots, created by breaking tasks down, estimating durations, and allocating work-units.
Project Risk Management
All activities pertaining to identifying, categorizing, managing, and monitoring predictable and unpredictable risks throughout a software project.