CS 501: Software Engineering Fall 2000 Lecture 5 (a) Documentation (b) Requirements Analysis.

Slides:



Advertisements
Similar presentations
1 SWE 513: Software Engineering Requirements II. 2 Details in Requirements Requirements must be specific Examples -- university admissions system Requests.
Advertisements

SWE Introduction to Software Engineering
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 10 Requirements 3.
Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville1 CSC-3324: Chapter 5 Requirements Engineering Reading: Chap. 6, 7 + annex.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 2 Software Processes.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 8 Requirements I.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 8 Requirements II.
CS 501: Software Engineering
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 9 Requirements II.
CS 5150 Software Engineering
1 CS 501 Spring 2007 CS 501: Software Engineering Lecture 7 Requirements I.
NHPRC ELECTRONIC RECORDS RESEARCH FELLOWSHIP SYMPOSIUM Nov. 19, 2004 Rebecca Schulte University of Kansas Project Title: Testing Boundaries—An Exploration.
CS 501: Software Engineering Fall 2000 Lecture 1 Introduction to Software Engineering.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 7 Requirements I.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 9 Requirements 3.
CS 5150 Software Engineering
CS 501: Software Engineering Fall 2000
CS 501: Software Engineering
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 7 Requirements I.
CS CS 5150 Software Engineering Lecture 10 Requirements 3.
CS CS 5150 Software Engineering Lecture 10 Requirements 3.
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 9 Requirements 3.
CS 501: Software Engineering Fall 2000 Lecture 6 (a) Requirements Analysis (continued) (b) Requirements Specification.
This chapter is extracted from Sommerville’s slides. Text book chapter
CS 4310: Software Engineering Lecture 3 Requirements and Design.
INFORMATION SYSTEM APPLICATIONS System Development Life Cycle.
Computers & Employment By Andrew Attard and Stephen Calleja.
University of Palestine Faculty of Engineering and Urban planning Software Engineering department Software Engineering Group Project Requirements Project.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
CS 360 Lecture 5.  Requirements define the function of the system from the client’s viewpoint.  They establish the system's functionality, constraints,
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
End HomeWelcome! The Software Development Process.
Creator: ACSession No: 16 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 (Software Quality) Configuration Management CSE300 Advanced.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Engineering Management Lecture 1 The Software Process.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa REQUIREMENT SPECIFICATION Today: Requirements Specification.
CS CS 5150 Software Engineering Lecture 10 Requirements 3.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 9 Techniques for Requirements Definition and Specification I.
CS 4310: Software Engineering Lecture 4 System Modeling The Analysis Stage.
BEST GROUP CONSULTANTS Lesson Department Information System.
CS 501: Software Engineering Fall 1999 Lecture 6 Management I: Project Management.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 3 Feasibility Studies.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 8 Requirements Analysis and Specification.
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 2 Software Processes.
CS CS 5150 Software Engineering Lecture 5 Feasibility Studies.
Requirements Engineering Process
SWE 513: Software Engineering
CS CS 5150 Software Engineering Lecture 8 Requirements 1.
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 9 Requirements 3.
CS CS 5150 Software Engineering Lecture 8 Requirements 1.
Requirements Engineering Requirements Management Lecture-25.
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
CS 501: Software Engineering Fall 1999 Lecture 4 (a) Documentation (b) Requirements Analysis.
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 8 Requirements II.
CS 5150 Software Engineering Lecture 9 Requirements 3.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 11 Requirements III.
CS 501: Software Engineering Fall 1999 Lecture 5 (a) Requirements Analysis (continued) (b) Requirements Specification.
 The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the requirements.  However,
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 7 Requirements I.
CS 501: Software Engineering
Software Engineering Management
CS 501: Software Engineering
Requirement Management
Software Documentation
Requirements Analysis
COSC 4506/ITEC 3506 Software Engineering
Requirements Document
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

CS 501: Software Engineering Fall 2000 Lecture 5 (a) Documentation (b) Requirements Analysis

2 Nomadic Computing Experiment RECITATION SESSION, MONDAY SEPTEMBER 11 Dell laptops with wireless cards available for CS 501 projects 3 or 4 laptops per project 1 or 2 additional wireless cards per project surveys at beginning and end of project Each project as part of the Feasibility Study and Plan must identify which students will take responsibility for the equipment.

3 Assignments September 13Feasibility and planGroup October 4RequirementsGroup/individual October 16Midterm examIndividual November 8Design Group/individual Nov 29 - Dec 1Project presentationsGroup Exam weekFinal examinationIndividual Details are subject to change.

4 Assignment 1 Wednesday, September 13: Project plan due -- report. Title of project Client/customer Team members Outline description Current status (e.g., previous work) Plan (e.g., major stages, assignment to tasks, technical environment, schedule, etc.) Any other relevant information

5 Projects Teams that are planning to carry out the Internet Butler project, please meet with me after the lecture.

6 Documentation Reasons for documentation: visibility (e.g., project plan, interim report) user support (e.g., user manual) team communication (e.g., interface specifications) maintenance and evolution (e.g., requirements) Characteristics of documentation: accurate and kept current appropriate for audience maintained online (usually) simple but professional in style and appearance Documentation is expensive --> Quality not volume

7 Form of Documentation External Printed Web site Internal Program documentation Program context (e.g., copyright notices)

8 Requirements Definition and Analysis Requirements Definition System and Software design Programming and Unit Testing Integration and System Testing Operation and Maintenance

9 The Requirements Process Feasibility Study Requirements Analysis Requirements Definition Requirements Specification Feasibility Report System Models Definition of Requirements Specification of Requirements Document

10 Requirements Analysis 1. Understand the requirements in depth: Domain understanding Examples: Tote Investors, Philips light bulbs Stakeholders Example: Andrew project

11 Viewpoint Analysis Example: University Admissions System Applicants University administration Admissions office Financial aid office Special offices (e.g., athletics, development) Computing staff Operations Software development and maintenance Academic departments

12 Interviews with Clients Clients may have only a vague concept of requirements. Prepare before you meet with them Keep full notes If you don't understand, delve further Small group meetings are often most effective Clients often confuse the current system with the underlying requirement.

13 Requirements Analysis 2. Organize the requirements: Classification into coherent clusters (e.g., legal requirements) Recognize and resolve conflicts (e.g., functionality v. cost v. timeliness) Example: Dartmouth general ledger system

14 Requirements Analysis 3. Model the requirements: Informal Prose Systematic Procedural models Data-centric models Object models Formal models

15 Procedural Models: Flowchart Operation Decision Manual operation Report

16 Flowchart: University Admissions Form received New? Database record T Notify student FUpdate database Complete? Notify student T F Evaluate

17 Procedural Models: Pseudo-code Example: Check project project plan check_plan (report) if report (date_time) > due_date_time then error (too_late) if report (client) = none then error (no_client) if report (team) max_team then error (bad_team) if error() = none then comments = read_report (report) return (comments (text), comments (grade)) else return error()

18 Data-Flow Models External entities Processing steps Data stores or sources Data flows

19 Example: University Admissions Applicant Application form Receive application Completed application Evaluate Rejection Offer

20 Example: University Admissions Assemble Application Stage Applicant Application form Receive Completed application Supporting information Pending database Acknowledgment Initiate evaluation Applicant database Evaluation request AND Acknowledgment

21 Example: University Admissions Process Completed Application Stage Rejection Evaluation Applicant database Evaluation request Acceptance Financial aid Offer Special request

22 Requirements Analysis v. System Design Dilemma. Requirements analysis should make minimal assumptions about the system design. But the requirements definition must be consistent with computing technology and the resources available. In practice, analysis and design are interwoven. However, do not to allow the analysis tools to prejudge the system design.