2-Requirements Analysis Flashcards
3 Components of understanding requirements
- who are the users
- what do they want
- what do they need/what should the system accomplish
Why do requirements analysis
- failure at this stage is expensive and time consuming to fix
- customers may explain their needs ambiguously
- designers can understand customer wishes incorrectly
- programmers can implement something not asked for
What is a requirement
- statement about what and how a future software or product should perform
Identifying needs
Understand as much as possible about users, task,
context
Establishing requirements
Produce a stable set of requirements
Functional requirements
what the system should do
Non-functional requirements
what are the constraints on
the system / development
Four examples of non functional requirements
- data requirements
- environmental characteristics
- user characteristics
- usability goals and user experience goals
Examples of NFRs from data
- data sources
- types of data
- storage mode (database)
- persistence duration
- accuracy and consistency
- representations
Examples of NFRs from environment
- physical characteristics (cold/crowded)
- social characteristics (collaboration or competition)
- organisation: person vs enterprise
- technical (backwards compatibility)
Examples of NFRs from user characteristics
- ICT ability
- age/nationality/education
- physical/mental characteristics
- do they like tech or not
Examples of NFRs from usability and experience goals
- usability – is it intuitive to use/easy to learn
2. is it enjoyable to use / aesthetically pleasing/motivating
Why focus on the user rather than concentrating solely on functional requirements?
avoids (if users don’t find system acceptable)
1. redesign
2. retraining of users (call centres)
time, money
Define STM
- (context) Consider technical, social, organizational and human aspects of design
- (don’t isolate) Technology is not developed in isolation but as part of a wider organizational environment
- (avoid overruling human aspects) consider social and technical issues side by side so that human issues are not overruled by technical considerations
Two stages of STM+purpose of each
- Identify stakeholders (CUSTOM analysis)
2. Understand stakeholders (Requirements Development)
CUSTOM model
- ST methodology for use in SMALL ORGANISATIONS
- identifies:
1. who is involved with new system
2. what are their FRs/NFRs
3. what is the organisational structure
Stakeholder
- Anyone who is affected by the success or the failure of the system
- if organisation, not just end user .: need to know to get right set of requirements
General stakeholders
users which:
- interact directly
- manage direct users
- input/output from system
- make purchasing decision
- use competitors’ products
Primary
people who use the system (frequent, hands on, training)
Secondary
produce input/receive output but may not directly use it (occasional, via someone else)
Tertiary
people affected by system introduction OR influence its purchase, but are themselves neither primary nor secondary stakeholders
Facilitating
people involved in system design, development, maintenance
Data structures for stakeholder analysis and requirements development
- matrix
- onion diagram
Requirements development purpose
develop user centred requirements for system after the stakeholders have been identified
List of 8 elements of RDM
Aims
Sources of satisfaction Knowledge and skills
Attitudes to work
Work-group attributes Nature of activities
Responsibility
Working conditions
Aims
what has the stakeholder to achieve, how is success measured
e.g. waiter: cust sat, tip size
Job sat
What are the stakeholder’s sources of job satisfaction? What are the sources of dissatisfaction and stress?
system aims to preserve/remove respectively
waiter: cust exp, working mem load
Knowledge skills
stakeholder knowledge, asymmetries
chef vs waiter cooking knowledge
Work attitude
What is the stakeholder’s attitude towards work and computer technology?
manager vs chef
Work group attributes
Are there any work-group attributes that will affect the acceptability of the product to the stakeholder?
Features of activity
What are the characteristics of the stakeholder’s task in terms of frequency, fragmentation, and choice of actions?
summary vs fragmented use by waiters
Responsibilities
Does the stakeholder have to consider any particular issues relating to responsibility, security, or privacy?
discreetness, privacy, security of payments
Work conditions
What are the typical conditions in which the stakeholder is working?
chef vs manager
SSM definition and purpose
- broader than STM, consider organisation as a whole
- stakeholders and technology are components of the larger context
- aim – learning about problem situation between stakeholders + define the problem
(vs STM – already well defined problem)
Stages of SSM
- Rich picture
- Root definitions
- Conceptual model
SSM flowchart
Real world
- problem situation considered problematic
- problem situation expressed
Systems thinking about real world
- root definitions of relevant purposeful activity systems
- conceptual models of the systems named in the root definitions
Real world
- comparison of models and real world
- changes: systematically desirable, culturally feasible
- action to improve the problem situation
Rich picture def
- detailed description of problem situation
- who are the stakeholders
- what groups do they work in
- what tasks do they perform
Root definitions def
- stakeholder perceptions
- moving from real world situation to definitions of what the stakeholders perceive to be the activities taking place in the organisation
- may be several different root definitions, representing different stakeholder perspectives
- need to reconcile the differing root definitions of different stakeholder perspectives at a later stage
Conceptual model def
- model of real world constructed with details of what the system has to do to meet the root definitions
CATWOE for root definitions
Purpose – list the perspectives of a situation that must be considered
Clients Actors Transformations (most important) World view owner Environment
Conceptual model –
what+why are transformations
the most important part
of the root definitions
1- used to build the conceptual model
2- used to define what is achieved and how
3- this is what the new system will modify
4-achievements: model hierarchically, list core relevant activities, provide different levels of detail=activities to carry out the transformations
Conceptual model –purposes
- identify differences between real world situation and model of how stakeholders perceive system (root defs)
- different conceptual models can represent different viewpoints (basis for debate, inform change/development of systems)
Outcome of SSM
for designers to have better understanding of context in which developed systems are to be placed
given rich picture, root defs, conceptual model move towards a possible solution/development of an appropriate system (e.g. waiter pads that speed up order taking, improve efficiency, reduce mistakes and complaints)
Rich picture+root defs of restaurant billing
Situation: Order taking and payment process in the restaurant
Root defs: waiters want to increase customer satisfaction
- clients: diners (receive food, bill)
- actors: waiters, chefs
- txfs: orders -> bills
- wv: water sees current system as problematic (working memory)
- owner of restaurant chain owns billing system
- env: health and safety regulations
Conceptual model example – restaurant
achievement of serving a diner involves core activities = (find out, serve, clear table, payment)
achievement of paying for the food involves sub-achievements = (produce bill, collect money, produce receipt optionally)
Core activities of requirements ANALYSIS
- data gathering
- data analysis
- defining the requirements
- iteration
CATWOE: owner
who the system belongs to, and who can allow changes in
the system
CATWOE: environment
what factors influence the system
CATWOE: environment
what factors influence the system
why are transformations the most important part of the root definitions
1- used to build the conceptual model
2- used to define what is achieved and how
3- this is what the new system will modify
4-achievements: model hierarchically, list core relevant activities, provide different levels of detail=activities to carry out the transformations