0
Tuesday, November 19, 2013
Presenter: Gary Bellamy
BABOK
• Task 6.2:
Organize Requirements
• Chapter 6:
Requirements Analysis

19/11/2013

Gary Bellamy http://ca.linkedin.co...
Overview
•
•
•
•
•
•

Why Organize Requirements
Models
Views & Viewpoints (level of abstraction)
Key Modeling Concepts
Rel...
Purpose
The purpose of organizing requirements is
to create a set of views of the requirements
for the new business soluti...
Objectives
• Understand which models are
appropriate for the business domain and
solution scope.
• Identify model relation...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

6
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

7
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

8
What is a Model?
• Supports analysis, communication and
understanding by:
– Describing situation or problem

19/11/2013

G...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

10
What is a Model?
• Supports analysis, communication and
understanding by:
– Describing situation or problem
– Describing b...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

12
What is a Model?
• Supports analysis, communication and
understanding by:
– Describing situation or problem
– Describing b...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

14
What is a Model?
• Supports analysis, communication and
understanding by:
– Describing situation or problem
– Describing b...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

16
What is a Model?
• Supports analysis, communication and
understanding by:
– Describing situation or problem
– Describing b...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

18
What is a Model?
• Supports analysis, communication and
understanding by:
– Describing situation or problem
– Describing b...
What is a Model?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

20
Views and Perspectives

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

21
Views and Perspectives

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

22
Views and Perspectives

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

23
Views and Perspectives

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

24
Views and Perspectives

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

25
Views and Perspectives

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

26
BA Modeling Concepts
Concepts &
Relationships

Events

Rules

User C.
Profiles
Roles

Processes

19/11/2013

Gary Bellamy ...
Choosing Models
• Relevance to domain
• What concepts are covered
– Comprehensive
– Complete
– Consistent
– “Complimentary...
Where’s Bob?

?
19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

29
Where’s Bob?

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

30
View trailer

19/11/2013

Gary Bellamy http://ca.linkedin.com/in/garybellamy

31
Class Diagram
• Describes concepts
relevant to domain
– Attributes
– Relationships

Person
-Attribute 1
-Attribute 2
-Attr...
Class Diagram: Online Bank
Customer

Transaction

-ID
-First Name
-Last Name
-Email
-Address

-ID
-Type
-Date
-Amount

0.....
State Diagram
• Shows how condition
of concept changes
in response to events
• Sequence of states
through lifecycle
• Stat...
State Diagram: Bank Account
Open

=>$1000

Minimum Balance
Withdraw Funds

Add Funds
> Current Balance

Zero Balance

Clos...
Business Rules
ACTION

Structured English
• <event> <condition> <action>
At month end overdrawn accounts accrue an interes...
Business Rules
1

2

3

4

5

6

7

8

FACTORS

Account status is Frozen

Y

Y

Y

Y

N

N

N

N

Date = Month End

Y

Y

...
Use Case
Bank
Withdraw
Cash

Transfer
Money

Deposit
Money

View
History

Write
Cheque

Pay Bill
Customer

Receive
Loan

1...
Use Case
Bank Machine
Withdraw
Cash

Transfer
Money

Deposit
Money

View
History

Write
Cheque

Pay Bill
Customer

Receive...
Use Case
Online Bank
Transfer
Money
View
History

«uses»
«uses»
Select Account
«uses»

Pay Bill

Customer

19/11/2013

Rep...
Use Case Components
•
•
•
•
•

Pre condition (state of concept)
Trigger (event)
Main Flow (most likely scenario)
Post cond...
Use Case Example
Use case ID: UC-3
Use case name: Pay Bill
Pre condition: Customer has an open account
Trigger: Customer r...
Use Case Scenarios
Main Flow:

1.
2.
3.
4.
5.
6.
7.
8.

9.

System lists payees linked to customer.
Customer selects a pay...
Tying the Models Together

Control

Use Case

Actor = Role
Trigger = Event
Flows = Processes
Pre and Post Conditions = Sta...
Review
1.
2.

Organize Requirements to create C3 views
Views and Viewpoints:
a)
b)
c)

3.

BA Modeling Concepts:
a)
b)
c)
...
Upcoming SlideShare
Loading in...5
×

Im Not There - Organizing Requirements

308

Published on

"I'm Not There" is an award winning biographical film about the artist formerly known as Robert Allen Zimmerman. Though none of the six main characters explicitly represent Bob Dylan, they each manage to convey a different quality about the 60's music legend. Collectively, the six 'not Bob Dylans' do a better job of capturing the essence of the man than any single literal portrayal ever could. This unconventional narrative provides the perfect metaphor for the BABOK task, Organize Requirements.
The purpose of organizing requirements is to create a set of views of the requirements for a new business solution that are comprehensive, complete, consistent, and understood from all stakeholder perspectives. As stated in the BABOK, the objectives of this task are to understand which models are appropriate for the business domain and solution scope, and to identify model interrelationships and dependencies.
This entertaining presentation examines the five concepts that are key to requirements modeling and demonstrates how they are captured using four specific techniques: use cases, data models, state diagrams and business rules. You'll not only learn the fundamentals of each technique, but how to combine them in a way that each model can be used to verify the other. Like the six "not Bob Dylans", the resulting set of complimentary models creates a more complete and holistic view of the solution than any literal description ever could.

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
308
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Im Not There - Organizing Requirements"

  1. 1. Tuesday, November 19, 2013 Presenter: Gary Bellamy
  2. 2. BABOK • Task 6.2: Organize Requirements • Chapter 6: Requirements Analysis 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 2
  3. 3. Overview • • • • • • Why Organize Requirements Models Views & Viewpoints (level of abstraction) Key Modeling Concepts Relationships and Interdependencies Illustrative Set of Models: – – – – 19/11/2013 Use Case Models Class Diagrams State Diagrams Business Rules Gary Bellamy http://ca.linkedin.com/in/garybellamy 3
  4. 4. Purpose The purpose of organizing requirements is to create a set of views of the requirements for the new business solution that are comprehensive, complete, consistent, and understood from all stakeholder perspectives. BABOK Guide Version 2.0, Section 6.2 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 4
  5. 5. Objectives • Understand which models are appropriate for the business domain and solution scope. • Identify model relationships and interdependencies. BABOK Guide Version 2.0, Section 6.2 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 5
  6. 6. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 6
  7. 7. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 7
  8. 8. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 8
  9. 9. What is a Model? • Supports analysis, communication and understanding by: – Describing situation or problem 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 9
  10. 10. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 10
  11. 11. What is a Model? • Supports analysis, communication and understanding by: – Describing situation or problem – Describing boundaries for business domains 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 11
  12. 12. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 12
  13. 13. What is a Model? • Supports analysis, communication and understanding by: – Describing situation or problem – Describing boundaries for business domains – Showing components and their relationships 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 13
  14. 14. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 14
  15. 15. What is a Model? • Supports analysis, communication and understanding by: – Describing situation or problem – Describing boundaries for business domains – Showing components and their relationships – Describing thought processes or action flows 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 15
  16. 16. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 16
  17. 17. What is a Model? • Supports analysis, communication and understanding by: – Describing situation or problem – Describing boundaries for business domains – Showing components and their relationships – Describing thought processes or action flows – Showing business logic 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 17
  18. 18. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 18
  19. 19. What is a Model? • Supports analysis, communication and understanding by: – Describing situation or problem – Describing boundaries for business domains – Showing components and their relationships – Describing thought processes or action flows – Showing business logic – Categorizing and creating hierarchies of items 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 19
  20. 20. What is a Model? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 20
  21. 21. Views and Perspectives 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 21
  22. 22. Views and Perspectives 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 22
  23. 23. Views and Perspectives 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 23
  24. 24. Views and Perspectives 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 24
  25. 25. Views and Perspectives 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 25
  26. 26. Views and Perspectives 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 26
  27. 27. BA Modeling Concepts Concepts & Relationships Events Rules User C. Profiles Roles Processes 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 27
  28. 28. Choosing Models • Relevance to domain • What concepts are covered – Comprehensive – Complete – Consistent – “Complimentary” • Relationships and interdependencies 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 28
  29. 29. Where’s Bob? ? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 29
  30. 30. Where’s Bob? 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 30
  31. 31. View trailer 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 31
  32. 32. Class Diagram • Describes concepts relevant to domain – Attributes – Relationships Person -Attribute 1 -Attribute 2 -Attribute 3 -Etc. Place 0..* 1..1 -can be in -Attribute 1 -Attribute 2 -Attribute 3 -Etc. 1..1 0..1 -can be location of 0..* Thing 0..* -can have 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy -Attribute 1 -Attribute 2 -Attribute 3 -Etc. 32
  33. 33. Class Diagram: Online Bank Customer Transaction -ID -First Name -Last Name -Email -Address -ID -Type -Date -Amount 0..* 1..1 Payee 1..2 0..* -ID -Name -Customer Account ID 1..1 1..* Account 1..* 19/11/2013 -Number -Type -Overdraft -Minimum Balance 1..1 Gary Bellamy http://ca.linkedin.com/in/garybellamy 33
  34. 34. State Diagram • Shows how condition of concept changes in response to events • Sequence of states through lifecycle • States are mutually exclusive • Rules specific to each state 19/11/2013 Composite State State Initial State State Event Event Terminal State State Event Event State Gary Bellamy http://ca.linkedin.com/in/garybellamy 34
  35. 35. State Diagram: Bank Account Open =>$1000 Minimum Balance Withdraw Funds Add Funds > Current Balance Zero Balance Close Overdraft < Current Balance > Current Balance < $1000 Positive Balance Withdraw Funds < Current Balance Freeze Unfreeze Frozen 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 35
  36. 36. Business Rules ACTION Structured English • <event> <condition> <action> At month end overdrawn accounts accrue an interest penalty. • IF <condition is true> THEN <action> IF time of transaction is outside business hours THEN set date to next business day. INFERENCE CONSTRAINT • <term | inference> <must | must not> <action> Cheque deposits greater than current balance must be held for four business days. • <term> IS CORRECTLY COMPLETED ONLY IF <condition is true> Bill payment IS CORRECTLY COMPLETED ONLY IF the payee billing system provides a confirmation code. • <term | inference> NOT <action> IF <term | inference> Monthly fees are NOT charged IF customer maintains a minimum monthly balance of $1000. • IF <condition is true> THEN <inference> IF mortgage renewal date is less than 90 days from current date THEN customer is eligible to renew without interest penalty. 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 36
  37. 37. Business Rules 1 2 3 4 5 6 7 8 FACTORS Account status is Frozen Y Y Y Y N N N N Date = Month End Y Y N N Y Y N N Balance is >= $1000 Y N Y N Y N Y N ACTIONS Decision Table Accrue Interest X X X X 19/11/2013 Charge service fees Gary Bellamy http://ca.linkedin.com/in/garybellamy X 37
  38. 38. Use Case Bank Withdraw Cash Transfer Money Deposit Money View History Write Cheque Pay Bill Customer Receive Loan 19/11/2013 Repay Loan Gary Bellamy http://ca.linkedin.com/in/garybellamy 38
  39. 39. Use Case Bank Machine Withdraw Cash Transfer Money Deposit Money View History Write Cheque Pay Bill Customer Receive Loan 19/11/2013 Repay Loan Gary Bellamy http://ca.linkedin.com/in/garybellamy 39
  40. 40. Use Case Online Bank Transfer Money View History «uses» «uses» Select Account «uses» Pay Bill Customer 19/11/2013 Repay Loan «extends» Add Payee Gary Bellamy http://ca.linkedin.com/in/garybellamy Payee Billing System 40
  41. 41. Use Case Components • • • • • Pre condition (state of concept) Trigger (event) Main Flow (most likely scenario) Post condition (actor goal; altered state) Alternate Flows (other scenarios resulting in post condition) • Exceptions (scenarios that do not result in post-condition – e.g., errors) 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 41
  42. 42. Use Case Example Use case ID: UC-3 Use case name: Pay Bill Pre condition: Customer has an open account Trigger: Customer requests to pay bill Post condition: Selected bill is paid as of the transaction date. 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 42
  43. 43. Use Case Scenarios Main Flow: 1. 2. 3. 4. 5. 6. 7. 8. 9. System lists payees linked to customer. Customer selects a payee. (Alternate Flow 1: Customer adds payee; Return Step 4) Customer selects account from which to pay (Includes: Select Account) System requests amount to be paid. Customer provides amount. System checks if selected account has sufficient funds. (See Rule 123) Selected account has sufficient funds. (Alternate flow 2: Selected account does not have sufficient funds; Return Step 3) System provides date the transaction will be recorded (See Rule 47) and asks customer for confirmation. Customer confirms the transaction. (Exception: Customer cancels the transaction) 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 43
  44. 44. Tying the Models Together Control Use Case Actor = Role Trigger = Event Flows = Processes Pre and Post Conditions = States Achieve goals through/ Affected by Concepts & Relationships Transform Business Rules Class State Events and Concepts Describe 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 44
  45. 45. Review 1. 2. Organize Requirements to create C3 views Views and Viewpoints: a) b) c) 3. BA Modeling Concepts: a) b) c) d) e) 4. 19/11/2013 Business/System Black Box/White Box Levels of Abstraction User Classes/Profiles/Roles Concepts and Relationships Events Processes Business Rules Relationships and Dependencies Gary Bellamy http://ca.linkedin.com/in/garybellamy 45
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×