Developed by Reneta Barneva, SUNY Fredonia The Process.

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

Lecture # 2 : Process Models
CS487 Software Engineering Omar Aldawud
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
1 Chapter 4 - Part 1 Software Processes. 2 Software Processes is: Coherent (logically connected) sets of activities for specifying, designing, implementing,
CSE 470 : Software Engineering The Software Process.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
CS3773 Software Engineering Lecture 01 Introduction.
Software Process Models
Chapter 2 The Software Process
COMP 6710 Course NotesSlide 2-0 Auburn University Computer Science and Software Engineering Course Notes Set 2: Software Process Models Computer Science.
SOFTWARE ENGINEERING LECTURE-3 CSE-477.
Software Process CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 17, 2002.
Developed by Reneta Barneva, SUNY Fredonia The Process.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter : Software Process
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
Chapter 2 Software Process: A Generic View
Chapter 2 The process Process, Methods, and Tools
Chapter 2 The Process.
Software Process and Models
THE PROTOTYPING MODEL The prototyping model begins with requirements gathering. Developer and customer meet and define the overall objectives for the software.
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
Chapter 2 Process: A Generic View
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
1M.Sc.(I.T.), VNSGU, Surat. Structured Analysis Focuses on what system or application is required to do. It does not state how the system should be implement.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
PART ONE The Product and the Process Chapter 2 The Process  Software Engineering: A Layered Technology a “quality” focus process model methods tools.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Prescriptive Process Models
Lecture 1 Introduction to Software Engineering
Software Processes n What is a process?  Sequence of steps required to develop or maintain software n Characteristics  prescribes major activities 
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
Software Engineering Spring (C) Vasudeva VarmaClass of 32 CS3600: Software Engineering: Process and Product* *Most of the Content drawn.
Software Engineering MCS-2 Lecture # 6
Software Engineering - I
Chapter 4 프로세스 모델 Process Models
Introduction to Software Engineering.  Software Characteristics  Components  Applications  Layered Technologies  Processes  Methods And Tools 
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Chapter 2 A Generic View of Process Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Software Engineering Introduction.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Engineering Process Models Models for Guiding the Development of Software.
Software Engineering INTRODUCTION TO SOFTWARE DEVELOPMENT.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Software Engineering (CSI 321) Software Process: A Generic View 1.
Software Engineering CE 501 Prepared by : Ashwin Raiyani.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Software Process By Sabeen Amjad Chapter-2. Objectives To comprehend  Software process  Software Engineering as layered technology  Generic view of.
Software Engineering Process Lecture -2:. –Software development life cycle –overview of software development process models.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 2: The Process. What is Process? Software Engineering Process is the glue that holds the technology layers together and enables rational and timely.
Software Life Cycle “What happens in the ‘life’ of software”
SNS College of Engineering Coimbatore
Software Process Models
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Chapter 2 The Process.
Introduction to Software Engineering
CIS 375 Bruce R. Maxim UM-Dearborn
Chapter 2 The Process.
Software Engineering I
Presentation transcript:

Developed by Reneta Barneva, SUNY Fredonia The Process

Developed by Reneta Barneva, SUNY Fredonia Software Process Software process is a framework for the tasks that we are required to build high-quality software. The process is not exactly the same as software engineering: software process defines the approach that is taken as software is engineered. But software engineering also includes technologies - technical methods and automated methods.

Developed by Reneta Barneva, SUNY Fredonia Software Engineering (1) The application of systematic, disciplined approach to the development, operation and maintenance of software; that is the application of engineering to software. (2) The study of approaches as in (1)

Developed by Reneta Barneva, SUNY Fredonia Process, Methods, and Tools Software Engineering is a leyered technology:

Developed by Reneta Barneva, SUNY Fredonia Process, Methods, and Tools Quality focus: any engineering rests on a commitment to quality: continuous process of improvement -> more mature approaches to software engineering.

Developed by Reneta Barneva, SUNY Fredonia Process, Methods, and Tools Process: the foundation of SE. Defines the framework for a set of key process areas that must be establish for effective delivery of SE technology. Key process areas include: technical methods work products (model, documents, data, reports, forms, etc.) milestones changes to be done.

Developed by Reneta Barneva, SUNY Fredonia Process, Methods, and Tools Methods: provide technical how-to’s. Include a broad array of tasks: requirements analysis design program construction testing support

Developed by Reneta Barneva, SUNY Fredonia Process, Methods, and Tools Tools: provide automated or semi-automated support for the process and the methods. When the tools are integrated, the system for support is called CASE.

Developed by Reneta Barneva, SUNY Fredonia Generic View of Software Engineering For each engineering process the following questions have to be answered: What is the problem to be solved? What characteristics of the entity are used to solve the problem? How will the entity be realized? How will the entity be constructed? How to find the errors? How will the entity be supported long time?

Developed by Reneta Barneva, SUNY Fredonia Generic View of Software Engineering Phases of software engineering: Definition phase: What? What definition to be processed? What function is desired What system behavior is expected? What interfaces are to be established? What design constraints exist? What validation criteria to apply?

Developed by Reneta Barneva, SUNY Fredonia Generic View of Software Engineering Development phase: How? How data are to be structured? How function is to be implemented? How interface to be generated? How the design to be translated into programming code? Three specific technical tasks: software design code generation software testing

Developed by Reneta Barneva, SUNY Fredonia Generic View of Software Engineering Support phase: Focused on change Types of change: correction - correcting the error detected adaptation - modifications due to change of the environment (OS, CPU, etc.) enhancement - user requires additional functions to be included prevention - software “wears out” due to changes; to prevent this “wear out”

Developed by Reneta Barneva, SUNY Fredonia Generic View of Software Engineering Support phase: Focused on change In addition to this support the user requires continuous support: in-house technical assistants telephone help desk application-specific web site

Developed by Reneta Barneva, SUNY Fredonia The Software Process Software process: A common process framework is established by defining a small number of framework activities that are applicable to all software projects A number of task sets enable the framework to be adapted to the characteristics of the software project. Umbrella activities such as quality assurance, software configuration management, and measurement overlay the framework activity and appear throughout the process.

Developed by Reneta Barneva, SUNY Fredonia

Measurement of Project Maturity In 5 levels. Each level includes the previous ones. Level 1: Initial. The software process is characterized as ad hoc. Level 2: Repeatable. based on previous work on similar projects Level 3: Defined. The software process is documented, standardized, and distributed to the whole organization. Level 4. Managed. Detailed measures of software process and product quality are collected. Level. 5. Optimizing. Continuous process improvement is enabled.

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Waterfall Model Prescriptive model. Also called “Life Cycle Model.” Or Linear Model

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Waterfall Model This is the classical model. However: real projects rarely follow the sequential flow it is usually difficult to state all the requirements explicitly the customer must be patient, because the working version of the project will be ready almost at the end of the project time-span.

Developed by Reneta Barneva, SUNY Fredonia V-Model Also prescriptive model. Requirements are refined progressively.

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Incremental Model

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Prototyping Model (Evolutionary) communication Quick plan Modeling Quick design Construction of prototype Deployment delivery & feedback

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Spiral Model (Evolutionary)

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Evolutionary Models Customer communication: tasks required to establish effective communication between developer and customer. Planning: tasks required to define resources, timelines, and other project-related information. Risk analysis: task required to asses both technical and management risks Engineering: tasks required to build one or more representations of the application. Construction and release: tasks required to construct, test install, and provide user support.

Developed by Reneta Barneva, SUNY Fredonia Software Process Models: Concurrent Model

Developed by Reneta Barneva, SUNY Fredonia Software Process Models