Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

UML an overview.
Object-Oriented Analysis and Design: Object Modeling – Class Diagrams
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Object-Oriented Analysis and Design
Department of Computing
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Chapter 14 (Web): Object-Oriented Data Modeling
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Chapter 4: Object-Oriented Data Modeling
Object-Oriented Analysis and Design: Sequence Diagrams
Chapter 14: Object-Oriented Data Modeling
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Unified Modeling Language
Chapter 14: Object-Oriented Data Modeling
Chapter 13 (Online): Object-Oriented Databases
Systems Analysis and Design in a Changing World, Fifth Edition
Object-Oriented Analysis and Design
Chapter 1: Introduction to Systems Analysis and Design
State diagrams Interaction diagrams –Sequence diagrams –Collaboration diagrams Object orientation Part 4: Dynamic Modeling.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Database Management System Prepared by Dr. Ahmed El-Ragal Reviewed & Presented By Mr. Mahmoud Rafeek Alfarra College Of Science & Technology Khan younis.
Unified Modeling Language, Version 2.0
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Introduction To System Analysis and Design
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
CHAPTER 13 (ONLINE): OBJECT-ORIENTED DATA MODELING © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
1 © Prentice Hall, 2002 Chapter 14: Object-Oriented Data Modeling Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
Systems Analysis & Design 7 th Edition Chapter 5.
© 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 13 (Online): Object-Oriented Data Modeling Modern Database Management 10 th Edition.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Lecture 8 Object-Oriented Analysis and Design 20.1 COSC4406: Software Engineering.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Object-Oriented Data Modeling
 Week08.  Review Schedule Weeks 8-14  This week o Review last class o Introduce Class Diagrams o ICE-03 Sheridan SYST Engineering Quality Systems.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi © 2013 Pearson.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
Basic Characteristics of Object-Oriented Systems
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Appendix 3 Object-Oriented Analysis and Design
Object-Oriented Modeling
Business System Development
The Movement To Objects
Systems Analysis and Design With UML 2
Object-Oriented Analysis and Design: Sequence Diagrams
Business System Development
Lec 3: Object-Oriented Data Modeling
Chapter 20 Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
Chapter 5.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Appendix A Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1

Learning Objectives Key terms Association Class diagram Event Object Object class Operation Sequence diagram State State transition Unified Modeling Language (UML) Use case Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.2

Learning Objectives (continued) Discuss the concepts and principles underlying the object-oriented approach Learn to develop requirements models using use-case diagrams Learn to use class diagrams to develop object models of the problem domain Learn to develop requirements models using state and sequence diagrams Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.3

The Object-Oriented Modeling Approach  Benefits 1.The ability to tackle more challenging problem domains 2.Improved communication among users, analysts, designers, and programmers 3.Reusability of analysis, design, and programming results 4.Increased consistency among the models developed during object-oriented analysis, design, and programming Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.4

Key difference with Procedural Systems Analysis Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Structured programming function Open () lines of codes; function lock () lines of codes; function Close () lines of codes; Procedure: Door Knob Call function Open () Call function lock () Call function Close () Procedure: Car Knob Call function Open () Call function lock () Call function Close () Object oriented programming Class Knobs Object: Door Knobs Function Door. Open() Lines of Codes; Function Door. Lock() Lines of Codes; Function Door. Close() Lines of Codes; Object: Car Knobs Function Car. Open() Lines of Codes; Function Car. Lock() Lines of Codes; Function Car. Close() Lines of Codes; Object Oriented: Better modeling of reality 1.How? 2.At what Cost ? 3.Advantages?

The Object-Oriented Modeling Approach (continued)  Object-Oriented Systems Development Life Cycle  Process of progressively developing representation of a system component (or object) through the phases of analysis, design, and implementation  The model is abstract in the early stages  As the model evolves, it becomes more and more detailed Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.6

The Object-Oriented Systems Development Life Cycle  Analysis Phase  Model of the real-world application is developed showing its important properties  Model specifies the functional behavior of the system independent of implementation details  Design Phase  Analysis model is refined and adapted to the environment  Implementation Phase  Design is implemented using a programming language or database management system Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.7

The Object-Oriented Systems Development Life Cycle (continued)  Unified Modeling Language (UML)  A notation that allows the modeler to specify, visualize and construct the artifacts of software systems, as well as business models  Techniques and notations  Use cases  Class diagrams  State diagrams  Sequence diagrams Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.8

Use-Case Modeling  Applied to analyze functional requirements of the system  Performed during the analysis phase to help developers understand functional requirements of the system without regard for implementation details  Use Case  A complete sequence of related actions initiated by an actor  Actor  An external entity that interacts with the system  Very Similar to DFDs. Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.9

Use-Case Modeling  Use cases represent complete functionality of the system  Use cases may participate in relationships with other use cases  Use cases may also use other use cases Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.10

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.11 Similar to DFDs

Object Modeling: Class Diagrams  Object  An entity that has a well-defined role in the application domain, and has state, behavior, and identity. Objects are instantiations of class.  State  A condition that encompasses an object’s properties and the values those properties have  Behavior  A manner that represents how an object acts and reacts  Object Class  A set of objects that share a common structure and a common behavior Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.12

Object Modeling: Class Diagrams (continued)  Class Diagram  Class is represented as a rectangle with three compartments  Objects can participate in relationships with objects of the same class Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.13

Object Modeling:Object Diagrams  Object Diagram  A graph of instances that are compatible with a given class diagram; also called an instance diagram  Object is represented as a rectangle with two compartments  Operation  A function or service that is provided by all the instances of a class  Encapsulation  The technique of hiding the internal implementation details of an object from its external view Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.14

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.15 Object Diagram with instances of classes Class Diagram with two classes

Representing Associations  Association  A relationship between object classes  Degree may be unary, binary, ternary or higher  Just like your ERDs.  Depicted as a solid line between participating classes  Association Role  The end of an association where it connects to a class  Each role has multiplicity, which indicates how many objects participate in a given association relationship Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.16

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.17 Binary Unary Ternary

Representing Generalization  Generalization  Abstraction of common features among multiple classes, as well as their relationships, into a more general class  Subclass  A class that has been generalized  Superclass  A class that is composed of several generalized subclasses. Consultants and managers are grouped as employees.  Graduate and Undergraduate students are grouped as students. Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.18

Representing Generalization (continued)  Discriminator  Shows which property of an object class is being abstracted by a generalization relationship  Inheritance  A property that a subclass inherits the features from its super-class  Abstract Class  A class that has no direct instances but whose descendents may have direct instances. Employees  Regular and Hourly. Students  Grad and undergrads/  Concrete Class  A class that can have direct instances. Employees  CEO Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.19

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.20 Abstract patient Class with two concrete classes Employee Super class and three subclasses

Representing Aggregation  Aggregation  A part-of relationship between a component object and an aggregate object  Example: Personal computer  Composed of CPU, Monitor, Keyboard, etc. Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.21

Dynamic Modeling: State Diagrams  State  A condition during the life of an object during which it satisfies some conditions, performs some actions or waits for some events  Shown as a rectangle with rounded corners  State Transition  The changes in the attributes of an object or in the links an object has with other objects  Shown as a solid arrow  Diagrammed with a guard condition and action  Event  Something that takes place at a certain point in time Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.22

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.23 State Transition Diagram

Dynamic Modeling: Sequence Diagrams  Sequence Diagram  A depiction of the interaction among objects during certain periods of time  Activation  The time period during which an object performs an operation  Messages  Means by which objects communicate with each other Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.24

Dynamic Modeling: Sequence Diagrams (continued)  Synchronous Message  A type of message in which the caller has to wait for the receiving object to finish executing the called operation before it can resume execution itself  Simple Message  A message that transfers control from the sender to the recipient without describing the details of the communication Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.25

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.26

Moving to Design  Start with existing set of analysis model  Progressively add technical details  Design model must be more detailed than analysis model  Component Diagram  A diagram that shows the software components or modules and their dependencies  Deployment Diagram  A diagram that shows how the software components, processes and objects are deployed into the physical architecture of the system Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.27

Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.28

Summary  Object-Oriented Modeling Approach  Benefits  Unified Modeling Language  Use cases  Class diagrams  State diagrams  Sequence diagrams  Use Case Modeling Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.29

Summary (continued)  Object Modeling: Class Diagrams  Associations  Generalizations  Aggregation  Dynamic Modeling: State Diagrams  Dynamic Modeling: Sequence Diagrams  Moving to Design Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall A.30