1. Trang chủ
  2. » Công Nghệ Thông Tin

Software design: Lecture 6 - Sheraz Pervaiz

21 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 414,55 KB

Nội dung

Software design - Lecture 6. The main topics covered in this chapter include: software design components; traditional approach, programmers approach, system architect approach; decomposition rules; layers rule;...

1 Software Design Lecture : 6 Software Design Components Ø Principle  Ø Criteria Ø Techniques Myth about Abstraction Problem Statement ü Our  task  is  to  design  an  management  information  system  for  a  hospital,  it  should  include  patient  management  ,  management,  laboratory  doctors  management  inventory of equipment and  medicines,  ,  Traditional Approach ü Programmers Approach: Ø ‘Which Technology to use for implementation ‘ ü System Architect Approach ü Abstraction What to Do not How to do !! ü  A view of an object that focuses on the  information relevant to a particular purpose and  ignores the remainder of the information IEEE Standard 610.12­1990 ü  Abstraction is generally used for handling and     reducing complexity Abstraction continue ü Abstraction is simply removal of unnecessary  details ü To design a complex system, you must identify  what about that part other parts should know in  order to design their part Benefits of Abstraction ü Gives the designer freedom to ignore certain  details, for the time being, and to determine or  design the "big picture" aspects of his design Decomposition ü Splitting one system into smaller components  ü  Designing the components independently ü  For the outside world the components are  reduced to their interfaces ü  “Divide and Conquer” 10 Decomposition Rules ü Don't design components to correspond to  execution    steps – look for similar tasks – No Run­time  binding ü Decompose  so  that all design decision have a 11 Decomposition continues ü  Components should be specified by all  information  needed to use the component –  nothing less and  nothing more! 12 Subsystems A Subsystem is a secondary or subordinate  system within a  system IEEE Standard 610.12­1990 13 Subsystems Ø A subsystem is a functionally cohesive grouping of classes  that is a major part of a larger aggregate system Ø Can be independently ordered, configured or delivered Ø Subsystems are related to each other via dependency  relations, and communicate with each other via well­ defined interfaces 14 Subsystems Ø Decompose by  functional services i­e Database  Subsystem,  User Interface Subsystem etc 15 16 Subsystem Example Student  Management Hrm and Payroll Accounts Library  Management 17 Layers ü Decomposition of the system into smaller, more manageable units, that are layered hierarchically   Ø Each layer supplies one level of abstraction Ø  A layer only uses services of the next underlying layer ü  Layers can be tested independently 18 19 20 Layers Rule ü ü Layer can request for services from exactly one  layer below it Layer can respond to a request of a layer exactly  one layer above it ü Total Layers = N = 3 ü Request = N­1 ü Response = N+ 1 21 Layer Rule High Level Architectural Diagram Services Layers Request Operations Layers Response Student Data Management ...2 Software? ?Design Components Ø Principle  Ø Criteria Ø Techniques Myth about Abstraction Problem Statement... information relevant to a particular purpose and  ignores the remainder of the information IEEE Standard? ?61 0.12­1990 ü  Abstraction is generally used for handling and     reducing complexity Abstraction continue... 12 Subsystems A Subsystem is a secondary or subordinate  system within a  system IEEE Standard? ?61 0.12­1990 13 Subsystems Ø A subsystem is a functionally cohesive grouping of classes  that is a major part of a larger aggregate system

Ngày đăng: 05/07/2022, 13:58

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN