You are on page 1of 14

Submitted By

Md.Zarina
DPC52 (172752)

Submitted To
Mr.Kamalakar Raj sir
Dept of Comp Sci
* The world can’t operate without software. Industries are
controlled by software systems, as the financial systems,
scientific labs, infrastructures and utilities, games, film,
television, and the list goes on.
* A software is a computer programs along with the associated
documents and the configuration data that make these
programs operate correctly.
* A program is a set of instructions (written in form of human-
readable code) that performs a specific task.
*Software Engineering could be more accurately called
Software System Engineering, it builds upon System
Engineering

*Software engineering is an engineering discipline that is


concerned with all aspects of software production.

*Software engineers should adopt a systematic and


organised approach to their work and use appropriate tools
and techniques depending on the problem to be solved,
the development constraints and the resources available.
* A set of activities whose goal is the development or evolution of
software.
* Generic activities in all software processes are:
* Specification - what the system should do and its development
constraints.
* Development - production of the software system.
* Verification – checking that the software meets the requirements.
* Validation - checking that the software is what the customer wants or
meets intended use.
* Evolution - changing the software in response to changing demands.

V&V = Verification and Validation


* A simplified representation of a software process, presented from
a specific perspective.
* Generic process models
* Waterfall;
* Iterative development;
* Component-based software engineering.
*A software process (also knows as software methodology) is a
set of related activities that leads to the production of the
software.
*These activities may involve the development of the
software from the scratch, or, modifying an existing system.
* software process must include the following four activities:
* Software specification (or requirements engineering): Define
the main functionalities of the software and the constrains
around them.
* Software design and implementation: The software is to be
designed and programmed.
* Software verification and validation: The software must
conforms to it’s specification and meets the customer needs.
* Software evolution (software maintenance): The software is
being modified to meet customer and market requirements
changes.
* In practice, they include sub-activities such as requirements
validation, architectural design, unit testing, …etc.
*A software process model is a simplified representation of a
software process. Each model represents a process from a
specific perspective.

*Some methodologies are sometimes known as software


development life cycle (SDLC) methodologies, though this
term could also be used more generally to refer to any
methodology.
*Waterfall Model
*Sprial Model
*Iterative
*The waterfall model is a sequential approach, where each
fundamental activity of a process represented as a separate
phase, arranged in linear order.

*Plan-driven process is a process where all the activities are


planned first, and the progress is measured against the
plan. While the agile process, planning is incremental and
it’s easier to change the process to reflect requirement
changes.

*The phases of the waterfall model are: Requirements,


Design, Implementation, Testing, and Maintenance.
* The spiral model is a risk-driven where the process is
represented as spiral rather than a sequence of activities.

* It was designed to include the best features from the waterfall


and prototyping models, and introduces a new component; risk-
assessment.

* Each loop (from review till service — see figure below) in the
spiral represents a phase. Thus the first loop might be
concerned with system feasibility, the next loop might be
concerned with the requirements definition, the next loop with
system design, and so on.
*Iterative development model aims to develop a system
through building small portions of all the features, across
all components.
*We build a product which meets the initial scope and
release it quickly for customer feedback. An early version
with limited features important to establish market and
get customer feedback.
*In each increment, a slice of system features is delivered,
passing through the requirements till the deployment.
*Software engineers have responsibilities to the engineering
profession and society. They should not simply be
concerned with technical issues.

*Professional societies publish codes of conduct which set


out the standards of behaviour expected of their members.

*Methods are organised ways of producing software. They


include suggestions for the process to be followed, the
notations to be used, rules governing the system
descriptions which are produced and design guidelines.

You might also like