CS487_03_22_10

CS487_03_22_10 - CS487 Software Engineering I OMAR ALDAWUD...

Info iconThis preview shows pages 1–6. Sign up to view the full content.

View Full Document Right Arrow Icon
Software Engineering I CS487 OMAR ALDAWUD 03/22/2010 2010 Illinois Institute of Technology © Architectural Design
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Design Models ¡ Analysis models focus on describing required data, functions, and behavior “WHAT” ¡ Software design deals with HOW the software to be structured ¢ What are the main components ¢ How are these components related to each other ¡ Design models provide details about SW ¢ data structures, database design ¢ Architecture, ¢ Interfaces and ¢ Components of the system ¡ Design Modeling is the last modeling activity ¢ It sets the stage for construction ¡ Design is “ an iterative process through which requirements are translated into a “ blue print ” for Construction Design Models Requirement Specification Document Design Specification Document Components Data Structures GUI Interfaces Architecture Deployment
Background image of page 2
Design Principles ¡ The design should be traceable to the analysis model. ¡ The design should not reinvent the wheel. ¡ The design should be structured to accommodate change . ¡ The design should be structured to degrade gently , even when abnormal data, events, or operating conditions are encountered. ¡ Design is not coding , coding is not design. ¡ New – Design Should be ¢ Easy to understand ¢ Easy to reuse ¢ Easy to change ¢ Easy to code ¢ Easy to test ¢ Easy to integrate Fundamental Concepts ¡ Abstraction What does the object do without any implication on how does it do it ¢ data, procedure, control ¡ Architecture — the overall structure of the software ¡ Patterns —”conveys the essence” of a proven design solution ¡ Modularity — compartmentalization of data and function ¡ Hiding — controlled interfaces ¡ Functional independence — single-minded function and low coupling ¡ Refinement — elaboration of detail for all abstractions ¡ Refactoring — a reorganization technique that simplifies the design
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Data Abstraction is a named collection of data that describes a data object door door door implemented as a data structure manufacturer manufacturer model number model number type type swing direction swing direction weight weight opening mechanism opening mechanism •Abstraction –Denotes the essential characteristics of an object that distinguishes it from all kinds of objects. Procedural Abstraction is a sequence of instructions that have limited and specific function Open open open implemented with a "knowledge" of the object that is associated with enter details of enter details of enter algorithm algorithm repeat until door opens turn knob clockwise; if knob doesn't turn, then take key out; find correct key; insert in lock; endif pull/push door move out of way; end repeat
Background image of page 4
Architecture Is the structure or organization of program components •Manner of interaction •The structure of data that are used by the components Architecture design shows: 1. Structural properties This aspect of the architectural design representation defines: 1. the
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 6
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 36

CS487_03_22_10 - CS487 Software Engineering I OMAR ALDAWUD...

This preview shows document pages 1 - 6. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online