CS 501: Software Engineering Fall 1999 Lecture 4 (a) Documentation (b) Requirements Analysis.

Slides:



Advertisements
Similar presentations
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Advertisements

1 SWE 513: Software Engineering Requirements II. 2 Details in Requirements Requirements must be specific Examples -- university admissions system Requests.
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.
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 Fall 2000 Lecture 5 (a) Documentation (b) Requirements Analysis.
CS 501: Software Engineering
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 7 Requirements I.
1 SWE Introduction to Software Engineering Lecture 11 - Requirements Engineering Processes.
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.
Requirements Analysis
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
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,
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
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.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
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.
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.
REQUIREMENTS ENGINEERING PROCESSES Chapter 6. Activities in Requirements Engineering processes  Requirements elicitation;  Requirements analysis; 
CS 501: Software Engineering
Software Engineering Management
CS 501: Software Engineering
Database Management Systems
Requirement Management
Requirements Analysis
COSC 4506/ITEC 3506 Software Engineering
Requirements Document
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

CS 501: Software Engineering Fall 1999 Lecture 4 (a) Documentation (b) Requirements Analysis

Assignments September 9Project planGroup September 23Modify large programIndividual October 7Project interim reportGroup October 28Testing large programIndividual November 11Design modelingIndividual Nov 29 - Dec 3Project presentationsGroup Exam weekFinal examinationIndividual Details are subject to change.

Administration Project team formation: Monday recitation session. Thursday, September 9: Project plan due -- report on paper. 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

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

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

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

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

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

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

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

Procedural Models: Flowchart Operation Decision Manual operation Report

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()

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

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

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

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

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, it is important not to allow the analysis tools to prejudge the system design.