Software Engineering Fall 2014

Similar documents
Software Engineering (CSC 4350/6350) Rao Casturi

Software Engineering Fall 2014

Software Engineering Fall 2014

Software Lifecycle Activities

Software Architecture and Engineering Requirements Elicitation Peter Müller

Requirements elicitation: Finding the Voice of the Customer

Requirements Elicitation

Chapter 4 Requirements Elicitation

Software Architecture and Engineering Requirements Elicitation Peter Müller

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/08/2015

Introduction to Software Engineering

Requirements Engineering Unit 4: Requirements modeling, specification & prioritization

8/30/2010. Lecture 1. Topics covered. Functional and non-functional requirements The software requirements document Requirements specification

Software Engineering Fall 2014

Development Process and Analysis. LTOOD/OOAD - Verified Software Systems 1

Object-Oriented Software Engineering. Using UML, Patterns, and Java. Functional Modeling

Requirements Engineering and Software Architecture Project Description

Requirements Analysis. Overview

Announcements: HW #6 due in two weeks. Next week: Spring Break

02291: System Integration

Software Engineering (CSC 4350/6350) Rao Casturi

End To End Training For Your Business Analyst Career

REQUIREMENTS ENGINEERING

Requirements Engineering

Page # Configuration Management Bernd Brügge Technische Universität München Lehrstuhl für Angewandte Softwaretechnik 11 January 2005

Software Engineering I (02161)

Requirements Engineering Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1

Course : Software Engineering and Project Management. Unit 2 Software Requirements Engineering & Analysis

Information Technology Audit & Cyber Security

Requirements Engineering

Object-Oriented Software Engineering! Using UML, Patterns, and Java! Chapter 1: Introduction!

SYSTEM AND SOFTWARE DESIGN USING THE UNIFIED MODELING LANGUAGE (UML)

BABOK v3 Task to Technique Mapping

Requirements Engineering

An Introduction to Use-Case Modeling

Requirements Engineering and Software Architecture Project Description

The Use Case Technique: An Overview

Chapter 4 Requirements Elicitation

Object-Oriented Software Engineering! Using UML, Patterns, and Java! Chapter 3, Project Organization and Communication

Chapter 4, Requirements Elicitation, examples

Overview of A Guide to the Project Management Body of Knowledge (PMBOK Guide) Fourth Edition Changes

Requirements Engineering. Andreas Zeller Saarland University

Virtual Foundation Business Analyst Course Outline

It will also enable you to manage the expectations of your clients or management, as they will know exactly what to expect.

Rational Unified Process (RUP) in e-business Development

Solutions Manual. Object-Oriented Software Engineering. An Agile Unified Methodology. David Kung

An Introduction to Use Cases

A Guide to the Business Analysis Body of Knowledge (BABOK Guide), Version 2.0 Skillport

Modern methods in Software Engineering. Requirements Elicitation.

Functional Testing. CSCE Lecture 4-01/21/2016

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB

MSO Lecture 2. Wouter Swierstra (adapted by HP) September 14, 2017

Object-Oriented Software Engineering Using UML, Patterns, and Java. Chapter 1: Introduction

Prerequisites It is recommended that the participants have a working knowledge of traditional Business Analysis tasks and techniques.

Software Engineering II - Exercise

Use-Case Diagram. Contents. Introduction. 1. Introduction. User-Centred Design (UCD) Users Requirements

making money from customer use of kiosk attracting more customers to the store saving money if the kiosk replaces manual operations

status Homework 2 posted:

Chapter 3, Project Organization and Communication

Requirements Engineering with Use Cases

version NDIA CMMI Conf 3.5 SE Tutorial RE - 1

[Name] [ ID] [Contact Number]

Appendix C: MS Project Software Development Plan and Excel Budget.

Work Plan and IV&V Methodology

Requirements Elicitation

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Testing. CxOne Standard

Unit 9 Information Systems

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement

Object-Oriented Analysis/Design and Use Cases Object Oriented Analysis and Design

The Enterprise Systems Engineering Center Requirements Management Guide - Analysis

Chapter 12, Rationale Management

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models

Project Report Template (Sem 1)

2009 Spring. Software Modeling & Analysis. Introduction to OSP. Lecturer: JUNBEOM YOO

Development Process Bennett, McRobb and Farmer 1

MODELING AN ELECTRONIC PORTAL APPLICATION

Requirements Verification and Validation

Requirements for an MDM Solution

SUBJECT OUTLINE DETAILS. 2. Management unit - Department: Information Systems - College: Information and Communication Technology

<Name of Project> Test Plan. Project Management Framework

Conceptual Modeling. Conceptual Modeling. Class diagrams (POS Example) Modeling the Problem Domain

ACCEPTANCE TEST PLAN. Docket Course Scheduling. For. Version 1.0 February 5, 2013

Unique ID: APP 130 Copyright International Business Machines Corporation 1998, 1999, 2000

Software Modeling & Analysis

City of San Mateo Clean Water Program Programmable Logic Controller (PLC) and Human Machine Interface (HMI) Programming Services

NDIA Test and Evaluation Conference

Lecture 5: Requirements Engineering II. COSI 120b, Principles of Software Engineering

IT-hub College, Sargodha Version: 1.0 Online Attendance Management System Date: February 20, 2017

Use cases. Version 2.6 November 2015

LSST Verification & Validation Process & MBSE Methodology

Requirements Analysis

Requirements Elicitation. Software Requirements and Design CITS 4401 Lecture 17

Job Board - A Web Based Scheduler

Ten steps to effective requirements management

Enterprise Architecture: an ideal discipline for use in Supply Chain Management

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2

Oracle Banking Digital Experience

IDEF0 Activity Modeling

Requirements Engineering

Transcription:

Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 11/05/2014

Student Registration System (SRS) RC University Management Board approved a new Student Registration System to enable the on line course requirement for the Computer Science Department. The implementation of the new system is proposed to be in place by 2015 Spring. The new system is called SRS. What is expected by the SRS: The Student Registration System (SRS) shall include the ability for any accepted student to view his or her classes for a given semester. The SRS shall permit any active student to add new classes or modify existing classes. The SRS shall give the users to view the student records. The SRS will be able to print the records if needed. The SRS shall give the ability for the administrator to modify the student records for the given semester. The SRS shall log the history. The Course coordinator or department assigned person can view the student educational progress reports. SRS shall provide the functionality to pay the student dues. SRS will be used to capture student grades on the specific classes taken by the student The SRS will run on any standard browser with standard user authentication. SRS will not accept any payments directly but directed to a third party vendor to accept the payments by credit cards only. The data will be updated on SRS from the payment system by end of every day 8:00 pm. Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 2

Requirement Elicitation - Goal Goal of this activity is to capture all the Shall statement sentences from the requirement documents as project requirements as a tabular form End of this activity the Requirements Trace Matrix is a deliverable to the project team Why is this activity important? Scope Creep Foundation for next phases (Use Cases, Categories, Classes, Methods) Cost & Time lines of project Future development (Incremental) Issues Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 3

Requirement Elicitation Concepts: From Start Develop or work on existing system Build UI/Interfaces Complete with all variations Unambiguous Correct Greenfield, Re Engineering, Interface Development Completeness, Consistency, Clarity, Accuracy Functional Requirements MUST to have Interactions with the system Non Functional Requirements Realism, Verifiability, Traceability Usability Reliability Robustness Supportability Performance Should be realist Able to verify the outcome Should match with the original requirements Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 4

Requirement Elicitation Activities: Identify the Actors (Roles) During this phase the system developers will try to layout the various users and their roles This help in a better understanding of the Application Domain Identify Scenarios: Have discussions on some example how the system will work Helps in understanding the system better Identify Use Case: This is a detailed document of the various scenarios Capture all the possible functions the system should able to perform Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 5

Requirement Elicitation Activities: Refine the Use Cases: This phase is utilized to refine and eliminate any of the duplicate Re verify that all the requirements re captured and each one has its own Use Case Identify the Relations: During this phase the relationship between the various Use Cases Dependencies are identified Identify the common functions in the system Identify the Non-Functional Requirements Get a confirmation from the client Document the non functional requirements Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 6

Requirement Elicitation Activities: (Actor) Actors are Role Abstraction not necessary to map to a persons One Actor can take multiple roles Subsystems can be Actors Questions for identifying actors Which user groups are supported by the system to perform their work? Which user groups execute the system s main functions? Which user groups perform secondary functions, such as maintenance and administration? With what external hardware or software system will the system interact? Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 7

Requirement Elicitation Activities: (Scenarios) Scenario is a description of the behavior of an ACTOR Single Actor View point Can t replace an Use Case Types (As-Is, Futuristic, Testing and Evaluation, Training) Questions for identifying scenarios What are the tasks that the actor wants the system to perform? What information does the actor access? Who creates that data? Can it be modified or removed? By whom? Which external changes does the actor need to inform the system about? How often? When? Which events does the system need to inform the actor about? With what latency? Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 8

Requirement Elicitation Activities: (Use Cases) Aggregation of the Scenarios Use Case is initiated by an ACTOR Use Case can interact with other Actors Writing Use Case is an ART Best Practices of Use Case Number each Use Case Uniquely Name the User Case to represent the ACTION (Verb) Name the ACTORS with the Role (Noun) Exit and Entry conditions should be clear Don t write about the user interface Exceptions should be outlined clearly Flow of activity should be clear and numbers for easy identification Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 9

Requirement Elicitation Activities: (Refine Use Cases) Goal: Completeness and Correctness Any missing details to be noted and added to the User Case Go over with the client if possible. Let an outsider read the Use Case Best Practices of Use Case Refine More eyes are better. Run through with fine tooth comb on scenarios & User Cases Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 10

Requirement Elicitation Activities: (Relationships) Goal: Find the Relationship between ACTORs and Use Cases This will reduce the complexity and makes it easy for developers Identify the Common and Exceptional scenarios Reduce redundancy Best Practices of Relationships Identify common scenarios or user cases EXTEND for rarely used scenario or use case INCLUDE when the scenario is used in more than one use case Don t over use. Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 11

Identifying Terminology / Glossary Participating objects should have a name Terminology is the first step towards the Analysis Need to be updated regularly Best Practices of Glossary User Application Domain Names Clarify any Technical Terms Data sources to be mentioned Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 12

Requirement Elicitation Activities: Non Functional Non Functional Product Organizational External Performance Security Dependability Usability Operational Environment Development Standards Legal Accounting Standards Regulatory Ethical Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 13

Activities of the Analysis Phase Identify Entity, Boundary and Control Objects Map Use Cases to Objects with Sequence Diagrams Modeling Interactions between the Objects Identify the Association, Aggregation and Attributes of the Classes Modeling State Behavior of Individual Objects Modeling Inheritance Relationships Review Analysis Model Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 14

Questions? Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 15

References Use Cases Combined with BOOCH, OMT UML Process and Products - Putnam P Texel, Charles B Williams Object-Oriented Software Engineering Using UML Patterns, and JAVA -Bernd Bruegge & Allen H. Dutoit Software Engineering 9th Edition - Ian Sommerville Software Engineering - Fall 2014 CSC4350/6350 - Rao Casturi 16