WizIQ helps you learn and teach online - any subject you can think of!
Join for FREE

Module 2 - Modeling the Process and Life Cycle

Add to Favourites
Post to:

Description
This course covers the basics of a software engineering principles including different software developme techniques, requirement analysis, project planning, software design and management. The use interface issues, specification and implementation of components, design quality and basic suppot tools are also covered.

Comments
Presentation Transcript Presentation Transcript

Slide 1 : Modeling the Process and Life Cycle MODULE 2 Next Back In this Module, we look at what we mean by a “process” software development products, processes & resources several models of the software development process tools & techniques for process modeling

Slide 2 : What is a Process? - Process is a series of steps involving activities constraints and resources that produce an intended output of some kind. - in building a software product, process is refer to a life cycle - software development process is sometimes called software life cycle - a process is more than a procedure - a process may require design to occur before coding, many different design may be used

Slide 3 : - Process guides our actions by allowing use examine, control and improve that comprise the process. Characteristics of a Process - The process prescribes all of the major process activities. - The process uses resources, subject to a set of constraints (such schedule) and produces intermediate and final product. - The process may be composed that are linked in some way. The process may be defined as hierarchy of process, organized so that each sub- process has its own process models

Slide 4 : - Each process activity has entry and exit criteria, so that when the activity begins and ends. - The activities are organized in sequence, so that it is clear when one activity is performed relative to the other activities. - Every process has a guiding principles that explain the goals of each activity. - Constraints or controls may apply to an activity, resource or product.

Slide 5 : Software Development Process Models Reasons for Modeling Process - It forms common understanding of the activities, resources and constraints involved in software development. - It helps the development team find inconsistencies, redundancies and omissions in the process and in its constituent parts. - It reflects the goals of development such as building high-quality software, finding faults in early development and meeting required budget and schedule constraints.

Slide 6 : - It helps the development team understand where tailoring is to occur for the special situation.

Slide 7 : The Waterfall Model - The waterfall model is a sequential software development model (a process for the creation of software) in which development is seen as flowing steadily downwards (like a waterfall) through the phases of software developmet. - Winston W. Royce (1929–1995), present this model cited in his article published in 1970. - It is very useful in helping the developers lay out what they need to do. - The biggest problem with the waterfall model is does not reflect the way the code is really developed.

Slide 8 : In Royce's original waterfall model, the following phases are followed in order: Requirements specification Design Construction (AKA implementation or coding) Integration Testing and debugging (AKA validation) Installation Maintenance

Slide 9 : Requirement Analysis System Design Coding Program Design System Testing Unit & Integration Testing Operation & Maintenance Acceptance Testing The Waterfall Model

Slide 10 : The software development process in reality.

Slide 11 : The Sashimi Model - The sashimi model (so called because it features overlapping phases, like the overlapping fish of Japanese sashimi) was originated by Peter DeGrace. - also referred as the waterfall model with overlapping phases or with feedback

Slide 12 : The Waterfall Model with overlapping phases / The Waterfall Model with feedback Operation & Maintenance Instructor’s idea about the Sashimi Model

Slide 13 : The Waterfall Model with Prototyping - Prototyping is a partially developed product that enables customers and developers to examine some aspect of the proposed system and decide if it is suitable or appropriate for the finished product. - Design prototyping helps developers assess alternative design strategies and decide which is the best for a particular project.

Slide 14 : Requirement Analysis System Design Coding Program Design System Testing Unit & Integration Testing Operation & Maintenance Acceptance Testing The Waterfall Model Prototyping Verify Validation

Slide 15 : The V-Model - The V-Model (or VEE model) is a systems development model designed to simplify the understanding of the complexity associated with developing systems - a variation of the waterfall model that demonstrate how the activities are related to analysis and design - the focus of the V-Model is on activity and correctness

Slide 16 : The V-Model

Slide 17 : Prototyping Model - It requires investigation to ensure that the developer, user and customer have a common understanding both of what is needed and what is proposed. - it reduce risk and uncertainty in development - The process of prototyping involves the following steps: 1. Identify basic requirements 2. Develop initial prototype 3. Review 4. Revise and enhancing prototype

Slide 18 : The Prototyping Model.

Slide 19 : The Operational Specification Model - The system requirments are evaluated or executed in a way that demonstrates the behavior of the system. - Once the requirements are specified, it can be enacted using the software package, so that their implication can be assess before design begins.

Slide 20 : The Operational Specification Model

Slide 21 : The Transformational Model - It tries to reduce the opportunity for error by eliminating several major development steps. - It uses automated support - Sample transformation can include: (1) changing the data representation; (2) selecting algorithms; (3) optimizing; (4) Compiling.

Slide 22 : The Transformational Model

Slide 23 : The Phased Development Model - Cycle time is the time the documents are written and the time for the system was delivered. - To reduce the cycle time is to use development phase , where two systems functioning in parallel. - The Operational or Production System being used by the customer or user - The Development System is the next version that is being prepared to replace the current production system.

Slide 24 : The Phased Development Model

Slide 25 : The Incremental Model - The system as specified in the requirements documents are partitioned into subsystems by functionality. - The releases are defined by beginning with one small, functional subsystem and then adding with each new releases.

Slide 26 : The Iterative Model - It delivers the full system at the very beginning and it changes the functionality of each subsystem with each new releases.

Slide 27 :

Slide 28 : The Spiral Model - The spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts - also known as the spiral life cycle model - it is a systems development method (SDM) used in Information technology (IT) - a combination of features of Prototyping Model and Waterfall Model defined by Barry Boehm (1988) - The spiral model is intended for large, expensive and complicated projects

Slide 29 : The Spiral Model.

Slide 30 : The Static Model - It depicts the process, showing the inputs are transformed to outputs. - See… A Toolset for Supporting Static and Dynamic Model Checking

Slide 31 : The Dynamic Model - It can enact the process, so that the user can see how intermediate and final products are transformed over time. - See… A Toolset for Supporting Static and Dynamic Model Checking

Slide 32 : Other Software Development Models - Model Driven Development - User Experience - Top-Down to Bottom Design - Chaos Model - Evolutionary Prototyping - ICONIX Process - Unified Process - Extreme Programming (XP)

Want to learn?

Sign up and browse through relevant courses.

Name:
Your Email:
Password:
Country:
Contact no.:


Area code Number
Subject you are interested in:
Word verification: (Enter the text as in image)


Sign Up Already a member? Sign In
I agree to WizIQ's User Agreement & Privacy Policy

Your Facebook Friends on WizIQ