190 likes | 377 Views
Chapter 6: Structured Vs. Object Oriented Analysis and Design. Why do we need Modelling “ blueprints ” ? 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 .
E N D
Chapter 6: Structured Vs. Object Oriented Analysis and Design
Why do we need Modelling “blueprints”? • Object-OrientedAnalysis 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. Overview
Understands whatStructured Analysis and Design is. • Understands whatObjectOriented Analysis and Design is. • Understands what is UnifiedModelingLanguage“UML”and the UML models. • Distinguishes between the analysis oriented and design oriented. By the end of this chapter, you will..
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 morethanprogramming. • Analysis and design provide software “blueprints”, illustrated by a modelinglanguage. • 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 OOlanguage. The Need for Software Blueprints
Object-Oriented Analysis is built around objects. • An object encapsulates both data and behavior • OO approach is used for both data modeling and process modeling. • OOAnalysis expresses requirements and specifications as population of interacting objects of a system • Traditional Structured Analysis separates data from behavior • It expresses requirements and specifications using the traditional data or functional views. Object Oriented Analysis and Design (OOAD) Vs. Structured Analysis and Design (SAD)
End of the lecture, see you next one Management of Information Security, 3rd Edition
OOAD SAD • Partition at the level of concepts (objects) • Divide at the function level OOAD Vs. SAD
OOAD Vs. SAD tools • 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 essential for creating well-designed, robust & maintainablesoftware system using OO ProgrammingLanguage (e.g. C++, Java, Smalltalk, etc…). • It is the latest and most used way of design now. • UML (Unified Modeling Language) is a modelinglanguage 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. Object Oriented Analysis
Emphasizes a conceptualsolution that fulfills the requirements specified in the analysis. • Need to define software objectsandhowtheycollaborate to fulfill the requirements. • Designs are implemented in a ProgrammingLanguage. • Example: in the Library Information System, a Book software object may have a titleattribute and a display() method. And implemented using any OO programming language; e.g. Java. Object Oriented Design
Book Attribute: Title Method: Display() From Analysis to Implementation
A notationalsystem aimed at modelingsystems using object-orientedconcepts. Unified Modeling Language