Definition of software development life cycle|Phases of SDLC

19409

Introduction to Software development life cycle (SDLC):

SDLC stands for software development life cycle. It is also referred to as the application development life cycle and/or system development life cycle. It is a systematic approach and a term used by the software engineer, information system, system engineering, and development team in a software organization to solve a problem and/or a given task. This process consists of a detailed plan about how to develop, test, maintain, and replace specific software. It also defines the applied methodology for improving the quality of designed software and the overall software development process.

This software development life cycle process is composed of several phases to design and develop cost-effective, efficient, and high-quality software. These phases are used by a system analysis to develop a detailed information system through SDLC several phases. Economy studyAnalysis, Design and Development, Implementation, Testing, and Maintenance are the phases used by the system/application development life cycle, which results in developing a high-quality system that meets user/customer requirements and expectations. By using these SDLC phases developers take care about the time schedule and cost estimates of overall software project development. The organization should have skilled professionals to build the system through a lifetime cycle. Information technology specialists have to plan the project of system development following one of the known project management standards then initialize, execute, and control, and finally check to deliver the system.

Phases of Software development life cycle (SDLC):

There are several phases of the software development life cycle, those are necessary required to develop an efficient and effective, reliable software project. The hierarchy of the software development life cycle is shown in Figure (1).

Hierarchy of System Development Life Cycle
Figure 1: Hierarchy of System Development Life Cycle

Detail description of each phase of software development lifecycle:

SDLC Phase 1: Investigation or feasibility study:

The first and most important phase of SDLC is the investigation or study of the feasibility of the system. The feasibility study of a developing project is sometimes used to present the project to upper management in an attempt to gain funding. A project is typically evaluated in three areas of feasibility studies;

  1. Economical feasibility study
  2. Operational feasibility study
  3. Technical feasibility study

This phase of SDLC is usually done by the most skilled and experienced technical engineers in the organization. It defines the system to be developed based on the organization’s requirements. The project scope must be defined and put into a project scope document. The next task of this phase is developing the project plan, which includes time schedule with details of each task. Managing and monitoring the project plan allows project tracking which is also the task of the investigation phase of the system development life cycle.

Top

SDLC Phase 2: Analysis:

The next phase of the cycle is the analysis the customer problem and how to fix the customer’s requirement to solve the problem in best optimal way. This phase involves breaking down the system in different pieces and drawing diagrams to analyze the situations. Analyzing project objective, braking down functions in different modules that need to be created and attempt to engage users, hence definite requirements can be defined.

sdlc analysis phase
SDLC Analysis Phase

Requirement gathering sometimes require individual/team from the client as well as the service provider side to get detailed and accurate requirements.

Top

SDLC Phase 3: Design:

Third phase of software life cycle is design, it includes design blueprint of the developing system. It is done by designing the technical architecture of the system.

Software design phase
Software design phase

This phase includes designing the system model in GUI format, database design to placement of objects on GUI screen.

Top

SDLC Phase 4: Development:

Forth phase is development or code generation as per the user/customer requirement. This phase takes the design phase output and translated it into machine readable form, this translation done by using code generation. If the design is perform in a detailed manner, code generation can be accomplished without much complication.

Software Development services phase
Software Development Phase

Code generation process used many different languages like machine level language, assembly level language and high level language like FORTORN, Pascal, C, C++, JAVA etc. and the programming tools like compilers, interpreters, debuggers, assembler  etc. to convert these languages in to machine readable code. These programing languages are chosen as per the requirement of user/customer object.

Top

SDLC Phase 5: Testing:

The generated code in the development phase is tested at various levels in the software testing. This phase is responsible to finding defects and bugs in the created code in previous phase of SDLC. This is a grey area as many different opinions exist, as to what the stages of testing are and how much if any iteration occurs in some of the unique software life cycle.

sdlc software testing phase
SDLC Software Testing phase

There are various types of testing performed to check the bug and error in the generated code are as follows;

Types of testing:

  • Data set testing
  • Unit testing
  • System testing
  • Integration testing
  • Black box testing
  • White box testing
  • Module testing
  • Regression testing
  • Automation testing
  • User acceptance testing

Top

SDLC Phase 6: Implementation:

Software implementation service phase
Software implementation service phase

The systems are placed and used in the actual environment and the user guide is created, training is provided to the users of the system.

Top

SDLC Phase 7: Maintenance:

The next phase of SDLC is the maintenance of the created software. The software will definitely undergo change once it is delivered to the customer. There can be many reasons for this change to occur. Change could happen because of some unexpected input values into the system. In addition, the changes in the system could directly affect the software operations. The software should be developed to accommodate changes that could happen during the post-implementation period.

Top

Sometimes in the development of the software life cycle one or more above phases becomes optional or included implicitly in others in some cases.

Previous QuizDefinition, Classification of computer programming languages
Next Quiz9 gram of tiny robot with 2,000 times heavy weight carry capacity

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.