• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Im Not There - Organizing Requirements
 

Im Not There - Organizing Requirements

on

  • 339 views

"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 ...

"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.

Statistics

Views

Total Views
339
Views on SlideShare
339
Embed Views
0

Actions

Likes
0
Downloads
3
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Im Not There - Organizing Requirements Im Not There - Organizing Requirements Presentation Transcript

    • 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.com/in/garybellamy 2
    • 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
    • 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
    • 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
    • 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 Gary Bellamy http://ca.linkedin.com/in/garybellamy 9
    • 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 boundaries for business domains 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 11
    • 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 boundaries for business domains – Showing components and their relationships 19/11/2013 Gary Bellamy http://ca.linkedin.com/in/garybellamy 13
    • 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 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
    • 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 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
    • 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 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
    • 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 http://ca.linkedin.com/in/garybellamy 27
    • 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
    • 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 -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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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