By Roger S. Pressman and Bruce R. Maxim: Software Engineering: A Practitioner's Approach, 8/e
By Roger S. Pressman and Bruce R. Maxim: Software Engineering: A Practitioner's Approach, 8/e
By Roger S. Pressman and Bruce R. Maxim: Software Engineering: A Practitioner's Approach, 8/e
scenario- based
elements
use-cases - text
use-case diagrams
activity diagrams
swim lane diagrams
Analysis Model
class- based
elements
class diagrams
analysis packages
CRC models
collaboration diagrams
f low- oriented
elements
behavioral
elements
state diagrams
sequence diagrams
Design Model
QUALITY GUIDELINES
DESIGN PRINCIPLES
FUNDAMENTAL CONCEPTS
DATA ABSTRACTION
ARCHITECTURE
The overall structure of the software and the ways in which
that structure provides conceptual integrity for a system.
[SHA95a]
Structural properties. This aspect of the architectural design
representation defines the components of a system (e.g., modules,
objects, filters) and the manner in which those components are
packaged and interact with one another. For example, objects are
packaged to encapsulate both data and the processing that
manipulates the data and interact via the invocation of methods
Extra-functional properties. The architectural design description
should address how the design architecture achieves requirements for
performance, capacity, reliability, security, adaptability, and other
system characteristics.
PATTERNS
Design Pattern Template
SEPARATION OF CONCERNS
MODULARITY
Functional Independence
ASPECTS
AspectsAn Example
REFACTORING
OO DESIGN CONCEPTS
Design classes
Entity classes
Boundary classes
Controller classes
Inheritanceall responsibilities of a superclass is immediately
inherited by all subclasses
Messagesstimulate some behavior to occur in the receiving
object
Polymorphisma characteristic that greatly reduces the effort
required to extend the design
DESIGN CLASSES
Data elements
o Data model --> data structures
o Data model --> database architecture
Architectural elements
o Application domain
o Analysis classes, their relationships, collaborations and
behaviors are transformed into design realizations
o Patterns and styles (Chapters 9 and 12)
Interface elements
o the user interface (UI)
o external interfaces to other systems, devices, networks or
other producers or consumers of information
o internal interfaces between various design components.
Component elements
Deployment elements
DATA MODELING
WHAT IS A RELATIONSHIP?
ARCHITECTURAL ELEMENTS
COMPONENT ELEMENTS
DEPLOYMENT ELEMENTS