chapter 6: structured vs. object oriented analysis and design

15
1 Chapter 6: Structured Vs. Object Oriented Analysis and Design

Upload: alair

Post on 14-Jan-2016

243 views

Category:

Documents


8 download

DESCRIPTION

Chapter 6: Structured Vs. Object Oriented Analysis and Design. Why do we need Modelling ”Blue prints” ? Object Oriented Analysis and Design (OOAD) vs. Structured Oriented Analysis and Design (SAD). Steps to SAD and OOAD . O bject O riented A nalysis and D esign - OOAD . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

1

Chapter 6: Structured Vs. Object Oriented Analysis and Design

Page 2: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

2

Overview

Why do we need Modelling ”Blue prints” ?

Object Oriented Analysis and Design (OOAD) vs. Structured

Oriented Analysis and Design (SAD).

Steps to SAD and OOAD.

Object Oriented Analysis and Design - OOAD.

Unified Modelling Language - UML.

Page 3: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

3

By the end of this chapter, you will..

Understands what Structured Analysis and Design is.

Understands what Object Oriented Analysis and Design is.

Understands what is Unified Modeling Language “UML” and the UML models.

Distinguishes between the analysis oriented and design oriented.

Page 4: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

4

The Need for Software Blueprints

Knowing an object-oriented language and having access to a library is necessary but not sufficient in order to create object software.

In between a nice idea and a working software, there is much more than programming.

Analysis and design provide software “blueprints”, illustrated by a modeling language.

Blueprints serve as a tool for thought and as a form of communication with others.

These blueprints can then be transferred into code using any specific OO language.

Page 5: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

5

Object Oriented Analysis and Design (OOAD) Vs. Structured Analysis and Design (SAD)

OO Analysis expresses Requirements and Specs expressed as

Population of interacting objects of a system

as opposed to

The traditional data or functional views.

Page 6: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

6

OOAD Vs. SAD

OOAD SAD

Page 7: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

7

OOAD Vs. SAD

• Structured Analysis• Divide and Conquer• At the function level

• Object-Oriented Analysis• Partition• At the level of concepts (objects)

Page 8: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

8

OOAD Vs. SAD

Page 9: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

9

Structured Approach

•Use Case Diagram•Context level DFD•Level-0 DFD•Subsequent levels DFDs •ER Diagram if needed•DB Schema & Dictionary•Architectural Design•Structured Tables/Decision Trees/Flowcharts ( for major processes only) (Component Design)•Interface design

Object-Oriented Approach

•Use-case Diagram•Use-cases’ descriptions (expanded for major use cases only)•Conceptual Diagram•Sequence Diagrams•Class Diagram•ER Diagram if needed•DB Schema & Dictionary •Architectural Design•Pseudo code/Algorithms/Flowcharts (Component Design)•Interface design

OOAD Vs. SAD

Page 10: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

10

Object Oriented Analysis

OOAD essential for creating well-designed, robust & maintainable software system using OO Programming Language (e.g. C++, Java, smalltalk, etc…).

It is the latest and most used way of design now.

UML (Unified Modeling Language) is a modeling language for OOS.

An investigation of the problem (rather than how a solution is defined).

During OO analysis, there is an emphasis on finding and describing the objects (or concepts) in the problem domain.

Example: Concepts in a Library Information System include; Book and Catalog.

Page 11: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

11

Object Oriented Design

Emphasizes a conceptual solution that fulfills the requirements specified in the analysis.

Need to define software objects and how they collaborate to fulfill the requirements.

Designs are implemented in a Programming Language. Example: in the Library Information System, a Book software object may

have a title attribute and a display() method. And implemented using any OO programming language; e.g. Java.

Page 12: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

12

From Analysis to Implementation

Domain ConceptEx: Book (Concept)

Logical Software Objects Representation in anOO Programming Language

Public Class Book { Private String Title; Public void Display();}

Book

Attribute: Title

Method: Display()

Book

Attribute: Title

Method: Display()

Page 13: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

13

Unified Modeling Language

A notational system aimed at modeling systems using object oriented concepts.

Page 14: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

14

Steps to OOAD

Page 15: Chapter 6:  Structured Vs.  Object Oriented Analysis and Design

15

Analysis and Design Activities

Analysis Oriented

WhatRequirementsInvestigation of Domain

Design Oriented

HowLogical Solution