SYST 30009 Engineering Quality Software ENGINEERING QUALITY SOFTWARE

  • Slides: 43
Download presentation
SYST 30009 - Engineering Quality Software ENGINEERING QUALITY SOFTWARE J. N. Kotuba Week 02

SYST 30009 - Engineering Quality Software ENGINEERING QUALITY SOFTWARE J. N. Kotuba Week 02 1

Agenda 2 Schedule Recap last lesson Learning outcomes for today Develop the requirements model

Agenda 2 Schedule Recap last lesson Learning outcomes for today Develop the requirements model Use cases Use case diagrams Use case narratives Activity Diagrams SYST 30009 - Engineering Quality Software J. N. Kotuba

Last Class 3 Introduced Unified Process (UP) and Unified Modeling Language (UML) Discussed Models

Last Class 3 Introduced Unified Process (UP) and Unified Modeling Language (UML) Discussed Models Tools Techniques Introduced Event Tables SYST 30009 - Engineering Quality Software J. N. Kotuba

The Unified Process 4 Four key stages. Inception. Elaboration Construction Transition SYST 30009 -

The Unified Process 4 Four key stages. Inception. Elaboration Construction Transition SYST 30009 - Engineering Quality Software J. N. Kotuba

Unified Process: Inception 5 Go ahead on project. Scope determined. Business case developed for

Unified Process: Inception 5 Go ahead on project. Scope determined. Business case developed for project. SYST 30009 - Engineering Quality Software J. N. Kotuba

Unified Process: Elaboration 6 Basic architecture of the system developed. Construction plan is approved.

Unified Process: Elaboration 6 Basic architecture of the system developed. Construction plan is approved. Risks are identified. SYST 30009 - Engineering Quality Software J. N. Kotuba

Unified Process: Construction. 7 Iterative approach to developing software. Product will be a beta.

Unified Process: Construction. 7 Iterative approach to developing software. Product will be a beta. SYST 30009 - Engineering Quality Software J. N. Kotuba

Unified Process: Transition 8 Beta product is introduced to users and information is collected

Unified Process: Transition 8 Beta product is introduced to users and information is collected from users during rollout. SYST 30009 - Engineering Quality Software J. N. Kotuba

9 SYST 30009 - Engineering Quality Software J. N. Kotuba

9 SYST 30009 - Engineering Quality Software J. N. Kotuba

Modeling 10 Software development is the production of ‘executable models’. These models often are

Modeling 10 Software development is the production of ‘executable models’. These models often are abstractions of the original problem with classes added to solve the user’s problems. SYST 30009 - Engineering Quality Software J. N. Kotuba

Different Types of Models 11 Use Case Model. The system from the users point

Different Types of Models 11 Use Case Model. The system from the users point of view. Static Model. The elements of the system and how they relate to one another. Dynamic Model. Outlines the behaviour of the system in the context of Object interactions. SYST 30009 - Engineering Quality Software J. N. Kotuba

UML 12 The Unified Modeling language is (UML) a language for development object-oriented models

UML 12 The Unified Modeling language is (UML) a language for development object-oriented models and system designs. It provides a complete set of graphical diagrams to specify use cases, class diagrams and the dynamic model (object interactions) of a system. Can be used with different programming languages. SYST 30009 - Engineering Quality Software J. N. Kotuba

Objectives for today 13 Learn how to construct a use case diagram from an

Objectives for today 13 Learn how to construct a use case diagram from an event table Learn how to build a use case narrative for each use case and why the narratives are important. Learn how to draw an activity diagram SYST 30009 - Engineering Quality Software J. N. Kotuba

The Pharmacy System 14 Finalize the Event Table Identify the Actors Build the Use

The Pharmacy System 14 Finalize the Event Table Identify the Actors Build the Use Case Diagram SYST 30009 - Engineering Quality Software J. N. Kotuba

Event table “Process” Use Case

Event table “Process” Use Case

Using System Architect 16 Create the UC for Pharmacy System SYST 30009 - Engineering

Using System Architect 16 Create the UC for Pharmacy System SYST 30009 - Engineering Quality Software J. N. Kotuba

Identifying the Actors 17 Where do you look? Context Diagram Existing system documentation (our

Identifying the Actors 17 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 email 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? SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case - Actors 18 An actor is always outside the automation boundary of

Use Case - Actors 18 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. SYST 30009 - Engineering Quality Software J. N. Kotuba

Your Turn… 19 See SLATE I-C-E-01 Develop Context Diagram Event table Use Case Diagram

Your Turn… 19 See SLATE I-C-E-01 Develop Context Diagram Event table Use Case Diagram System Architect SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case Identifies What Users Want 20 Use cases focus on usage of the

Use Case Identifies What Users Want 20 Use cases focus on usage of the system Services Behaviors Responses No internal structural details of the system Can be considered as the “responsibilities” of the system SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case Identifies What Users Want 21 Next Validate use case names Write narrative

Use Case Identifies What Users Want 21 Next Validate use case names Write narrative descriptions for each use case Refining the name May “discover” more than one use case E. g register member Purchase SYST 30009 - Engineering Quality Software Register new member Renew existing member Retail Trade Dealer staff J. N. Kotuba

Use Case Identifies What Users Want 22 Refining the name Does it tell the

Use Case Identifies What Users Want 22 Refining the name Does it tell the whole story? Any exceptions? Special cases? Possible errors? Occasional variations? Does the name cover several related or similar processes? Is there a more informative or enlightening name? SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case Identifies What Users Want 23 Write a narrative description Sequence Focus of

Use Case Identifies What Users Want 23 Write a narrative description Sequence Focus of events or steps user goes through. on mainline Straight-line sequence Then consider exceptions, options errors SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Cases 24 Analysts define use cases at three levels Brief Intermediate Fully developed

Use Cases 24 Analysts define use cases at three levels Brief Intermediate Fully developed SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case Narrative: Fill Prescription 25 Step 1. Pharmacist inputs Patient ID Step 2.

Use Case Narrative: Fill Prescription 25 Step 1. Pharmacist inputs Patient ID Step 2. System displays patient medical record Step 3. Pharmacist verifies dosage, potential allergic reactions and/or interaction with other medications. Step 4. The Pharmacist fills the prescription and updates the patient’s medical record on the system with details of the new prescription. Step 5. The system prints a label which is sent to the nurses station and the Billing Dept is given Patient and Prescription details. Alt Step 3. If the pharmacist determines a possible negative condition exists, then the Doctor is contacted Alt Step 4. The prescription is held for disposition. SYST 30009 - Engineering Quality Software J. N. Kotuba

Brief Description of Create New Order Use Case 26 SYST 30009 - Engineering Quality

Brief Description of Create New Order Use Case 26 SYST 30009 - Engineering Quality Software J. N. Kotuba

Intermediate Description of Telephone Order Scenario for Create New Order Use Case 27 SYST

Intermediate Description of Telephone Order Scenario for Create New Order Use Case 27 SYST 30009 - Engineering Quality Software J. N. Kotuba

Fully Developed Description of Telephone Order Scenario for Create New Order Use Case 28

Fully Developed Description of Telephone Order Scenario for Create New Order Use Case 28 SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case Narrative: 29 Do’s Use complete sentences How is the use case initiated

Use Case Narrative: 29 Do’s Use complete sentences How is the use case initiated and how does it end What the initial and final actions and state of the system look like Don’ts SYST 30009 - Engineering Quality Software Use abbreviations or sentence fragments J. N. Kotuba

30 SYST 30009 - Engineering Quality Software J. N. Kotuba

30 SYST 30009 - Engineering Quality Software J. N. Kotuba

31 Components of the Use Case Diagram Use Case Actor Automation Boundary SYST 30009

31 Components of the Use Case Diagram Use Case Actor Automation Boundary SYST 30009 - Engineering Quality Software J. N. Kotuba

Use Case Guidelines Names Noun + Verb J. N. Kotuba SYST 30009 - Engineering

Use Case Guidelines Names Noun + Verb J. N. Kotuba SYST 30009 - Engineering Quality Software 32

Use Case Guidelines J. N. Kotuba Nouns SYST 30009 - Engineering Quality Software 33

Use Case Guidelines J. N. Kotuba Nouns SYST 30009 - Engineering Quality Software 33

Use Case Guidelines Avoid using implementation system specific language when writing use case narratives

Use Case Guidelines Avoid using implementation system specific language when writing use case narratives J. N. Kotuba SYST 30009 - Engineering Quality Software 34

. Summary Developing the Requirements Model: The Use Case Model 35 Use Cases are

. Summary Developing the Requirements Model: The Use Case Model 35 Use Cases are an informal description of the system; They do not give information about how the system does things Or any other details internal to the system. They just tell us what the system will do for the users. Concentrating on what rather than how makes them more a tool for analysis than design, but. . . They do give us a good starting point for both Testing the system, and Prototyping the user interface. SYST 30009 - Engineering Quality Software J. N. Kotuba

Activity Diagram 37 A type of workflow diagram that describes the user activities and

Activity Diagram 37 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. SYST 30009 - Engineering Quality Software J. N. Kotuba

38 SYST 30009 - Engineering Quality Software J. N. Kotuba

38 SYST 30009 - Engineering Quality Software J. N. Kotuba

Notatio n

Notatio n

Design Quality 41 A key factor in the quality of a system is how

Design Quality 41 A key factor in the quality of a system is how well the full effects of the individual components the system can be understood. It is difficult to change individual components in a system unless their function is understood. SYST 30009 - Engineering Quality Software J. N. Kotuba

Recap Lesson 42 Learning outcomes for today Develop the requirements model Use cases Use

Recap Lesson 42 Learning outcomes for today Develop the requirements model Use cases Use case diagrams Use case narratives SYST 30009 - Engineering Quality Software J. N. Kotuba

What comes next? 43 Next Class Use Cases Class Diagrams Read Chapter 2 &

What comes next? 43 Next Class Use Cases Class Diagrams Read Chapter 2 & Chapter 3 P 27 -34 SYST 30009 - Engineering Quality Software J. N. Kotuba