Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.

Slides:



Advertisements
Similar presentations
Team Skill 5: Refining the Use Cases Lecture 11. Advantages of Use Cases They are easy to write Written in users language Provide cohesive, related threads.
Advertisements

IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
Requirements Analysis and Design Engineering
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Ambiguity and Specificity Sriram Mohan/ Steve Chenoweth Chapters 23, 24 - Requirements Text 1.
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Process Specifications and Structured Decisions Systems Analysis and Design, 8e Kendall.
System Concepts for Process Modeling  Process Concepts  Process Logic  Decomposition diagrams and data flow diagrams will prove very effective tools.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
Unit 171 Algorithms and Problem Solving  Introduction  Algorithm Design  Algorithm Properties  Algorithm Control Flow  Examples  Comparing Algorithms.
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
Kendall & KendallCopyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 9 Kendall & Kendall Systems Analysis and Design, 9e Process Specifications.
© Copyright 2011 John Wiley & Sons, Inc.
Systems Analysis and Design in a Changing World, 6th Edition
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.
S R S S ystem R equirements S pecification Specifying the Specifications.
Approaches to System Development Chapter 3. Methodologies, Models, Tools and Techniques A system development methodology –provides guidelines to follow.
PROCESS MODELING Chapter 8 - Process Modeling
Business Analysis and Essential Competencies
Models of Computation: FSM Model Reading: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
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.
Ambiguity and Specificity Steve Chenoweth & Chandan Rupakheti Chapters 23, 24 - Requirements Text Questions 1, 2 Image from
1 An Introduction to Formal Languages and Automata Provided by : Babak Salimi webAdd:
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
1 Text Layout Introduction (1-4) Team Skill 1 – Analyzing the problem (5-7) Team Skill 2 – Understanding User and Stakeholder Needs (8-13) Team Skill 3.
Introduction to Computer Programming Using C Session 23 - Review.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.
Procedures for managing workflow components Workflow components: A workflow can usually be described using formal or informal flow diagramming techniques,
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
1 Introduction to Software Engineering Lecture 1.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
Software Requirements: A More Rigorous Look 1. Features and Use Cases at a High Level of Abstraction  Helps to better understand the main characteristics.
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
Technical Methods for Specifying Requirements 1. When to Use Technical Methods  If the description of the requirement is too complex for natural language.
Lecture 91 Introduction to Data Analysis and Logic Specification Objectives l Draw an entity-relationship diagram, and explain the types of entity relationships.
System Requirements Specification
CLIC08 workshop Cost requirements for CLIC H. Braun, G. Riddone
Chapter 11  2000 by Prentice Hall System Analysis and Design: Methodologies and Tools Uma Gupta Introduction to Information Systems.
CMPSC 16 Problem Solving with Computers I Spring 2014 Instructor: Tevfik Bultan Lecture 4: Introduction to C: Control Flow.
Copyright © 2011 Pearson Education Process Specifications and Structured Decisions Systems Analysis and Design, 8e Kendall & Kendall Global Edition 9.
4 - Conditional Control Structures CHAPTER 4. Introduction A Program is usually not limited to a linear sequence of instructions. In real life, a programme.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
I&C Lab Seminar Procedure for the Software Requirements Specification for Safety Critical Systems Seo Ryong Koo Korea Advanced Institute Science.
CompSci 280 S Introduction to Software Development
On Ambiguity and Specificity
Software Engineering Lecture 4 System Modeling The Analysis Stage.
Technical Methods for Specifying Requirements
IT316 Software Requirement Engineering
Recall The Team Skills Refining the Use cases
Recall The Team Skills Analyzing the Problem (with 5 steps)
CHAPTER 5A Loop Structure
SOFTWARE REQUIREMENTS ENGINEERING
Chapter 2 : Data Flow Diagram
Lecture 2 Introduction to Programming
By Dr. Abdulrahman H. Altalhi
Introduction to Computer Programming
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
System Requirements Specification
Recall The Team Skills Analyzing the Problem (with 5 steps)
PROBLEM SOLVING SKILLS
Introduction to pseudocode
Ambiguity and Specificity
Algorithms and Problem Solving
Members: Keshava Shiva Sanjeeve Kareena
Presentation transcript:

Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5. Refining the System Definition 1. Software Requirements: a more rigorous look 2. Refining the Use cases 3. Developing the Supplementary Specification 4. On Ambiguity and Specificity 5. Technical Methods for Specifying Requirements 6. Building the Right System

Chapter 24 Technical Methods for Specifying Requirements Pseudo-code Finite state machines Decision tables and decision trees Activity diagrams (flowcharts) Entity-relationship models

Introduction  There are cases in which the ambiguity of natural language is simply not tolerable Examples: when the requirements deal with life-and- death issues or when the erroneous behavior of a system could have extreme financial or legal consequences.  If the description of the requirement is too complex for natural language and if you cannot afford to have the specification misunderstood, you should consider writing or augmenting that portion of the requirements set with a "technical methods" approach.

Technical Specification Methods  Pseudo-code  Finite state machines  Decision tables and decision trees  Activity diagrams (flowcharts)  Entity-relationship models  …

Pseudo-code  Pseudo-code is a "quasi" programming language An attempt to combine the informality of natural language with the strict syntax and control structures of a programming language.  It usually consists of combinations of: Imperative sentences with a single verb and a single object A limited set, typically not more than 40–50, of "action- oriented" verbs from which the sentences must be constructed Decisions represented with a formal IF-ELSE-ENDIF structure Iterative activities represented with DO-WHILE or FOR- NEXT structures

Example of Pseudo-code  A pseudo-code specification of an algorithm for calculating deferred-service revenue earned for any month is: Set Sum(x)=0 FOR each customer X IF customer purchased paid support AND ((Current month) >= (2 months after ship date)) AND ((Current month) <= (14 months after ship date)) THEN Sum(X)=Sum(X) + (amount customer paid)/12 END

Finite State Machines  Example of a state transition diagram  The natural language expression "the other light shall flash every 1 second" was ambiguous.  The above state transition diagram is not ambiguous since it illustrates that duty cycle B was indeed the right choice.

Finite State Machines  Example of a State Transition Matrix for an On/Off Counting Device:  What happens if the user presses the On switch and the device is already on? Answer: Nothing.  What happens if both bulbs are burned out? Answer: The device powers itself off.

Decision Tables and Decision Trees  It's common to see a requirement that deals with a combination of inputs; different combinations of those inputs lead to different behaviors or outputs.

Activity Diagrams  An activity diagram is essentially a flowchart, showing flow of control from activity to activity.

Entity-Relationship Models  If the requirements within a set involve a description of the structure and relationships among data within the system, it's often convenient to represent that information in an entity-relationship diagram (ERD).

Key Points  Technical methods for specifying requirements are appropriate when the requirement description is too complex for natural language or if you cannot afford to have the specification misunderstood.  Technical methods include pseudo-code, finite state machines, decision trees, activity diagrams, entity-relationship models, and many others.