Download presentation
Presentation is loading. Please wait.
1
Object Oriented Methodologies
J.N.Kotuba SYST Object Oriented Methodologies
2
SYST39409 - Object Oriented Methodologies
Agenda Assignment No 1 posted Review details SLATE-Weekly Topical Outline and Schedule modified Quiz No 1 Next week Recap last lesson Learning outcomes for today Further develop the requirements model √ Use cases √ Use case diagrams √ Use case narratives Activity Diagrams Class Diagrams J.N.Kotuba SYST Object Oriented Methodologies
3
SYST39409 - Object Oriented Methodologies
Review Last Class Introduced Unified Process (UP) and Unified Modeling Language (UML) Discussed Models Tools Techniques Introduced Techniques for identifying Use Cases User Goal Technique Including user stories Event Table Technique CRUD Technique J.N.Kotuba SYST Object Oriented Methodologies
4
System Boundary vs Automation Boundary
J.N.Kotuba SYST Object Oriented Methodologies
5
Context Diagram –Pharmacy System
J.N.Kotuba SYST Object Oriented Methodologies
6
SYST39409 - Object Oriented Methodologies
The Pharmacy System Finalize the Event Table Identify the Actors Build the Use Case Diagram J.N.Kotuba SYST Object Oriented Methodologies
7
SYST39409 - Object Oriented Methodologies
J.N.Kotuba SYST Object Oriented Methodologies
8
SYST39409 - Object Oriented Methodologies
J.N.Kotuba SYST Object Oriented Methodologies
9
SYST39409 - Object Oriented Methodologies
J.N.Kotuba SYST Object Oriented Methodologies
10
Identifying the Actors
Where do you look? Context Diagram Existing system documentation (our case) Ask the following questions Who or what provides inputs,such as forms, voice commands, fields on input screens, etc to the system? Who or what receives outputs, such as notifications, reports, voice messages , etc from the system? Are interfaces required to other systems? Are there any events that are automatically triggered at a predetermined time? Who (User) will maintain the information system? J.N.Kotuba SYST Object Oriented Methodologies
11
SYST39409 - Object Oriented Methodologies
Use Case - Actors An actor is always outside the automation boundary of the system but may be part of the manual portion of the system an actor is not always the same as the source of the event in the event table. A source of an event is the initiating person, such as a customer, and is always external to the system, including the manual system. an actor in use case analysis is the person who is actually interacting (hands-on) with the computer system itself. Review & Discuss J.N.Kotuba SYST Object Oriented Methodologies
12
Use Case Identifies What Users Want
Write a narrative description Sequence of events or steps user goes through. Focus on mainline Straight-line sequence Then consider exceptions, options errors J.N.Kotuba SYST Object Oriented Methodologies
13
SYST39409 - Object Oriented Methodologies
Use Cases Analysts define use cases at three levels Brief Intermediate Fully developed J.N.Kotuba SYST Object Oriented Methodologies
14
Brief Description of Create New Order Use Case
J.N.Kotuba SYST Object Oriented Methodologies
15
SYST39409 - Object Oriented Methodologies
Intermediate Description of Telephone Order Scenario for Create New Order Use Case J.N.Kotuba SYST Object Oriented Methodologies
16
SYST39409 - Object Oriented Methodologies
J.N.Kotuba SYST Object Oriented Methodologies
17
SYST39409 - Object Oriented Methodologies
Fully Developed Description of Telephone Order Scenario for Create New Order Use Case J.N.Kotuba SYST Object Oriented Methodologies
18
Use Case Narratives- Preconditions & Post Conditions
Hospital Pharmacy Case Study Preconditions & post conditions Preconditions state what conditions must be true before a use case begins. In other words, a precondition identifies what the state of the system must be for the use case begin, including what objects must already exist, what information must be available, even the condition of the actor (e.g. user logged on; connection to an external system is active etc.) For example; for some companies, an order cannot be created unless the customer exists and has a good credit rating. Another example; what about the library? What must exist for someone to borrow a book? Hospital Pharmacy System: What preconditions must exist for “Fill Prescription” ? Post conditions A post condition identifies what must be true upon completion of the use case. The same items that are used to describe the precondition should be included in the statement of the post condition. Use the same guidelines for preconditions to define post conditions; concentrate on what objects must exist; what relationships must exist; and what values are important. © Jerry Kotuba SYST39409-Object Oriented Methodologies
19
SYST39409 - Object Oriented Methodologies
Package: Pharmacy System Use Case Name: Review Prescription Primary Actor: Pharmacy Technician Other Participating Actors: Summary Description: When prescriptions are received at the Mercy Hospital Pharmacy, they are directed to the Pharmacy Technician. He reviews the prescription and then decides, based on the type of medication, which of three stations to direct it to for filling. Preconditions: The prescription must be for a current patient of Mercy Hospital and issued by a licensed Medical Doctor. Trigger: Prescription is received by the pharmacy. Typical Course of events: Pharmacy Technician (PT) verifies that the patient is an admitted patient. PT verifies that a licensed Medical Doctor issued the prescription. PT logs the prescription into the system and it is assigned a serialized ID number by the system. PT checks the type of medication; if it must be formulated (made-on-site), sends it to the lab station; if it is an off-the-shelf medication, sends it to the shelving station; narcotics are sent to the secure station. PT enters the shelving station ID to which it was sent into the system. Alternative Paths: If the patient is not currently admitted to the Hospital, the prescription is returned to the Doctor. If the Doctor is not listed in the Pharmacy database, the prescription is referred to the Pharmacist for disposition. Post conditions: The prescription is assigned to a filling station and logged into the system for tracking. Assumptions: Related Business Rules: Prescriptions can only be accepted from licensed Physicians for patients admitted to Mercy Hospital. Author: J.N.Kotuba Date: May 2013 Example “Review Prescription” Use Case Fully Developed J.N.Kotuba SYST Object Oriented Methodologies
20
SYST39409-Object Oriented Methodologies
More about Use Cases… What are “use case scenarios” ? How to identify and show relationships between Use Cases. [Includes & Extends] ? What are use case Pre-conditions/Post-conditions and why they are important? How to describe a use case with an activity or workflow diagram? © Jerry Kotuba SYST39409-Object Oriented Methodologies
21
ATM Example Use Case: Deposit Money Use Case: Withdraw Money
Flow of events The user inserts an ATM card The system prompts the user to enter a password The user enters the password. The system validates the password Use Case: Deposit Money Flow of events The user inserts an ATM card The system prompts the user to enter a password The user enters the password. The system validates the password Common Behaviours
22
ATM Example Use Case: Withdraw Money Use Case: Deposit Money
Flow of Events Include [login] Use Case: Deposit Money Flow of Events Include [login] Use Case: Login Flow of events The user inserts an ATM card The system prompts the user to enter a password The user enters the password. The system validates the password
23
SYST39409-Object Oriented Methodologies
Withdraw Money Deposit Money <<includes>> <<includes>> Login © Jerry Kotuba SYST39409-Object Oriented Methodologies
24
SYST39409-Object Oriented Methodologies
Use case scenarios… Case In Point Explain Scenarios using this example… Case In Point: Recently I had to place a stop payment on a pre-authorized monthly payment with my Bank. UC- “Stop Payment” There are several ways in which this can be completed On-line through the web Call center In-person Each would be a scenario for “Stop Payment” Other examples – “Place Order” as in purchasing something Registering for a course Buying tickets for the movies Etc., © Jerry Kotuba SYST39409-Object Oriented Methodologies
25
Use Case Relationships
Also referred to as dependencies Includes E.g. “Stop Payment” Extends (Option to extend the base Use Case) E.g “Register Student” Includes & Extends Case In Point: Stop Payment may or may not have a user-fee associated with it similar to other banking transactions INCLUDES e.g. “View checks” on line “Transfer funds” to other persons Etc., Each of these will have some processing steps to verify if additional fees apply to the type of account that you have or not and if so what the additional fees would be. Since this is common to all we can factor those common steps out and create a separate use case rather than repeat them in the narratives. Hence this introduces the concept of “Includes” or “Uses”. There will also be situations where steps to handle exceptional circumstances may be required. EXTENDS Case In Point College registration system. Use exclusion points when an alternate flow is captured in another use case with an extends or an inclusion point when the flow incorporates another use case through an includes. © Jerry Kotuba SYST39409-Object Oriented Methodologies
26
Comments on Include & Extend
Tend to see more includes. Extends are fewer. © Jerry Kotuba SYST39409-Object Oriented Methodologies
27
SYST39409-Object Oriented Methodologies
More About Actors People External Systems Time © Jerry Kotuba SYST39409-Object Oriented Methodologies
28
Use Case Narratives- Preconditions & Post Conditions
Hospital Pharmacy Case Study Preconditions & post conditions Preconditions state what conditions must be true before a use case begins. In other words, a precondition identifies what the state of the system must be for the use case begin, including what objects must already exist, what information must be available, even the condition of the actor (e.g. user logged on; connection to an external system is active etc.) For example; for some companies, an order cannot be created unless the customer exists and has a good credit rating. Another example; what about the library? What must exist for someone to borrow a book? Hospital Pharmacy System: What preconditions must exist for “Fill Prescription” ? Post conditions A post condition identifies what must be true upon completion of the use case. The same items that are used to describe the precondition should be included in the statement of the post condition. Use the same guidelines for preconditions to define post conditions; concentrate on what objects must exist; what relationships must exist; and what values are important. © Jerry Kotuba SYST39409-Object Oriented Methodologies
29
SYST39409-Object Oriented Methodologies
Use Cases Use cases tell; the customer what to expect the developer what to code the technical writer what to document and the tester what to test. Testing as soon as possible is better than waiting until all the development is completed. If bugs can be found early then delays to implementation can be avoided. © Jerry Kotuba SYST39409-Object Oriented Methodologies
30
SYST39409-Object Oriented Methodologies
Example © Jerry Kotuba SYST39409-Object Oriented Methodologies
32
SYST39409 - Object Oriented Methodologies
Activity Diagram A type of workflow diagram that describes the user activities and their sequential flow. Illustration: The following slide summarizes the workflow of how a customer request for a quotation to modify a computer system is handled. J.N.Kotuba SYST Object Oriented Methodologies
33
Object Oriented Methodologies
Jerry Kotuba Object Oriented Methodologies
34
Notation
35
Your Turn… Activity Diagrams –ICE-02
© Jerry Kotuba SYST39409-Object Oriented Methodologies
36
Example without Package Notation
Jerry Kotuba SYST39409-Object Oriented Methodologies
37
Example using Package Notation
Jerry Kotuba SYST39409-Object Oriented Methodologies
38
SYST39409 - Object Oriented Methodologies
What Comes Next? J.N.Kotuba SYST Object Oriented Methodologies
39
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 Jerry Kotuba SYST39409-Object Oriented Methodologies
40
Problem Domain Classes
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
41
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?” Jerry Kotuba SYST39409-Object Oriented Methodologies
42
SYST39409-Object Oriented Methodologies
Jerry Kotuba SYST39409-Object Oriented Methodologies
43
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 Further research may be needed Jerry Kotuba SYST39409-Object Oriented Methodologies
44
Pharmacy System Example
Identifying Object-Classes using the Noun-Identification Technique Using the event table and other information provided in the case narrative, prepare a list of nouns and check it by asking the following questions about each one to decide whether to include it or not. Is it a unique thing that the system needs to know about? Is it outside the scope of the system I am working on? Does the system need to remember more than one of these items? Next ask the following questions about each noun to decide whether to exclude it: Is it really a synonym for some other thing I have identified? Is it just an output of the system produced from other information I have identified? Is it really just an input that results in recording some other information I have identified? Prepare a final list of nouns which you feel are essential to the system. Jerry Kotuba SYST39409-Object Oriented Methodologies
45
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
46
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 Jerry Kotuba SYST39409-Object Oriented Methodologies
47
SYST39409-Object Oriented Methodologies
Jerry Kotuba SYST39409-Object Oriented Methodologies
48
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 Jerry Kotuba SYST39409-Object Oriented Methodologies
49
SYST39409-Object Oriented Methodologies
Jerry Kotuba SYST39409-Object Oriented Methodologies
50
SYST39409-Object Oriented Methodologies
Jerry Kotuba SYST39409-Object Oriented Methodologies
51
SYST39409-Object Oriented Methodologies
Exercises No 1 to No 3 To be done in class for illustration and practice Jerry Kotuba SYST39409-Object Oriented Methodologies
52
SYST39409-Object Oriented Methodologies
Your Turn…ICE-03 See SLATE Jerry Kotuba SYST39409-Object Oriented Methodologies
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.