Transcript Slide 1
Object Oriented Methodologies
Week04
Jerry Kotuba SYST39409-Object Oriented Methodologies 1
Agenda
Schedule Review Solution for ICE-02 Notation (start/end) Orthogonal Lines File type pdf or docx only Recap last class Use Cases Discovery Narratives Activity Diagrams Packages Class Diagrams Jerry Kotuba SYST39409-Object Oriented Methodologies 2
Events and Use Cases
Use case Activity the system carries out Entry point into the modeling process Discovery Techniques Event decomposition User goal CRUD Elementary business processes (EBPs) Basic unit of analysis Initiated by event occurring at specific time and place Discrete system response that adds business value Jerry Kotuba SYST39409-Object Oriented Methodologies 3
Use Cases - Analysis
Identify
User goals Event tables CRUD
Summarize
Use Case Diagram
Describe
Narratives Jerry Kotuba Activity Diagram(workflow) SYST39409-Object Oriented Methodologies 4
Final Word on Use Cases
Large software projects usually organized into packages.
Package is a placeholder
Each package contains a set of use cases for handling a certain type of business activity.
E.g. Supply Chain Management System Warehouse & Shipping Order Processing Accounting Inventory Management Jerry Kotuba SYST39409-Object Oriented Methodologies 5
Suppliers Customers Methods & Applications 6
Inter- Intra Company
E-business Supply Chain Management External Services 3 rd Party Packaged Application New Applications Customer Relationship Management E-commerce Methods & Applications
Legacy Applications
7
Jerry Kotuba SYST39409-Object Oriented Methodologies 8
Example without Package Notation Jerry Kotuba SYST39409-Object Oriented Methodologies 9
Example using Package Notation Jerry Kotuba SYST39409-Object Oriented Methodologies 10
Class Diagrams- Objectives
Identify and analyze the objects and object-classes needed in a system Learn how to identify and represent relationships between object classes.
Learn how to identify and create super/subclass relationships 11 Jerry Kotuba SYST39409-Object Oriented Methodologies
Problem Domain Classes
Problem domain Abstraction ”Real World” to “Data world” Set of work related “things” in system component Things have data representation within system Examples: products, orders, invoices, customers OO approach to things in problem domain Objects that interact in the system Identify and understand things in problem domain Key initial steps in defining requirements Jerry Kotuba SYST39409-Object Oriented Methodologies 12
Types of Things
Things can be identified with methodology Separate the tangible from the intangible Include information from all types of users Ask important questions about nature of event “What actions upon things should be acknowledged and recorded by the system?” Jerry Kotuba SYST39409-Object Oriented Methodologies 13
Jerry Kotuba SYST39409-Object Oriented Methodologies 14
Procedure for Developing an Initial List of Things
Perform Textual Analysis List nouns users mention when discussing system Event table as source of potential things Use cases, external agents, triggers, response Select nouns with questions concerning relevance Jerry Kotuba Further research may be needed SYST39409-Object Oriented Methodologies 15
Pharmacy System Example
Jerry Kotuba SYST39409-Object Oriented Methodologies 16
Associations among Things
Analyst document entity associations ( relationships) Example: “Is placed by” and “works in” Associations apply in two directions Customer places an order An order is placed by a customer Multiplicity: the number of associations One to one or one to many The associations between types of things Unary (recursive), binary, n-ary Jerry Kotuba SYST39409-Object Oriented Methodologies 17
Jerry Kotuba Associations Naturally Occur between Things SYST39409-Object Oriented Methodologies 18
Jerry Kotuba Multiplicity of Relationships SYST39409-Object Oriented Methodologies 19
Attributes of Things
Specific details of things are called attributes Analyst should identify attributes of things Identifier (key): attribute uniquely identifying thing Examples: Social Security number, vehicle ID number, or product ID number Compound attribute is a set of related attributes Example: multiple names for the same customer Jerry Kotuba SYST39409-Object Oriented Methodologies 20
Jerry Kotuba SYST39409-Object Oriented Methodologies 21
Classes and Objects
Domain model class diagram as UML class OOA applies domain model class diagram to things Problem domain objects have attributes Software objects encapsulate attributes and behaviors Behavior: action that the object processes itself Software objects communicate with messages Information system is a set of interacting objects Jerry Kotuba SYST39409-Object Oriented Methodologies 22
Jerry Kotuba SYST39409-Object Oriented Methodologies 23
Jerry Kotuba SYST39409-Object Oriented Methodologies 24
Jerry Kotuba SYST39409-Object Oriented Methodologies 25
Exercises No 1 to No 3
To be done in class for illustration and practice
Jerry Kotuba SYST39409-Object Oriented Methodologies 26
Your Turn…ICE-03
See SLATE
Jerry Kotuba SYST39409-Object Oriented Methodologies 27
28
Class Diagrams
Document the static structure of the system They define what classes there are and how they are related The symbol on the right defines the data and behaviour encapsulated by a class.
Objects “know things and know how to do things!”
SYST39409 - Object Oriented Methodologies Jerry Kotuba