Pertemuan 2. Software Engineering: The Process

Size: px
Start display at page:

Download "Pertemuan 2. Software Engineering: The Process"

Transcription

1 Pertemuan 2 Software Engineering: The Process

2 Collect Your Project Topic

3 What is Software Engineering? Software engineering is the establishment and sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines (Fritz Bauer,1969) Software engineering is [1] the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and [2] the study of approaches as in [1] (IEEE,1993) * SEPA 6 th ed, Roger S. Pressman

4 What is software engineering? i An engineering discipline which is concerned with all aspects of software production Engineering discipline Discover solutions by applying theories, methods or other mechanisms. Work within constraints All aspects of software production Software development (technical processes) Project management Development of supporting tools, methods and theories

5 What is a software process? A set of activities and associated results whose goal is the development or evolution of a software product Generic activities in all software processes are: Specification what ht the system should do and its development constraints Development production of the software system Validation checking that t the software is what ht the customer wants Evolution changing the software in response to changing demands

6 The software process A structured set of activities (and associated results) required to develop (evolve) a software system Specification Design and implementation Validation ld Evolution A software process model is an abstract representation of a process. presents a description of a process from a particular perspective a simplified representation

7 The software process Software development is a complex process needing human jd judgement and creativity it therefore could not be fully automated There is no ideal software process Many diverse processes exist There is room for improvement! Organizations select software processes based on Organizations select software processes based on: capabilities of people in the organization characteristics of the system to be developed etc.

8 A Layered Technology Software Engineering Tools (The support) Methods (The How to ) process model (The glue and foundation) a quality focus (The commitment) * SEPA 6 th ed, Roger S. Pressman

9 Work Orientation* Need to be : Target Oriented Process Oriented Quality Oriented

10 Why SE? (1) To get the right software and to make the software right Complexity of software Domain problem: Business Rule Data size: Digital it and Non Digitalit Solution: Algorithm Place or Sites

11 Why SE? (2) Software must be correct Software correctness have to be maintained

12 How should SE be applied? There are 2 things to be considered in SE: Product = Software: Programs Documents Data Process of how the software is build: Management process Technical process

13 Product of SE Product is obtained through stages of development = Software Development Life Cycle (SDLC) Examples of life cycles (SDLC): Waterfall model V model Spiral model Fountain model Prototyping

14 Process of SE (1) Management process includes: Project management Configuration management Quality Assurance management

15 Process of SE (2) Technical process, described as methods to be applied in a particular stage of the s/w development life-cycle Analysis methods Design methods Programming methods Testing methods Technical methods are leading to paradigms

16 When should SE be applied? Pre project Project Initiation i i Project Realisation Software Delivery & Maintenance

17 Who is involved? Manager Project Manager Configuration Manager Quality Assurance Manager Software Developer: Analyst Designer Programmer

18 Who is involved? Who is involved? Support Administration Technical Support for Customer Welfare

19 What is the difference between software engineering and computer science? Computer science is concerned with theory and fundamentals; software engineering is concerned with the practicalities of developing and delivering useful software. Computer science theories are still insufficient to act as a complete underpinning for software engineering. * Software Engineering 7 th ed, Ian Sommerville

20 What Is The Difference Between Software Engineering And System Engineering? System engineering is concerned with all aspects of computer based systems development including hardware, software and process engineering. Software engineering is part of this process concerned with developing the software infrastructure, control, applications and databases in the system. System engineers are involved in system specification, architectural design, integration and deployment. * Software Engineering 7 th ed, Ian Sommerville

21 Systems engineering i Specifying, designing, implementing, validating, deploying and maintaining socio technical systems. Concerned with Services provided d by the system Constraints on its construction and operation Ways in which it is used Software Hardware System interaction with users and environment

22 Systems engineering i Why does a software engineer need to understand system engineering aspects? Many software systems are part of a larger system System engineering gdecisions have direct impacts on software Many systems now have lots of software parts

23 Systems engineering i Systems have limited scope for rework during system development Decisions are expensive to change (e.g. hardware manufactured) Software on the other hand is flexible and allows change during system development Interdisciplinary involvement Many different disciplines i involved in system engineering i Increased possibility of misunderstanding due to different technologies and conventions used

24 What Are The Costs of Software Engineering? Roughly 60% of costs are development costs, 40% are testing costs. For custom software, evolution costs often exceed development costs. Costs vary depending on the type of system being developed and the requirements of system attributes such as performance and system reliability. Distribution of costs depends on the development model that is used. * Software Engineering 7 th ed, Ian Sommerville

25 What Are Software Engineering Methods? Structured approaches to software development which include system models, notations, rules, design advice and process guidance. Model descriptions Rules Descriptions of graphical models which should be produced; Constraints applied to system models; Recommendations Advice on good design practice; Process guidance What activities to follow. * Software Engineering 7 th ed, Ian Sommerville

26

27 Questions To Ask And Be Answered What is the problem What entities needed to solve the problems How will the entity (solution) be realised What approach used for detecting errors How to support the entity over time in relation to corrections, adaptations, and enhancements.

28 Software phases Definition Phase : information, functions/performances, behaviors, interfaces, constraints, and validation criteria Development Phase : data structure, function implementation, interface character, design programming, and testing Support Phase : error correction, adaptation, enhancement, prevention/re engineering g

29 Requirement justifications * Necessity : Need to have, nice to have, need not to have Feasibility : technically, economically, operationally

30 A Common Process Framework Framework activities tasks milestones & deliverables QA checkpoints Umbrella Activities Umbrella Activities

31 Umbrella Activities Software project management Formal technical reviews Software quality assurance Software configuration management Document preparation and production Reusability management Measurement Risk management

32 What is a software process model? A simplified representation of a software process, presented from a specific perspective Examples of process perspectives are Workflow perspective sequence of activities Data flow perspective information flow Role/action perspective who does what Generic process models Waterfall Iterative development Formal transformation Integration from reusable components

33 Problem Solving Loop Model problem definition status quo technical development solution integration

34 Problem Solving Loop Model problem definition status quo technical development solution integration problem definition Status Quo status quo technical development problem definition solution integration status quo technical development solution integration

35 Problem Solving Loop Model Difficult to contain activity neatly Cross talks within and across stages Tasks (and degree of rigor) for each activity will vary based on: the type of project (an entry point to the model) characteristics of the project common sense judgment; concurrence of the project team

36 Generic software process models The waterfall model Separate and distinct t phases of specification and development Evolutionary development Specification, development and validation are interleaved Component based software engineering The system is assembled from existing components. There are many variants of these models formal development a waterfall like process is used but the specification is a formal specification that is refined through several stages to an implementable design.

37 Waterfall model Requirements definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance

38 Waterfall model phases Requirements analysis and definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance

39 Waterfall model Each stage produces documents at the end Next stage starts only after signing off the previous stage non overlapping stages (but in reality, they do overlap) A number of iterations e.g. requirement errors identified during design, go back and correct them Due to the high cost involved in rework, stages are frozen after a few iterations. ti problems identified later are left to be resolved later or worked around in programming may lead to badly structured systems

40 Waterfall Model Features

41 Waterfall model: advantages It is a well understood mature process Easy to manage projects Produces robust, well structured systems High process visibility

42 The Linear (Waterfall) Model Changes can create confusion Difficult to accommodate early stage natural uncertainty Working version can only be obtained later on

43 Waterfall Model Negative Characteristics

44 Waterfall model: problems Inflexible partitioning of the project into distinct stages Makes it difficult to respond to changing customer requirements Therefore, this model is only appropriate when The requirements are well understood Requirement changes are limited

45 The Linear (Waterfall) Model Requirements Analysis : information, function, behavior, performance, and interface > Deliverable : SRS Document Design : data structure, t software architecture, t interface representation, tti algorithm. Deliverable : Software Configuration Code generation : deliverables : program code Testing : logical and functional Support : error correction, adaptation, enhancement

46 Waterfall Model Characteristics

47 Waterfall Model Document

48 Waterfall Model Fitness

49 Waterfall Model (Another Look)

50 Development Process Discussion Time to Market

51 Development Process Shorter Life Cycle

52 Prototyping Models listen to customer build/revise mock-up customer test-drives mock-up Prototyping

53 Prototyping Models Prototype serves as first system Can make customer demands of a few fixes to make a working product Implementation is compromised to get a prototype quickly. Need to agree that prototype only serves as mechanism for defining fii requirements

54 Prototyping Model Used in Combination with Waterfall Model

55 Prototyping

56 Evolutionary Prototyping

57 Throw away Prototyping

58 Revolutionary Development

59 RAD Models team #1 team #2 b u s i n e s s m o d e l i n g team #3 b u s i n e s s m o d e l i n g d a t a m o d e l i n g business modeling m d a t a o d e l i n g p r o c e s s m o d e l i n g a p p l i c a t i o n g e n e r a t i o n data modeling p r o c e s s m o d e l i n g te s tin g & tu rn o v e r process modeling a p p l i c a t i o n g e n e r a t i o n t e s t i n g & tu r n o v e r application generation testing & turnover days RAD

60 The RAD Model Business Modelling : BPM (what info needed, who generate it, who use it,etc), BPR Data Modelling : data objects, attributes, and relationship Process Modelling : add, modify, delete, retrieve data object Application Generation : reuse and /or create reusable components Testing and turnover : newly created components

61 The RAD Model Requires substantial resources for large projects Requires commitment of developers and customers. Not suitable for high risk and performance applications (high degree of interoperability)

62 The Incremental Model System/information engineering increment 1 analysis design code test delivery of 1st increment increment 2 analysis design code test delivery of 2nd increment increment 3 analysis design code test delivery of 3rd increment increment 4 analysis design code test delivery of 4th increment calendar time

63 The Incremental Model First increment = core product Subsequent increments = additional features and functions Useful for under staff situation to meet dateline

64 Incremental development The development and delivery is broken down into increments with each increment delivering part of the required functionality User requirements are prioritised and the highest priority requirements are included in early increments Once the development of an increment is started, the requirements are frozen But requirements for later increments can continue to evolve

65 Incremental development Define outline requirements Assign requirements to increments Design system architecture Develop system increment Validate increment System incomplete Integrate increment Validate system Final system

66 Incremental development Advantages Customer value can be delivered with each increment so system functionality is available earlier Early increments act as a prototype to help elicit requirements for later increments Lower risk of overall project failure The highest priority system services tend to receive the most testing Different processes can be used for increments Disadvantages Difficult to map user requirements into increments which can deliver functionality Difficult to identify small increments (<20,000 LOC) Difficulty of identifying the common facilities needed by all sub systems

67 Spiral model of the software process Determine objectives alternatives and constraints Plan next phase REVIEW Requirements plan Life-cycle plan Development plan Integration and test plan Risk analysis Risk analysis Risk analysis Prototype 2 Risk analysis Prototype 1 Concept of Operation Requirement validation Design V&V Service S/W requirements Acceptance test Operational protoype Evaluate alternatives identify, resolve risks Prototype 3 Simulations, models, benchmarks Product design Code Unit test Integration test Detailed design Develop, verify next-level product

68 Spiral model sectors Objective setting Specific objectives for the phase are identified Risk assessment and reduction Risks are assessed and activities put in place to reduce the key risks Development and validation A development model for the system is chosen which can be any of the generic models Develop and validate the system in the current phase Planning The project is reviewed and the next phase of the spiral is planned

69 The Spiral Model Start from center clockwise Each pass = next stage of project : e.g. Concept development, product development, product enhancement Realistic approach to large scale system development Better understanding and reaction to risk Requires expertise in risk assessment Not widely used

70 Spiral development Process is represented as a spiral rather than as a sequence of activities with backtracking Each loop in the spiral represents a phase in the process. No fixed phases such as specification or design loops in the spiral are chosen depending on what is required Ri k li itl d d l d th h t th Risks are explicitly assessed and resolved throughout the process

71 Spiral model Identifies probable risks in advance and tries to minimize them e.g. if it is decided to use a new programming language, the compilers available may not be reliable Occurrence of a risk item could result in project delay, exceeding cost or even failure Different processes maybe used for different loops in the spiral

72 Component Based Model Identify Candidate component Customer Communication P la nn in g Risk Analysis Construct iteration of system Look up component in library Engineering i Put new component in library Extract component if available Customer Evaluation Construction & Release Build component if unavailable

73 The Component based Model process to apply when reuse is a development objective Unified Modeling Language (UML) for defining components to use and interfaces that connect the components

74 V Model

75 V Model Document Produced

76 The 4 th Generation Techniques Ability to specify software characteristics at high level Includes : code generation, report generation, data manipulation, HTML generation, etc Offers credible solutions to software problems Reduction amount of design and analysis Requires more analysis, design, and testing of software

77 Component based software engineering Reuse occurs informally in almost all software projects Based on systematic reuse where systems are integrated from existing components or COTS (Commercial off the shelf) systems. Process stages Component analysis Requirements modification System design with reuse Development and integration This approach is becoming increasingly used as component standards have emerged

78 Component based software engineering.. Requirements specification Component analysis Requirements modification System design with reuse Development and integration System validation

79 Component based software engineering.. Advantages reduces the amount of software to develop reduces cost and risks faster delivery Disadvantages requirement compromises lose control of system evolution (because component evolution is not controllable)

80 Formal systems development Based on the transformation of a mathematical specification through different representations to an executable program Transformations are correctness preserving so it is straightforward to show that the program conforms to its specification Design, implementation and unit testing phases are replaced g, p g p p by a transformational development process

81 Formal systems development Requirements Formal Formal Integration and definition specification transformation system testing (iterations have been excluded)

82 Formal transformations Formal transformations T1 T2 T3 T4 Formal specification R1 R2 R3 Executable program P1 P2 P3 P4 Proofs of transformation correctness

83 Formal systems development Problems Need for specialised skills and training to apply the technique Difficult to formally specify some aspects of the system such as the user interface Applicability Critical systems especially those where a safety, reliability and security requirements are important e.g. Patient monitoring system, airplane engine control system

84 Process iteration and hybrid models LARGE SYSTEMS need different approaches for different parts System requirements always evolve during a project So process iteration ti where earlier stages are reworked kd is always part of the process for large systems Two (related) approaches pp Incremental development Spiral development

85 Still Other Process Models Concurrent process model recognizes that different part of the project will be at different places in the process Formal methods the process to apply when a mathematical specification is to be developed Clean room software engineering emphasizes error detection before testing

86 The Primary Goal: High Quality Remember: High quality = project timeliness Why? Less rework!

87 CMM I (Capability Maturity Model Integrated) * Initial i : ad hoc process, sometimes chaotic, success depends d on individuals id Repeatable : basic PM to track cost, schedule and functionality, posses necessary process discipline to repeat earlier success. Defined : process are documented, standardized and integrated Managed : detailed measures and product quality are collected. Both process and products are understood and controlled using detailed measures. Managed : detailed measures and product quality are collected. Both process and products are understood and controlled using detailed measures. Success is probable Optimizing : continuous process trough feedback. Success is always

88 What is CASE (Computer Aided d Software Engineering) i Software systems that are intended to provide automated support for software process activities. iti CASE systems are often used for method support. Upper CASE Tools to support the early process activities of requirements and design; Lower CASE Tools to support later activities such as programming, debugging and testing. * Software Engineering 7 th ed, Ian Sommerville

89

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

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be

More information

The software process

The software process Software Processes The software process A structured set of activities required to develop a software system Specification; Design; Validation; Evolution. A software process model is an abstract representation

More information

Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems

Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems Software Processes Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems Slide 1 Objectives To introduce software

More information

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1 Lectures 2 & 3 Software Processes Software Engineering, COMP201 Slide 1 What is a Process? When we provide a service or create a product we always follow a sequence of steps to accomplish a set of tasks

More information

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

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

II. Software Life Cycle. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini

II. Software Life Cycle. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini II. Software Life Cycle Laurea Triennale in Informatica Corso di Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process

More information

CMSC 435: Software Engineering Section Back to Software. Important: Team Work. More Resources

CMSC 435: Software Engineering Section Back to Software. Important: Team Work. More Resources CMSC 435: Software Engineering Section 0101! Atif M. Memon (atif@cs.umd.edu)! 4115 A.V.Williams building! Phone: 301-405-3071! Office hours!.tu.th. (10:45am-12:00pm)! Don t wait, don t hesitate, do communicate!!!

More information

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

Objectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Software Engineering

Software Engineering Software Engineering Part I. Aspects and Models of Software Development Process Gunadarma University 1 Software Engineering Outline 1 Introduction 2 Aspects of Software Engineering Software Engineering

More information

Topics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering

Topics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Software Engineering

Software Engineering Software Engineering (CS550) Software Development Process Jongmoon Baik Software Development Processes (Lifecycle Models) 2 What is a S/W Life Cycle? The series of stages in form and functional activity

More information

Lecture 1. In practice, most large systems are developed using a. A software process model is an abstract representation

Lecture 1. In practice, most large systems are developed using a. A software process model is an abstract representation Chapter 2 Software Processes Lecture 1 Software process descriptions When we describe and discuss processes, we usually talk about the activities in these processes such as specifying a data model, designing

More information

Software Processes 1

Software Processes 1 Software Processes 1 Topics covered Software process models Process activities Coping with change 2 The software process A structured set of activities required to develop a software system. Many different

More information

9/24/2011 Sof o tw t a w re e P roc o e c s e s s s Mo M d o e d l e s l 1 Wh W a h t t i s i s a Pr P oc o ess s 2 1

9/24/2011 Sof o tw t a w re e P roc o e c s e s s s Mo M d o e d l e s l 1 Wh W a h t t i s i s a Pr P oc o ess s 2 1 Software Process Models 1 What is a Process 2 1 What is a Process? Given input, transforms it into output Consist of a set of activities Ordering among the activities (a partial order) Software Process

More information

System and Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

System and Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 System and Software Engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance To set out the answers

More information

Software Engineering COMP 201

Software Engineering COMP 201 Software Engineering COMP 201 Lecturer: Sebastian Coope Ashton Building, Room G.18 E-mail: coopes@liverpool.ac.uk COMP 201 web-page: http://www.csc.liv.ac.uk/~coopes/comp201 Lecture 2 Software Processes

More information

SWE 211 Software Processes

SWE 211 Software Processes SWE 211 Software Processes These slides are designed and adapted from slides provided by Software Engineering 9 /e Addison Wesley 2011 by Ian Sommerville 1 Outlines Software process models Process activities

More information

Introduction to Software Engineering

Introduction to Software Engineering UNIT I SOFTWARE PROCESS Introduction S/W Engineering Paradigm life cycle models (water fall, incremental, spiral, WINWIN spiral, evolutionary, prototyping, objects oriented) -system engineering computer

More information

Chapter 3 Prescriptive Process Models

Chapter 3 Prescriptive Process Models Chapter 3 Prescriptive Process Models - Generic process framework (revisited) - Traditional process models - Specialized process models - The unified process Generic Process Framework Communication Involves

More information

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than

More information

Explore Comparative Analysis Software Development Life Cycle Models

Explore Comparative Analysis Software Development Life Cycle Models Explore Comparative Analysis Software Development Life Cycle Models Anshu Mishra Assistant Professor, Department of Information Science and Engineering Jyothy Institute of Technology, Bangalore Abstract-The

More information

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at www.ijarcs.info A Study of Software Development Life Cycle Process Models

More information

Course Organization. Lecture 1/Part 1

Course Organization. Lecture 1/Part 1 Course Organization Lecture 1/Part 1 1 Outline About me About the course Lectures Seminars Evaluation Literature 2 About me: Ing. RNDr. Barbora Bühnová, Ph.D. Industrial experience Research Quality of

More information

03. Perspective Process Models

03. Perspective Process Models 03. Perspective Process Models Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Prescriptive Process Models advocates an orderly approach to software

More information

Chapter 3 Software Process Model

Chapter 3 Software Process Model Usman Akram COMSATS Institute of information Technology lahore musmanakram@ciitlahore.edu.pk March 8, 2015 About software process model Outline 1 About software process model Build and Fix Model Why Models

More information

Software Engineering. Unit 1. Software Process

Software Engineering. Unit 1. Software Process 1 Unit 1 Software Process Software: a) Instructions (Computer Programs) that when executed provide desired features, function, and performance. b) Data structures that enable the programs to adequately

More information

SOFTWARE ENGINEERING

SOFTWARE ENGINEERING Page 1 MCA302 SOFTWARE ENGINEERING UNIT I - SOFTWARE PROCESS Introduction S/W Engineering Paradigm life cycle models (water fall, incremental, spiral, WINWIN spiral, evolutionary, prototyping, object oriented)

More information

CSE 435 Software Engineering. Sept 14, 2015

CSE 435 Software Engineering. Sept 14, 2015 CSE 435 Software Engineering Sept 14, 2015 What is Software Engineering Where Does the Software Engineer Fit In? Computer science: focusing on computer hardware, compilers, operating systems, and programming

More information

Introduction to Systems Analysis and Design

Introduction to Systems Analysis and Design Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.

More information

SDLC AND MODEL SELECTION: A STUDY

SDLC AND MODEL SELECTION: A STUDY SDLC AND MODEL SELECTION: A STUDY V. Therese Clara Asst professor of Computer Science, Madurai Kamaraj University College, Madurai, India ABSTRACT In the software industry, the frequency of failure of

More information

An Overview of Software Process

An Overview of Software Process An Overview of Software Process Objectives To introduce the general phases of the software development life cycle (SDLC) To describe various generic software process models and discuss their pros and cons

More information

3. Comparison of Above Described SDLC Models

3. Comparison of Above Described SDLC Models 123 3. Comparison of Above Described SDLC Models Waterfall Model is little hard to manage due to the rigidity of the model as each phase has specific deliverables and a review process. It works well for

More information

The Top Thrill Dragster

The Top Thrill Dragster EEC 421/521: Software Engineering The Software Process Prescriptive Process Models 1/22/08 EEC 421/521: Software Engineering 1 The Top Thrill Dragster 420 ft tall Max speed over 120 mph World s second

More information

understand, in outline, the activities involved in software requirements engineering, software development, testing and evolution;

understand, in outline, the activities involved in software requirements engineering, software development, testing and evolution; 4 Software processes Objectives The objective of this chapter is to introduce you to the idea of a software process-a coherent set of activities for software produetion. When you have read this chapter,

More information

Selecting Software Development Life Cycles. Adapted from Chapter 4, Futrell

Selecting Software Development Life Cycles. Adapted from Chapter 4, Futrell Selecting Software Development Life Cycles Adapted from Chapter 4, Futrell Examples of Software Life Cycle Models Classical Waterfall Waterfall with feedback V-Shaped Prototyping Incremental Spiral Rapid

More information

A Comparative Study on Software Development Life Cycle Models

A Comparative Study on Software Development Life Cycle Models A Comparative Study on Software Development Life Cycle Models Prof. Supriya Madhukar Salve 1, Prof. Syed Neha Samreen 2, Prof. Neha Khatri-Valmik 3 123Assistant Professor, Dept. of Computer Science and

More information

Note 10: Software Process

Note 10: Software Process Computer Science and Software Engineering University of Wisconsin - Platteville Note 10: Software Process Yan Shi Lecture Notes for SE 3330 UW-Platteville Based on Pressman Chapter 2 & 3 Software Process

More information

Software Modeling & Analysis. - Fundamentals of Software Engineering - Software Process Model. Lecturer: JUNBEOM YOO

Software Modeling & Analysis. - Fundamentals of Software Engineering - Software Process Model. Lecturer: JUNBEOM YOO Software Modeling & Analysis - Fundamentals of Software Engineering - Software Process Model Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr What is Software Engineering? [ IEEE Standard 610.12-1990 ] Software

More information

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping. i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give

More information

Software Engineering COMP 201

Software Engineering COMP 201 Software Engineering COMP 201 Lecturer: Dr. Igor Potapov Chadwick Building, room 2.09 E-mail: igor@csc.liv.ac.uk COMP 201 web-page: http://www.csc.liv.ac.uk/~igor/comp201 Software Engineering, COMP201

More information

Chapter 3. Information Systems Development. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 3. Information Systems Development. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 3 Information Systems Development McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 3-2 Describe the motivation for a system development process

More information

A Comparison Between Evolutionary and Prototype Model

A Comparison Between Evolutionary and Prototype Model A Comparison Between Evolutionary and Prototype Model Aditi Thakur Department of Computer Science, Baddi University of Emerging Sciences and Technology ABSTRACT: In this paper, I have examined a number

More information

Software Engineering Part 2

Software Engineering Part 2 CS 0901341 Software Engineering Part 2 In this part, we look at 2.1 Software Process 2.2 Software Process Models 2.3 Tools and Techniques for Processing Modelling As we saw in the previous part, the concept

More information

Planning and the Software Lifecycle. CSCE Lecture 2-08/26/2015

Planning and the Software Lifecycle. CSCE Lecture 2-08/26/2015 Planning and the Software Lifecycle CSCE 740 - Lecture 2-08/26/2015 Today s Goals Introduce software development processes Definitions - processes and process models Choosing a process AKA: planning and

More information

2009 Spring. Software Modeling & Analysis. - Software Process Model. Lecturer: JUNBEOM YOO

2009 Spring. Software Modeling & Analysis. - Software Process Model. Lecturer: JUNBEOM YOO 2009 Spring Software Modeling & Analysis - Fundamentals of Software Engineering - Software Process Model Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr What is Software Engineering? IEEE Std 610.12-1990 [ IEEE

More information

REQUIREMENTS ENGINEERING

REQUIREMENTS ENGINEERING 1 REQUIREMENTS ENGINEERING Chapter 4- by Ian Sommerville TOPICS COVERED Functional and non-functional requirements The software requirements document Requirements specification Requirements engineering

More information

A New Divide & Conquer Software Process Model

A New Divide & Conquer Software Process Model A New Divide & Conquer Software Process Model First A. Hina Gull, Second B. Farooque Azam Third C. Wasi Haider Butt, Fourth D. Sardar Zafar Iqbal Abstract The software system goes through a number of stages

More information

Building Information Systems

Building Information Systems Chapter 13 Building Information Systems 13.1 2010 by Prentice Hall LEARNING OBJECTIVES Demonstrate how building new systems produces organizational change. Identify and describe the core activities in

More information

7. Project Management

7. Project Management Subject/Topic/Focus: 7. Project Management Management of Systems Engineering Processes Summary: Project management Systems engineering Maturity model and process improvement Literature: Ian Sommerville:

More information

A Comparison Between Two Software Engineering Processes, RUP And Waterfall Models

A Comparison Between Two Software Engineering Processes, RUP And Waterfall Models A Comparison Between Two Software Engineering Processes, RUP And Waterfall Models Mina zaminkar a, Mohammad R. Reshadinezhad b a Graduate student,, Department of Computer Science Research Branch, Islamic

More information

Building Information Systems

Building Information Systems Building Information Systems Content Explain how building new systems produces organizational change. Describe the core activities in the systems development process. Describe the principal methodologies

More information

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

Development Process and Analysis. LTOOD/OOAD - Verified Software Systems 1 Development Process and Analysis LTOOD/OOAD - Verified Software Systems 1 Software Crisis Declared in the late 60 s Expressed by delays and failures of major software projects (unreached goals, unpredictable

More information

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

Solutions Manual. Object-Oriented Software Engineering. An Agile Unified Methodology. David Kung 2 David Kung Object-Oriented Software Engineering An Agile Unified Methodology Solutions Manual 3 Message to Instructors July 10, 2013 The solutions provided in this manual may not be complete, or 100%

More information

ABHELSINKI UNIVERSITY OF TECHNOLOGY

ABHELSINKI UNIVERSITY OF TECHNOLOGY T 76.3601 Introduction to Software Engineering Software Life-Cycle Models http://www.soberit.hut.fi/t-76.3601/ Casper.Lassenius@tkk.fi Software Engineering? 1. The application of a systematic, disciplined,

More information

Chapter 13. Building Information Systems

Chapter 13. Building Information Systems Chapter 13 Building Information Systems Learning Objectives How does building new systems produce organizational change? What are the core activities in the systems development process? What are the principal

More information

Chapter 16 Software Reuse. Chapter 16 Software reuse

Chapter 16 Software Reuse. Chapter 16 Software reuse Chapter 16 Software Reuse 1 Topics covered What is software reuse? Benefit and problems with reuse. The reuse landscape Application frameworks Software product lines COTS product reuse 2 Software reuse

More information

II-IT IV-SEM. 1. Software product and process. Software Engineering and Quality Assurance. Objectives:

II-IT IV-SEM. 1. Software product and process. Software Engineering and Quality Assurance. Objectives: II-IT IV-SEM Software Engineering and Quality Assurance 1. Software product and process Objectives: To introduce software engineering and to explain its importance. To set out the answers to key questions

More information

CMPT 275 Software Engineering

CMPT 275 Software Engineering CMPT 275 Software Engineering Software life cycle 1 Software Life Cycle Sequence of processes completed as a software project moves from inception to retirement At beginning of project development, choose

More information

5) A work breakdown structure is a list of tasks broken down to small manageable activities. Answer: TRUE Diff: 2 Page Ref: 42

5) A work breakdown structure is a list of tasks broken down to small manageable activities. Answer: TRUE Diff: 2 Page Ref: 42 Project Management: Process, Technology, and Practice (Vaidyanathan) Chapter 2 Process and Methods 2.1 True False 1) A procedure defines how to do a task. Diff: 1 Page Ref: 38 2) A business process is

More information

Introduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016

Introduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016 Introduction to Software Life Cycles CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016 1 Goals Present an introduction to the topic of software life cycles concepts and terminology benefits

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 3.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 3 Slide 3.2 THE SOFTWARE PROCESS Overview Slide 3.3

More information

A Comparative Study of Universally Accepted SDLC Models for Software Development

A Comparative Study of Universally Accepted SDLC Models for Software Development 2018 IJSRST Volume 4 Issue 5 Print ISSN: 2395-6011 Online ISSN: 2395-602X Themed Section: Science and Technology A Comparative Study of Universally Accepted SDLC Models for Software Development ABSTRACT

More information

Lecture 2: Software Quality Factors, Models and Standards. Software Quality Assurance (INSE 6260/4-UU) Winter 2016

Lecture 2: Software Quality Factors, Models and Standards. Software Quality Assurance (INSE 6260/4-UU) Winter 2016 Lecture 2: Software Quality Factors, Models and Standards Software Quality Assurance (INSE 6260/4-UU) Winter 2016 INSE 6260/4-UU Software Quality Assurance Software Quality Quality Assurance Factors and

More information

Advanced Software Engineering FYI

Advanced Software Engineering FYI C870, Advanced Software Engineering, Advanced Software Engineering Dr. Overview of Software Engineering and Development Processes C870 C870: Advanced Software Engineering (): Intro to Software Engineering

More information

Software Engineering

Software Engineering Software Engineering Lecture 02: Processes Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 41 Terms Software Component SW System Organized

More information

Chapter 6. Software Quality Management & Estimation

Chapter 6. Software Quality Management & Estimation Chapter 6 Software Quality Management & Estimation What is Quality Management Also called software quality assurance (SQA) s/w quality:- It is defined as the degree to which a system, components, or process

More information

Software Development Software Development Activities

Software Development Software Development Activities Software Development Software Development Activities Problem Definition Requirements Analysis Implementation Planning High-level Design (or Architecture) Detailed Design Coding and Unit Testing (Debugging)

More information

Research Article / Paper / Case Study Available online at: Analysis of Strengths and Weakness of SDLC Models Shikha Verma Delhi India

Research Article / Paper / Case Study Available online at:  Analysis of Strengths and Weakness of SDLC Models Shikha Verma Delhi India ISSN: 2321-7782 (Online) Volume 2, Issue 3, March 2014 International Journal of Advance Research in Computer Science and Management Studies Research Article / Paper / Case Study Available online at: www.ijarcsms.com

More information

Software Engineering Unit - 1 (Lecture Notes)

Software Engineering Unit - 1 (Lecture Notes) Software Engineering Unit - 1 (Lecture Notes) Prepared by Jay Nanavati, Assistant Professor, SEMCOM Topics Program vs. Software Software Software Engineering (Definition & Objective) Phases in Software

More information

Information Systems Development

Information Systems Development Information Systems Development Based on Chapter 3 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007 Wei-Tsong Wang 1 IIM, NCKU 3 Objectives

More information

Chapter 16 Software Reuse. Chapter 16 Software reuse

Chapter 16 Software Reuse. Chapter 16 Software reuse Chapter 16 Software Reuse 1 Topics covered The reuse landscape Application frameworks Software product lines COTS product reuse 2 Software reuse In most engineering disciplines, systems are designed by

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering 2. Requirements Collection Mircea F. Lungu Based on a lecture by Oscar Nierstrasz. Roadmap > The Requirements Engineering Process > Functional and non-functional requirements

More information

Sri Vidya College of Engineering & Technology-Virudhunagar

Sri Vidya College of Engineering & Technology-Virudhunagar Sri Vidya College of Engineering &Technology Department of Information Technology Class II Year (04 Semester) Subject Code CS6403 Subject SOFTWARE ENGINEERING Prepared By R.Vidhyalakshmi Lesson Plan for

More information

Softwaretechnik. Lecture 02: Processes. Peter Thiemann SS University of Freiburg, Germany

Softwaretechnik. Lecture 02: Processes. Peter Thiemann SS University of Freiburg, Germany Softwaretechnik Lecture 02: Processes Peter Thiemann University of Freiburg, Germany SS 2012 Peter Thiemann (Univ. Freiburg) Softwaretechnik SWT 1 / 34 Terms Software Program SW System organized collections

More information

SDLC Models- A Survey

SDLC Models- A Survey Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 1, January 2013,

More information

Software Processes. Minsoo Ryu. Hanyang University. Real-Time Computing and Communications Lab., Hanyang University

Software Processes. Minsoo Ryu. Hanyang University. Real-Time Computing and Communications Lab., Hanyang University Software Processes Minsoo Ryu Hanyang University Topics covered 1. What is a Software Process? 2. Software Process Activities 3. Waterfall Development 4. Iterative and Incremental Development 5. Others

More information

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2.

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2. Chapter 2 Objectives What we mean by a process Software development products, processes, and resources Several models of the software development process Tools and techniques for process modeling 2.1 The

More information

The Systems Development Lifecycle

The Systems Development Lifecycle Modelling and Systems Development Lecture 2 The Systems Development Lifecycle The four-phase model common to all system developments projects The project Major attributes of the Lifecycle Moves systematically

More information

Chapter 1 Systems Development in an Organization Context

Chapter 1 Systems Development in an Organization Context Systems Development in an Organization Context Learning Objectives Define information systems analysis and design. Describe the information Systems Development Life Cycle (SDLC). Explain Rapid Application

More information

Software Design COSC 4353/6353 D R. R A J S I N G H

Software Design COSC 4353/6353 D R. R A J S I N G H Software Design COSC 4353/6353 D R. R A J S I N G H Outline Week 2 Software Development Process Software Development Methodologies SDLC Agile Software Development Process A structure imposed on the development

More information

Modern Systems Analysis and Design Seventh Edition

Modern Systems Analysis and Design Seventh Edition Modern Systems Analysis and Design Seventh Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich The Systems Development Environment Learning Objectives Define information systems analysis and design.

More information

Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS 9/17/2017. CHAPTER 3 Slide 3.2. Stephen R. Schach. Overview Slide 3.

Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS 9/17/2017. CHAPTER 3 Slide 3.2. Stephen R. Schach. Overview Slide 3. Slide 3.1 CHAPTER 3 Slide 3.2 Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach Overview Slide 3.3 Overview (contd) Slide 3.4

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 11: Managing the Software Process

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 11: Managing the Software Process Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 11: Managing the Software Process 11.1 What is Project Management? Project management encompasses all the

More information

22C:180/55:180 Software Engineering-- Architecture & Design of Software Systems

22C:180/55:180 Software Engineering-- Architecture & Design of Software Systems 22C:180/55:180 Software Engineering-- Architecture & Design of Software Systems Instructor: Prof Jon Kuhl, University of Iowa, Department of Electrical and Computer Eng Office: 305S2 CC Phone: (319) 335-5958

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 Friday 30 th September 2016 - Morning Answer any THREE questions

More information

Software Process. Overview

Software Process. Overview Software Process Overview What is software process? Examples of process models Unified Process (UP) Agile software development N. Meng, B. Ryder 2 1 Software Process Definition [Pressman] a framework for

More information

CS 501: Software Engineering. Lecture 2. Software Processes

CS 501: Software Engineering. Lecture 2. Software Processes CS 501: Software Engineering Lecture 2 Software Processes 1 CS 501 Spring 2008 Administration Letter "l" Project teams Any short notices to class? Course team email address When you have formed your team

More information

TOPIC DESCRIPTION SUPPLEMENT for the SYSTEMS ENGINEERING SURVEY DESCRIPTION

TOPIC DESCRIPTION SUPPLEMENT for the SYSTEMS ENGINEERING SURVEY DESCRIPTION 1 2 Objectives of Systems Engineering 3 4 5 6 7 8 DoD Policies, Regulations, & Guidance on Systems Engineering Roles of Systems Engineering in an Acquisition Program Who performs on an Acquisition Program

More information

CS SOFTWARE ENGINEERING QUESTION BANK

CS SOFTWARE ENGINEERING QUESTION BANK CS6403 - SOFTWARE ENGINEERING QUESTION BANK UNIT I- SOFTWARE PRODUCT AND PROCESS Part - A (2 M ARKS) 1. What is the prime objective of software engineering? 2. Define software engineering paradigm. 3.

More information

CLASS/YEAR: II MCA SUB.CODE&NAME: MC7303, SOFTWARE ENGINEERING. 1. Define Software Engineering. Software Engineering: 2. What is a process Framework? Process Framework: UNIT-I 2MARKS QUESTIONS AND ANSWERS

More information

Software Engineering. SOFTWARE ENGINEERING Subject Code: 10IS51 I.A. Marks : 25 Hours/Week : 04 Exam Hours: 03 Total Hours : 52 Exam Marks: 100 PART A

Software Engineering. SOFTWARE ENGINEERING Subject Code: 10IS51 I.A. Marks : 25 Hours/Week : 04 Exam Hours: 03 Total Hours : 52 Exam Marks: 100 PART A SOFTWARE ENGINEERING Subject Code: I.A. Marks : 25 Hours/Week : 04 Exam Hours: 03 Total Hours : 52 Exam Marks: 100 PART A UNIT 1 6 Hours Overview: Introduction: FAQ's about software engineering, Professional

More information

Chapter. Redesigning The Organization With Information Systems

Chapter. Redesigning The Organization With Information Systems Chapter Redesigning The Organization With Information Systems 1 Objectives Demonstrate how building new systems produces organizational change Explain how a company can develop information systems that

More information

Software Processes. CSE-C3610, Software Engineering, 5 cr. Prof. Casper Lassenius

Software Processes. CSE-C3610, Software Engineering, 5 cr. Prof. Casper Lassenius Software Processes CSE-C3610, Software Engineering, 5 cr Prof. Casper Lassenius Software Process What? Why? Software Process Definitions Process Webster: 1. A continuing development involving many changes.

More information

Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan

Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan International Journal of Scientific & Engineering Research, Volume 7, Issue 12, December-2016 Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan 1486 Muhammad Saleem 1 saleemstriker@hotmail.com

More information

7. Model based software architecture

7. Model based software architecture UNIT - III Model based software architectures: A Management perspective and technical perspective. Work Flows of the process: Software process workflows, Iteration workflows. Check Points of The process

More information

Software processes. Software Applications A.Y. 2018/2019

Software processes. Software Applications A.Y. 2018/2019 Software processes Software Applications A.Y. 2018/2019 Objectives - Understanding the concepts of software processes and software process models - Being introduced to three generic software process models

More information

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK Subject Code & Subject Name: IT1251 Software Engineering and Quality Assurance Year / Sem : II / IV UNIT I SOFTWARE PRODUCT

More information

A Software Measurement Case Study Using GQM

A Software Measurement Case Study Using GQM A Software Measurement Case Study Using GQM Master s Thesis Björn Lindström Supervisors Per Runeson, LTH Achim Kämmler, HP OpenView Amsterdam Department of Communication Systems CODEN:LUTEDX(TETS-5522)/1-72/(2004)

More information

Major attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis

Major attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis Modelling and Systems Development Lecture 2 The Systems Development Lifecycle The four-phase model common to all system development projects Major attributes of the Lifecycle The project Moves systematically

More information

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Software Engineering Third Year CSE( Sem:I) 2 marks Questions and Answers

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Software Engineering Third Year CSE( Sem:I) 2 marks Questions and Answers DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Software Engineering Third Year CSE( Sem:I) 2 marks Questions and Answers UNIT 1 1. What are software myths Answer: Management myths: We already have a book

More information