Tuesday 27 February 2018

Software Engineering | SE Lecture 2

>>>>> Download Link here <<<<<

You can download the slides from the link given above.
In this lecture, we will focus on following points:

  1. Software Process Models
  2. Linear Sequential Model
  3. Prototyping Model

--------------------------------------------------------------------------
In slide:

Software Process Models – 1
By Abdul Razaq Ali
Lecturer, PUCIT
In Today’s Lecture
Introduction
Linear Sequential Model
Prototyping Model
Quick Look
What is it?
Prescriptive process models define a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality software
These Process models are not perfect, but they do provide a useful roadmap
Who does it?
Software engineers adapt them to their needs and then follow it
Why is it important?
It provides stability, control and organization to an activity
What are the steps?
The process guides a software team through a set of framework activities that are organized into a process flow that may be linear, incremental, or evolutionary.
Software Process Models
A model
 is a structured collection of elements that describe characteristics of effective processes. 
Software Process Model
Is the strategy to adopt software engineering as a layered technology
A simplified representation of a set of activities whose goal is the development or evolution of software, presented from specific perspective
Prescriptive Models
Prescriptive software process models called “prescriptive” because
Prescribe a set of process elements- framework activities, software engineering actions, tasks, work products, quality assurance and change control mechanisms for each project.
Prescribes a workflow - The manner in which the process elements are interrelated to each other (linear, incremental or evolutionary)


Software engineers have traditionally chosen a generic process framework consisting of the following framework activities which can be applied on any process model
Communication
Planning
Modeling
Construction
Deployment

The Process Model: Adaptability
The framework activities will always be applied on every project ... BUT

The 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
The environment in which the work will be conducted
Process Flow
Iterative
Evolutionary
Parallel
The Waterfall Model
Alternate names
Linear Sequential Model
Classic Life cycle

Introduction
A systematic, sequential approach to software development that begins at the system level and progresses through analysis, design, coding, testing, and support.
                         OR
A systematic, sequential approach to software development that begins with customer specification of requirements and progresses through planning, modeling, construction, and deployment, culminating in on-going support of the completed software.



Linear Sequential Model

Used when
The requirements of a problem are reasonably well understood 
When work flows from communication through deployment in a reasonably linear fashion.
Disadvantages
Real projects rarely follow the sequential flow that the model proposes.
It is often difficult for the customer to state all requirements explicitly.
A working version of the program will not be available until late in the project time span.
Linear nature leads to “blocking states”.
The Prototyping Model
The developer and customer define the overall (general) objectives for the software. 
In other cases, developer may be unsure of the efficiency of an algorithm, the adaptability of an operating system, or the form that human-machine interaction should take
A quick design focuses on what the customer will see.  From this, a prototype is constructed.

Prototyping can be treated as a standalone process model
More commonly treated as a TECHNIQUE that can be implemented within the context of any one of the process models

A prototype is a smaller-scale, representative or working model of the user requirements or a proposed design for an information system. 
 The user evaluates it and improvements are made.  This continues in an iterative fashion until a satisfactory product is achieved
The Prototyping Model
Advantages & Disadvantages
?
(Homework)
Highlights of today’s lecture
Software Process Models
Linear Sequential Model
Prototyping Model
Book Reading
Roger S. Pressman  “Software Engineering- A practitioner’s approach”, 7th Ed. 
2.3 

Questions?

No comments :

Post a Comment