Software design - Lecture 5. The main topics covered in this chapter include: introduction to software design; software design in a nutshell; importance of software design; software design activities; architectural design; preliminary design;...
Trang 1Lecture : 5
Trang 3Introduction to Software Design
Trang 4Ø Structures are the most stable things in your
system
ü They have to hold even after years.
• System design
ü L ays down a structure for the system
ü Divides the future system in parts which can be
ü If you do it right, you are awarded with further abstraction
Trang 5Importance of Software Design
Trang 6Ø Design
“The process of defining the architecture,
components, interfaces, and other characteristics of a system or
component.”
Trang 7“The process of defining a collection of hardware and software components and their interfaces to establish the framework for the development of a computer
system”
• IEEE Standard
Trang 8“The process of analyzing design alternatives and defining the architecture, components, interfaces, and timing and sizing estimates for a system or
component.”
Trang 9“ The process of refining and expanding the preliminary design of a system or component to the extent that the design is sufficiently complete to be implemented”
Trang 10ü Hierarchical decomposition of the system into
subsystems
ü Determine components and assign to subsystems
ü Determine relationships between components
Trang 11“The software architecture of a program or computing
system is the structure or structures of the system, which
comprise software elements, the externally visible
properties of those elements, and the relationships among
them “
From :Bass, L., Clements, P., Kazmann, R. (2003): Software
Architecture in Practice, 2nd Edition, AddisonWesley
Trang 12Evolution
Ø “A program that is used as an implementation of software specification reflects some reality,
undergoes continual change or becomes
progressively less useful.”
Result:
The System will change (or it will vanish)
Trang 13Engineering
Ø “No matter where you are in the system life
cycle, the system will change and the desire to change it will persist throughout the life cycle.”
Result:
The System will change even at development stage
Trang 15Design Metaphor