Phases, Requirements Analysis, Software Design, Implementation Coding,
Testing Strategies, Black-Box Testing, White-Box Testing, Software Maintenance
Types, Waterfall Model Development, Artifact Documentation, Inspection
Techniques, Unit Testing, System Testing, Corrective Perfective Adaptive
Preventive Maintenance, Activity Diagrams, Pseudocode Algorithms, Software
Design Goals, Correctness Robustness Flexibility Reusability Efficiency Reliability
Usability, Architectural Styles, System Decomposition Methods, Functional
Feature Data Process Event Object-Oriented Decomposition, Modular Software
Architecture, Component-Based Software Engineering, Design Principles
Modularity Interfaces Information Hiding Incremental Development Generality,
Cohesion and Coupling Concepts, Content Common Control Stamp Data
Coupling, Coincidental Logical Procedural Communicational Functional
Cohesion, Uses Relations and Uses Graphs, Fan-In and Fan-Out Dependencies,
Object-Oriented Design, Classes Abstract Classes Constructors Attributes
Methods Inheritance, and Incremental Development Exam Questions Verified
and Provided with Complete A+ Graded Rationales Latest Updated 2026
Software Process
A procedure followed by the development team to develop an application.
Phases of Software Process
1. Requirements Analysis
2. Design
3. Implementation
,4. Testing
5. Maintenance
Requirements Analysis
The process of understanding what's needed or wanted, and expressing the results in writing.
Design
The creative process of figuring out HOW to implement all the customer's requirements
Implementation
Phase where the code is written.
Testing
Phase consists of supplying input to the application and comparing the output with that
mandated by the software requirements specification.
Black-Box
Testing that compares the output given by the system
, White-Box
Testing that is based on the design
Maintenance
Phase that refers to the work performed on the application that occurs after it has been
delivered.
Types of Maintenance
1. Corrective
2. Perfective
3. Adaptive
4. Preventive
Waterfall Model
Basic software process in which requirements analysis, design, coding, testing, and maintenance
are performed in sequence, but with some overlap.
Disadvantages of Waterfall Model
1. Don't know up front everything wanted and needed
2. We often need to execute intermediate builds
3. Team members can't be idle while the requirements are being completed