280 likes | 476 Views
Object Oriented Methodologies. Week04. 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. Events and Use Cases. Use case
E N D
Object Oriented Methodologies Week04 SYST39409-Object Oriented Methodologies
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 SYST39409-Object Oriented Methodologies
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 SYST39409-Object Oriented Methodologies
Use Cases - Analysis • Identify • User goals • Event tables • CRUD • Summarize • Use Case Diagram • Describe • Narratives • Activity Diagram(workflow) SYST39409-Object Oriented Methodologies
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 SYST39409-Object Oriented Methodologies
Suppliers Customers Methods & Applications
Inter- Intra Company E-business Supply Chain Management Legacy Applications External Services 3rd Party Packaged Application New Applications Customer Relationship Management E-commerce Methods & Applications
Example without Package Notation SYST39409-Object Oriented Methodologies
Example using Package Notation SYST39409-Object Oriented Methodologies
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 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 SYST39409-Object Oriented Methodologies
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?” SYST39409-Object Oriented Methodologies
Procedure for Developing an Initial List of Things • Perform Textual Analysis • List nounsusers mention when discussing system • Event table as source of potential things • Use cases, external agents, triggers, response • Select nouns with questions concerning relevance • Further research may be needed SYST39409-Object Oriented Methodologies
Pharmacy System Example SYST39409-Object Oriented Methodologies
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 SYST39409-Object Oriented Methodologies
Associations Naturally Occur between Things SYST39409-Object Oriented Methodologies
Multiplicity of Relationships SYST39409-Object Oriented Methodologies
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 SYST39409-Object Oriented Methodologies
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 SYST39409-Object Oriented Methodologies
Exercises No 1 to No 3 • To be done in class for illustration and practice SYST39409-Object Oriented Methodologies
Your Turn…ICE-03 • See SLATE SYST39409-Object Oriented Methodologies
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