Software Model Process

Slides:



Advertisements
Similar presentations
Software Processes.
Advertisements

Prescriptive Process models
Lecture # 2 : Process Models
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 2- Software Process Models and Project.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
CEN nd Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Process Models.
CS487 Software Engineering Omar Aldawud
1 Chapter 4 - Part 1 Software Processes. 2 Software Processes is: Coherent (logically connected) sets of activities for specifying, designing, implementing,
Chapter 3 Process Models
Chapter 2 Software Process Models
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.
MapleLeaf, LLC SDLC Methodology. MapleLeaf, LLC, has established standard phases and processes in regards to project management methodologies for planning.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Process Models
Sommerville, I., Software Engineering, Pearson, 9th Ed., 2010.
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
1 CS 425/625 Software Engineering CS 425/625 Software Engineering Software Processes Based on Chapter 4 of the textbook [SE-7] Ian Sommerville, Software.
1 SOFTWARE LIFE-CYCLES Beyond the Waterfall. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance The WATERFALL.
1 CS 691z/791z Topics on Software Engineering CS 691z/791z Topics on Software Engineering Software Processes Based on Chapter 4 of the book [SE-8] Ian.
CS 425/625 Software Engineering Software Processes
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 2- Software Process Models and Project.
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
1 CMPT 275 Software Engineering Software life cycle.
Chapter 2 The process Process, Methods, and Tools
Software Process and Models
Objectives:  To define RAD  Describe RAD as a system development method  List the advantages of RAD as a method  List the disadvantages of RAD  State.
Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
Prescriptive Process Models
SOFTWARE ENGINEERING MCS-2 LECTURE # 3. SOFTWARE PROCESS  A software development process, also known as a software development life- cycle (SDLC), is.
Software Processes n What is a process?  Sequence of steps required to develop or maintain software n Characteristics  prescribes major activities 
1 SWE Introduction to Software Engineering Lecture 4.
Software Engineering MCS-2 Lecture # 6
1/23 Prescriptive Process Models. 2/23 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive.
Chapter 4 프로세스 모델 Process Models
Introduction to Software Engineering.  Software Characteristics  Components  Applications  Layered Technologies  Processes  Methods And Tools 
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
SWE311_Ch03 (071) Software & Software Engineering Slide 1 Chapter 3 Prescriptive Process Models.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 3 Prescriptive Process Models Discussion of the Software Process models:
WATERFALL DEVELOPMENT MODEL. Waterfall model is LINEAR development lifecycle. This means each phase must be completed before moving onto the next!!! WHAT.
Software Development Life Cycle (SDLC)
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
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 Saeed Akhtar The University of Lahore Lecture 3 Originally shared for: mashhoood.webs.com.
Software Engineering CE 501 Prepared by : Jay Dave.
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 Lifecycle Models Place of Testing in Software Lifecycle 1.
Systems Development Life Cycle
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
Chapter 2: The Process. What is Process? Software Engineering Process is the glue that holds the technology layers together and enables rational and timely.
Methodologies and Algorithms
Lecture 3 Prescriptive Process Models
Software Life Cycle “What happens in the ‘life’ of software”
CS 425/625 Software Engineering Software Processes
V-Shaped SDLC Model Lecture-6.
Software Engineering (CSI 321)
Software Process Models
Chapter 2 SW Process Models
Software Process Models
Software Engineering Lecture 18.
Software life cycle models
CS310 Software Engineering Lecturer Dr.Doaa Sami
Software Processes Process should be
The Waterfall Model Also known as: classic life cycle, the waterfall model, the linear model Rarely projects are sequential (allows iteration indirectly)
Presentation transcript:

Software Model Process PI2134 Software Engineering IT Telkom

Outline Definition Model Process Waterfall Model Incremental Model RAD Model Evolutionary Model Prototyping Model Spiral Model Component Based Development V Shapes Model The Unified Process

What SW Model Process? Software Model Process is an abstract representation of a software process. Software Model Process provide a useful roadmap for software engineering work All software models can accommodate the generic framework activity (fundamental activity) in SE, but each applies different emphasis to these activities and defines workflow that invokes each framework activity in different manner

The Waterfall Model The Oldest paradigm (process model), sometime called the Classic life cycle The Principle Stage are Requirement analysis and definition System and SW design Implementation and unit testing Integration and system testing Operation and maintenance

The Waterfall Model (cont’)

The Waterfall Model (cont’) The following phase should not start until the previous phase has finished In practice, the stage could overlap The problem with waterfall model is its inflexible partitioning of the project into these distinct stages

The Waterfall Model (cont’) Advantages Simple and easy to use. Easy to manage due to the rigidity of the model – each phase has specific deliverables and a review process. Phases are processed and completed one at a time. Works well for smaller projects where requirements are very well understood.

The Waterfall Model (cont’) Disadvantages Adjusting scope during the life cycle can kill a project No working software is produced until late during the life cycle. High amounts of risk and uncertainty. Poor model for complex and object-oriented projects. Poor model for long and ongoing projects. Poor model where requirements are at a moderate to high risk of changing.

Diskusi Buat 6 Kelompok Diskusikan masing2 model yang di pilih pada tiap kelompok

The Incremental Model Combines elements of the waterfall model applied in an iterative fashion Applies linear sequences in a staggered fashion as calendar time progresses Each linear sequence produces deliverables ‘increments’ of the software. When an incremental model is used, the first increment is often a core product.

The Incremental Model (Cont’)

The Incremental Model (Cont’) Advantages Generates working software quickly and early during the software life cycle. More flexible – less costly to change scope and requirements. Easier to test and debug during a smaller iteration. Easier to manage risk because risky pieces are identified and handled during its iteration. Each iteration is an easily managed milestone.   Disadvantages Each phase of an iteration is rigid and do not overlap each other. Problems may arise pertaining to system architecture because not all requirements are gathered up front for the entire software life cycle.

The RAD Model RAD is an incremental software process model that emphasizes a short development cycle Using Component based construction approach

The RAD Model (Cont’)

The RAD Model (Cont’) The advantages and disadvantages of RAD RAD reduces the development time Reusability of components help to speed up development. All functions are modularized so it is easy to work with. For large projects RAD require highly skilled engineers in the team. Both end customer and developer should be committed to complete the system in a much abbreviated time frame If commitment is lacking RAD will fail. RAD is based on Object Oriented approach and if it is difficult to modularize the project the RAD may not work well.

Evolutionary Model Business and product requirement often change as development proceed Software engineer need a process model that has been explicitly designed to accommodate a product that evolves over time Evolutionary models are iterative. Enables software engineers to develop increasingly more complete version of the software

Evolutionary Model : Prototyping Customer defines a set of general objectives for software but doesn’t identify the detail Assist the software engineer and the customer to better understand what is to be built when requirement are fuzzy

Evolutionary Model : Prototyping (Cont’)

Evolutionary Models: The Spiral Proposed by Boehm Evolutionary software process model that couples the iterative nature of prototyping with the controlled and systematic aspect of the waterfall model Each loop in the spiral represents a phase of the software process. The important distinction between spiral model and other software models is the explicit consideration of risk

Evolutionary Models: The Spiral (Cont’)

Evolutionary Models: The Spiral (Cont’) Advantages   High amount of risk analysis Good for large and mission-critical projects. Software is produced early in the software life cycle. Disadvantages Can be a costly model to use. Risk analysis requires highly specific expertise. Project’s success is highly dependent on the risk analysis phase. Doesn’t work well for smaller projects.

Component – based development development—the process to apply when reuse is a development objective The model composes applications from prepackage software components Components can be designed as either conventional software module or OO classes or Package of classes.

Component – based development

V Shapes Model The V-Shaped life cycle is a sequential path of execution of processes Testing is emphasized in this model in every stages

V Shapes Model (Cont’)

V Shapes Model (Cont’) Advantages Disadvantages Simple and easy to use. Each phase has specific deliverables. Higher chance of success over the waterfall model due to the development of test plans early on during the life cycle. Works well for small projects where requirements are easily understood.   Disadvantages Very rigid, like the waterfall model. Little flexibility and adjusting scope is difficult and expensive. Software is developed during the implementation phase, so no early prototypes of the software are produced. Model doesn’t provide a clear path for problems found during testing phases.

The Unified Process a “use-case driven, architecture-centric, iterative and incremental” software process closely aligned with the Unified Modeling Language (UML) Detail Discussion in OOT

The Unified Process (Cont’)

The Unified Process (Cont’)

Review Model Process Waterfall Model Incremental Model RAD Model Evolutionary Model Prototyping Model Spiral Model Component-Based Development V Shapes Model The Unified Process