And Franchise Colleges Supplement 02 (b) i. Requirements gathering and Task Analysis ii. User Requirements By MANSHA NAWAZ Supplement 02 (b) User Requirements 1 Learning Objectives • The Problem of Establishing User Requirements • What do we start with? • What do we need to achieve? • Reflections on the Problem Domain • What is important? • What abstractions can we use? Supplement 02 (b) User Requirements 2 i. Requirements gathering and Task Analysis • Requirements gathering is a central part of systems development • Analysis involves understanding as well as representation of requirements • Requirements should include functional, data and usability requirements • In user-centred approaches, requirements gathering almost always involves some design Supplement 02 (b) User Requirements 3 Requirements Gathering Techniques • Traditional, Structured Methods use a toolkit of techniques for gathering requirements – input from client in the form of a Problem Statement – interviews, questionnaires, observation, document analysis • Functional Requirements modelled through Data -Flow Diagrams • Data requirements through EntityRelationship Models Supplement 02 (b) User Requirements 4 Traditional “life-cycle” model of software development Requirements Gathering Requirements Specification Design Implementation Maintenance Supplement 02 (b) User Requirements 5 A User- centered approach to software development Task analysis/ functional analysis Implementation Prototyping Star Model (Hartson & Hix) Supplement 02 (b) Evaluation Requirements specification Conceptual design/ Formal design User Requirements 6 User-Centered Approach • Analyst can additionally use cognitive and other task analysis techniques • Prototyping and Requirements animation can be used to facilitate requirements gathering • Object Technology has added Object/Class modelling and Use Cases to the toolkit • These techniques facilitate an approach which engages users throughout the lifecycle Supplement 02 (b) User Requirements 7 Usability Requirements • Core requirements are viewed as “black box” functions plus key non-functional requirements (e.g., speed of response etc.) • Usability requirements are often overlooked usability = “Any system designed for people to use should be easy to learn (and remember), useful, that is contains functions people really need in their work, and be easy and pleasant to use”(Gould and Lewis, 1985) Supplement 02 (b) User Requirements 8 Components of Usability • Learnability – time and effort required to reach a specified level of performance • Throughput – tasks accomplished by experienced users, speed, number of errors etc. • Flexibility – system’s ability to respond to change • Attitude – positive feelings of users to the system Supplement 02 (b) User Requirements 9 Components of a Usability Study • A Usability Study gathers Usability Requirements alongside functional, data specs. etc. and can involve – Usability Models – Usability Metrics – Usability Specifications Supplement 02 (b) User Requirements 10 Task analysis • Describes behavior at 3 levels – goals, tasks and actions • Tasks are usually viewed in terms of tasks and subtasks • Hierarchical Task Analysis (HTA) focuses on what actually happens in terms of tasks and subtasks • Cognitive task analysis focuses on aspects of the cognitive characteristics of the users’ work Supplement 02 (b) User Requirements 11 Goal-Task-Action • Goal (a.k.a. “external task”) – the state of the system the user wishes to achieve – e.g, produce a spreadsheet report, calculate payroll figures etc., • Task (a.k.a. “internal task”) – activities thought to be necessary to achieve the goal • Action – a task that involves no problem solving, or control structure Supplement 02 (b) User Requirements 12 Hierarchical Task Analysis • Aim is to describe a task in terms of a hierarchy of operations and plans where – operations = Goal-Task-Action – plans = specification of conditions under which (sub) tasks are carried out • Can be captured graphically – using a form of structure chart Supplement 02 (b) User Requirements 13 Partial HTA chart for Editing Text in Windows 0. Edit Text Plan 1: According to Requirements 1. Cut Text 1. Use Menu option 2. Use Hot-key Combo. 3. Use Toolbar Icon 1. Select Text 2. Press Ctrl + X 4. Use Delete Plan 1.2: 1,2 Supplement 02 (b) User Requirements 14 Hierarchical Task Analysis techniques • Starting the analysis – specify area of work or main task – break down into 4 - 8 subtasks – draw subtasks out into layered plans • Progressing the analysis – determine “granularity” of analysis – choose depth-first or breadth-first – document (notation in Preece p.415) • Finalizing the analysis – check for consistency, integrity – present to external “task expert” for confirmation Supplement 02 (b) User Requirements 15 b. User Requirements We start with nothing! • At first we know nothing of what users want • … and maybe little about the organisation. • This may be: – – – – – a manufacturing business a supermarket chain a software house a government department an electricity generating company Supplement 02 (b) User Requirements 16 User Requirements– We start with nothing! • Within the organisation, the problem domain may be: – – – – – real-time—e.g. industrial process control transaction processing—e.g. customer orders safety-critical—e.g. air traffic control communications—e.g. with sales reps database—e.g. personnel records Supplement 02 (b) User Requirements 17 User Requirements– We start with nothing! • Users work in widely differing contexts and organisations • Their need for information and computer support also varies tremendously • We must begin by finding out about: – their circumstances – their problems – what they want Supplement 02 (b) User Requirements 18 User Requirements– What do we need to achieve? • The goal is simple: to learn enough to develop a computerised IS that will be useful to: – these specific users, in... – these particular circumstances, with... – these unique problems • We must also document what we learn, so others can access our knowledge Supplement 02 (b) User Requirements 19 User Requirements– What is important? • What matters depends on the problem domain: – for control systems, process and timing matter – for record-keeping systems, data matters – for financial system, security matters • Note these are not mutually exclusive • It’s more a matter of emphasis Supplement 02 (b) User Requirements 20 User Requirements– What is important? • Let’s consider a few examples. – Real-time: a car cruise control system – Safety-critical: an air traffic control system – Transaction processing: a travel agency booking system Supplement 02 (b) User Requirements 21 User Requirements for a car cruise control system • What would we need to know to develop a car cruise control system? Supplement 02 (b) User Requirements 22 User Requirements for a car cruise control system • We will need to know about: – how engine components work – engine fuel demand – vehicle electronics interface standards – driver ergonomics (to design the controls) – timing and synchronisation information Supplement 02 (b) User Requirements 23 User Requirements for an air traffic control system • What would we need to know to develop an air traffic control system? Supplement 02 (b) User Requirements 24 User Requirements for an air traffic control system • Clearly different from car cruise control. We need to know: – – – – – – number of flights and aircraft handled aircraft navigation / instrument landing systems throughput of stacks and queues priority of different types of aircraft user characteristics and environment emergency routines Supplement 02 (b) User Requirements 25 Cruise control and air traffic control systems compared • Similarities: – Timing and synchronisation are important – Safety issues are important • Contrasts: for air traffic control... – Much more data is required for system running – Relationships among data matters – User issues are much more important Supplement 02 (b) User Requirements 26 User Requirements for a travel agency booking system • What would we need to know to develop a travel agency booking system? Supplement 02 (b) User Requirements 27 User Requirements for a travel agency booking system • Clearly different again. We need to know about: – holiday and travel operators – current prices and discounts – destinations – network characteristics – journeys – customer characteristics – user characteristics Supplement 02 (b) User Requirements 28 Travel agency bookings and air traffic control compared • Some similarities: – Data / relationships among data important – Response time an issue (but not milliseconds!) • Contrasts: for travel agency bookings... – – – – No significant safety issues Remote network access vital Non-technical users Customer issues?—E.g. multimedia interface? Supplement 02 (b) User Requirements 29 User Requirements– What abstractions can we use? • Which abstractions are useful depends on the type of information that matters. • We may need to capture details of: – – – – Timings and sequence Data (and relationships / structure of data) Processes Other aspects, e.g. users issues and safety factors Supplement 02 (b) User Requirements 30 Modelling Requirements for Air Traffic Control • Has both Real-Time Process Control and TPS Aspects 1. 2. 3. 4. 5. Number of flights and aircraft handled Aircraft navigation / instrument landing systems Throughput of stacks and queues Priority of different types of aircraft Emergency routines • For each of the above requirements state the relative importance of modelling Data, Process & Time and suggest suitable models to be developed. Supplement 02 (b) User Requirements 31 SUMMARY Establishing User Requirements • At the start we know nothing at all • By the end of this stage we have: – Decided (more or less) what matters – Found out what users want – Recorded all this in an appropriate way • Utilise Rich Pictures Supplement 02 (b) User Requirements 32
© Copyright 2026 Paperzz