Topics. What is an IT solution? Process hierarchy modeling. 1. From business processes to solution envisioning

Similar documents
CHAPTER 2 LITERATURE SURVEY

BPMN Guide Quick Start. by Bizagi BPM

Introduction to Software Engineering

Requirements Elicitation

Requirements Engineering

Software Life Cycle. Main Topics. Introduction

A Guide to the Business Analysis Body of Knowledge (BABOK Guide), Version 2.0 Skillport

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Requirements Engineering and Software Architecture Project Description

Introduction to Systems Analysis and Design

Chapter 8. Systems Development. Ralph M. Stair George W. Reynolds

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models

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

1) Introduction to Information Systems

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials

IIBA Global Business Analysis Core Standard. A Companion to A Guide to the Business Analysis Body of Knowledge (BABOK Guide) Version 3

Requirements Validation and Negotiation

Requirements Analysis. Overview

Chapter 1 Software Process

Objectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes

Topics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1

Inception. Describe the vision and business case for this project. Determine if the enterprise should build or buy the necessary system.

Requirements Analysis and Specification. Importance of Good Requirements Analysis

Enterprise Architecture: an ideal discipline for use in Supply Chain Management

Requirements Engineering

Project Report Template (Sem 1)

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs.

THE BPMN GRAPHIC HANDBOOK

MINGGU Ke 1 Analisa dan Perancangan Sistem Informasi

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement

Sistemi ICT per il Business Networking

Session-2: Deep Drive into Non Functional Requirements (NFRs)

The software process

Validation of NORM (Needs Oriented Framework for Producing Requirements Decision Material) Framework in Industry

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK

[Name] [ ID] [Contact Number]

Chapter 4 Requirements Elicitation

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2

IMPLEMENTATION, EVALUATION & MAINTENANCE OF MIS:

Pertemuan 2. Software Engineering: The Process

Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems

Software Development Methodologies. CSC 440: Software Engineering Slide #1

Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Types of S/W Requirements. Levels of S/W Requirements

Management Information Systems. B14. Acquiring IT Applications and Infrastructure

2009 McGraw Hill Ryerson Limited. Kwantlen and Richardson Chpt 6 slide number 1

Software Engineering II - Exercise

Volere Requirements: How to Get Started

Mapping Service-Orientation to TOGAF 9 Part IV: Applying Service-Orientation to TOGAF s Service Contracts

Chapter. Redesigning The Organization With Information Systems

Requirements Elicitation. Software Requirements and Design CITS 4401 Lecture 17

Αππλιχατιονσ βασεδ ον Σουρχε οφ Αππλιχατιον

Course : Software Engineering and Project Management. Unit 2 Software Requirements Engineering & Analysis

A Guide to the Business Analysis Body of Knowledge (BABOK Guide) Version 2.0

Management of Projects

Advanced Metering Infrastructure (AMI) Program C3 - Customer Prepays for Services

Requirements Engineering. Andreas Zeller Saarland University

Information Systems Development

Chapter 2: The Project Management and Information Technology Context

PMBOK Guide Fifth Edition Pre Release Version October 10, 2012

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at

Requirements Analysis

Introduction to Software Engineering

Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Levels of S/W Requirements. Types of S/W Requirements

An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB

Capital Harness. The de facto software solution for the electrical wire harness industry

Measuring e-government

National Aeronautics and Space Administration Washington, DC 20546

copyright Value Chain Group all rights reserved

Chapter 2 Accountants as Business Analysts. Changing Roles of Accountants in Business

Sample Company. Risk Assessment and Mitigation Plan

Requirements Analysis

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes

BPA Suite to BPEL: A Case Study

Information Systems RE Business Process and Data Analysis (cont d) + Use Case Analysis

HOW TO WRITE A WINNING PROPOSAL

Agile Architecture And Design

SWE 211 Software Processes

Introduction and Key Concepts Study Group Session 1

Requirements Elicitation

CMMI-DEV V1.3 CMMI for Development Version 1.3 Quick Reference Guide

03. Perspective Process Models

CMPT 275 Software Engineering

Requirements Basics. CSCE Lecture 4-09/02/2015

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

Incorporating Model-Driven Techniques into Requirements Engineering for the Service-Oriented Development Process

Quizzes for 1 st Study Group Session

CONTENTS PART ONE FOUNDATIONS FOR SYSTEMS DEVELOPMENT. Preface 21

Chapter 3 Software Process Model

Volume III ARCHITECTURE MAINTENANCE PLAN

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2

BABOK v3 Task to Technique Mapping

Application of an Extended SysML Requirements Diagram to Model Real-Time Control Systems

Applying PSM to Enterprise Measurement

Safety Perception / Cultural Surveys

Initiation Group Process. Planning Group Process

Exam Duration: 2 hours and 30 minutes

Tutorial Software is the differentiating characteristics in many computer based products and systems. Provide examples of two or three products

Sample Exam ISTQB Agile Foundation Questions. Exam Prepared By

Transcription:

Chapter 2 (RASD 3/e) MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Topics From business processes to solution envisioning Functional and nonfunctional requirements Requirements elicitation traditional methods and modern methods Chapter 2 Requirements Determination Requirements negotiation and validation Requirements management Requirements business model system scope, business use case model, business glossary, business class model Pearson Education Limited 2007 Requirements document Chapter 2 (Maciaszek - RASD 3/e) 2 What is an IT solution? 1. From business processes to solution envisioning IT solutions address business problems IT solutions are enablers of business innovation IT solution is an infrastructure service (a commodity) A business solution Implementation of a business process Sometimes an enabler of business innovation An infrastructure service A commodity (http://en.wikipedia.org/wiki/commodity) derived from the French word "commodité", meaning today's "convenience" in term of quality of services an undifferentiated product whose value arises from the owner's right to sell rather than buy like electricity or music Chapter 2 (Maciaszek - RASD 3/e) 4 BPMN - Business Process ing Notation Developed by a consortium Business Process Management Initiative Managed by the OMG within the task force Business ing & Integration Domain Task Force (BMI DTF) Dedicated to modeling business processes defined as activities that produce something of value to the organization or to its external stakeholders UML activity diagrams a competing notation A goal is to map these notations to an executable language in particular to the Business Process Execution Language (BPEL) a standard for process execution in systems based on the Service Oriented Architecture (SOA) Process hierarchy modeling A process may contain other processes (subprocesses) An atomic activity within a process is called a task A process hierarchy diagram not part of BPMN A business process can be performed manually or an automated service A process has at least one input flow and one output flow When the process gains the control, it performs its activity, typically by transforming the input flow into the output flow A process can be atomic or composite Chapter 2 (Maciaszek - RASD 3/e) 5 Chapter 2 (Maciaszek - RASD 3/e) 6 MACIASZEK (2007): Req Analysis & Syst Design 1

Chapter 2 (RASD 3/e) Process hierarchy diagram - notation Process hierarchy model (advertising expenditure) Advertising Expenditure Measurements Composite process Measurement Collection Measurement Verification Measurement Valorization Atomic process (task) Composite process with subprocesses suppressed Enter Non-Electronic Data Reporting and Distribution Download Electronic Data Translate and Format Data Contact Management Contracts and Accounts Receivable Chapter 2 (Maciaszek - RASD 3/e) 7 Chapter 2 (Maciaszek - RASD 3/e) 8 BPMN flow objects BPMN offers four basic categories of modeling elements: Flow objects: Events Activities Gateways Connecting objects Pools (Swimlanes) Artifacts BPMN events and activities An event is something that happens. There are various types of events, such as timer, error, or cancel. An activity represents some work that must be done. This could be a task or a sub-process. Chapter 2 (Maciaszek - RASD 3/e) 9 Chapter 2 (Maciaszek - RASD 3/e) 10 BPMN - gateways A gateway is used to control the divergence and convergence of multiple sequence flows. BPMN connecting objects The connecting objects (or connectors) are used to connect flow objects in order to define the structure of a business process. A sequence flow is used to show the order in which the activities will be performed in a process. A message flow is used to show the flow of messages (data) between two business entities (two process participants) that are prepared to send and receive them. An association is used to associate flow objects or to associate artifact with a flow object. Chapter 2 (Maciaszek - RASD 3/e) 11 Chapter 2 (Maciaszek - RASD 3/e) 12 MACIASZEK (2007): Req Analysis & Syst Design 2

Chapter 2 (RASD 3/e) BPMN pools (swimlanes( swimlanes) A pool represents a business entity (participant) in a process. It acts as a swimlane mechanism to organize activities into separate visual categories in order to illustrate different functional capabilities or responsibilities. Pools represent sets of self-contained processes. Accordingly, the sequence flow may not cross the boundary of a pool. Participants in various pools can communicate via message flows or associations to artifacts. vertical pool BPMN - artifacts Artifacts provide additional modeling flexibility by allowing to extend the basic notation to respond to specific modeling situations, such as for so-called vertical markets (e.g. telecommunication, hospitals or banking). data object group annotation Data objects represent data required or produced by activities. A group is a grouping of activities that does not affect the sequence flow of the process. The grouping can be used for documentation or analysis purposes (e.g. to identify the activities of a distributed transaction across pools). Annotations provide additional text information for the reader of a business process diagram. Chapter 2 (Maciaszek - RASD 3/e) 13 Chapter 2 (Maciaszek - RASD 3/e) 14 Business process model (advertising expenditure) Solution envisioning Solution envisioning is a business valuedriven approach to delivering an IT service (i.e. not merely a software system) to solve an As-Is business problem or to foster a To-Be business innovation. Solution envisioning makes a close connection between business and IT stakeholders and integrates business strategy methods and software development capabilities. It is about the three E-s efficiency, effectiveness, and edge. Chapter 2 (Maciaszek - RASD 3/e) 15 Chapter 2 (Maciaszek - RASD 3/e) 16 Three phases of solution envisioning process Business capability exploration determines business capabilities understood as the capacities relating to how a business IT solution can deliver specific results. This phase describes capability cases solution ideas making the business case for each capability. Solution capability envisioning aims at developing the capability case into a solution concept and at ensuring that the solution is agreed upon by the stakeholders. The solution concept takes the business context as input and produces future scenarios for new ways to work as output. The solution concept converges on the ultimate solution architecture and is developed in solution envisioning workshops. Software capability design decides on system implementation technologies, develops software capability architecture, and elaborates the business case with project plans and risk analysis. Software capability design is an activity in software modeling. Three phases of solution envisioning process Chapter 2 (Maciaszek - RASD 3/e) 17 Chapter 2 (Maciaszek - RASD 3/e) 18 MACIASZEK (2007): Req Analysis & Syst Design 3

Chapter 2 (RASD 3/e) Implementation strategy and capability architecture In the first phase of the solution envisioning process, capability cases function as multiple solution sketches to allow many solution possibilities to be explored. Later on, the selected capability cases become technical blueprints for the solution. Finally, three prevalent implementation strategies need to be considered: Custom development performed in-house and/or contracted out to consulting and development firms. Package-based development that derives the solution by customizing pre-existing software packages, such as COTS, ERP or Customer Relationship Management (CRM) systems. Component-based development that builds the solution by integrating software components sourced from multiple vendors and business partners and likely to be based on SOA and/or MDA. Review Quiz 2.1 1. What is the name of the most popular language for visual modeling of business processes that aims at bridging the gap between business and IT people? 2. What are the four categories of modeling elements in BPMN? 3. Can a sequence flow connect two pools? 4. What is the name of a business value-driven approach to delivering an IT service to solve an As-Is business problem or to foster a To-Be business innovation? 5. What is the main modeling outcome of software capability design? 6. What are the three distinct implementation strategies to be considered in solution envisioning process Chapter 2 (Maciaszek - RASD 3/e) 19 Chapter 2 (Maciaszek - RASD 3/e) 20 Requirements 2. Requirements elicitation The least technical phase of system development Demands social, communication and managerial skills Delivers a (mostly narrative) definition of user requirements Requirements define System services functional requirements scope of the system necessary business functions required data structures System constraints nonfunctional requirements software system = algorithms + data structures regarding look and feel,, performance, security, etc. also known as supplementary requirements Chapter 2 (Maciaszek - RASD 3/e) 22 Functional and nonfunctional requirements Requirements elicitation concerned mostly with functional reqs...but nonfunctional requirements cannot be an afterthought Reviews and re-negotiations Requirements document A moving target even after the req doc is signed off requirements management is concerned, inter alia, with managing change and estimating the impact of change on the project Nonfunctional requirements Usability ease of use documentation and help, training, user interface, error handling Reusability ease of component reuse Reliability mean time between failures, graceful recovery, uninterrupted availability, accuracy of results reliable = dependable (we can depend on it) Performance response time, transaction throughput, resource consumption, concurrency level Efficiency in terms of time and cost Supportability = understandability + maintainability + scalability Other constraints policy decisions, legal issues, portability and interoperability demands, timeliness of product delivery Chapter 2 (Maciaszek - RASD 3/e) 23 Chapter 2 (Maciaszek - RASD 3/e) 24 MACIASZEK (2007): Req Analysis & Syst Design 4

Chapter 2 (RASD 3/e) Requirements elicitation Traditional methods of requirements elicitation Domain Expert capture the unique character of the organization Customer Simple and cost effective When clear objectives and low project risks general timeindependent business rules and processes Domain Knowledge Requirements Business Analyst Use Case Requirements Include: Interviewing customers and domain experts Business Questionnaires Business Class Class an abstraction that describes a set of objects with common attributes, operations, relationships, and constraints Business Use Case Use case a major functional unit Observation Study of documents and software systems Chapter 2 (Maciaszek - RASD 3/e) 25 Chapter 2 (Maciaszek - RASD 3/e) 26 Interviewing customers and domain experts With customers mostly use case reqs With domain experts frequently a straight knowledge transfer Structured (formal) interview Open-ended questions (unanticipated responses) Close-ended questions (a list of possible responses known) Unstructured (informal) interview Questions to be avoided Opinionated questions (do we have to do things the way we do them?) Biased questions (you are not going to do this, are you?) Imposing questions (you do things this way, don t you?) Summary report of the interview should be sent to the interviewee within a day or two, along with a request for comments Interview kinds of questions about specific details five Ws: what, who, when, where, and why. about vision for the future about alternative ideas these may be questions to an interviewee and suggestions from the interviewer asking for opinions about minimally acceptable solution to the problem good usable systems are simple systems about other sources of information can discover important documents and other knowledge sources unknown before to the interviewer soliciting diagrams drawn by an interviewee to explain business processes may prove invaluable for understanding the requirements Chapter 2 (Maciaszek - RASD 3/e) 27 Chapter 2 (Maciaszek - RASD 3/e) 28 Questionnaires In addition to interviews A passive technique advantage time to consider the answers disadvantage no possibility to clarify questions and answers who are the people which did not respond? how would they respond? Close-ended questions Multiple-choice questions additional comments may be allowed Rating questions (e.g. strongly agree, agree,...) when seeking opinions Ranking questions ranked with numbers, percent values, etc. Observation In addition to interviews (and possibly questionnaires) When the user cannot convey sufficient information and/or has only fragmented knowledge Three forms Passive no interruption or direct inmvolvement video camera may be used Active Explanatory explaining what is done when observed Should be carried for a prolonged time, at different times and at different workloads People tend to behave differently when watched work to rule is a form of industrial action knowledge work is not susceptible to observation Chapter 2 (Maciaszek - RASD 3/e) 29 Chapter 2 (Maciaszek - RASD 3/e) 30 MACIASZEK (2007): Req Analysis & Syst Design 5

Chapter 2 (RASD 3/e) Study of documents and software systems Always used, but may target portions of the system Use case requirements Organizational documents including procedures, policies, descriptions, plans, charts, internal and external correspondence System forms and reports (if prior computer system exists) record of change requests (defects and enhancements) Domain knowledge requirements domain journals and reference books ERPSs using Internet searches Modern methods of requirements elicitation Offer better insights at higher cost and effort When high project risks (unclear objectives, undocumented procedures, unstable requirements, eroded user expertise, inexperienced developers, insufficient user commitment, etc.) Include: Prototyping Brainstorming Joint Application Development (JAD) Rapid Application Development (RAD) Chapter 2 (Maciaszek - RASD 3/e) 31 Chapter 2 (Maciaszek - RASD 3/e) 32 Prototyping Quick and dirty solution to obtain feedback Necessary in complex and innovative projects Two kinds: Throw-away prototype targets requirement determination Evolutionary prototype targets the speed of product delivery Brainstorming to form new ideas or to find a solution to specific problem by putting aside judgment, criticism, social inhibitions and rules to reach consensus among stakeholders cool analysis and decision making done afterwards The process: prior to meeting, the facilitator provides probortunity statement (the problem/opportunity area) generic trigger questions to challenge the participants (e.g. what features should the system support? what are the main business objects? 12 to 20 participants around a table, feeling equal with the facilitator one of the crowd answers to trigger questions recorded and passed around to stimulate more answers/ideas answers/ideas get anonymous answers/ideas are discussed voting to prioritize answers/ideas Chapter 2 (Maciaszek - RASD 3/e) 33 Chapter 2 (Maciaszek - RASD 3/e) 34 JAD Brainstorming-like technique capitalizing on group dynamics Groups increase productivity, learn faster, make more educated judgments, eliminate more errors, take riskier decisions (this may be a negative though!), focus participants attention to most important issues, integrate people, etc Frequently part of facilities management - when the operation/implementation of an organization s information systems are contracted out to a third party The membership Leader (communication skills, not a stakeholder, knowledge of business domain) Scribe (touch typing, software development knowledge, CASE tool skills) Customers Users Managers Developers RAD Five techniques Evolutionary prototyping CASE tools with code generation and round-trip engineering Specialists with Advanced Tools (SWAT) colocated with the users Interactive JAD scribe replaced by a SWAT team with collaborative CASE tools Timeboxing no scope creep, timeboxed project Problems suitable for smaller projects; too risky for larger developments inconsistent GUI specialized solutions with little reuse potential deficient docs unsupportable solution likely Chapter 2 (Maciaszek - RASD 3/e) 35 Chapter 2 (Maciaszek - RASD 3/e) 36 MACIASZEK (2007): Req Analysis & Syst Design 6

Chapter 2 (RASD 3/e) Review Quiz 2.2 1. What is the name of the profession charged with the responsibility to elicit and document domain knowledge requirements and use case requirements? 2. What are the two main kinds of requirements? 3. What are the three forms of closed-ended questions in questionnaires? 4. What are the participants in a JAD session? 5. How is the RAD development team called? 3. Requirements negotiation and validation elicited requirements need to undergo careful negotiation and validation with all stakeholders Chapter 2 (Maciaszek - RASD 3/e) 37 Requirements negotiation and validation Needed because reqs overlap and conflict requirements dependency matrix (next slide) may be ambiguous or unrealistic may remain undiscovered may be out of scope (as captured by a reference model such as a context diagram (explained later)) sometimes out of the project scope, but in the scope of the information system (req too difficult to implement and should be done manually, may be of low priority, may be implemented in hardware) frequently done in parallel with requirements elicitation inseparable from the production of requirements document negotiation starts from the draft req doc validation reviews and rubber stamps the doc Requirements dependency matrix Requirement R1 R2 R3 R4 R1 Conflict R2 Overlap R3 Overlap R4 Chapter 2 (Maciaszek - RASD 3/e) 39 Chapter 2 (Maciaszek - RASD 3/e) 40 Requirements risks and priorities Risk is a threat to the project plan Risks determine project s feasibility Risk analysis identifies requirements that are likely to cause development difficulties Prioritization is needed to allow easy rescoping of the project when faced with delays Risk categories Technical Performance Security Database integrity Development process Political Legal Volatility Review Quiz 2.3 1. What is (arguably) the best visual modeling method to capture the system boundary? 2. What kinds of dependencies between requirements are made explicit in a requirement dependency matrix? 3. What is the name of a risk category associated with a scenario in which a requirement is likely to keep changing or evolving during the development process? Chapter 2 (Maciaszek - RASD 3/e) 41 Chapter 2 (Maciaszek - RASD 3/e) 42 MACIASZEK (2007): Req Analysis & Syst Design 7

Chapter 2 (RASD 3/e) Requirements identification and classification Natural language statements 4. Requirements management The system shall schedule the next phone call to a customer upon telemarketer s request. Identification and classification scheme Unique identifier (automatically generated) database generated, if possible requirements identification and classification requirements hierarchies change management requirements traceability including version number, if possible Sequential number with document hierarchy the seventh requirement in the third section of the second chapter would be numbered 2.3.7 Sequential number with requirement s category where the categories of requirements can be: function requirement, data requirement, performance requirement, security requirement, etc Chapter 2 (Maciaszek - RASD 3/e) 44 Requirements hierarchies Parent-child relationships Reflect varying abstraction levels 1. "The system shall schedule the next phone call to a customer upon telemarketer's request." 1.1 The system shall activate Next Call push button upon entry to Telemarketing Control form or when the previous call has terminated. 1.2 The system shall remove the call from the top of the queue of scheduled calls and make it the current call. 1.3 etc. Change management A requirement may change, be removed, or a new requirement may be added Downstream cost of change Strong management policies needed to document change requests, to assess a change impact, and to effect the changes Requirements changes should be stored and tracked by a software configuration management tool Chapter 2 (Maciaszek - RASD 3/e) 45 Chapter 2 (Maciaszek - RASD 3/e) 46 Requirements traceability A critically important part, of change management A suspect trace after change to any element in a traceability relationship More in Chapter 9 Review Quiz 2.4 1. What are the techniques for identifying requirements? 2. What is the name of a tool dedicated to change management? 3. What is a suspect trace? Chapter 2 (Maciaszek - RASD 3/e) 47 Chapter 2 (Maciaszek - RASD 3/e) 48 MACIASZEK (2007): Req Analysis & Syst Design 8

Chapter 2 (RASD 3/e) Requirements business model 5. Requirements business model Test User manuals Project planning a high-level visual representation of elicited, negotiated and validated requirements System Scope Business Use Case Business Class Use Case Class Implementation Requirements Determination Requirements Specification Design Chapter 2 (Maciaszek - RASD 3/e) 50 Context diagram - notation Chapter 2 (Maciaszek - RASD 3/e) 51 Telemarketing problem statement A charitable society sells lottery tickets to raise funds. The fundraising is done in campaigns to support currently important charitable causes. The society keeps a list of past contributors (supporters). For each new campaign, a subset of these supporters is pre-selected for telemarketing and/or direct mail contact. The society uses some innovative schemes to gain new supporters. The schemes include special bonus campaigns to reward supporters for bulk buying, for attracting new contributors, etc. The society does not randomly target potential supporters by using telephone directories or similar means. To support its work, the society decided to contract out the development of a new telemarketing application. The new system is required to support up to fifty telemarketers working simultaneously. The system must be able to schedule the phone calls according to prespecified priorities and other known constraints. The system is required to dial up the scheduled phone calls. Unsuccessful connections must be re-scheduled and tried again later. Telephone callbacks to supporters must also be arranged. The conversation outcomes, including ticket orders and any changes to supporter records, ought to be maintained. Chapter 2 (Maciaszek - RASD 3/e) 52 Telemarketing example Telemarketing The campaigns are planned on recommendation from the society trustees The campaigns have to be approved by the local government The design and planning of campaigns is supported by a separate Campaign Database application system There is also a separate Supporter Database that stores and maintains information about all past and present supporters used to select supporters to be contacted in a particular campaign Orders from supporters for lottery tickets are recorded during telemarketing for perusal by the Order Processing system Order Processing System maintains status of orders in the Supporter Database System scope model context diagram Chapter 2 (Maciaszek - RASD 3/e) 53 Chapter 2 (Maciaszek - RASD 3/e) 54 MACIASZEK (2007): Req Analysis & Syst Design 9

Chapter 2 (RASD 3/e) Business use case diagram - notation Business use case diagram - telemarketing communication relationship Business use case system feature; IS process and/or manual activity Business actor = primary and/or secondary (external/internal dichotomy) Chapter 2 (Maciaszek - RASD 3/e) 55 Chapter 2 (Maciaszek - RASD 3/e) 56 Business glossary Business class diagram - notation Term bonus campaign campaign draw lottery placement definition A special serious of activities, conducted within a campaign, to additionally entice supporters to buy the campaign tickets. Typical examples are giving free tickets for bulk or early buying or for attracting new supporters. A particular kind of bonus campaign can be used in many campaigns. A government approved and carefully planned series of activities which are intended to achieve a lottery objective. An act of randomly choosing a particular lottery ticket as a winning ticket. A funds raising game of chance, organized by the charity in order to make money, in which people (supporters) buy numbered tickets to have a chance of winning a prize if their number is chosen in a draw. Acquisition of one or more lottery tickets by a supporter during telemarketing. The placement is paid by a supporter with a credit card. Chapter 2 (Maciaszek - RASD 3/e) 57 Chapter 2 (Maciaszek - RASD 3/e) 58 Business class diagram - telemarketing 1. The emphasis in the system is on call scheduling. The call scheduling itself is a procedural computation, i.e. the solution to it is algorithmic and computational. Nevertheless, the scheduled call queues and the outcomes of calls must be stored in some data structure. 2. Information about actors is stored in classes. Review Quiz 2.5 1. What is another name for a business use case? 2. What is the name of a relationship representing the flow of events between actors and use cases? 3. What are the three main categories of relationships between business classes? 4. How is the optional participation between business classes visualized in UML? Chapter 2 (Maciaszek - RASD 3/e) 59 Chapter 2 (Maciaszek - RASD 3/e) 60 MACIASZEK (2007): Req Analysis & Syst Design 10

Chapter 2 (RASD 3/e) Requirements document Requirements Document Table of Contents 6. Requirements document a tangible outcome of the requirements determination phase produced according to an organization-approved template 1. Project Preliminaries 1.1 Purpose and Scope of the Product 1.2 Business Context 1.3 Stakeholders 1.4 Ideas for Solutions 1.5 Document Overview 2. System Services 2.1 The Scope of the System 2.2 Function Requirements 2.3 Data Requirements 3. System Constraints 3.1 Interface Requirements 3.2 Performance Requirements 3.3 Security Requirements 3.4 Operational Requirements 3.5 Political and Legal Requirements 3.6 Other Constraints 4. Project M atters 4.1 Open Issues 4.2 Preliminary Schedule 4.3 Preliminary Budget Appendices Glossary Business Documents and Forms References Chapter 2 (Maciaszek - RASD 3/e) 62 Project preliminaries Targets managers and decision makers Begins with purpose and scope of the project Makes a business case for the system Identifies stakeholders Offers initial ideas for the solution including off-the-shelf solutions off-the-shelf does not dispense with the need for RASD Includes an overview of the rest of the document System services Dedicated to the definition of system services - what the system must accomplish Likely to account for more than half of the entire document Contains high-level requirements business models Context diagram (the system scope) Business use case diagram (function requirements) Business class diagram (data requirements) main attributes, but no operations Business glossary moved to the Appendix Chapter 2 (Maciaszek - RASD 3/e) 63 Chapter 2 (Maciaszek - RASD 3/e) 64 System constraints Dedicated to the definition of system constraints - how the system is constrained when accomplishing services with regard to Interface requirements look and feel only Performance requirements response times, but also reliability, availability, throughput indicators Security requirements access privileges Operational requirements hardware/software environment Political and legal requirements Other constraints usability maintainability Project matters Open issues Future requirements Current requirements to be implemented in the future enhancements Potential problems when the system is deployed Preliminary schedule Human and other resources Planning charts (PERT, Gantt) Preliminary budget Project cost range rather than figure In some cases, better estimation possible (e.g. function point analysis) Chapter 2 (Maciaszek - RASD 3/e) 65 Chapter 2 (Maciaszek - RASD 3/e) 66 MACIASZEK (2007): Req Analysis & Syst Design 11

Chapter 2 (RASD 3/e) Appendices Glossary Terms Acronyms Abbreviations Documents and forms Examples of completed (filled in) forms References To books and other published sources Meetings minutes, memoranda, internal documents Review Quiz 2.6 1. How can functional requirements be classified? 2. How can any out-of-scope, but relevant, requirements be addressed in a requirements document? Chapter 2 (Maciaszek - RASD 3/e) 67 Chapter 2 (Maciaszek - RASD 3/e) 68 Summary The analysis of business processes drives development of information systems The choice of implementation strategy determines the capability architecture of the system Requirements determination is about discovering requirements and documenting them Two lines of discovery the discovery from the domain knowledge and from the use cases Methods of requirements elicitation include interviewing customers and domain experts, questionnaires, observation, study of documents and software systems, prototyping, JAD and RAD Requirements negotiation and validation to resolve overlaps and conflicts Requirements have to be managed Requirements business model uses diagrams Context Diagram, Business Use Case Diagram, and Business Class Diagram The resulting document is called the Requirements Document Chapter 2 (Maciaszek - RASD 3/e) 69 MACIASZEK (2007): Req Analysis & Syst Design 12