CS 5150 Software Engineering Lecture 9 Requirements 3.

Slides:



Advertisements
Similar presentations
Problem solving methodology Information Technology Units Adapted from VCAA Study Design - Information Technology Byron Mitchell, November.
Advertisements

1 Information Systems Development (ISD) Systems Development Life Cycle Overview of Analysis Phase Overview of Design Phase CP2236: Information Systems.
Systems Analysis & IT Project Management Pepper. System Life Cycle BirthDeathDevelopmentProduction.
Chapter 1 - An Introduction to Computers and Problem Solving
SYSTEM ANALYSIS & DESIGN (DCT 2013)
Software Engineering COMP 201
Software Testing and Quality Assurance
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 10 Requirements 3.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 10 Requirements 4.
1 CS 425 Software Engineering Project Preparation Use Case Modeling [Based on Chapters 3 & 4, Arlow and Neustadt, “UML and the Unified Process,” Addison-Wesley,
Chapter 9 & 10 Database Planning, Design and Administration.
Information Systems Development Lecture 2: the idea of the Life Cycle.
Computers: Tools for an Information Age
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 9 Requirements 3.
CS 501: Software Engineering Fall 2000 Lecture 5 (a) Documentation (b) Requirements Analysis.
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Developing Business Information Systems Chapter 11.
CS CS 5150 Software Engineering Lecture 10 Requirements 3.
Modeling and Evaluation. Modeling Information system model –User perspective of data elements and functions –Use case scenarios or diagrams Entity model.
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.
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 14 Systems Analysis and Design: The Big Picture.
CS 4310: Software Engineering Lecture 3 Requirements and Design.
INFORMATION SYSTEM APPLICATIONS System Development Life Cycle.
CS 0004 –Lecture 8 Jan 24, 2011 Roxana Gheorghiu.
CSI315 Web Applications and Technology Overview of Systems Development (342)
Managing the development and purchase of information systems (Part 1)
1 BTEC HNC Systems Support Castle College 2007/8 Systems Analysis Lecture 9 Introduction to Design.
Introduction to SDLC: System Development Life Cycle Dr. Dania Bilal IS 582 Spring 2009.
Module 4: Systems Development Chapter 13: Investigation and Analysis.
Business Analysis and Essential Competencies
หลักการโปรแกรม เพื่อแก้ปัญหาโดยใช้คอมพิวเตอร์
OHT 11.1 © Marketing Insights Limited 2004 Chapter 9 Analysis and Design EC Security.
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 10 Techniques for Requirements Definition and Specification II.
Copyright Prentice Hall, Inc. 1 Computers: Information Technology in Perspective, 11e Larry Long and Nancy Long Chapter 11 Developing Business Information.
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.
1-1 System Development Process System development process – a set of activities, methods, best practices, deliverables, and automated tools that stakeholders.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
CS 4310: Software Engineering Lecture 4 System Modeling The Analysis Stage.
Sept. 18, 2003CS WPI1 CS 509 Design of Software Systems Lecture #3 Thursday, Sept. 18, 2003.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
 2004 Prentice Hall Business Publishing, Accounting Information Systems, 9/e, by Bodnar/Hopwood 10 – 1 Systems Planning and Analysis Chapter 10.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
2-1 A Federation of Information Systems. 2-2 Information System Applications.
Project Deliverables CEN Engineering of Software 2.
Systems Development Life Cycle
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Week 3: Requirement Analysis & specification
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 9 Requirements 3.
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 Week 6 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 11 Requirements III.
How Computers Solve Problems Computers also use Algorithms to solve problems, and change data into information Computers can only perform one simple step.
CS 501: Software Engineering Fall 1999 Lecture 5 (a) Requirements Analysis (continued) (b) Requirements Specification.
SYSTEM ANALYSIS AND DESIGN LAB NARZU TARANNUM(NAT)
Software Design and Development Development Methodoligies Computing Science.
Systems Analysis Lecture 5 Requirements Investigation and Analysis 1 BTEC HNC Systems Support Castle College 2007/8.
An Overview of Requirements Engineering Tools and Methodologies*
Software Engineering Lecture 4 System Modeling The Analysis Stage.
Systems Planning and Analysis
CIS 376 Bruce R. Maxim UM-Dearborn
FORMAL SYSTEM DEVELOPMENT METHODOLOGIES
Chapter 2- Visual Basic Schneider
COSC 4506/ITEC 3506 Software Engineering
Members: Keshava Shiva Sanjeeve Kareena
Presentation transcript:

CS 5150 Software Engineering Lecture 9 Requirements 3

CS Administrivia Quiz response High level project goals: Generic versus particular User-relevant versus implementation Copyright versus license Risk: finding users to test with Surveys Feasibility Reports

CS Modeling Techniques for Requirements Analysis and Specification The craft of requirements analysis, modeling and specification is to select the appropriate tool for the particular task A variety of tools and techniques. Many familiar from other courses. No correct technique that fits all situations. As you build understanding of the requirements through viewpoint analysis, scenarios and use cases, etc., use models to specify requirements. The models provide a bridge between the client's understanding and the developers.

CS The “Ur-models” of Software Engineering Functions Data (storage) Processes

CS Data-Flow Models

CS Data-Flow Example 1: University Admissions

CS Receive Application Stage

CS Evaluate Stage

CS Decision Table

CS Flowcharts

CS University Admissions as Flowchart

CS Pseudo-code Example: Check 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()

CS Transition Diagrams A system is a set of states and rules for transitioning from one state to another Transitions can be conditional Outputs can be associated with states or transitions Transition rules often expressed as a function: next state = f(current state, inputs)

CS State Machine Example: Therapy Control Console Example: Radiation Therapy Control Console You are developing requirements for the operator's control console. In an interview, the client describes the procedures that the operator must follow when operating the machine. You use a finite state machine to specify the procedures This shows the client that you understand the requirements and specifies the procedures for the developers

CS Therapy Control Console Scenario "The set up is carried out before the patient is made ready. The operator selects the patient information from a database. This provides a list of radiation fields that are approved for this patient. The operator selects the first field. This completes the set up. "The patient is now made ready. The lock is taken off the machine and the doses with this field are applied. The operator then returns to the field selection and chooses another field."

CS Console State Transition Diagram

CS Console State Transition Table

CS Transition Diagrams for User Interfaces (CS 5150 Website)

CS Andrew Durdin’s iOS Home Button Guide

CS Entity-Relation Models A requirements and design methodology for relational databases A database of entities and relations Tools for displaying and manipulating entity- relation diagrams Tools for manipulating the database (e.g., as input to database design)

CS Entity-Relation Diagrams

CS Entity-Relation Example: 5150 Project

CS Database Schema for Web Data

CS Sequence Diagrams for Interaction/Concurrency

CS Modeling Trump Card: Prototyping Rapid prototyping is the most comprehensive (and potentially expensive) of all modeling methods A method for specifying requirements by building a system that demonstrates the functionality of key parts of the required system Particularly valuable for user interfaces

CS Dictionaries to Support Other Requirements Documents A data dictionary is a list of names used by the system Name (e.g., "start_date") Brief definition (e.g., what is "date") What is it? (e.g., integer, relation) Where is it used (e.g., source, used by, etc.) May be combined with a glossary

CS A Few Concluding Remarks In this course we discuss class and object models as a tool for design Some people recommend class and object models for requirements definition, but it is difficult to use them without constraining the system design Flow charts and finite state machines are supported by UML as design models, but are equally useful for requirements