CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.

Slides:



Advertisements
Similar presentations
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 1.Gain agreement on the problem definition. 2.Understand the root causes 3.Identify the.
Advertisements

MIS (Management Information System)
Introduction to Software Engineering Dr. Basem Alkazemi
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
ACTIVELY ENGAGING THE STAKEHOLDER IN DEFINING REQUIREMENTS FOR THE BUSINESS, THE STAKEHOLDER, SOLUTION OR TRANSITION Requirements Elicitation.
SWE Introduction to Software Engineering
SWE Introduction to Software Engineering
Identifying Needs and Establishing Requirements John Thiesfeld Jeff Morton Josh Edwards.
7M701 1 Software Engineering Software Requirements Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 5
Software Requirements
Monash University, SIMS, Semester One, DATA GATHERING FOR INFORMATION SYSTEMS DEVELOPMENT CSE Information Systems 1 CSE Information Systems.
Requirements (recap)‏
Analysis Concepts and Principles
Overview of Software Requirements
© Pearson Education Limited, Chapter 6 Fact-finding Transparencies.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
Software engineering Olli Alm Lecture 2: requirements, modelling & representation.
Requirements Gathering : Determining the scope of the system 1. Elicitiation – fact finding 2. Specification 3. Validation.
7M822 Software Requirements Introduction 7 September 2010.
1 Lecture 6 The Systems Analyst (Role and activities) Systems Analysis & Design Academic Year 2008/9.
Requirements Engineering Process – 1
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Chapter 4 Requirements Engineering
S/W Project Management
Requirements Analysis
Advanced Topics in Requirement Engineering. Requirements Elicitation Elicit means to gather, acquire, extract, and obtain, etc. Requirements elicitation.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
Investigating System Requirements
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Business Analysis and Essential Competencies
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
PRJ566 Project Planning and Management
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Software Engineering Saeed Akhtar The University of Lahore Lecture 7 Originally shared for: mashhoood.webs.com.
Lecture 7: Requirements Engineering
Database Analysis and the DreamHome Case Study
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
Systems Analysis and Design in a Changing World, Fourth Edition
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
The Software Development Process
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Project Charter
Requirements Engineering Requirements Elicitation Overview of Requirements Analysis.
Requirements Engineering Process
Requirement Engineering
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
CS223: Software Engineering Lecture 8: Requirement Engineering.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
1 Requirements Elicitation – 2 Lecture # Requirements Engineering Process Requirements Elicitation Requirements Analysis and Negotiation Requirements.
Systems Analysis Lecture 5 Requirements Investigation and Analysis 1 BTEC HNC Systems Support Castle College 2007/8.
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
Scope of Systems Requirements: Definition o f Requirements Not to define the full system Not to define the full system Describe or define the essential.
Pepper modifying Sommerville's Book slides
Investigating System Requirements
Requirements Elicitation and Elaboration
SNS College of Engineering Coimbatore
EKT 421 SOFTWARE ENGINEERING
Systems Analysis and Design in a Changing World, 6th Edition
Requirements Engineering Processes
Lecture # 7 System Requirements
Presentation transcript:

CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases

2Objectives n This lecture introduces Requirements Determination: Concept of system requirements Techniques to solicit requirements Elaboration of use case diagrams Organization and documentation of system requirements in the form of Use Cases Stakeholders (customers and end users) have goals (also known as needs) and want computer systems to help them meet them. There are several ways to capture these goals and system requirements, the better ones are simple and familiar because they make it easier – especially for users and customers – to contribute to their definition or evaluation.

3 Context of requirements analysis ‘What’

4 What is a requirement? A requirement may range from a high-level abstract statement of a service or of a system constraint to a detailed functional specification

5 Types of requirements n Functional requirements Statements of functionality or services the system should provide, how the system should react to particular inputs and how the system should behave in particular situations. n Non-functional requirements Constraints on the services or functions offered by the system such as performance constraints, standards, reliability, availability (e.g. 24x7, short Transaction Time)

6 Techniques to solicit requirements n The task of the requirements determination phase is to determine, analyze and negotiate requirements with the stakeholders n The task involves various techniques of gathering information from the customers. It is concept exploration through structured and unstructured interviews of users, questionnaires, study of documents and forms, etc.

7 Traditional techniques n Traditional methods of requirements elicitation include: Interviews Questionnaires Observation Study of business documents

8Interviews n Primary technique of fact finding and information gathering. n Interviews with domain experts are frequently a simple knowledge transfer, but may be done with different levels of granularity (i.e. management vs. operational staff – different roles). Interviews with customers are more complex. n There are two kinds of interviews, structured and unstructured. A structured interview is prepared in advance, has a clear agenda and many questions are pre-determined. n Consider multiple interviews or meetings (i.e. clarifications once more is understood re: domain). n Listening and documenting are key. n Allow diagram drawing to understand the interviewee’s view of the relationships and dependencies in a problem domain. n Recognize different personality types may contribute information willingly at different levels

9Questionnaires Efficient way of gathering information from many customers. Less productive since we cannot get clarification (unless collecting personal/private information – not always allowed) Types of Questions –Multiple-choice Questions –Rating Questions –Ranking Questions

10 Requirements determination n Requirements analysis includes negotiations between developers and customers. This step is necessary to avoid and eliminate contradicting and overlapping requirements and also to conform to the project budget and timeline n The product of the requirements determination phase is a requirements document. This is mostly a narrative text document, normally in the format of use cases

11 Requirements Document Template n Project Preliminaries Purpose and Scope Business Context Stakeholders Ideas for Solutions Document Overview n System Services Scope of the System Functional Requirements Data Requirements n System Constraints Interface Requirements Performance Requirements Security Requirements Operational Requirements Political and Legal Requirements Other Constraints n Project Matters Open Issues Preliminary Schedule Preliminary Budget n Appendices Glossary Business Documents and Forms References

12 Use Case Diagrams n Use Case specification includes representation of actors, use cases and four kinds of relationships: Association Include Extend Use Case generalization

13 Association relationship n The association relationship establishes the communication path between an actor and a use case

14<<Includes>> The includes relationship allows the factoring out of common behaviour in the included Use Case(s) the included use case is necessary for the completion of the use case (“HAS TO BE COMPLETED”)

15<<Extends>> The extends relationship provides a controlled form of extending the behaviour of a use case by activating another use case at specific extension points the extended use case is optional for the completion of the use case (“COULD BE COMPLETED”)

16<<Generalization>> The generalization relationship provides a form of specialization to a base use case the specialized use case is a replacement for the generalized use case

17 Use case formality Use cases really are requirements and need a basic structure, and also. n a use case describes an actor trying to achieve a goal by using the system