04-10-2012, 11:43 AM
Analysis Modeling
Analysis.pdf (Size: 96.59 KB / Downloads: 58)
Requirements Analysis
At a technical level, SE begins with a building
an analysis model of a target system
Requirements analysis
specifies software’s operational characteristics
indicates software's interface with other system
elements
establishes constraints that software must meet
Objectives
To describe what the customer requires
Establish a basis for the creation of a SW design
To define a set of requirements that can be validated
once the software is built
Requirements Analysis
Requirements analysis allows the software engineer
to:
elaborate on basic requirements established during earlier
requirement engineering tasks
see Ch 7. “Requirements Engineering”
build models that depict
user scenarios
functional activities
problem classes and their relationships
system and class behavior
the flow of data as it is transformed.
Rules of Thumb
The model should focus on requirements that are visible within the
problem or business domain.
The level of abstraction should be relatively high.
Each element of the analysis model should
add to an overall understanding of software requirements
provide insight into the
information domain
function of the system
behavior of the system
Delay consideration of infrastructure and other non-functional models
until design.
Minimize coupling throughout the system.
Be certain that the analysis model provides value to all stakeholders.
Keep the model as simple as it can be.
Domain Analysis
Software domain analysis is the identification, analysis, and specification
of common requirements from a specific application domain, typically for
reuse on multiple projects within that application domain . . . [Objectoriented
domain analysis is] the identification, analysis, and specification
of common, reusable capabilities within a specific application domain, in
terms of common objects, classes, subassemblies, and frameworks
Donald Firesmith
Define the domain to be investigated.
Collect a representative sample of applications in the domain.
Analyze each application in the sample.
Develop an analysis model for the objects.
How to Define All Classes
Basic user requirements must be communicated
between the customer and the SW engineer
Classes must be identified
Attributes and methods are to be defined
A class hierarchy is defined
Object-to-object relationships should be represented
Object behavior must be modeled
Tasks 1 through 5 are repeated until the model is
complete