C++ Plus Data Structures. Nell Dale Chapter 1 Software Engineering Principles Modified from the Slides made by Sylvia Sorkin, Community College of Baltimore County - Essex Campus. Software Design Process. Programming Life Cycle Activities. Problem analysis understand the problem
Software Engineering Principles
Modified from the Slides made by Sylvia Sorkin, Community College of Baltimore County - Essex Campus
Detailed Program Specification
Detailed Program Specification Includes:
PURPOSE: To prevent high-level designs from depending on low-level design details that may be changed.
objects composed of
data and operations,
that can be used
together to solve
intomore easily handled
be coded.Two Approaches to Building Manageable Modules
FOCUS ON: processes FOCUS ON: data objects
AverageFunctional Design Modules
A technique for developing a program in which the solution is expressed in terms of objects -- self- contained entities composed of data and operations on that data.
“Read the specification of the software you want to build. Underline the verbs if you are after procedural code, the nouns if you aim for an object-oriented program.”
Brady Gooch, “What is and Isn’t Object Oriented Design,” 1989.
DATA SET 2
DATA SET 3Program Testing
DATA SET 4
. . .
Various Types of Errors:
studentCount is greater than 0
sum is assigned && count > 0
response has value ‘y’ or ‘n’
partNumber == 5467
FOR EXAMPLE . . .
Ensures individual modules
work together correctly,
beginning with the
Ensures correct overall
USES: placeholder USES: a test driver to call
module “stubs” to test the functions being tested.
the order of calls.