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

Slides:



Advertisements
Similar presentations
Object-Oriented Software Engineering Visual OO Analysis and Design
Advertisements

7M701 1 Information Systems Modelling and Design with.
Object-Oriented Analysis and Design Introduction 1.
Chap 1 UML vs Thinking in Objects! – Visual modeling Learning UML – Look at the book examples – Alan Holub’s UML reference card – Use library resources.
Object-Oriented Analysis and Design
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
System Modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with customers. Different.
Unified Modeling Language
Object-Oriented Analysis and Design
Introduction To System Analysis and Design
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Object Oriented Analysis and Design
1 UML – an overview What is UML? UML stands for Unified Modelling Language. ”The Unified Modelling Language is a visual language for specifying, constructing.
CS 425/625 Software Engineering System Models
7M822 UML Introduction 7 September 2010.
NJIT 1 Domain Model Visualizing Concepts Chapter 9 Applying UML and Patterns Craig Larman.
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Object Oriented Analysis and Design Using the UML
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Introduction To System Analysis and design
Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
CS212: Object Oriented Analysis and Design Lecture 1: Introduction.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Unified Modeling Language, Version 2.0
Introduction To System Analysis and Design
Object-Oriented Analysis and Design An Introduction.
Object-Oriented Analysis and Design Lecture 1 Instructor: John Cole 1Object-Oriented Analysis and Design - Intro.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Object-Oriented Analysis and Design NGSSC Object-Oriented Scientific Programming, June 2012.
Systems Analysis and Design in a Changing World, 3rd Edition
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Object-Oriented Analysis and Design Fall 2009.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
Chapter 1 Applying UML and Patterns. The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary.
DOMAIN MODEL: ADDING ATTRIBUTES Identify attributes in a domain model. Distinguish between correct and incorrect attributes.
Object-Oriented Analysis and Design ธนวัฒน์ แซ่ เอียบ.
Copyright ©2004 Cezary Z Janikow 1 OOAD Overview n OO language – Necessary for OO systems? – Sufficient for OO systems? Owning a hummer doesn’t make you.
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
Design. 2 The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary but not sufficient in order.
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
1 Unified Modeling Language Michael K. Wildes University of California, Riverside – Extension Program Presentation 2.
Rational Rose For System Design What is Rational Rose? Rational Rose is the visual modeling software solution that lets you create, analyze, design,
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Introduction to the Unified Modeling Language.
Object Oriented Analysis & Design By Rashid Mahmood.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
Main issues: • What do we want to build • How do we write this down
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Chapter 5: Object Oriented Analysis and Design
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
System Development Process
The Object Oriented Approach to Design
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Chap 1 UML vs Thinking in Objects! Learning UML Visual modeling
Object Oriented Analysis and Design
2D1359 & 2D1360 : Object Oriented Modeling, Programming & Analysis
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Presentation transcript:

Chapter 6: Structured Vs. Object Oriented Analysis and Design

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.

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.

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.

Object Oriented Analysis and Design (OOAD) Vs 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.

OOAD Vs. SAD OOAD SAD Library System Record Loans Add Resource Report Fines OOAD SAD Catalog Librarian Book Library

OOAD Vs. SAD Structured Analysis Divide and Conquer At the function level Object-Oriented Analysis Partition At the level of concepts (objects)

OOAD Vs. SAD

OOAD Vs. SAD Structured Approach Use Case Diagram Context level 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

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.

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.

Logical Software Objects From Analysis to Implementation Analysis Investigation of the problem Design Logical Solution Construction Code Representation in an OO Programming Language Public Class Book { Private String Title; Public void Display(); } Logical Software Objects Domain Concept Ex: Book (Concept) Book Attribute: Title Method: Display()

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

3-Collaboration Diagrams Steps to OOAD 1-Define use cases 2-Conceptual Model 3-Collaboration Diagrams 4-Design Class Diagram

More Analysis Oriented Analysis and Design Activities More Analysis Oriented More Design Oriented Design Oriented How Logical Solution Analysis Oriented What Requirements Investigation of Domain