1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.

Slides:



Advertisements
Similar presentations
COMET Approach for UML Overview
Advertisements

UML an overview.
Chapter 2: Approaches to System Development
Systems Analysis and Design in a Changing World, 6th Edition
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
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,
Unified Modeling Language
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
Object Oriented Analysis and Design
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Systems Analysis and Design in a Changing World, Fifth Edition
Introduction To System Analysis and design
Chapter 2: Approaches to System Development
1 Introduction Chapter 1. 2 Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding the organization.
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Craig Larman’s Applying UML and Patterns: Hands-on Mastery of OOA/D.
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
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
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.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
By: DiGitAll UML an overview. Topics covered in this Session 1. Introducing UML. 2. What constitutes the UML. 3. Concepts of UML.
2 Systems Analysis and Design in a Changing World, Fifth Edition.
1 Introduction to UML. 2 What is UML? UML is an acronym for Unified Modeling Language. Unified –Combines the best from existing object- oriented software.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Systems Analysis and Design in a Changing World, 6th Edition
Dale Roberts Object Oriented Programming using Java - Introduction Dale Roberts, Lecturer Computer Science, IUPUI Department.
Object-Oriented Analysis and Design ธนวัฒน์ แซ่ เอียบ.
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Systems Analysis and Design in a Changing World, 6th Edition
Basic Characteristics of Object-Oriented Systems
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.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
UNIT 1.
Object-Oriented Techniques
Systems Analysis and Design With UML 2
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Chapter 5: Object Oriented Analysis and Design
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Object-Oriented Modeling and Design
System Development Process
Software Architecture & Design Pattern
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Introduction to UML.
Object oriented analysis and design
Object Oriented Analysis and Design
Software Design Lecture : 14.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Presentation transcript:

1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1

Object Oriented Paradigm A set of techniques for analyzing, decomposing, and modularizing software systems Characterized by structuring the system on the basis of its objects rather than the actions it performs

Benefits of OO OO enhances key software quality factors of a system and its constituent components –Correctness –Robustness –Reliability – Extensibility –Reusability –Compatibility (via standard/uniform interfaces) –Maintainable –More?

OOA, OOD, OOP Object-oriented methods may be applied to different phases in the software life- cycle –e.g., analysis, design, implementation, etc. OO analysis (OOA) is a process of discovery –Where a development team models and understands the system and its requirements OO design (OOD) is a process of invention and adaptation –where the development team creates the abstractions and mechanisms necessary to meet the system's behavioral requirements determined during analysis OOP is primarily concerned with programming language and software implementation issues

Object vs. Function Oriented Approach

What is Object Oriented Analysis? The emphasis is on finding and describing the objects (or concepts) in the problem domain. Example: In a Library Information System, some of the concepts include Book, Library, and Patron.

What is Object Oriented Design? The emphasis is defining software objects and how they collaborate to fulfill the requirements. Example: In a Library Information System, a Book software object may have a title attribute and a get Chapter method.

Division between Analysis and Design Fuzzy; A & D activities exist on a continuum Some practitioners can classify an activity as analysis while others put it into design category 8

Summary: OO Analysis and Design The essence of OOAD is to consider a problem domain and logical solution from the perspective of objects (things, concepts, or entities) OO Analysis emphasizes finding and describing the objects – or concepts-in the problem domain OO Design emphasizes defining logical software objects (things, concepts, or entities) that have attributes and methods 9

OOA, OOD, OOP 10

Unified Modeling Language (UML) “A visual language for specifying, constructing and documenting the artifacts of systems” [Booch, Jacobson, Rumbaugh] Uses OO concepts Not a methodology Not a process 11

UML Diagrams Use case diagrams Class diagrams Interaction diagrams: Sequence diagrams, Collaboration diagrams Package diagrams State Machine diagrams Activity diagrams Component diagrams Deployment diagrams 12

Skills to Master 13 “Think in objects” Analyze requirements with use cases Create domain models Apply an iterative & agile process Relate analysis and design artifacts Read and write UML Assign responsibilities to objects Design collaborations Design with patterns Design with architectural layers

14 Harmful is knowing how to read and draw UML diagrams, but not being an expert in design and patterns. Important is object and architectural design skills, not UML diagrams, drawing, or CASE tools.