SlideShare a Scribd company logo
1 of 32
Download to read offline
Material For Software Testing
       Course – Day3


     Features & Requirements
   Marko ”NarsuMan” Rintamäki
              2011
Our focus system IFDK
Requirement Management


  What means Requirement Manangement?


What means a feature, requirement, use cases,
               and user story
Different points of view on IFDK system




    User




      Seller
                Developer
Requirements from product development point of view

Requirement Category‘s              Different points of view on system


   Scalability


    Stability


   Performance


     Security

                         „Functionality“
   Performance


      Stress


     Usabilty                  „Stability
                               “                 „scalability
                                                 “
Requirement Management                                              continues…




Between 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
How to find requirements?
●   You can find 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
Why we need requirements from testing point of view?

                                 ”Traditional Testing Levels”

„Test Engineers Area“


   Customer Requirements                                                Acceptance Testing




      System Requirements                                             System Testing




           Design Requirements                                  Integration Testing



„Developer's Area“
                             Component
                                                      Unit Testing
                           Requirements




                                          Implementation
Feature


           Feature




Feature is functionality of
product/software which
can be seen as one module
of whole product
                                 Do some googling!!
Internal Flame kit has WLAN
                                 Create a wiki page!!
support Internal Flame Kit has
touch screen user interface      AboutUserStory
Who is defining a Feature?




               I would like to have               Ok!
            Internal Flame Drum Kit           What's a plan
           Could you deliver it to us?




                       Actually We have several       Nice looking feature propoals.
                          features for it here        We have to do some evaluation
Customer




                                                                          -Technology?
                 Idea#1                                        Idea#1
                                                                          -Knowledge
                                                                          -Resource
                          Idea#2
                                                                          -Solution?
                               Idea#3      Idea#4                         -Priority?
Is product a combination of features?

                                        Standby Mode



     Table Drum Mode


                                             MIDI Support


            Calory Counter

                                                 Touch Screen with single tap

                       Drum Metronome
Is product a combination of features?


               Table Drum Mode                      Standby Mode




     Calory Counter                                            MIDI Support
                                 Core Software




              Drum Metronome                 Touch Screen with single tap
Practice: Defining Features



    Play problem domain
   card game with team to
    search for features?
Feature example 1                   (Invented on course 2009-2010)




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



                           Feature X * n




      Energy usage
Feature example 2                       (Invented on course 2009-2010)




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 Mode




                                       DSP
                                    Algorithm
Customer/Business Requirements?



                                                Touch Screen with single tap


                                    Simple Training Mode


                    Drum Metronome                    Calory Counter              MIDI Support



                                                     Table Drum Mode


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



                                                            Who are our target customers?
Customer Strategy



                                                       Touch Screen with single tap


                                           Simple Training Mode


   Calory Counter              Drum Metronome               Table Drum Mode              MIDI Support



                  Primary Target                          Secondary Target

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



                                        What is our key customer?
Features and release planning
              TIME TO MARKET!! For Target Group 1

              Feature: Simple Training Mode
                  Requirement   Requirement          USE CASE #1          User Story #1



                  Requirement   Requirement          USE CASE #2          User Story #2



                  Requirement   Requirement          USE CASE #3          User Story #3




                      TIME TO MARKET!! For Target Group 2
                                   Feature Touch Screen with single tap
  CORE/Platform Software                      Requirement          Requirement            USE CASE #1         User Story #1



  Development                                 Requirement          Requirement            USE CASE #2         User Story #2



                                              Requirement          Requirement            USE CASE #3         User Story #3




                                TIME TO MARKET!! For Target Group 3
                                                                                    Feature: Table Drum mode
                                                                                                Requirement          Requirement    USE CASE #1



                                                                                                Requirement          Requirement    USE CASE #2



                                                                                                Requirement          Requirement    USE CASE #3




Release 0.1
                                    Release 1.0                                  Release 1.1                                       Release 1.2
Simple Requirement Management Process

   Problem               Solution
   Domain                Domain
                                    Feature X * n
   Vision of
   product                             Functional
                                      Requirements

                                     Non-Functional
                                     Requirements            Test Case

                                     Defines


                                        Use Cases
                                                             Design
                                                             documents &
                                     User Storys
Customer/Marketing/                                          implementation
      business
       FEATURE
 VISION/NEED/PROPOSAL


                                                      YOU!
                         Solution
                         Proposal
Traditional Requirement Modeling

    • A requirement shall be a complete sentence.
    • Sentence has to be understandable, measurable and
      testable


                                •   ReqId1 - Tractor has four wheels
                                •   ReqId2 - Tractor has one exhaust pipe
                                •   ReqId3 - Engine of tractor is capable of use flexi fuel
                                •   ReqId4 – The tractor has a hook for trailer
                                •   ReqId5- The tractor shall have a enhanced driving system




     Google: requirement specification template and SRS
            Software Requirement Specification
Functional and non-functional
                   requirements

                                    Functional                           Non-Functional
                                   Requirements                          Requirements


                                 Functional                         Non-Functional
                                Requirement                          Requirement
How it works?            "User can select application from ui                                       How fast it is?
                                                                 "Performance Requirement"
                               by using wheel button”                                               How stable it is?
                                                                  ”Tractor Startup should take
                             ”Tractor can be driven both             minimum 10 seconds”
                                      directions”
                                                                   ”Usability Requirement”

                                                                ”User interface should be able to
                                                                control using simple wheel quide”
  Do some googling!!
                                                                 ”The hook can last max 20Kkg
  Create a wiki page!!                                                    trailer load”
  AboutUserStory
Traditional Requirement Modelling and Features




                                                      Functionality


                                                 User Interface Design?
                             Functional
                            Requirements
        Feature X                                       Usability

                           Non-Functional               Security
                           Requirements

                                                      Performance

                                                        Stability


                                                          .......
Practice: Define traditional requirements for you
                     feature

     Functional Requirements   Non-Functional Requirements
Non-Functional Requirement category
             examples

Functionality                 Stability                                              Security
                                                           Usabilty
                             Is our implementation
                                                         Is implementation        Is our implementation
 Implementation should
                           stable on situation like      usable for target        secure enough against
   work like this way
                                    zzzZZZ?                  customer?               attack type xxx?




  Performance                    Stress                 Scalability
How good performance our    How much we can stress                                Maintenance
 implementation provides   our implentation without                                Is implementation
                                  a problems?         How our implementation is    easy to maintain?
   against competitor?                                 scaling in situation X?
Simple Requirement Management Process

 Problem               Solution
 Domain                Domain
                                  Feature X * n
 Vision of
 product                             Functional
                                    Requirements

                                   Non-Functional
                                   Requirements            Test Case

                                   Defines

                                    Use Cases
                                                           Design
                                                           documents &
                                   User Storys
    Customer                                               implementation
      FEATURE
VISION/NEED/PROPOSAL



                                                    YOU!
                       Solution
                       Proposal
Use Case

                                                            Use Cases

                                                              USE CASE

            Use Case
                             Written scenario for action. Also execeptions included

                             Use Case: Open Application


A use case in software       Actor: IFDK User


engineering and systems      Step1: Gadget User touches home button

engineering, is a            Step2: UI wakeup initiated (if standby)

description of steps or      Step3: Home screen is activated

actions between a user (or   Setp4: User browses applications specific icons using wheel button

"actor") and a software      Step5. Icons are moving on screen left and right
system which leads the       Step6: User selects application by pushing wheel button
user towards something
                             Step7: Application starts up <4 seconds
useful.[1]
                             Execptions:

Wikipedia                    1. If application cannot start there will be note on screen about problem
Practice: Create Use Cases


                          Actor: Player
              SYSTEM      System: IFDK kit
                          UC Scenario: 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!”
               Use Case   3.    User interface opens after
                                seconds
                          4.    Screen will show three selection
                                buttons
                          5.    After 30 seconds user inteface
                                goes to standby mode


                          Exeption:
ACTOR
                          If user activates screenby tapping it
                          standby counter will be reseted
Simple Requirement Management Process

 Problem               Solution
 Domain                Domain
                                  Feature X * n
 Vision of
 product                             Functional
                                    Requirements

                                   Non-Functional
                                   Requirements            Test Case

                                   Defines

                                    Use Cases
                                                           Design
                                                           documents &
                                   User Storys
    Customer                                               implementation
      FEATURE
VISION/NEED/PROPOSAL



                                                    YOU!
                       Solution
                       Proposal
User Story

                                   User Story


                             USER STORY
Do some googling!!
                       Simple phrase describes a need.
Create a wiki page!!   This can lead to several other
                       storys!
AboutUserStory



                         "As user I would like to open
                              application easily"

                         "As a user I would like to use
                        wheel for simplify ui interaction"

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

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


                                EpicStory0001

Epic Story                      As a Customer I would
                                  like to have top
                                   quality product




User Story                                          UserStory0002
               UserStory0001                       Gadget should
                                                    have >30fps
                 As a user                         UI performace
              I would like to
                use product
             Which is fast to
                  power on                         UserStory0003
                                                  Gadget should
                                                Startup <5seconds
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 member of audience I can hear effect sound that player is having
       electrical shocks

       How to test?
       Acceptance Criteria?
Use Case, User Story, Requirement
                                             USER STORY                                   USE CASE
        Requirement
           Measurable                  Simple phrase describes a need.
            Testable                   This can lead to several other
                                       storys!                           Written scenario for action. Also execeptions
                                                                         included

                                                                         Use Case: Open Application

        Functional                                                       Actor: Gadget User

       Requirement                                                       Step1: Gadget User touches home button

"User can select application from ui                                     Step2: UI wakeup initiated (if standby)
                                         "As user I would like to
      by using wheel button"             open application easily"        Step3: Home screen is activated

                                                                         Setp4: User browses applications specific icons
                                        "As a user I would like to       using wheel button
                                        use wheel for simplify ui
                                                                         Step5. Icons are moving on screen left and right
     Non Functional                            interaction"
      Requirement                                                        Step6: User selects application by pushing wheel
                                                                         button
                                        "As a user I would like to
   "Performance Requirement"             initate application fast        Step7: Application starts up <4 seconds
                                                 enough"                 Execptions:
"Application Startup should                                              1. If application cannot start there will be note on
 take minimum 4 seconds"                                                 screen about problem

More Related Content

Similar to Requirement Management for IFDK

User Experience Design In Healthcare | Fresh Tilled Soil
User Experience Design In Healthcare | Fresh Tilled SoilUser Experience Design In Healthcare | Fresh Tilled Soil
User Experience Design In Healthcare | Fresh Tilled SoilFresh Tilled Soil
 
仕様決定、部品化、ディレクションがなぜ重要か
仕様決定、部品化、ディレクションがなぜ重要か仕様決定、部品化、ディレクションがなぜ重要か
仕様決定、部品化、ディレクションがなぜ重要かKohei Otsuka
 
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platformPorting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platformMicrosoft Mobile Developer
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignmentirrealimagens
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignmentkharismaaa123
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignmentCarrie Deans
 
IG3 Assignment
 IG3 Assignment IG3 Assignment
IG3 Assignmentpgp23
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignmentSamHill129
 
Ashleigh darlington ig3 2012_assignment
Ashleigh darlington  ig3 2012_assignmentAshleigh darlington  ig3 2012_assignment
Ashleigh darlington ig3 2012_assignmentsnailguinproductions
 
Ashleigh darlington ig3 2012_assignment
Ashleigh darlington  ig3 2012_assignmentAshleigh darlington  ig3 2012_assignment
Ashleigh darlington ig3 2012_assignmentsnailguinproductions
 
IG3 Assignment Breif
 IG3 Assignment Breif IG3 Assignment Breif
IG3 Assignment BreifLuke Finlay
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignmentsophiemca1
 

Similar to Requirement Management for IFDK (20)

User Experience Design In Healthcare | Fresh Tilled Soil
User Experience Design In Healthcare | Fresh Tilled SoilUser Experience Design In Healthcare | Fresh Tilled Soil
User Experience Design In Healthcare | Fresh Tilled Soil
 
仕様決定、部品化、ディレクションがなぜ重要か
仕様決定、部品化、ディレクションがなぜ重要か仕様決定、部品化、ディレクションがなぜ重要か
仕様決定、部品化、ディレクションがなぜ重要か
 
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platformPorting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
IG3 Assignment
 IG3 Assignment IG3 Assignment
IG3 Assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
Ashleigh darlington ig3 2012_assignment
Ashleigh darlington  ig3 2012_assignmentAshleigh darlington  ig3 2012_assignment
Ashleigh darlington ig3 2012_assignment
 
IG3 Assignment Brief
IG3 Assignment BriefIG3 Assignment Brief
IG3 Assignment Brief
 
Ashleigh darlington ig3 2012_assignment
Ashleigh darlington  ig3 2012_assignmentAshleigh darlington  ig3 2012_assignment
Ashleigh darlington ig3 2012_assignment
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 
IG3 Assignment Breif
 IG3 Assignment Breif IG3 Assignment Breif
IG3 Assignment Breif
 
Ig3 2012_assignment
 Ig3 2012_assignment Ig3 2012_assignment
Ig3 2012_assignment
 

Recently uploaded

Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 

Recently uploaded (20)

Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 

Requirement Management for IFDK

  • 1. Material For Software Testing Course – Day3 Features & Requirements Marko ”NarsuMan” Rintamäki 2011
  • 3. Requirement Management What means Requirement Manangement? What means a feature, requirement, use cases, and user story
  • 4. Different points of view on IFDK system User Seller Developer
  • 5. Requirements from product development point of view Requirement Category‘s Different points of view on system Scalability Stability Performance Security „Functionality“ Performance Stress Usabilty „Stability “ „scalability “
  • 6. Requirement Management continues… Between 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
  • 7. How to find requirements? ● You can find 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
  • 8. Why we need requirements from testing point of view? ”Traditional Testing Levels” „Test Engineers Area“ Customer Requirements Acceptance Testing System Requirements System Testing Design Requirements Integration Testing „Developer's Area“ Component Unit Testing Requirements Implementation
  • 9. Feature Feature Feature is functionality of product/software which can be seen as one module of whole product Do some googling!! Internal Flame kit has WLAN Create a wiki page!! support Internal Flame Kit has touch screen user interface AboutUserStory
  • 10. Who is defining a Feature? I would like to have Ok! Internal Flame Drum Kit What's a plan Could you deliver it to us? Actually We have several Nice looking feature propoals. features for it here We have to do some evaluation Customer -Technology? Idea#1 Idea#1 -Knowledge -Resource Idea#2 -Solution? Idea#3 Idea#4 -Priority?
  • 11. Is product a combination of features? Standby Mode Table Drum Mode MIDI Support Calory Counter Touch Screen with single tap Drum Metronome
  • 12. Is product a combination of features? Table Drum Mode Standby Mode Calory Counter MIDI Support Core Software Drum Metronome Touch Screen with single tap
  • 13. Practice: Defining Features Play problem domain card game with team to search for features?
  • 14. Feature example 1 (Invented on course 2009-2010) Calory Counter: Player can measure calories during training session. This can be seen as exercise result in web service eg. Facebook application Feature X * n Energy usage
  • 15. Feature example 2 (Invented on course 2009-2010) 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 Mode DSP Algorithm
  • 16. Customer/Business Requirements? Touch Screen with single tap Simple Training Mode Drum Metronome Calory Counter MIDI Support Table Drum Mode Customer Type 1 Customer Type 2 Customer Type 3 Customer Type 4 Who are our target customers?
  • 17. Customer Strategy Touch Screen with single tap Simple Training Mode Calory Counter Drum Metronome Table Drum Mode MIDI Support Primary Target Secondary Target Customer Type 1 Customer Type 2 Customer Type 3 Customer Type 4 What is our key customer?
  • 18. Features and release planning TIME TO MARKET!! For Target Group 1 Feature: Simple Training Mode Requirement Requirement USE CASE #1 User Story #1 Requirement Requirement USE CASE #2 User Story #2 Requirement Requirement USE CASE #3 User Story #3 TIME TO MARKET!! For Target Group 2 Feature Touch Screen with single tap CORE/Platform Software Requirement Requirement USE CASE #1 User Story #1 Development Requirement Requirement USE CASE #2 User Story #2 Requirement Requirement USE CASE #3 User Story #3 TIME TO MARKET!! For Target Group 3 Feature: Table Drum mode Requirement Requirement USE CASE #1 Requirement Requirement USE CASE #2 Requirement Requirement USE CASE #3 Release 0.1 Release 1.0 Release 1.1 Release 1.2
  • 19. Simple Requirement Management Process Problem Solution Domain Domain Feature X * n Vision of product Functional Requirements Non-Functional Requirements Test Case Defines Use Cases Design documents & User Storys Customer/Marketing/ implementation business FEATURE VISION/NEED/PROPOSAL YOU! Solution Proposal
  • 20. Traditional Requirement Modeling • A requirement shall be a complete sentence. • Sentence has to be understandable, measurable and testable • ReqId1 - Tractor has four wheels • ReqId2 - Tractor has one exhaust pipe • ReqId3 - Engine of tractor is capable of use flexi fuel • ReqId4 – The tractor has a hook for trailer • ReqId5- The tractor shall have a enhanced driving system Google: requirement specification template and SRS Software Requirement Specification
  • 21. Functional and non-functional requirements Functional Non-Functional Requirements Requirements Functional Non-Functional Requirement Requirement How it works? "User can select application from ui How fast it is? "Performance Requirement" by using wheel button” How stable it is? ”Tractor Startup should take ”Tractor can be driven both minimum 10 seconds” directions” ”Usability Requirement” ”User interface should be able to control using simple wheel quide” Do some googling!! ”The hook can last max 20Kkg Create a wiki page!! trailer load” AboutUserStory
  • 22. Traditional Requirement Modelling and Features Functionality User Interface Design? Functional Requirements Feature X Usability Non-Functional Security Requirements Performance Stability .......
  • 23. Practice: Define traditional requirements for you feature Functional Requirements Non-Functional Requirements
  • 24. Non-Functional Requirement category examples Functionality Stability Security Usabilty Is our implementation Is implementation Is our implementation Implementation should stable on situation like usable for target secure enough against work like this way zzzZZZ? customer? attack type xxx? Performance Stress Scalability How good performance our How much we can stress Maintenance implementation provides our implentation without Is implementation a problems? How our implementation is easy to maintain? against competitor? scaling in situation X?
  • 25. Simple Requirement Management Process Problem Solution Domain Domain Feature X * n Vision of product Functional Requirements Non-Functional Requirements Test Case Defines Use Cases Design documents & User Storys Customer implementation FEATURE VISION/NEED/PROPOSAL YOU! Solution Proposal
  • 26. Use Case Use Cases USE CASE Use Case Written scenario for action. Also execeptions included Use Case: Open Application A use case in software Actor: IFDK User engineering and systems Step1: Gadget User touches home button engineering, is a Step2: UI wakeup initiated (if standby) description of steps or Step3: Home screen is activated actions between a user (or Setp4: User browses applications specific icons using wheel button "actor") and a software Step5. Icons are moving on screen left and right system which leads the Step6: User selects application by pushing wheel button user towards something Step7: Application starts up <4 seconds useful.[1] Execptions: Wikipedia 1. If application cannot start there will be note on screen about problem
  • 27. Practice: Create Use Cases Actor: Player SYSTEM System: IFDK kit UC Scenario: 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!” Use Case 3. User interface opens after seconds 4. Screen will show three selection buttons 5. After 30 seconds user inteface goes to standby mode Exeption: ACTOR If user activates screenby tapping it standby counter will be reseted
  • 28. Simple Requirement Management Process Problem Solution Domain Domain Feature X * n Vision of product Functional Requirements Non-Functional Requirements Test Case Defines Use Cases Design documents & User Storys Customer implementation FEATURE VISION/NEED/PROPOSAL YOU! Solution Proposal
  • 29. User Story User Story USER STORY Do some googling!! Simple phrase describes a need. Create a wiki page!! This can lead to several other storys! AboutUserStory "As user I would like to open application easily" "As a user I would like to use wheel for simplify ui interaction" "As a user I would like to initate application fast enough" "As a tractor driver I would like to have enhanced driving system”
  • 30. Agile Requirement Management EpicStory0001 Epic Story As a Customer I would like to have top quality product User Story UserStory0002 UserStory0001 Gadget should have >30fps As a user UI performace I would like to use product Which is fast to power on UserStory0003 Gadget should Startup <5seconds
  • 31. 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 member of audience I can hear effect sound that player is having electrical shocks How to test? Acceptance Criteria?
  • 32. Use Case, User Story, Requirement USER STORY USE CASE Requirement Measurable Simple phrase describes a need. Testable This can lead to several other storys! Written scenario for action. Also execeptions included Use Case: Open Application Functional Actor: Gadget User Requirement Step1: Gadget User touches home button "User can select application from ui Step2: UI wakeup initiated (if standby) "As user I would like to by using wheel button" open application easily" Step3: Home screen is activated Setp4: User browses applications specific icons "As a user I would like to using wheel button use wheel for simplify ui Step5. Icons are moving on screen left and right Non Functional interaction" Requirement Step6: User selects application by pushing wheel button "As a user I would like to "Performance Requirement" initate application fast Step7: Application starts up <4 seconds enough" Execptions: "Application Startup should 1. If application cannot start there will be note on take minimum 4 seconds" screen about problem