27
Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox) leave message Class Notes 2

Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Applied Systems Analysis

Fall 2003

Douglas Low

(315) 456-3372 (work) 2 min question

(315) 703-6297 (home) 5 min question

(315) 445-6044 (Lemoyne mailbox) leave message

Class Notes 2

Page 2: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Session 2

• Handout Project Assignment

• Discuss Reading Assignment

• Discuss Homework

• Introduce Requirements Table– Next homework

• UML - Use cases– ROSE UML Exercise

Page 3: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

• Homework Examples

Page 4: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Homework Example

My wife shall have at least two childeren.

My wife shall be faithful.

My wife shall be under five foot eight.

My wife shall be educated with a college degree.

My wife shall vacum once a week.

My wife shall dust the house once a week.

My wife shall have a job if she wants.

My wife shall be a brunet.

My wife shall have a career before we marry.

Page 5: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Homework Example 2

1.Shall be intelligent.

a.Must have college degree.

2.Shall be good looking.

a.Panel of 10 friends will determine.

3.Shall be self sufficient.

a.Must have lived alone before and done everything for herself. (ie. Dishes, laundry, cleaning, etc.)

4.Shall be personable.

a.Will be required to have dinner with just my parents and they will determine.

5.Shall be from a good family.

a.Must have job and house and be polite and personable.

6.Shall show me genuine love.

a.That’s for me to test and figure out.

Page 6: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Homework Example 3

1.My wife shall have a net income of $100,000 dollars for at least 20 years.

2.My wife shall be outgoing enough to not be afraid to make a scene in public.

3.My wife shall be smart enough to play chess.

4.My wife shall be so beautiful that a modeling agency would hire her on the spot.

5.My wife shall have graduated from a creditable institution.

6.My wife shall be able to cook my favorite dinner.

7.My favorite dinner shall be delicious and editable. 8.My wife shall be a woman from head to toe

9.My wife shall have a 34C brawl size. 10.My wife shall be able to hold a conversation longer than 10 minutes.

Page 7: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Homework example 4

Set of Requirements for Spouse of My Dreams: 

1.The spouse of my dreams shall believe in a greater being, such as God.

2.The spouse of my dreams should be Catholic with a strong faith in their religion.

3.The spouse of my dreams should love me for who I am.

4.The spouse of my dreams will share responsibilities within the relationship.

5.The spouse of my dreams should respect me.

6.The spouse of my dreams should be able to communicate effectively.

7.The spouse of my dreams will have a good sense of humor.

8.The spouse of my dreams shall want to have children.

9.The spouse of my dreams should be motivated.

10.The spouse of my dreams shall be able to take initiative.

11.The spouse of my dreams shall be able to be honest.

12.The spouse of my dreams should be independent.

Page 8: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Homework Example 5 

1.My husband will be male. Test: Inspect2.My husband shall be taller than myself, at least 5’10”. Test: Inspect by measuring3.My husband shall hold at least a bachelors degree. Test: analyze a diploma4.He shall be able to do wash clothes. Test: Demonstrate5.He shall be able to fold clothes. Test: demonstrate6.Shall be able to iron. Test: demonstrate7.He shall be a non-smoker. Test: analyze him8.He shall be able to change the oil on a car. Test: demonstrate9.He shall be older than myself. Test:  Inspect birth certificate10.He will have all his teeth. Test: inspect teeth11.He shall not have a beard. Test: inspect visual appearance12.He shall not have a mustache. Test: inspect visual appearance13.He shall be employed. Test: inspect proof of employment14.He shall be drug free. Test: analyze drug test15.He shall not be a criminal. Test: inspect criminal record•He shall not be poor. Test: analyze bank statements1.He shall not be bald. Test: inspect the head for hair2.He shall be able to make a bed. Test: demonstrate3.He shall not have hair longer that 3”. Test: inspect hair (measure)4.He shall be able to change a diaper. Test: Demonstrate

Page 9: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Requirements Table

• Requirement #

• Type

• Requirement Text

• Verification Method– If test then What use case is associated

• Priority

• Source

Page 10: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Is each Requirement Verifiable

• Subjective requirements are not verifiable– Look for words like: Maximize, minimize, support, adequate, but

not limited to, user friendly, easy, sufficient

• Determine how each requirements will be verified as it is written– test, ‘shall be .3 seconds’

– demonstrate, ‘shall be capable of simultaneous viewing’

– analyze, ‘ MTBF shall be 1 day’

– Inspect, ‘shall be green’

Subjective Requirements from the customer must be converted into achievable and agreed to Requirements

Page 11: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Requirement Database TypesAll Requirements are defined in the requirements database as one

and only one of the following types:

Ø      Functional “… shall automatically track airborne targets…”Ø      Performance “…shall discriminate targets within 3 minutes…”Ø      Capacity “…shall maintain 300 tracks in the …”Ø      Constraint including cost, specific equipment, legacy components etc.Ø      Reliability “ MTBF shall be 100 days”Ø      Interface “ … shall use RS-232 interface to … “Ø      Test “… the system test shall stress the system …”Ø      Safety “ “in accordance with SPCL-610 and BI-431Ø      Data “…shall depict target range in meters…”

We should do this but we don’t. It helps Partition Requirements or

place the requirement in the proper document section.

Page 12: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

OO Process Steps      Define requirements

Allocate and Derive requirements

Map requirements to use cases

Map requirements to classes

      Define use casesDraw Diagrams    

Write use case summary

Include requirements & External Interfaces

      Define domain model class diagramAdd attributes when known

      Review requirements

 

      Define use case scenarios Include a summary

      Define first level decomposition class diagram Take from domain class diagram

Include boundary objects, controllers and entities

      Review Preliminary Design

      Create a sequence diagram for each scenario Use only objects in the class diagram

Update scenario documentation to include details

      Update class diagramAdd methods to classes when known (Internal interfaces)

     Update Documentation (interfaces etc.)

    Review Design

R

Page 13: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

UML

• Packages

• Classes / objectsActors

• Diagrams– State diagramUse Cases diagrams

– Sequence Diagrams

– Deployment diagram

– Class / Object diagram• Methods / operations

• Hidden/private data

Use CasesModel

• InheritanceRelationships

• InteractionBehaviorScenarios

• StereotypesUML

Page 14: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Model

• Model – Abstraction of a physical system with a certain purpose.

• Webster’s Model - (noun) a description or analogy used to help visualize something that cannot be directly observed.

• Webster’s Model - (verb) to produce a representation or simulation of.

We will model a software system using UML and document the software model it in an SRS.

Page 15: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Use Case Diagram

System

Use Case

Actors

Actor’s Role

Actor’s Role

Actor’s Role

Actor’s Role

Actor’s Role

SystemUsage

SystemUsage

SystemUsage Relationship

Page 16: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Use Case - Definition

• Definition• A use case is a sequence of actions within a system to achieve a particular

goal for an actor.• Describes system behavior from the outside - in.• Represents a major piece of functionality that is complete from beginning to

the end. • A use case must deliver something of value to an actor.

• Use case name• Stated from the user perspective as a present-tense verb phrase in an active

voice.

Do Something(Verb - Noun)

•What does the actor want from the system?

•What notifications are required?

•What external events must be handled?

•What requirements go with the use case?

Page 17: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Actors •Actor – represents an entity that interacts with the system under development (in our case CSCI)•Name should be a role not a title.

•e.g.. Use Case Designer not Systems engineer

•Who uses the CSCI•Who installs the CSCI•Who maintains the CSCI•Who starts and shuts down the CSCI•What other system interface with this CSCI •Where does the information go to•What initiates events that invoke an action from the CSCI

•Could be person, external system, other CSCI of the present system, something physical like water or bullet…

Page 18: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Relationships

• Between classes – Role

• Between Actors and Use Case – Role between

• Between Use Cases– <<extends>> <<uses>>

These are fluffyI don’t use them unless they mean

something to the design like an interface

Page 19: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Perfect Wife (homework example)

Clean Up

Take Care ofKids

Wash Clothes

Get Ready forSchool

Take Kids to Activities

extends

Put to Bed

extends

extends

extends

extends

Clean House

Vaccum Rugs

Dust Furniture

Straighten up

Get Dinner

extends

extends

extends

Order Out

Cook Meal

extends

extends

Page 20: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Includes and Extends

Wash Car

Rinse outside of car

Soap outide of car

vac insdie rugs

include

include

include

Feed Me

Order out

Prepare meal

Eat out

extend

extend

extend

Cook meal

Wash Dishes

includes

includes

Page 21: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Disclaimer

• The following system example is not supposed to be complete rigorous, possible or anything else good.

• The following system description is only for training purposes.

Page 22: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Simple System

Create Gold

OperatorStart system

Rabbit PoopStore room

Gold Creator System

Page 23: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

System Description Requirements• The system to be developed is a precious metal (PM) generator. It

creates gold & silver from the raw material rabbit poop. • The entire process is automated including automatic feed of raw

material into the processing mechanism and automatically feed finished material into a store room after the PM is created. The automation is controlled by a computer system computer software.

• The entire process is performed in batches.• The process of creating PM requires preprocessing. During

preprocessing the raw material is brought to a specified temperature and pressure and humidity and maintained within predefined limits for a predefined length of time.

• Processing of the preprocessed material includes several steps:– Dissolve the preprocess batch in a sodium hydroxide solution. Produce and

maintain 100 degrees F temperature. Wait for 1 hour– Add 6 grains of a secret ingredient. Stir for 1 minute.– Solution is pumped through a filter and the effluent is disposed of to a city

drain.– The filter now contains PM. The Filter is dried using a forced air heater. The

PM dust is collected from the filter through a funnel and onto the conveyer which is transferred to the store room via a conveyor belt.

• After the process is completed the system sounds a signal to indicate to the operator to provide more raw material.

• The system is self diagnosing and will provide the maintainers with the problem and solution.

1. The system shall automatically feed raw material from the input hopper and into the pre-processor.

2. The system shall automatically feed preprocessed material from the pre processor into the processor.

3. The automation shall be controlled by a computer system.

4. The computer system shall control temperature, pressure and humidity in the pre-processing stage.

5. The system shall control preprocessing parameters based on user defined input data.

6. The system shall automatically control the level of sodium hydroxide solution in the processor.

7. The system shall automatically drain and dry the mixture in the processor.

8. The system shall control the processing based on user define input parameters.

9. The system shall alert the operator when the batch is finished.

10. The system shall diagnose problems in the system and isolate the fault down to an LRU.

Page 24: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Requirements to Usecase1. The system shall automatically feed raw material from the input

hopper and into the pre-processor.2. The system shall automatically feed preprocessed material from

the pre processor into the processor.3. The automation shall be controlled by a computer system.4. The computer system shall control temperature, pressure and

humidity in the pre-processing stage.5. The system shall control preprocessing parameters based on

user defined input data.a. The system shall allow the operator to input and verify

preprocessing parameters.6. The system shall automatically control the level of sodium

hydroxide solution in the processor.7. The system shall automatically drain and dry the mixture in the

processor.8. The system shall control the processing based on user define

input parameters.a. The system shall allow the user to input and verify

processing parameters.9. The system shall alert the operator when the batch is finished.

10. The system shall diagnose problems in the system and isolate the fault down to an LRU.

1. Create PM

2. Create PM

3. Create PM4. Create PM

5. Create PM

a. define user parameters

6. Create PM

7. Create PM

8. Crete PM a. define user

parameters

9. Create PM

10. Diagnose problems

All Requirements that are verified by “TEST” have an associated Use Case

Page 25: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Use Case Description• 1 CSCI Capability 1 Infrastructure

• 1.1 Capability 1 Use Case 1 (Summary)

• 1.1.1 Preconditions

• 1.1.2 Post conditions

• 1.1.3 Primary flow of events– 1.1.3.1 Sequence Diagrams

• 1.1.4 Alternate flow of events– 1.1.4.1 Sequence Diagrams

• .1.1.5 Exception flow of events– .1.5.1 Sequence Diagrams

•3.2.4.1.n Capability 1 Use Case n•Use Case n Documentation Set • • 3.2.4.n CSCI Capability x ______________•3.2.4.x.m Capability n Use Case m

Use Case 1 Documentation Set

Include Trigger

Include Trigger

Include Trigger

Page 26: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Create Gold Main Flow Use Case Description• Main Flow Summary

– This use case will make the owner of the system rich. The system will automatically take the raw materials from a hopper process it into gold then add the gold to the store room . The entire process is automatic and maintenance free. All you have to do is add material. The machine takes a full hopper of raw material to create one pound of final product.

• 3.2.4.1.1.1 Preconditions– The system has been started and initialized and is running in idle state. The material hopper is full of raw material.

• 3.2.4.1.1.2 Post conditions– Store room is increased by one pound of pure gold.

• 3.2.4.1.1.3 Primary flow of events– The operator initiates the process by pressing the run button. The raw material is transferred to the preprocessor automatically

by a conveyor mechanism. As the material is preprocessed the system keeps track of the amount of raw material is processes and display the value on the control panel along with the elapsed time. The preprocessor maintains temperature, pressure humidity and oxygen level for a time period. All of the parameters are adjustable (see use case Start System.

– As the material is preprocessed, it is transferred into the main processor by an automated conveyor. – If any one of the parameters is out of specification by the predefined amount, and error report is generated and the use case is

terminated.(E1).– If no errors resulted from the preprocessing stage. The processor is automatically initiated after all of the raw material is

preprocessed. The timer is initiated upon initiation of the processor.– When a pre determined time as elapsed, the system automatically send the processed material to the store room via a material

conveyer.This is the end of the use case– 3.2.4.1.1.3.1 Sequence Diagrams

• 3.2.4.1.1.4 Alternate flow of events– 3.2.4.1.1.4.1 Sequence Diagrams

• 3.2.4.1.1.5 Exception flow of events– 3.2.4.1.1.5.1 Sequence Diagrams

Page 27: Applied Systems Analysis Fall 2003 Douglas Low (315) 456-3372 (work) 2 min question (315) 703-6297 (home) 5 min question (315) 445-6044 (Lemoyne mailbox)

Homework 2 due Sept 15 12:00 Noon

• Dream Spouse SOW– Updated

• Dream Spouse Requirements – Updated – Placed in a Requirements Table– Prioritized (High, Med. Low)– Verification method assigned

• Project – Draft (Cover Letter, Introduction, Problem Definition)

• Read Boggs Chapter 1