soft 423: software...
TRANSCRIPT
![Page 1: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/1.jpg)
SOFT 423: Software Requirements
Week 5 Class 2
Writing Requirements and Modeling Techniques
SOFT 423 – Winter 2015 1
![Page 2: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/2.jpg)
Last Class
•Personas
•Interactive Systems
SOFT 423 – Winter 2015 2
![Page 3: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/3.jpg)
This Class
•Writing Requirements
•Requirements Language
•Revisit Requirements Documents
•Modeling Techniques
SOFT 423 – Winter 2015 3
![Page 4: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/4.jpg)
Document Users – Who Reads?
•System Customers
•Project Managers
•System Engineers
•System testers
•System maintainers
SOFT 423 – Winter 2015 4
![Page 5: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/5.jpg)
Writing Requirements
•In general, requirements cannot be modeled•But why have we been studying models?
•Requirements are mainly text-based•Natural Language understanding
SOFT 423 – Winter 2015 5
![Page 6: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/6.jpg)
Writing Requirements
•Common Problems•complex conditions are confusing
• if A then if B then if C• tab A goes in slot B
•sloppy terminology• inconsistent terminology (signal/wait)•domain knowledge is assumed (RA/dec)
SOFT 423 – Winter 2015 6
![Page 7: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/7.jpg)
Writing Requirements
•Read more often than written•big payoff for wordsmithing
•Readers come from diverse background•use different terminology•different background knowledge
SOFT 423 – Winter 2015 7
![Page 8: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/8.jpg)
Writing Requirements
•Leave time for multiple revisions•publishing books and papers requires several revisions with the referees and/or editors, requirements are no different
SOFT 423 – Winter 2015 8
![Page 9: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/9.jpg)
Writing Requirements
•Requirements must be kept separate•Single sentence where possible
•Use present tense to state requirements
•Factor out detail•don’t remove detail, combine into lists
SOFT 423 – Winter 2015 9
![Page 10: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/10.jpg)
Some Guidelines [Sommerville & Sawyer 97]
•Define standard templates
•Use language simply, consistently and concisely
•Use diagrams appropriately•no complex diagrams•broad overviews
SOFT 423 – Winter 2015 10
![Page 11: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/11.jpg)
Some Guidelines [Sommerville & Sawyer 97]
•Supplement natural language with other descriptions (i.e. equations)
•Specify requirements quantitatively
SOFT 423 – Winter 2015 11
![Page 12: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/12.jpg)
Quantification Exercise
•Suggest methods to quantify the following requirements.
SOFT 423 – Winter 2015 12
![Page 13: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/13.jpg)
Writing Requirements
•The library system shall be easy to use
SOFT 423 – Winter 2015 13
![Page 14: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/14.jpg)
Writing Requirements
•The library system shall be easy to use
•It should be possible to train end-users of the system in a 15 minute session
SOFT 423 – Winter 2015 14
![Page 15: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/15.jpg)
Writing Requirements
•The library system provide reliable service to all classes of users
SOFT 423 – Winter 2015 15
![Page 16: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/16.jpg)
Writing Requirements
•The library system provide reliable service to all classes of users
•rate of failures less than 1 in 1000
SOFT 423 – Winter 2015 16
![Page 17: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/17.jpg)
Writing Requirements
•The library system shall provide a rapid response to all user requests
SOFT 423 – Winter 2015 17
![Page 18: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/18.jpg)
Writing Requirements
•The library system shall provide a rapid response to all user requests
•average system response time < 4 secs
SOFT 423 – Winter 2015 18
![Page 19: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/19.jpg)
Some Guidelines [Easterbrook 2002]
•Requirements are optative•Optative mood is a volitive mood that signals wishing or hoping
SOFT 423 – Winter 2015 19
![Page 20: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/20.jpg)
Some Guidelines [Easterbrook 2002]
•Traditionally, requirements contain the word ‘shall’•contractually ‘will’ means optional!!
• ‘should’ is often code for ‘we can ignore this’
•distinction is subtle
SOFT 423 – Winter 2015 20
![Page 21: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/21.jpg)
Some Guidelines [Easterbrook 2002]
•Bray dislikes modal verbs•difference between in house requirements and formal contractual requirements
SOFT 423 – Winter 2015 21
![Page 22: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/22.jpg)
Some Guidelines [Easterbrook 2002]
•Verb moods•Indicative: asserts a fact (you type)•Interrogative: question (are you typing?)•Imperative: command (type!)•Subjunctive: possibility (I might type)•Optative: a wish (Had I the means, I would do it)
SOFT 423 – Winter 2015 22
![Page 23: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/23.jpg)
Some Guidelines [Easterbrook 2002]
•For Requirements•use indicative mood for domain properties•use optative mood for requirements•do not mix moods in the same description•moods change as development progresses
SOFT 423 – Winter 2015 23
![Page 24: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/24.jpg)
Requirements Document [Bray 02]
•Primary Purpose•convey necessary information about problem domain and client’s requirementsfrom the client to the designers of the solution system
SOFT 423 – Winter 2015 24
![Page 25: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/25.jpg)
Requirements Document [Bray 02]
•Characteristics• low ambiguity•validatable•well organized•modifiable•complete•consistent
SOFT 423 – Winter 2015 25
![Page 26: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/26.jpg)
Requirements Documents
•We have already discussed IEEE standard•tends to mix problem domain descriptions and requirements•also mixes specification of solution system
•Bray suggests a different structure•explicit separation of problem domain elements from requirement elements•Problem Frames assist in the separation
SOFT 423 – Winter 2015 26
![Page 27: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/27.jpg)
Bray’s Requirements Document
SOFT 423 – Winter 2015 27
![Page 28: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/28.jpg)
Structure
•Document Details
•Problem Domain Description
•Requirements
•Data Dictionary
•References
•Index
SOFT 423 – Winter 2015 28
![Page 29: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/29.jpg)
Document Details
•similar to IEEE Section 1•title, authors•documentation conventions/standards•version•change authority•change history•content (i.e. overview of rest of document)
SOFT 423 – Winter 2015 29
![Page 30: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/30.jpg)
Problem Domain Description Overview
•summary and context
•brief overview of problem domain•should also break down into subdomains
•brief description of the project
•executive Summary
SOFT 423 – Winter 2015 30
![Page 31: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/31.jpg)
Requirements
•the real meat of the document
•broken down into categories:•Functional•Performance•Design Constraints
SOFT 423 – Winter 2015 31
![Page 32: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/32.jpg)
Data Dictionary
•reuse of term – be careful
•more general than SA Data Dictionary
•description of Data Items and Relationships
SOFT 423 – Winter 2015 32
![Page 33: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/33.jpg)
References
•elicitation notes
•stat requirements
•specifications
•target hardware
•quality assurance
•docs of pre-existing system
•development procedures
SOFT 423 – Winter 2015 33
![Page 34: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/34.jpg)
Modeling Techniques - Revisited
SOFT 423 – Winter 2015 34
![Page 35: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/35.jpg)
Modeling Techniques
•Before we discuss the specification document, we will look at modeling•used for elicitation, requirements and specification
SOFT 423 – Winter 2015 35
![Page 36: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/36.jpg)
Modeling Techniques
•Have to be careful that the Modeling does not impose constraints on the design of the solution system •external design of the system
SOFT 423 – Winter 2015 36
![Page 37: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/37.jpg)
Modeling Techniques
•We’ve already discussed several Modeling techniques:•data flow diagrams•data dictionaries•ER models•OOA diagrams
SOFT 423 – Winter 2015 37
![Page 38: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/38.jpg)
Classes of Models
•Representational Modeling
•Behavioural Modeling
•Structural Modeling
SOFT 423 – Winter 2015 38
![Page 39: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/39.jpg)
Classes of Models
•Representational Modeling•model appearance of the system•can be text•diagrams•animation
SOFT 423 – Winter 2015 39
![Page 40: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/40.jpg)
Classes of Models
•Behavioural Modeling•relationship of system inputs and outputs•some model of system state (memory)
SOFT 423 – Winter 2015 40
![Page 41: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/41.jpg)
Classes of Models
•Structural Models• less relevant, but sometimes necessary•system is modeled as components that are interconnected in some way•DFDs•We won’t cover in any more detail
SOFT 423 – Winter 2015 41
![Page 42: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/42.jpg)
Representational Modeling
SOFT 423 – Winter 2015 42
![Page 43: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/43.jpg)
Representational Modeling
•Two types:•Static Representational Modeling•Dynamic Representational Modeling
SOFT 423 – Winter 2015 43
![Page 44: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/44.jpg)
Static Representational Modeling
•simple, but effective
•often screen shots
•screen planning sheets
•can also be representations of different I/O devices such as elevator indicators, turn signals in mirrors
SOFT 423 – Winter 2015 44
![Page 45: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/45.jpg)
Static Representational Modeling
•Paper Prototype•draw the system on a piece of paper•major screens, menus, dialogs, wizards•extension of the back of envelope technique•cheap and effective technique both for specification and for elicitation
SOFT 423 – Winter 2015 45
![Page 46: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/46.jpg)
Static Representational Modeling
•Story Boards•Extension of paper prototype to time dimension•Based on movie story boards•Cartoon style sequences•Hits high points, leaves out unimportant details•still static
SOFT 423 – Winter 2015 46
![Page 47: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/47.jpg)
Static Representational Modeling
SOFT 423 – Winter 2015 47
![Page 48: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/48.jpg)
Static Representational Modeling
SOFT 423 – Winter 2015 48
![Page 49: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/49.jpg)
Static Representational Modeling
•What it is good for:•concepts and terminology: do target users understand terminology?•navigation and workflow•content, layout, interface functionality
SOFT 423 – Winter 2015 49
![Page 50: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/50.jpg)
Static Representational Modeling
•What it isn’t good for•Technical feasibility•response time
SOFT 423 – Winter 2015 50
![Page 51: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/51.jpg)
Dynamic Representational Modeling
•Operational Prototype•Iteration implied, not just user interfaces•Results of transformation system too
SOFT 423 – Winter 2015 51
![Page 52: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/52.jpg)
Dynamic Representational Modeling
•Exploratory Prototype•Throwaway
SOFT 423 – Winter 2015 52
![Page 53: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/53.jpg)
Dynamic Representational Modeling
•Definitive Prototype•Becomes part of definition of required behaviour
SOFT 423 – Winter 2015 53
![Page 54: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/54.jpg)
Dynamic Representational Modeling
•Structural Prototype•Possible design solutions•Evaluate performance, feasibility
SOFT 423 – Winter 2015 54
![Page 55: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/55.jpg)
Dynamic Representational Modeling
•Evolutionary Prototype•prototype becomes the product•start with interface and fill in functionality•relevance to requirements?
SOFT 423 – Winter 2015 55
![Page 56: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/56.jpg)
Building Prototypes
•Prototypes can also be subparts of the system•some of the other models we will be talking about can be executed and can serve the role of a prototype•can be animated
• example, simulation of finite state machine
•no longer really representational Modeling, now about functional Modeling
SOFT 423 – Winter 2015 56
![Page 57: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/57.jpg)
Building Prototypes
•Prototype may have no UI.
•May be a structural prototype of some middle component to ensure that the elements of elicitation are feasible with a given technology
SOFT 423 – Winter 2015 57
![Page 58: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/58.jpg)
Prototype Issues
•Training Costs•developers (experience building prototypes)• how to focus on what is important rather than what
needs to be explored.
•users to use the prototype
SOFT 423 – Winter 2015 58
![Page 59: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/59.jpg)
Prototype Issues
•User Expectation Management•prototypes are almost always incomplete
• is that all?
•prototypes do not include most of the business logic including multiple tiers and delays• real system will be slower
SOFT 423 – Winter 2015 59
![Page 60: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/60.jpg)
Prototype Issues
•Evaluation (UI issues)•Solitary/Supervised
• exploratory prototypes almost always supervised
•Questionnaire/Interview (both?)
SOFT 423 – Winter 2015 60
![Page 61: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/61.jpg)
Behavioural Modeling
SOFT 423 – Winter 2015 61
![Page 62: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/62.jpg)
Behavioural Modeling
•Not about appearance of system
•Some abstraction of the behaviour of the system•many different models:
• function statements, task analysis, use-cases, decision tables, finite state machines (several types), petri-charts
• informal, semi-formal, formal
SOFT 423 – Winter 2015 62
![Page 63: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/63.jpg)
Function Statements
•Text•describe causal relationship between input, system state, and output
SOFT 423 – Winter 2015 63
![Page 64: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/64.jpg)
Functional Decomposition
•functionality is broken down into lower level detail•top down methodology•Also used as normal design technique, but we focus on it’s use in specifying behaviour•functional breakdown as apparent to the user• adding invisible details implies premature design
• limited use for analysis, good for specification
SOFT 423 – Winter 2015 64
![Page 65: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/65.jpg)
Function Decomposition Example
•Student adding a course, top level•The registration system will allow a student to add a course to their program
SOFT 423 – Winter 2015 65
![Page 66: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/66.jpg)
Function Decomposition Example
•First Level•1 The student logs into the registration system•2 The student selects add course from the menu•3 The student selects the course to add
SOFT 423 – Winter 2015 66
![Page 67: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/67.jpg)
Function Decomposition Example
•Second Level•1.1 the student enters the student number•1.2 the student enters the password•1.3 the number and password is validated•1.4 if the number and password is incorrect, return to login page with error
SOFT 423 – Winter 2015 67
![Page 68: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/68.jpg)
Functional Decomposition Example
•Important things to note:•discussion of how the number and password
is validated is not discussed•not visible to the outside world•point 3 may say that only valid courses are
offered to the student to select, or that the student enters a course code, but how the system determines that the course is valid is not discussed•what a valid course would be would be
specified in another requirement
SOFT 423 – Winter 2015 68
![Page 69: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/69.jpg)
Hierarchical Task Analysis
•Human Task Performance•part of HCI•used to analyze behaviour of experts (part of task observation in elicitation)•used to guide specification and document behaviour
SOFT 423 – Winter 2015 69
![Page 70: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/70.jpg)
Hierarchical Task Analysis
•Starts with goal that someone wants to achieve•tasks are higher order mechanisms by which goals are achieved•goals may be structured as hierarchy
• break goals into subgoals
• tasks for subgoals
SOFT 423 – Winter 2015 70
![Page 71: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/71.jpg)
Class Summary
![Page 72: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/72.jpg)
Writing Requirements
•Who reads them?
•Text-based over models•models supplement
•Document formats•IEEE vs Bray
•Language•‘shall’ not ‘will’ or ‘should’
SOFT 423 – Winter 2015 72
![Page 73: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/73.jpg)
Modeling Techniques – Revisited
•Used to supplement requirements•Classes of Models•Representational
• Static• Paper prototyping, storyboards
• Dynamic• Prototyping (operational, exploratory, definitive, structural,
evolutionary)
•Behavioural• function statements, hierarchical task analysis
•Structural
![Page 74: SOFT 423: Software Requirementscourses.caslab.queensu.ca/soft423/wp-content/uploads/sites/8/2014… · SOFT 423 –Winter 2015 1. Last Class •Personas •Interactive Systems SOFT](https://reader034.vdocuments.mx/reader034/viewer/2022043013/5facc70bff5550209f1eead5/html5/thumbnails/74.jpg)
Next Class
•Formal Methods•Finite State Machines•State Transition Diagram•State Transition Matrices
SOFT 423 – Winter 2015 74