Tải bản đầy đủ (.pdf) (17 trang)

Software design: Lecture 5 - Sheraz Pervaiz

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (562.61 KB, 17 trang )

1

Software Design

Lecture : 5


2


3

Introduction to Software Design


4

Software Design in a Nutshell
Ø

Structures are the most stable things in your 
system
ü



They have to hold even  after years.

System design

ü



 Lays down a structure for the system

ü

 Divides the future  system  in parts which can be


5

Importance of Software Design


6

Software Design Activities
Ø

Design

“The process of defining the architecture, 
components, interfaces, and other 
characteristics of a system or
component.”


7

Architectural design
“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”


8

Preliminary design
“The process of analyzing design alternatives and 
defining the architecture, components, interfaces, 
and timing and sizing estimates for a system or 
component.”


9

Detailed design
“ 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”


10

Overall Design Activities
High level Design / Architectural Design

ü

Hierarchical decomposition of the system into


    subsystems
ü

 Determine components and assign to subsystems

ü

 Determine relationships between components


11

Software Architecture
“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, Addison­Wesley


12

Lehman‘s First Law of Software 
Evolution
Ø


“A program that is used  as an implementation of 
 software specification reflects some reality, 
undergoes continual change or becomes 
progressively less useful.”

Result:


13

Bersoff‘s First Law of System 
Engineering
Ø

“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:


14

Cost of Bad Design


15

Design Metaphor



16


17



×