Thursday 21 August 2014

Brief View of Software Development

Software consist of several programs ,software is a well-documented object and provides well-designed interface . Software requires team of developers and have large number of users.
Software development is perform in  predefined systematic manner . Software developers or software engineers follow  specific models for software  development .
Software engineering is a systematic collection of past experiences , and includes techniques, methodologies and guidelines for software development.
There are series of identifiable stages ,that a software product undergoes during its life time, described as below:
  • Feasibility study
  • requirements analysis and specification,
  • design
  • coding
  • testing
  • maintenance

Software development team must identify a suitable life cycle model.Advantage of following life cycle model ,it helps software developer to develop software in systematic and disciplined manner.
There are several life cycle models are available:
  • Classical Waterfall Model
  • Iterative Waterfall Model
  • Prototyping Model
  • Evolutionary Model
  • Spiral Model
This model is named “waterfall model” because its diagrammatic representation resembles a cascade of waterfalls . But it is difficult to define all requirements at the beginning of a project.And this model is not suitable for accommodating any change.
Iterative Waterfall model ,phases can interact with each other,so if any fault occurred in any phase ,that fault can be removed by going back to previous phase.
In prototype model ,developer first develop prototype or a model of required system ,and in this model customer can interact with partially developed software,so quality of software can improve according to the customer.
Evolutionary software models are iterative. They are characterized in manner that enables the software engineers to develop increasingly more complete version of a software.This models are applied because as the requirements often change so the end product will be unrealistic, where a complete version is impossible due to tight market deadlines it is better to introduce a limited version to meet the pressure. Thus the software engineers can follow a process model that has been explicitly designed to accommodate a product that gradually complete over time.
Spiral model,number of phases are not decided.It includes several phases which are:
  • Customer communication
  • Planning
  • Risk analysis
  • Engineering
  • Construction and Release
  • Customer Evaluation

No comments:

Post a Comment