1. Trang chủ
  2. » Mẫu Slide

Software EngineeringIntroduction & Software Requirements Analysis &Specifications

200 1,1K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • Software Engineering Introduction & Software Requirements Analysis & Specifications UNIT I

  • Introduction to Software Engineering

  • Learning Objectives

  • What is Software?

  • Documentation Manuals

  • Operating Procedural Manuals

  • Software Characteristics

  • Types of Software

  • Attributes of Good Saoftware

  • Software Crisis

  • To Avoid Software Crises

  • What is Software Engineering?

  • What S/W Engineering is and is not..

  • S/W Engineering and Computer Science

  • Software Development Costs

  • Why are Software Projects Late? …

  • Why Software Projects are Late?...

  • Why are Software Projects Late ?...

  • Software Myths…

  • Slide 25

  • Software Myths cont..

  • Software Process

  • Software Process Model

  • Difficulty in S/W Process Improvement

  • Process Improvement Learning Curve

  • Some Terminologies

  • Some Terminologies cont..

  • What we Learnt

  • Software Life Cycle Model Set of Processes that Results in Software Products

  • Slide 35

  • Generic Software Process Models

  • Inherent Problems With S/W Development

  • Inherent Problems with S/W Development..

  • What Do Programmers Do?

  • Definitions

  • Definitions..

  • S/W Development Sub Processes

  • Software Development Activities cont..

  • Generic Life Cycle Phases

  • Pre Development Phase

  • Development Phase

  • Post Development Phase

  • S/W Development Activities

  • Processes, Activities and Tasks

  • Example

  • Slide 51

  • Software Engineering Life Cycle Models

  • Build and Fix Model

  • Water Fall Model

  • Typical Characteristics

  • Advantages

  • Disadvantages

  • However ...

  • Prototyping

  • Types of Prototypes

  • Slide 62

  • Slide 63

  • The Incremental Model

  • Iterative Enhancement Model

  • Characteristics

  • Slide 67

  • Slide 68

  • Evolutionary Development Model

  • Boehm’s Spiral Model (1986)

  • Spiral Model Components

  • Slide 73

  • Activities (“Rounds”)

  • Spiral Model…

  • Strengths

  • Weaknesses

  • The Limitations of the Waterfall and Spiral Models

  • Rapid Application Development (RAD)

  • RAD Goals

  • RAD Properties

  • Rapid Development

  • RAD - Essentials

  • Slide 84

  • Slide 85

  • Selection of a Life Cycle Model

  • Slide 87

  • Slide 88

  • Slide 89

  • Slide 90

  • What we learnt

  • Practical Problems

  • Slide 93

  • Problem

  • Slide 95

  • Slide 96

  • Problem

  • Software Requirements Analysis and Specification

  • Slide 99

  • Learning Objectives..

  • Slide 101

  • What are Requirements?

  • What happens if the Requirements are Wrong?

  • Why is Requirements Engineering Difficult?

  • Requirement Engineering Process Steps

  • Definitions and Specifications

  • Type of Requirements-I

  • Examples of Functional Requirements

  • Non-functional Requirements

  • Non-Functional Requirements Classifications

  • Non-functional Requirements Examples

  • Non-functional Requirements Measures

  • Type of Requirements-II

  • Type of Requirements-III

  • User Requirements

  • System Requirements

  • Requirement Document

  • Requirements Elicitation and Analysis

  • Requirement Elicitation Methods

  • Interviews

  • Interviews cont..

  • Selection of Stakeholder

  • Brainstorming Sessions

  • Basic Guidelines

  • FAST Session Preparations

  • Activities of FAST session

  • QFD steps

  • Use cases

  • Use Case Modeling: Overview

  • Use Case Model- Characteristics

  • Actors

  • Use Case

  • Describe How Actors and Use Cases Interact

  • ATM example- Candidate Requirements

  • Use Case Diagrams- Notation

  • Slide 138

  • Slide 139

  • Generalization Actor

  • Generalization Usecase

  • Include

  • Extend

  • Template Use Case Descriptions

  • Templates - Example

  • Requirement Analysis

  • Context diagram

  • Model the requirements

  • Data Flow Diagram

  • Components Of DFD

  • Process

  • The Flow

  • The Flow cont..

  • The Store

  • The Terminator

  • Guidelines for Constructing DFDs

  • Guidelines for Constructing DFDs cont..

  • Logical Consistency of DFD

  • Leveled DFDs

  • Leveled DFDs cont..

  • Slide 161

  • Slide 162

  • Level-2 DFD for User Account Maintenance

  • Data Dictionary

  • Data Dictionary Contents

  • Data Elements in DD

  • Data Structures in DD

  • Data Structures Examples

  • Data Flow in DD

  • Data Store in DD

  • Process in DD

  • Constructing Data Dictionary

  • Guidelines for Writing Requirements

  • The Requirements Document

  • Nature of the SRS

  • Characteristics of a Good SRS

  • IEEE Requirements standard

  • IEEE Requirements Standard

  • IEEE Requirements Standard cont..

  • Slide 181

  • Slide 182

  • Slide 183

  • Requirement Management

  • Requirement Change Management

  • ER Diagram

  • Slide 187

  • cont..

  • Solution

  • Slide 190

  • Slide 191

  • 1.1 Purpose (SAMPLE)

  • 1.2 Scope (SAMPLE)

  • 2 Overall Description (SAMPLE)

  • Slide 195

  • What we Learnt..

  • Review Question Objective

  • Review Question Objective..

  • Slide 199

  • Slide 200

  • Slide 201

  • Slide 202

  • Review Question Short Type

  • Slide 204

  • Review Question Long Type

  • Research Problems

  • Slide 207

  • References

  • Slide 209

Nội dung

Software Engineering Introduction & Software Requirements Analysis & Specifications UNIT I © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 Introduction to Software Engineering © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 Learning Objectives • What is Software • Documents • Software vs Hardware Characteristics • Types of Software • Good Software • Need for Software Engineering • Software Crisis • Software Engineering © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 Learning Objectives • Quality issues of Software  Cost  Late schedule  Software Quality • CASE • Software Myths • Software Process • Terminologies © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 What is Software? • Software is a set of items or objects that form a “configuration” that includes  programs  documents  data Documents Consist of different type of manuals  Documentation manuals  Operating procedure manuals © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 Documentation Manuals • Analysis Specifications  Formal specification  Context diagram  Data flow diagrams • Design  Flow charts  Entity Relationship Diagrams • Implementation  Source code listing  Cross reference listing • Testing  Test data  Test results © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 Operating Procedural Manuals • Consist of instructions to setup and use the software system and instructions on how to react to system failures • User manuals  System overview  Beginner’s Guide Tutorial  Reference Guide • Operational manuals  Installation Guide  System Administration Guide © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 Software Characteristics • Reusability of components • Software is flexible Failure Intensity Wear out phase Failure intensity Burn in Phase Time Useful Life Phase Time © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 10 Types of Software Custom  For a specific customer • System Software • Application Software Generic  Sold on open market  Often called  COTS (Commercial Off The Shelf)  Shrink-wrapped Embedded  Built into hardware  Hard to change © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 11 Attributes of Good Saoftware • Functionality  to meet stated and implied need • Usability  to be understood, learned and used • Reliability  To maintain a specified level of performance • Portability  To be adapted for different specified environment • Maintainability  To be modified for the purposes of making corrections, improvements, or adaptations • Efficiency  To provide appropriate performance relative to the amount of resources used © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 14 What we Learnt  Understand meaning of requirement  Importance of Requirement Engineering  Requirement Engineering Process Steps  Type of requirements  Requirements Phase: Deliverables  Requirement Elicitation Methods  Requirement Analysis  Data Flow Diagram  Writing Requirement Document © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 195 What we Learnt  Requirement Elicitation Methods            Onsite Observation Questionnaire Interviews Brainstorming Sessions Facilitated Application Specification Technique (FAST) Quality Function Deployment (QFD) Viewpoint-oriented elicitation Ethnography Scenarios Use Case Approach Prototyping © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 196 Review Question Objective Q1 Which is the oldest Profession? Why? a) Physician b) Civil Engineer c) Computer Scientist Q2 What is Software? Q3 What are different types of Documents? Q4 Define Documentation Manual? Q5 Define Procedure Manuals? Q6 What are Documentation Manuals? Q7 What are Operating Procedure Manuals? Q8 Why Software is Intangible? Q9 Why Software is easy to reproduce? Q10 Why Software industry is Labor Intensive? Q11 Why Software is easy to modify? © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 197 Review Question Objective Q12 Software doesn’t wear out Give reason Q13 What are different Software Characteristics? Q14 Define Failure Intensity Q15 Compare Failure intensity of Hardware and Software Q16 What are different types of software? Q17 Define Custom, Generic and Embedded Software Q18 For which type of software maximum number of copies are used a) Customb) Generic c) Embedded Q19 For which type of software lowest processing time is devoted a) Customb) Generic c) Embedded Q20 For which type of software annual development efforts are highest a) Custom b) Generic c) Embedded © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 198 Review Question Objective Q21 How you will decide the Software is Good or Bad? Q22 What are the different types of maintenance? Q23 Differentiate Corrective and perfective maintenance? Q24 What type of maintenance is least in practice? Q25 Define Following Software Attributes i) Maintainability ii) Dependability iii) Efficiency iv) Usability Q26 Define Software Crises? Q27 Give three suggestions to avoid the situation of Software Crises Q28 What Are Quality Issues in Software? Q29 Why Software Cost are increasing as Hardware Costs Continue to decline? Q30 What are the primary drivers of Software Cost? © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 199 Review Question Objective Q31 Why Cost to fix an error increases as it is found later and later in the software lifecycle? Q32 Why Software Project late? Give any two reasons Q33 When we recognize slippage in the IT Project, should we add more people? Give Reason Q34 Define Quality, Quality Control, Quality Assurance and Quality Management System Q29 Q35 Differentiate Quality Control and Quality Assurance Q36 Define CASE Q37 Differentiate Lower CASE and Upper CASE Q38 Write at least two software myths Q39 Define Process Q40 What are generic activities in all Software Process? © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 200 Review Question Objective Q41 Why Software process improvement is difficult? Q42 Draw and label Process Improvement Learning Curve Q43 Define the terms with example I Deliverables & Milestones II Product III Process IV Measure, Metric, Measurement V Software Process & Product Metric VI Productivity VII.Effort VIII.Software Component IX Verification &Validation © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 201 Review Question Objective Q44 Define Software Lifecycle Modeling, Software Lifecycle, Software Development Methodology, Software Life Cycle Phase Q45 What must be focus in Pre Development Phase of any Software? Q46 What must be focus in Development Phase of any Software? Q47 What are the three specific steps in Development Phase of any Software? Q48 What must be focus in Post Development Phase of any Software? Q49 Define Process, Activity and Task with example Q50 Project risk factor is consider in (i) Waterfall model (ii) Spiral model (iii) Quick & Fix model (iv) (ii) and (iii) © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 202 Review Question Short Type Q1 Describe the characteristics of software contrasting it with the characteristics of hardware? Q2 Why researchers identify the necessity to engineer software? Q3 Why we are in perpetual “software crisis”? Q4 Discuss the history of software crises with examples Why are the case tools not normally able to control it? Q5 What is software engineering? Is it an art, craft or a science? Discuss Q6 What is more important : product or process? Justify your answer Q7 What are the key challenges facing software engineering? Q8 Why is the primary goal of software development now shifted from producing good quality software to good quality maintainable software? Q9 Discuss the inherent problems with software development © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 203 Review Question Short Type Q10 List down the documents after each activity of Software Development Activity Q11 What you understand by the expression “life cycle model of software development”? Why is it important to adhere to a life cycle model during the development of a larger software product? Q12 What problems will a software development organization face if it does not adequately document its software process? Q13 Q14 Compare iterative enhancement model and evolutionary development model Q15 What you understand by the expression “life cycle model of software development”? Why is it important to adhere to a life cycle model during the development of a larger software product? Q16 What problems will a software development organization face if it does not adequately document its software process? © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 204 Review Question Long Type Q1 Discuss different types of Software Documents Q2 Discuss the nature of software Q3 What are various type of Software? Q4 How are the software myths affecting software process? Explain with the help of example Q5 What you mean by a software process? What is the difference between a methodology and a process? What problems will a software development house face if it does not follow any systematic process in its software development efforts? Q6 Discuss the selection process parameters for a life cycle model © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 205 Research Problems Q1 Draw a DFD for MCA admission system Q2 Write SRS for BVICAM Time Table Management System Q3 Prepare Questionnaire to gather requirements for your project Q4 Suppose you are the facilitator for a brain storming session to discuss the student related issues in your institute describe your role and prepare all required document for the preparation of brain storming session and also compile the reports of your learnings © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 206 Research Problems Q1 Q5 Discuss the characteristics, pros and cons of the following Software Development Life Cycle Model Identify the parameter for the comparison of the listed model and compare them  Joint Applications Design  Rapid Application Development (RAD)  Extreme Programming (XP); extension of earlier work in Prototyping and RAD  Open Source Development  End-user development  Synchronize and Stablize Model © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 207 References K K Aggarwal & Yogesh Singh, “Software Engineering”, 2nd Ed., New Age International, 2005 R S Pressman, “Software Engineering – A practitioner’s approach”, 5th Ed., McGraw Hill Int Ed., 2001 Pankaj Jalote, “An Integrated Approach to Software Engineering”, Narosa, 3rd Ed., 2005 Stephen R Schach, “Classical & Object Oriented Software Engineering”, IRWIN, 1996 James Peter, W Pedrycz, “Software Engineering: An Engineering Approach”, John Wiley & Sons Sommerville, “Software Engineering”, Addison Wesley,8th Ed., 2009 © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 208 References Frank Tsui and Orlando Karan, “Essentials of Software Engineering”, Joes and Bartlett, 2nd Ed., 2010 Rajib Mall, “Fundamrntal of Software Engineering”, PHI, 3rd Ed., 2009 Carlo Ghizzi , Mehdi Jazayeri and Dino Mandrioli, “ Fundamental of Software Engineering”, PHI, 2nd Ed.,2003 10 Carol L Hoover, Mel Rosso-Llopart and Gil Taran, “Evaluating Project Decision Case Studies in Software Engineering”, Pearson, 2010 11.Sommerville, “Software Engineering”, http://www.cse.iitk.ac.in/JaloteSEbook/ Addison Wesley, 2002 12.http://www.csse.monash.edu.au/~jonmc/CSE2305/Topics/07.14.SWEng2/ html/text.html © Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi-63, by Nitish Pathak U1 209 ... Reusability of components • Software is flexible Failure Intensity Wear out phase Failure intensity Burn in Phase Time Useful Life Phase Time © Bharati Vidyapeeth’s Institute of Computer Applications and... time and using them to create a useful result • A set of activities whose goal is the development or evolution of software • Generic activities in all software processes are:  Specification - what... Software Crises • need to design software properly  To ease the verification • need to maintain and upgrade software at a lower cost  Require Proper Documentation • need to re-use components

Ngày đăng: 05/12/2016, 21:28

TỪ KHÓA LIÊN QUAN

w