Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 12.1 © The McGraw-Hill Companies, 2002 1 CS 4310: Software Engineering Lecture 7 Systems Analysis Object-Oriented Design.

Similar presentations


Presentation on theme: "Slide 12.1 © The McGraw-Hill Companies, 2002 1 CS 4310: Software Engineering Lecture 7 Systems Analysis Object-Oriented Design."— Presentation transcript:

1 Slide 12.1 © The McGraw-Hill Companies, 2002 1 CS 4310: Software Engineering Lecture 7 Systems Analysis Object-Oriented Design

2 Slide 12.2 © The McGraw-Hill Companies, 2002 2 2 Project Work Requirements Document  Done! Perform Systems Analysis Create Analysis Document Create Design Document Create Prototype Project Done!

3 Slide 12.3 © The McGraw-Hill Companies, 2002 3 3 Analysis Specification Document Page 46 of the Class Notes The Analysis Document Contains –1. Introduction section »Specific Project Objectives »Overall Requirements Description »Project Constraints and Assumptions –2. Functional Requirements »ERD »DFD »Process Descriptions »Design Specification Description »Performance and Reliability Requirements »UML Diagrams (Component Diagrams) »Test Plan

4 Slide 12.4 © The McGraw-Hill Companies, 2002 4 4 Structure Analysis Phase Previously Covered… Entity Relations shown in ERD format Data Flow shown in DFD format Data, Actions and Entities are separated for clarity

5 Slide 12.5 © The McGraw-Hill Companies, 2002 5 5 Structure Analysis vs. Object-Oriented Design Object Oriented Analysis and Design –Uses Structured Analysis »Uses visual representation similar to Structured Analysis »Diagramming builds from ERD and DFD concepts –Easy to learn –UML standards use common sense

6 Slide 12.6 © The McGraw-Hill Companies, 2002 6 6 Object-Oriented Analysis Phase Object-Oriented Design Methodology –Reaction to perceived shortcomings in structured analysis –The problem of larger products –Data and action are treated as equal partners

7 Slide 12.7 © The McGraw-Hill Companies, 2002 7 7 Object-Oriented Analysis Object consists of –Data (attributes, state variables, instance variables, fields, data members), and –Actions (methods, member functions) Objects are independent units –Conceptual independence –Physical independence

8 Slide 12.8 © The McGraw-Hill Companies, 2002 8 8 Different OO Methods Many different methods exist –Booch –OMT –Objectory –Shlaer-Mellor –Coad-Yourdon All are essentially equivalent Nowadays, we represent OOA using UML (Unified Modeling Language)

9 Slide 12.9 © The McGraw-Hill Companies, 2002 9 9 The Three Steps of OOA 1.Use-case modeling –Determine how the various results are computed by the product (without regard to sequencing) –Largely action-oriented 2.Class modeling (“object modeling”) –Determine the classes and their attributes –Purely data-oriented 3.Dynamic modeling –Determine the actions performed by or to each class –Purely action-oriented The process is iterative

10 Slide 12.10 © The McGraw-Hill Companies, 2002 10 Elevator Problem: OOA 1. Use-Case Modeling –Use case: Generic description of overall functionality –Scenario: Instance of a use case Get comprehensive insight into behavior of product

11 Slide 12.11 © The McGraw-Hill Companies, 2002 11 Use CASE Scenario

12 Slide 12.12 © The McGraw-Hill Companies, 2002 12 Class Modeling Extract classes and their attributes Represent them using an entity-relationship diagram Deduce the classes from use cases and their scenarios Often there are many scenarios

13 Slide 12.13 © The McGraw-Hill Companies, 2002 13 Two Approaches to Class Modeling Noun extraction –Always works CRC cards –Need to have domain expertise

14 Slide 12.14 © The McGraw-Hill Companies, 2002 14 Noun Extraction Concise Problem Definition –Define product in single sentence »Buttons in elevators and on the floors control the motion of n elevators in a building with m floors.

15 Slide 12.15 © The McGraw-Hill Companies, 2002 15 Noun Extraction Identify nouns in the informal strategy Nouns –button, elevator, floor, movement, building, illumination, request, door –floor, building, door are outside problem boundary — exclude –movement, illumination, request are abstract nouns — exclude (they may become attributes) Create classes: Elevator and Button

16 Slide 12.16 © The McGraw-Hill Companies, 2002 16 First Iteration of Class Diagram Problem –Buttons do not communicate directly with elevators –We need an additional class: Elevator Controller

17 Slide 12.17 © The McGraw-Hill Companies, 2002 17 Second Iteration of Class Diagram

18 Slide 12.18 © The McGraw-Hill Companies, 2002 18 Third Iteration of Class Diagram

19 Slide 12.19 © The McGraw-Hill Companies, 2002 19 Why is Iteration Needed? Perhaps the method is not yet mature? –Waterfall model (explicit feedback loops) –Rapid prototyping model (aim: to reduce iteration) –Incremental model (explicit iterative approach) –Spiral model (explicit iterative approach) Iteration is a property of all software production –Especially for medium- and large-scale products –Expect iteration in the object-oriented paradigm

20 Slide 12.20 © The McGraw-Hill Companies, 2002 20 CRC Cards Used since 1989 for OOA For each class, fill in card showing –Name of Class –Functionality (Responsibility) –List of classes it invokes (Collaboration) Strength –When acted out by team members, CRC cards are a powerful tool for highlighting missing or incorrect items Weakness –Domain expertise is needed

21 Slide 12.21 © The McGraw-Hill Companies, 2002 21 Example CRC Cards

22 Slide 12.22 © The McGraw-Hill Companies, 2002 22 Dynamic Modeling Produce UML state diagram State, event, predicate are distributed over the state diagram

23 Slide 12.23 © The McGraw-Hill Companies, 2002 23 State Diagram

24 Slide 12.24 © The McGraw-Hill Companies, 2002 24 Modeling Tools SmartDraw, 30-day trial version is available for FREE: http://www.smartdraw.com/ Microsoft Visio System Architect CASE Tools Many other drawing tool

25 Slide 12.25 © The McGraw-Hill Companies, 2002 25 SmartDraw Software Design Option 1 2 3

26 Slide 12.26 © The McGraw-Hill Companies, 2002 26 SmartDraw Components & Symbols

27 Slide 12.27 © The McGraw-Hill Companies, 2002 27 Project Work Work in your teams to create your Analysis Document Your Analysis Document is due very soon! Next time we will discuss UML and OOD in more detail.


Download ppt "Slide 12.1 © The McGraw-Hill Companies, 2002 1 CS 4310: Software Engineering Lecture 7 Systems Analysis Object-Oriented Design."

Similar presentations


Ads by Google