Week 3. COM1030. Requirements Elicitation techniques. 1. Researching the business background



Similar documents
An introduction to marketing for the small business

Story Card Based Agile Software Development

Mark Scheme. Business Studies BUSS4. (Specification 2130) Unit 4: The Business Environment and Change

Quick guide: Implementing an IT solution

ESP MARKETING TEACHER S NOTES

GCSE English Language

International Certificate in Financial English

ESP MARKETING TEACHER S NOTES

Shared Solutions: An Overview Special Education Policy and Programs Branch Ministry of Education

Writing Cases Melodena Stephens Balakrishnan

Expert Reference Series of White Papers. Intersecting Project Management and Business Analysis

SOFT 423: Software Requirements

Managerial decision making rational decisionmaking within organisations

Software Requirements Specification (SRS)

DSDM DSDM. CONSORTiUM. CONSORTiUM. AgileBA. The Handbook for Business Analysts. Extract The Requirements Lifecycle In An Agile Project.

Augmented reality enhances learning at Manchester School of Medicine

Making the Most of Lectures

Consumer research into use of fixed and mobile internet

Consultant Skills A summary of the main points of Flawless Consulting by Peter Block. Hugh Russell Info@e-russell.com

Marketing and the 7Ps

GENERAL GUIDELINES FOR DEVELOPING A BUSINESS PLAN

Do you know? "7 Practices" for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd.

MORE DATA - MORE PROBLEMS

The New Customer Experience Manifesto. How to Create a Customer Experience Board

SaaS and the enterprise perception

relevant to the management dilemma or management question.

CHAPTER 11 REQUIREMENTS

Running a successful golf club

Planning and Writing Essays

Requirements Engineering Process

SOFTWARE REQUIREMENTS

Listening to the Customer s Voice 1

Use Case: Tax system extracts tax payments from company database which is the actor in this company system?

insight in credit management

15 Principles of Project Management Success

Social Business Plan Template

Testing Websites with Users

There are some easy steps that you can take that will increase your chances of success at interviews.

Daylite Implementation. Guide

Knowledge Representation & Reasoning for Business Analysis

Make and receive. telephone calls. Unit Q107. What you will learn. Understand how to make telephone calls Understand how to receive and transfer

Version 1.0. klm. General Certificate of Education June GCE Business Studies. Mark Scheme

KINDGERGARTEN. Listen to a story for a particular reason

Development. Lecture 3

FACE TO FACE SELLING SKILLS MODULE 6 CUSTOMER NEEDS ANALYSIS Pre-Tutorial ACCOUNT MANAGER S WORKBOOK

U N I V E R S I T Y O F C O P E N H A G E N. Use Your Master s Thesis Supervisor

What is a process? So a good process must:

Guide for Clinical Audit Leads

Scripts for Recruiters

Object-Oriented Systems Analysis and Design

How To Write A Customer Profile Sheet

Quick Guide. Oral presentations. Four-step guide to preparing oral presentations. What is in this guide. Step 1: Plan

(Refer Slide Time 00:56)

AN OVERVIEW OF SYSTEMS ANALYSIS: SYSTEMS ANALYSIS AND THE ROLE OF THE SYSTEMS ANALYST. Lecture , Tuesday

Big Data Big Privacy. Setting the scene. Big Data; Big Privacy 29 April 2013 Privacy Awareness Week 2013 Launch.

Guideline to purchase a CRM Solution

Your guide to finding a job

More Enquiries, Same Budget: Solving the B2B Marketer s Challenge

Unit 1 Learning Objectives

Tips for writing good use cases.

A-LEVEL BUSINESS Paper 3 Specimen Assessment Material. Mark scheme

Logo Design Brief 5 IMPORTANT DESIGN BRIEF QUESTIONS. Internet Management com

This document contains four articles that have been combined as a separate booklet and covers two elements of research.

CROSS EXAMINATION OF AN EXPERT WITNESS IN A CHILD SEXUAL ABUSE CASE. Mark Montgomery

Assessment Techniques and Tools for Documentation

The SME Engagement Handbook

Use Your Master s Thesis Supervisor

Copyright: Adwords Direct Response

Keys to Success for. Informational. Interviewing

Critical analysis. Be more critical! More analysis needed! That s what my tutors say about my essays. I m not really sure what they mean.

A Guide to Carrying Out a SWOT Analysis Introduction

BAILEY LAUERMAN AD AGENCY RELIES ON KEY SURVEY

Our Guide to Customer Journey Mapping

Reflective Writing. How do you write reflectively? Stages of reflective thinking

Collecting & Analyzing Interview Data

Mobile Phone Charging Information

Requirements Engineering Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 7 Slide 1

Self-Help Kit. Limited Company. Guidance Manual. The contents of this Manual have been approved by H M Williams Chartered Accountants

Dealing with problems and complaints

5 Point Social Media Action Plan.

Competitive Edge Technology White Paper. Platform-as-a-Service the New Horizon for HR

Module 3: Functional Requirements

Publishers Note. Anson Reed Limited St John Street London EC1V 4PY United Kingdom. Anson Reed Limited and InterviewGold.

WHAT YOU NEED TO KNOW ABOUT CYBER SECURITY

Services - Outsource Marketing, Inc.

Strand: Reading Literature Topics Standard I can statements Vocabulary Key Ideas and Details

Top tips for online campaign optimisation

Comparison of Various Requirements Elicitation Techniques

Research Project Management Key Concepts. Dr Robin Henderson

G-Cloud Service Description. Atos: Cloud Professional Services: Requirements Specification

Approaches & Referrals

Chapter 2. Applying Principles of Adult Learning A. Domains of Learning 1. Cognitive learning Refer the student to resources

5 Simple Steps to Conduct Your Own Product Survey

Unified Communication as a Service Market - Outlook ( ) for Collaboration Services

Funding success! How funders support charities to evaluate

Published on

360 feedback. Manager. Development Report. Sample Example. name: date:

Building a Village Partner Compensation Plan By Bill Reeb, CPA. During our past five columns on partner compensation, we have discussed:

Manage Processes Research Project. Case Study Protocol Revision 4

first steps in monitoring and evaluation

Transcription:

Aims of the lecture: 1. Introduce the issue of a systems requirements. 2. Discuss problems in establishing requirements of a system. 3. Consider some practical methods of doing this. 4. Relate the material to the Crossover Project. The requirements for a system are a description of: what the system must do and how well it must do it. If we get this wrong then the system we build will also be wrong. It is very difficult to get right for the following reasons: 1. The client may not really know what he/she actually wants. 2. The developers may not understand the application/domain. 3. The client s business needs may change. Page 1 Page 2 Most of all the key to requirements is: good communication - between clients and developers, within the clients and within development team analysis - what is the client wanting to do inspiration - creating potential solutions to the client s problem detail - is every aspect covered and clearly documented practical - is it realistic, cost effective, timely - above all DOES IT ADD VALUE? 1. Researching the business background Investigating the company background and bringing together relevant information. We will use Mindmaps - they can be used at many different levels to organise your thinking. Mind Maps A technique for noting and structuring information. For these purposes business means organisation - so it will apply to the public sector and charities as well as commercial concerns. We try to understand what the business is, what it does, its markets, customers, employees, suppliers etc. Page 3 Page 4

Here is a sample analysis for a typical organisation drawn using mindmaps. occasional import personal The idea is to break down concepts over a number of stages. Sometimes we might wish to identify a cross link - such as some employees are also customers purchasing at trade rates. occasional home bulk suppliers retail internet postal Other things to do: Research into your client s business 1 : staff factory warehouse regular casual employees business trade customers contract A part of a basic organisation structure UK Europe long term short term have they got a web page? can you find any other published information about their business? what do they sell - products or services or what? what sort of clients do they typically have? who are their competitors, what can you find out about them? 1. In the Crossover project the client is your tutor so these steps are not really appropriate. Page 5 Page 6 2. Exploring the outline system description The initial project description may be nothing more than a paragraph and it might seem to be too vague to allow you to start. Remember, however, that this description is just a starting point to you exploring, with the client, the client s business, its needs and possible solutions. There will be a lot of preliminary work to do to define the scope of the project and what a potential solution might look like. This is not an easy stage of any project and it is impossible to learn exactly how to do it in books and lectures. There is no substitute for trying it out and reflecting, as you go, on how the process proceeds. Start with a brainstorm about the initial project brief and use Textual Analysis as well as mind maps, again. LOONY TONES CORP The company sells ringtones and video clips for use on the latest generation phones and personal devices through the web. The company needs a regular supply of new products which are gathered from multiple sources. A major concern is that some products are very similar to other products - the issues of copyright and illegal downloading is of major concern. A system is needed that will check whether a ringtone or video submitted by a supplier, composer etc. is distinctive and not a copy of existing material. We need to look closely at the phrases in this statement - Page 7 Page 8

are they clear or ambiguous? what further information do we need? LOONY TONES CORP The company sells ringtones and video clips for use on the latest generation phones and personal devices through the web. The company needs a regular supply of new products which are gathered from multiple sources. A major concern is that some products are very similar to other products - the issues of copyright and illegal downloading is of major concern. A system is needed that will check whether a ringtone or video submitted by a supplier, composer etc. is distinctive and not a copy of existing material. All of the highlighted phrases need to be checked out. Another example. SmoothCore is a company that sells smoothies. They want a system that will allow them to manage their products and sales efficiently. They sell a wide range of smoothies in various quantities and at prices that vary according to the type and size of the drink. The system should allow the company to easily change the products and prices and to permit trends and customer preferences to be identified. The system will also manage the customer base and be seamlessly integrated into the company s existing accounting system. We need to make a number of things clearer. Page 9 Page 10 What are the range of products and prices - how will these be described? How often will the product range be changed and by whom? What sort of trend data do they want to extract and when? What customer information is needed? What is this accounts package? All of these questions will need to be answered in detail. The statement also gives us some leads into both the functionality of the system and the data it will use. Look for verbs - these will tell us about some of the functions of the system: manage, change, identified, integrated,... Nouns might guide us towards defining data precisely: drinks, customers, products, prices,... Adjectives may tell us how well the function needs to be: efficiently, easily, seamlessly From these initial steps we will drill down into the business and its processes in order to identify what needs doing. Page 11 Page 12

The goal is to develop a detailed Requirements Document that will act as part of a contract between the client and the developers. You will be creating one of these over the next few weeks. We have seen some examples of outline project descriptions and mindmaps can also help to uncover more of the issues that need to be explored. Don t get into too much detail yet. This document will describe the background to the project including any current relevant information. It will list the functional requirements - what the system has to do and the non-functional requirements - how well it has to do it 100ml 200ml 300ml sizes SmoothCorp drinks fruit mixed vegetable in the later case this will address efficiency and speed, robustness, ease of use etc. Page 13 Page 14 3. The first meetings with the client. This might be a session involving all of the team working on that client s problem and generally involves the client describing their business and what they are trying to achieve, their objectives for the system. There will be an opportunity to ask general questions relating to the system but these should not be technical computing questions - apart from general things such as the sort of network available or to be purchased for the solution. Remember that the client may know very little about Computer Science or programming, that s why they have come to you, you are the experts. Their expertise is in their business. Starting with the initial project description there are a number of things you should do: Preparing carefully for the first meeting will impress the client that you are professionals and will give them the confidence to proceed. Initial stages of building a requirements document. It is important that we aim to produce a clearly structured list of requirements, in language that the client can understand, so that an overall description of the complete target system is available. This is developed in discussions with the client. Page 15 Page 16

The key thing is to be aware that the requirements will change and to make sure that it is used as a summary of what the current knowledge of the proposed system is. Requirements change is very hard to handle - new approaches to software engineering are being developed to address this. The Agile methodologies such as Extreme Programming are claimed to be better able to handle change. Kent Beck - Extreme Programming - embrace change. Such approaches are much less bureaucratic than traditional software engineering. More of this next year. Clients express problems naturally in their own words, words that might be unfamiliar to us or used in different ways, don't assume that your understanding of a particular word or term is the same as theirs. We need to identify what the terminology means and to agree on it. The construction of a glossary of business and technical terms should be an outcome of this dialogue. When talking to clients realise that there may be hidden factors at stake: political, historical, geographical. You may need to understand these features of a business organisation in order to understand the reasons for particular requirements. Page 17 Page 18 4. Business analysis and problem discovery The initial software requirements analysis can be divided into a number of activities: Business analysis Problem recognition; Evaluation and synthesis; Modelling and metaphor building; Specification of user stories and scenarios; In the first week or two of the project, you should be evaluating and synthesising the problem and requirements information from the client. Always write down your thoughts, refer to these at your formal group meetings and put a date on them. Later, you may need to revisit some issue when you have forgotten the details. Although we wish to keep the paperwork to a minimum records of this stage should be saved, carefully. Review and discussion. Page 19 Page 20

Business analysis What is the primary business objectives of the organisation? How will a proposed system support these objectives? Sales and delivery system Web site Are there an existing systems - manual or computerised - that will be replaced? SmoothCore Will the system interact with other systems - both internal and external? What are the business processes and workflows? How will the proposed system add value? Purchasing system A possible system architecture Production control Database Page 21 Page 22 Systems will be involved that deal with: the purchase and payment of raw materials; with customers orders; with the factory production process and a web site - that may include customer ordering capabilities. Each system will have a database associated with it - this may be implemented as a single unified database or as separate ones depending on the business needs. Problem evaluation involves: defining all external observable relevant business objects; evaluating the flow and content of relevant information in the business; defining and elaborating all relevant software functions; understanding relevant business behaviour (events); understanding user behaviour (tasks); establishing systems interface characteristics; uncovering additional constraints. Page 23 Page 24

Some process flows are indicated below. 5. Techniques for requirements elicitation. source possible suppliers identify requirements compare prices calculate order options choose supplier formulate order place order Here are 6 approaches that can be useful: Interviews; supplier database update update production database update * accept delivery deliveries repeated * to factory production system Structured questionnaires; Observation - again only successful, if you can do it unobtrusively; Concurrent protocols - a user describes his/her tasks whilst performing them; Card sorting - useful if you want to understand the user's classification of his/ her knowledge domain; Carrying out a user role yourself; Page 25 Page 26 Interviews have to be prepared carefully. In the first meeting, when you know little about the problem, then it is important to ask the client to describe all the key aspects of the system. Try to guide them away from the desire to get into intricate detail about what they want when you simply do not understand what they are talking about. As you get immersed in their business context it is important to manage the meetings carefully. Identify what you want to know beforehand and prepare a set of questions that will help you to find out what you need. Once these questions are answered then you can explore further areas. It will often be the case that a question will stimulate the client into telling you some other piece of information, carefully record this. It is best to go to the meeting with all the team but make sure that there is a principal speaker and someone to record what is said. There is nothing more off putting for a client than to be faced with people asking questions from all angles on all sorts of disconnected topics. Plan your meeting carefully and try to stick to it. Page 27 Page 28

Structured questionnaire. Using a written questionnaire is another technique. Try to group related questions together. Also try to make your questions clear, unambiguous and relevant. Observations. Sometimes it is possible to visit the client and observe the business in action. This is helpful in providing you with a context and a better idea of what the users are like, what they expect or are comfortable with and what sort of system you might be trying to emulate. Pay particular attention to the sort of user interfaces that seem popular. Take care not to disrupt their work too much. Some users are happy to talk their way through their tasks while you are there. Here you may be able to observe users in their current work. Page 29 Page 30 6. Putting your knowledge together. Gathering all this information is one thing but putting it all together into a coherent model of the business is quite another. There are no simple solutions to this problem. Common sense is the best approach! a) Defining all external observable relevant business objects. We need to look at the sorts of things that are coherent entities in the part of the business we are considering. These could include: products, contracts, orders, invoices and such like. Make a proper list of them and try to distinguish between those that are involved with the external activities of the business, For example objects that are apparent to the customers, agents and suppliers of the business, and to those involved in the monitoring of the company such as taxation and other government authorities and the objects that are defined for the convenience of the internal management of the company, these might be: internal orders, memos and planning material, records and archives of company activity etc. Many of these objects will relate to aspects of the databases that will be used to support the system activity. Page 31 Page 32

b) Evaluating the flow and content of relevant information in the business. Each business process will involve a number of individual processes which take place in an organised way. What is the order in which this information is processed, what type of information is it? Try to get a general picture of what happens and when during typical scenarios of business activity. Equally, if you found an object that doesn t seem to feature in any process that you are analysing, eliminate it. It may be that you find some difficulty in modelling things at the right level, there is always the temptation to try to describe things in too much detail. Try to avoid this at this stage. We are looking for a rather broad brush description of what is going on. You will refer to the business objects described above, if you come across one that has not been identified, previously, then it needs to be added to the list. Page 33 Page 34 c) Defining and elaborating all relevant software functions. Now we can start imagining what our software is going to do. It might be replacing some existing function, either a manual operation or in some obsolete software, or it might be a new feature that has not been implemented with software before. d) Understanding relevant business behaviour (events). Now we have to try to figure out how these things actually relate to each other. We should try to define some common scenarios which explain the overall operation of the business processes through the medium of identifying the events that cause the scenario to operate. These could be the placing of an order by a customer, here we might need to identify what sort of customer is involved, a new or existing one, trade or retail. Page 35 Page 36

The business process involved for each of these may be different and so the system will be expected to behave differently as well. This leads to us identifying the different conditions that must apply for the different cases. Again we need to check that our business objects and processes described above are consistent with this. e) Understanding user behaviour with task analysis. There are many techniques for task analysis which can be used to elicit user requirements relatively easily. Task analysis tends to concentrate on the way users conduct business processes now. It may include user actions which do not involve interaction with a computer. Nevertheless, a task analysis model can form a useful representation for discussion with your users, helping to identify aspects of the task with which users are comfortable and familiar with. Page 37 Page 38 Alternatively, it can help identify aspects of the task which are currently problematic and could be improved in the required system. As if requirements capture and analysis were not sufficiently complicated, we must often obtain the views of different users, who are likely to have different stakes in the outcome of the new system. Hence, you may need to identify and resolve stakeholder views. You should ask yourselves, who are your users? They are not necessarily a single, homogeneous group of people with the same tasks, the same goals or the same view of the world. as the client commissioning the system. At the end of this process you should have identified the dependencies that the solution needs to relate to within the business context as well as any basic assumptions that pertain. You may also have started to think about the constraints that will affect your solution, the available resources you have at your disposal, time, technology and so on. This needs to be clarified, it is no use trying to specify a system that you are not able to build or the client cannot afford or operate. A collection of requirements notes can be produced which can help to organise ones thoughts into a more structured form. Page 39 Page 40

The aim is to produce a detailed list of requirements which provides a basis for early planning and approval. We will look at the initial descriptions of real projects that were recently done by DCS 2nd. year students A full, detailed requirements document will be made available. First we look at the clients initial brief. Page 41 Page 42 Page 43 Page 44

Page 45 Page 46 The requirement document will have a specific structure. This is based on an international standard (IEEE). Stage 1 of the Crossover Project involves you writing such a document. You will be given an outline problem description like the ones above. Your tutor will play the role of the client. We also classify each requirement as being: mandatory - it must be present in the final solution; desirable - it should be present if at all possible; optional - only implemented if all others are done and there is still time. Naturally the client will specify these levels and they may change during the course of the project. You will meet the client and elicit the system requirements from them Page 47 Page 48

Page 49