service desing and requirement management how to combine two similar worlds course material 2014 v...

74

Upload: alison-ray

Post on 26-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki
Page 2: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Service Desing and Requirement Management

How to combine two similar worlds

Course Material 2014 v 0.5Marko Rintamäki

Page 3: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

About Course Material

- This material if for general training for service design and software requirement management

- Material is supportive material for class room - Material will be updated during courses- FreeNest Portable Project Platform is used to

demonstrate things only in practice. This is not limiting usage for material for other training environments (I hope )

Page 4: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Seller

Customer

Developer

Hacker

Seller

Customer

Developer

Hacker

Page 5: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Builiding Concept in early phase

Idea#1Idea#1

Customer

I would like to haveInternal Flame Drum Kit

Could you deliver it to us?

I would like to haveInternal Flame Drum Kit

Could you deliver it to us?

Actually We have severalWow features for it here

Actually We have severalWow features for it here

Ok!That‘s Interesting!

Tell me more! I love it!

Ok!That‘s Interesting!

Tell me more! I love it!

Nice looking feature propoals.We have to do some evaluationNice looking feature propoals.

We have to do some evaluation

Idea#2Idea#2

Idea#3Idea#3 Idea#4Idea#4

Idea#1Idea#1-Technology?-Knowledge-Resource-Solution?-Priority?

Page 6: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirement ManagementBetween 40% and 60% of software failures and defects are the result of poor software management and requirements definition. In plain English, this means that about half of the problems encountered could have been avoided by making it clear, from the very beginning, what the customer expected from the respective project. This is to say that the programming was fine and the developers did their job well – only they did a different job from what they were supposed to.

http://www.softwareprojects.org

Read also http://www.projectshrink.com/why-requirements-change-270.html

Page 7: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Why requirement management ?

IDEALIDEAL

Requirements help

Design

Requirements help

Design

REQ-XREQ-X

REQ-YREQ-Y

REQ-ZREQ-Z

REQ-OREQ-O

REQ

REQ

Page 8: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Old School ”Waterfall”- process model

ChangeManagement

http://en.wikipedia.org/wiki/Waterfall_model

Requirement Management

Product Life Cyle

Page 9: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Iterative Process Model - RUP

http://en.wikipedia.org/wiki/IBM_Rational_Unified_Process

Page 10: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Agile Process Model - Scrum

Page 11: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Adhoc Process Model ?

Page 12: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Traditional Definition for a requirement

- One sentence which can be verified, clear, complete, consistent, traceable, viable, necessary, implementation free

- Sentence has to be understandable, measurable and testable

http://www.slideshare.net/guest24d72f/8-characteristics-of-good-user-requirements-presentation

• Tractor has four wheels• Tractor has one exhaust pipe• Engine of tractor is capable of use flexi fuel• The tractor has a hook for trailer• The tractor shall have a enhanced driving system

• Tractor has four wheels• Tractor has one exhaust pipe• Engine of tractor is capable of use flexi fuel• The tractor has a hook for trailer• The tractor shall have a enhanced driving system

Page 13: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Functional and non-functional requirements

FunctionalRequirements

FunctionalRequirements

Non-FunctionalRequirements

Non-FunctionalRequirements

Functional Requirement

"User can select application from ui

by using wheel button”

”Tractor can be driven both directions”

Functional Requirement

"User can select application from ui

by using wheel button”

”Tractor can be driven both directions”

Non-Functional Requirement

"Performance Requirement"

”Tractor Startup should take minimum 10 seconds”

”Usability Requirement”

”User interface should be able to control using simple wheel quide”

”The hook can last max 20Kkg trailer load”

Non-Functional Requirement

"Performance Requirement"

”Tractor Startup should take minimum 10 seconds”

”Usability Requirement”

”User interface should be able to control using simple wheel quide”

”The hook can last max 20Kkg trailer load”

How it works? How fast it is?How stable it is?

Do some googling!!

Create a wiki page!!

AboutUserStory

Do some googling!!

Create a wiki page!!

AboutUserStory

Page 14: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Different Requirement categorys?

ScalabilityScalability

StabilityStability

PerformancePerformance

SecuritySecurity

PerformancePerformance

StressStress

UsabiltyUsabilty

Different points of view on systemRequirement Category‘s

„scalability“„scalability“

„Stability“

„Functionality“

Page 15: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Tracebility matrix

• http://www.guru99.com/traceability-matrix.html

Page 16: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirements and impact analysis

http://www.borland.com/products/caliber/

Page 17: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirements and Design

Business and customer

Development Team

Business Requirements

Business Requirements

TechnicalRequirements

TechnicalRequirementsNEEDNEED SOLUTIONSOLUTION

Design & ArchitectureImplentation

Design & ArchitectureImplentation

AgreementAgreement

“One of sides should not dominate in design process”“One of sides should not dominate in design process”

ImplentationImplentation

Page 18: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Problem domain vs solution domain

What we want?How to do it?

Business/Stake/Customer Requirements

Architecture/Design/Technology Requirements

Page 19: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

User interface?

• Usability of functionality?

FunctionalRequirements

FunctionalRequirements

Non-FunctionalRequirements

Non-FunctionalRequirements

User Inteface Layouts

Page 20: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

How to find requirements?• You can gather requirements from several sources: Users,

Stakeholders, Business and Development team and many others

• Requirements are trying to define nature of feature/system/solution more specific than common written document does. This information is helping development team to design a solution for a need

• There is several common methods to define and gather requirements.

• Traditional Requirement modeling (http://en.wikipedia.org/wiki/Requirements_management)

• RUP/UML based Use Case modeling (http://en.wikipedia.org/wiki/IBM_Rational_Unified_Process)

• Agile XP oriented User Story’s (http://en.wikipedia.org/wiki/Agile_software_development)

• Your task is to figure out a small difference between them

Read more http://en.wikipedia.org/wiki/Requirements_management

Page 21: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirement Gathering Process ?

• Interviews• Workshops• Prototyping• Prestudys• Research

Page 24: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Rational Unified Process model

Page 25: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Brief history of Use Cases

• Defined by Ivar Jacobson http://en.wikipedia.org/wiki/Use_case

• Used with UML (Unified Modeling Language) http://en.wikipedia.org/wiki/Unified_Modeling_Language

• RUP (Rational Unified Process) • http://fi.wikipedia.org/wiki/RUP

Page 26: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Stakeholder and actors?

Customer

Many customer roles => More actors?

Think about Roles!

Page 27: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Use Case Diagram (UML)

USE CASE

Written scenario for action. Also execeptions included

Use Case: Open IFDK Main Application

Actor: IFDK User

Step1: Gadget User touches home button

Step2: UI wakeup initiated (if standby)

Step3: Home screen is activated

Setp4: User browses applications specific icons using wheel button

Step5. Icons are moving on screen left and right

Step6: User selects application by pushing wheel button

Step7: Application starts up <4 seconds

Execptions:

1. If application cannot start there will be note on screen about problem

USE CASE

Written scenario for action. Also execeptions included

Use Case: Open IFDK Main Application

Actor: IFDK User

Step1: Gadget User touches home button

Step2: UI wakeup initiated (if standby)

Step3: Home screen is activated

Setp4: User browses applications specific icons using wheel button

Step5. Icons are moving on screen left and right

Step6: User selects application by pushing wheel button

Step7: Application starts up <4 seconds

Execptions:

1. If application cannot start there will be note on screen about problem

Use Case

A use case in software engineering and systems engineering, is a description of steps or actions between a user (or "actor") and a software system which leads the user towards something useful.[1]

Wikipedia

Page 28: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Create Use Case

ACTOR

Use Case

SYSTEM

Actor:

System: IFDK kit

Use Cacenario: Standby mode after boot

1. User turn’s on IFDK by pressing red button on front panel

2. Screen wil flash and show welcome text ”Hello my friend!”

3. User interface opens after seconds

4. Screen will show three selection buttons

5. After 30 seconds user inteface goes to standby mode

Exeption:

1. If user activates screenby tapping it standby counter will be reseted

Actor:

System: IFDK kit

Use Cacenario: Standby mode after boot

1. User turn’s on IFDK by pressing red button on front panel

2. Screen wil flash and show welcome text ”Hello my friend!”

3. User interface opens after seconds

4. Screen will show three selection buttons

5. After 30 seconds user inteface goes to standby mode

Exeption:

1. If user activates screenby tapping it standby counter will be reseted

Page 29: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Why Use Cases?

Use cases are used for define functional requirements!

Page 30: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirement Analysis

http://en.wikipedia.org/wiki/Requirements_analysishttp://en.wikipedia.org/wiki/Requirements_analysis

Page 31: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirment levels

Customer/Business/Stake Holder Requirements

Customer/Business/Stake Holder Requirements

System RequirementsSystem Requirements

Design RequirementsDesign Requirements

Component RequirementsComponent Requirements

ImplementationImplementation

ScalabilityScalability

StabilityStability

PerformancePerformance

SecuritySecurity

PerformancePerformance

StressStress

UsabiltyUsabilty

Page 32: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirement Tracebility

FunctionalRequirements

FunctionalRequirements

Non-FunctionalRequirements

Non-FunctionalRequirements

FeatureFeature

DesignDesign

ImplementationImplementation

TestTest

BugBug

Stake holderRequirementStake holderRequirement

Code…..…..………..Fix

..

Implement/Fix TASK

Implement/Fix TASK Test TASKTest TASKDesign

TASKDesignTASK

ResearchTASK

ResearchTASK

Page 33: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

http://www.sysml.org/UML

OMT

OMT

System Engineering

Google: SysML, UML, Systems engineering, Software Design,

Code

Software Engineering - ArchitectureSysML

UML

OMT

.NET, JAVA, C++

Software Engineering - Design

Requirement Management

http://www.sysml.org/

Page 34: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

(FDD) Feature Driven Development

Page 35: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

What is feature?

FeatureFeature

Feature is functionality of product/software which can be seen as one module/functionality of whole product

Internal Flame kit has WLAN support Internal Flame Kit has touch screen user interface

Feature is functionality of product/software which can be seen as one module/functionality of whole product

Internal Flame kit has WLAN support Internal Flame Kit has touch screen user interface

Page 36: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Feature Example 1

Feature X * nFeature X * n

Calory Counter:

Player can measure calories during training session. This can be seen as exercise result in web service eg. Facebook application

Energy usage

Page 37: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Feature Example 2

Table Drummer:

Player drums table board instead of drum can. IFDK kit is able to use DSP algorithm to detect correct drum sound from environment.

In training mode IFDK is trained to detect drum sounds for environment.

Table Drum ModeTable Drum Mode

DSPAlgorithm

DSPAlgorithm

Page 38: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Is product a combination of features?

Calory CounterCalory Counter

Drum MetronomeDrum Metronome

Table Drum ModeTable Drum Mode

Standby ModeStandby Mode

MIDI SupportMIDI Support

Touch Screen with single tapTouch Screen with single tap

Page 39: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Is product a combination of features

Core Software/Platform

Core Software/Platform

Calory CounterCalory Counter

Drum MetronomeDrum Metronome

Table Drum ModeTable Drum Mode Standby ModeStandby Mode

MIDI SupportMIDI Support

Touch Screen with single tapTouch Screen with single tap

Page 40: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Customer and features

Calory CounterCalory CounterDrum MetronomeDrum Metronome

Table Drum ModeTable Drum Mode

Simple Training ModeSimple Training Mode

MIDI SupportMIDI Support

Touch Screen with single tapTouch Screen with single tap

Customer Type 1 Customer Type 2 Customer Type 3 Customer Type 4

Who are our target customers?

Page 41: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Target Customers ?

Drum MetronomeDrum Metronome Table Drum ModeTable Drum Mode

Simple Training ModeSimple Training Mode

MIDI SupportMIDI Support

Touch Screen with single tapTouch Screen with single tap

Customer Type 1 Customer Type 2 Customer Type 3 Customer Type 4

What is our key customer?

Primary Target

Calory CounterCalory Counter

Secondary Target

Page 42: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Roadmapping features

Requirement

Requirement

Requirement USE CASE #2

USE CASE #1

USE CASE #3

Requirement

Requirement

Requirement

USE CASE #1 User Story #1

User Story #2

User Story #3

RequirementRequirement

RequirementRequirement USE CASE #2USE CASE #2

USE CASE #1

USE CASE #3USE CASE #3

RequirementRequirement USE CASE #1USE CASE #1 User Story #1User Story #1

Requirement

Requirement

Requirement USE CASE #2

USE CASE #1

USE CASE #3

Requirement

Requirement

Requirement

USE CASE #1 User Story #1

User Story #2

User Story #3

RequirementRequirement

RequirementRequirement

RequirementRequirement USE CASE #2USE CASE #2

USE CASE #1

USE CASE #3USE CASE #3

RequirementRequirement

RequirementRequirement

RequirementRequirement

USE CASE #1USE CASE #1 User Story #1User Story #1

User Story #2User Story #2

User Story #3User Story #3

Requirement

Requirement

Requirement USE CASE #2

USE CASE #1

USE CASE #3

Requirement

Requirement

Requirement

USE CASE #1RequirementRequirement

RequirementRequirement USE CASE #2USE CASE #2

USE CASE #1RequirementRequirement

RequirementRequirement

USE CASE #1USE CASE #1

Release 0.1

Release 1.1 Release 1.2

Feature: Simple Training Mode

Feature: Table Drum mode

Feature Touch Screen with single tap

Release 1.0

TIME TO MARKET!! For Target Group 3TIME TO MARKET!! For Target Group 3

CORE/Platform Software Development

TIME TO MARKET!! For Target Group 2TIME TO MARKET!! For Target Group 2

TIME TO MARKET!! For Target Group 1TIME TO MARKET!! For Target Group 1

Page 43: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirement

Requirement FEATURE

Requirement

Requirement

WHERE IS STARTING POINT?“Let’s define first…”

Page 44: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Functional Requirement

DEFINED USE CASE

DEFINE USE CASE

Functional Requirement

Functional Requirement

Non Functional Requirement

Can Lead to

Helps to define!

Page 45: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Team Work:

1. SELECT TWO DIFFERENT DOMAINS

Use Paper

2. DEFINE ACTOR’s ACCORDING DOMAIN

DETECT ALSO ROLES

Use Paper

3. DEFINE 10 EXAMPLE USE CASE’s FOR DOMAIN

Use Paper

DEFINE DRAFT FEATURES PACKS

Page 46: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Card GameFunctional Requirement Non-Functional

Requirement

LOAD SECURITY MAINTENANCE

IMPLEMENTATION

Non-Functional Requirement

Non-Functional Requirement

Non-Functional Requirement

Non-Functional RequirementAgile

Epic / Theme

SCALING

FUNCTION

SAFETY

Non-Functional Requirement

RECOVERY?

NON FUNCTIONAL

NON FUNCTIONAL

PERFORMANCE?

Main {….} ?

Page 47: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Card Game

Stake Holders? Customer / User ? Business Request ?

Use Case NON FUNCTIONAL

PERFORMANCE?

SCALINGUSABILITY

UC

AcceptanceCriteria? RECOVERY?

NON FUNCTIONAL

User Story ?

User Story Addition +

SCENARIO ?

Traditional Feature

?

Page 48: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Practice: Define some requirements for selected feature

Functional RequirementsFunctional Requirements Non-Functional RequirementsNon-Functional Requirements

Page 49: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Who?When?How?Cost?

Who?When?How?Cost?

Page 50: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Simple Requirment Process

DefinesDefines

Feature X * nFeature X * n

FunctionalRequirements

FunctionalRequirements

Non-FunctionalRequirements

Non-FunctionalRequirements

Use CasesUse Cases

Vision of product

Problem Domain Solution Domain

Customer/Marketing/business

User StorysUser Storys

FEATUREVISION/NEED/

PROPOSAL

FEATUREVISION/NEED/

PROPOSAL

YOU!YOU!

Design documents & implementation

Test Case

Page 51: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Agile Process?

Service DesignPhase

Sprint 1

Sprint 2

Sprint 3

Sprint 4

Sprint 0

http://en.wikipedia.org/wiki/Agile_software_development

Product Life Cyle

Page 52: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Creating Product vision in a modern way

• Service Desing• Customer Centric• Provide evidences- prototyping/Mockup• Lean requirement gathering (User Storys) • Living documents (Wikis)• User Storys

Page 53: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

New requirement gathering process

Service Design Methods

Define Epic Storys -User StorysDefine Features

Prototyping

-Prototyping-Interviews-Workshops

Page 54: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Vision Specification instead of requirement specification?

Part of traditional requirement specification + Epics / Major features defined

Compilation of User Stories

Important requirement attributes specified

Epics / Features definedDesign GuidelinesUser Interface Prototypes

Use Case if needed?

Page 55: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Brief History of User Story

• Used in agile development process for requirement definition and gathering

• Backlog Item• Simple way to describe needed functionality

Page 56: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Use Story Examples

• As a user I would like to get notifications if get a new message from other users

• As a operator I would like to disable misbehaving user account

• As a owner of product x I would like to be able to reset it using one button

• As a selling person I would like to be able to set product X running a demo mode without my personal presence.

Page 57: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Concepts?

What means a feature, requirement, use cases, and user story

Page 58: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Practice: Create User Storys

USER STORY:

As a bad behavin person I cannot access IFDK using wlan without encryption

How to test?Acceptance Criteria?

USER STORY:

As a bad behavin person I cannot access IFDK using wlan without encryption

How to test?Acceptance Criteria?

USER STORY:

As a member of audience I can hear effect sound that player is having electrical shocks

How to test?Acceptance Criteria?

USER STORY:

As a member of audience I can hear effect sound that player is having electrical shocks

How to test?Acceptance Criteria?

Page 59: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Agile requirement model

Epic Story

User Story

UserStory1

RequirementId0002

EpicStory0001

AcceptanceCriterias?

As a customer I would like to pay with multiple ways

As a user I would like to pay with Visa

UserStory2 UserStory3

As a user I would like to pay with Bitcoin

As a user I would like to pay with Visa

Page 60: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

USE CASE:_____________________________________________

Actor:__________________________________

Scenario:

Execeptions:

USE CASE:_____________________________________________

Actor:__________________________________

Scenario:

Execeptions:

Page 61: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

EPIC STORY: As a user I would like to use product which is fast to startup

Story Points:

Notes:

• Gadget should startup <5seconds

How to show it is tested? (eg. Acceptance Criteria)

Use timer to verify startup time. Measure time from power on to main screen activated.

• Time

EPIC STORY: As a user I would like to use product which is fast to startup

Story Points:

Notes:

• Gadget should startup <5seconds

How to show it is tested? (eg. Acceptance Criteria)

Use timer to verify startup time. Measure time from power on to main screen activated.

• Time

USER STORY: As user I would like to see startup message on screen, so I could be sure a gadget is started up

Story Points:

Notes:

• Gadget should startup <5seconds

How to show it is tested? (eg. Acceptance Criteria)

Use timer to verify startup time. Measure time from power on to main screen activated.

• Time

USER STORY: As user I would like to see startup message on screen, so I could be sure a gadget is started up

Story Points:

Notes:

• Gadget should startup <5seconds

How to show it is tested? (eg. Acceptance Criteria)

Use timer to verify startup time. Measure time from power on to main screen activated.

• Time

Page 62: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

USER STORY:

Story Points:

Notes:

How to show it is tested? (eg. Acceptance Criteria)

USER STORY:

Story Points:

Notes:

How to show it is tested? (eg. Acceptance Criteria)

USER STORY:

Story Points:

Notes:

How to show it is tested? (eg. Acceptance Criteria)

USER STORY:

Story Points:

Notes:

How to show it is tested? (eg. Acceptance Criteria)

Page 63: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Requirement SpecificationGeneral Requirement Specification

System Use Cases

Feature1 /Epic 1

-Service Desing-UI Proto Design-User Storys-Requirements

Feature2 /Epic 2

-Service Desing-UI Proto Design-User Storys-Requirements

Page 64: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Team Work:Learn to Use VISIO and TRAC for documentation:

1. Draw all selected Use Cases with Microsoft VisioYou can use also DIA on Linux platform

2. Define Actors as wiki pages links…

Eg. ActorCustomer

3. Create own wiki page for all defined Use CasesUse ActorWikiPage linking in documentation!

4. Attach UseCase Diagrams (exported as JPG) directly on Use Case specific Wiki Pages

Define step and all needed.

PLEASE TRY TO USE WIKI LINKING AS MUSH AS POSSIBLE!

Page 65: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

User Story

USER STORY Examples

Simple phrase describes a need. This can lead to several other storys!

"As user I would like to open application easily”

As a user I would like to select application from icon list on screen

As a user I would like to configure amount of application icons on screen

"As a user I would like to use wheel for speeding up selection process"

"As a user I would like to initate application fast enough"

"As a tractor driver I would like to have enhanced driving system”

USER STORY Examples

Simple phrase describes a need. This can lead to several other storys!

"As user I would like to open application easily”

As a user I would like to select application from icon list on screen

As a user I would like to configure amount of application icons on screen

"As a user I would like to use wheel for speeding up selection process"

"As a user I would like to initate application fast enough"

"As a tractor driver I would like to have enhanced driving system”

User StoryUser Story

Page 66: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Use Case, User Story & Requirement Requirement

Measurable Testable

RequirementMeasurable

Testable

USE CASE

Written scenario for action. Also execeptions included

Use Case: Open Application

Actor: Gadget User

Step1: Gadget User touches home button

Step2: UI wakeup initiated (if standby)

Step3: Home screen is activated

Setp4: User browses applications specific icons using wheel button

Step5. Icons are moving on screen left and right

Step6: User selects application by pushing wheel button

Step7: Application starts up <4 seconds

Execptions:1. If application cannot start there will be note on screen about problem

USE CASE

Written scenario for action. Also execeptions included

Use Case: Open Application

Actor: Gadget User

Step1: Gadget User touches home button

Step2: UI wakeup initiated (if standby)

Step3: Home screen is activated

Setp4: User browses applications specific icons using wheel button

Step5. Icons are moving on screen left and right

Step6: User selects application by pushing wheel button

Step7: Application starts up <4 seconds

Execptions:1. If application cannot start there will be note on screen about problem

USER STORY

Simple phrase describes a need. This can lead to several other storys!

"As user I would like to open main menu using left

button"

"As a user I would like to use mouse wheel for

zoom"

"As a user I would like to initate application fast

enough"

USER STORY

Simple phrase describes a need. This can lead to several other storys!

"As user I would like to open main menu using left

button"

"As a user I would like to use mouse wheel for

zoom"

"As a user I would like to initate application fast

enough"

Non Functional Requirement

"Performance Requirement"

"Application Startup should take minimum 4 seconds"

Non Functional Requirement

"Performance Requirement"

"Application Startup should take minimum 4 seconds"

Functional Requirements

"User can select application from ui

by using wheel button"

Functional Requirements

"User can select application from ui

by using wheel button"

Page 67: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Practice: Define specific requirements for feature

• Define 10 requirements in a team for a selected product

Page 68: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Customer Journey Map

Page 69: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Service Desing

• What is service design?• Who needs it?• How service design is linked with requirement

management

Page 70: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Modeling….

How to understand better what is needed ???

?

Page 71: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Important concepts

• Stake Holders• Service Design • Requirement Capturing • System Design• Software Design• Hardware Design

Service

System

Hardware Software

Customer

Stakeholder / Share holders

Vision

Implementation

Page 72: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Service Desing

Service design is the activity of planning and organizing people, infrastructure, communication and material components of a service in order to improve its quality and the interaction between service provider and customers. The purpose of service design methodologies is to design according to the needs of customers or participants, so that the service is user-friendly, competitive and relevant to the customers.

• Wikipedia• http://en.wikipedia.org/wiki/Service_design •

Page 73: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Tools for Service Desing activities

http://sdt.fi/en

Download a tool set for you!

Page 74: Service Desing and Requirement Management How to combine two similar worlds Course Material 2014 v 0.5 Marko Rintamäki

Logo

• The main logo consists of two elements, the leaf and the text laying horizontally.

• You can also use the logo with the FreeNest text under the leaf, if you need. Don’t do this often, the main logo should be the horizontal one.