3 - Use Cases Flashcards

1
Q

How is the project description created?

A

Not by the customer.

It is written by the dev team, in conjunction with the customer

Not complete at start, more details added later

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What documents are created at the start of the process?

A

Project description

Risk analysis

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are some examples of risks?

A

Lack of user acceptance. System must be easy for non-technical people (Requirements risk)

Some people designing the software are inexperienced (skills risk)

Handling database crashes (technical risk)

Might not get resources to complete project (political risk)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the system boundary?

A

Identifies components that need to be built (inside boundary) and things that already exist and don’t need to be built (outside the boundary)

Need to interface to those outside the boundary

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How do we discover the system boundary?

A

Describing the actors and use cases

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is an Actor?

A

Objects outside the system, they initiate activities using the system (active) or respond to activities (passive)

Can be people, other software, hardware, databases or networks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is an Actor Role?

A

Purpose of an actor rather than an individual person

One person might take on several roles so represented by several different actors

Several people might perform same role so represented by one actor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How is an Actor described?

A

Stick figure with label for role

Should also provide short description for an actor’s role in the system (a sentence is fine)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How do we find use cases?

A

Looking at actors and what activity they initiate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How do we record a use case?

A

An oval with a simple description

This is UML

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How should a use case be recorded/described (best way)?

A

Short, doing one thing well, to make it unambiguous

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How to do a use case/actor diagram?

A

Actors on left, separated from use cases by vertical line

Arrow from actor > use case means actor is active

Arrow from use case

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How can use cases help the project description?

A

Refines project description as you know more about what system will and will not do

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is an Active actor?

A

They generate use cases

Think of a person sitting down at computer and using program

E.g. class director requesting teachers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a Passive actor?

A

They are contacted by a use case, and don’t initiate activities

E.g. user receiving an email list of staff

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is a Timed activity?

A

System will sometimes generate activities internally, will involve passive actors outside system

Some functionality is scheduled to run later, e.g. sending out automatic reminders to users/staff

Common way is to have a TIMER actor, which interacts with use cases in normal way

17
Q

What are some problems defining system boundary?

A

Requirements being handled by actors

  • Actors are outside system, can’t handle requirements, they only generate requirements
  • Must redefine actor role and new use cases to handle these requirements
18
Q

What if you find new requirements when identifying actors and use cases?

A

Ask questions:

  • Are they necessary?
  • Are they something system would do naturally?
  • Can they be handled by an existing actor?
  • How do they affect current risk analysis?

If we added several new requirements, need to step back and look at complete system again

19
Q

Defining the scope of a project

A

Identifying actors and use cases goes a long way to defining project scope

Need to sometimes step back and look at what we have

Are system requirements all met by use cases?

Look back at project description to make sure everything is covered

If anything is missing, need to find more use cases or actors

Use case approach could generate more requirements, add to project description

20
Q

What is a non functional requirement?

A

Requirement not met by defining a use case

21
Q

What are some examples of non functional requirements?

A

Performance or security

Could apply to whole system or specific use cases

E.g. class director needs to give a weeks notice of teaching requirements to allow for recruitment (for single use case)

Info must be up to date and consistent at end of each day (system wide)

22
Q

Why should we prioritise use cases?

A

Can’t do everything, make sure important things are done and no effort wasted on unimportant features

23
Q

What is a typical priority scheme?

A

Must have
Should have
Could have
Would like to have

Must haves include core functionality and things that would be risky to exclude