Full Software Development Life Cycle
Software development is a challenging and multistage process. Each stage of creating a new product has its own tasks to be determined by a programmer to achieve the goals set. Full life cycle of Software Development consists of 6 stages:
1. Analysis of Requirements
The process participants (for example, a contractor and customer) define the idea, view and focus of a future project at this stage. The major task of specialists is to sort out final product requirements in detail. The algorithm of actions at the preparatory stage is as follows:
- collecting requirements;
- systematizing;
- documenting;
- analysis;
- revealing contradictions and their solution.
2. Design
The visual project of a system is made at the second stage. Programmers solve technical issues, find appropriate work principles, select technology, tools and mechanisms.
The future project design obtained contains:
- programming components;
- team of contractors;
- program functional features;
- work limitations;
- time limits.
To get the better system visualization, designers use notations, that is, schematic display of IT-product features. The most common are:
- block-schemes;
- UML-diagrams;
- ER-diagrams;
- patterns.
3. Development
The major stage in the software life cycle is its development and programming. specialists write program codes, adjust users’ interface and arrange components in the proper sequence.
The obligatory event is to prepare Unit-tests. They help check the code correctness, reveal errors and correct them in time.
Working on the “internal” structure of software includes 4 phases:
- making algorithms;
- writing a code;
- initial data conversion into a machine code (compilation);
- preliminary testing.
4. Documenting
Filling out documents and reporting take place at each stage of the project realization. But there are some other types of text documents in addition to project and release notes.
There are the following documenting levels:
- Project
Descriptions of methods, technologies and mechanisms used in software development. - Technical
Explanations on the system work at each module. They look like comments to the source code. - User’s manual
Reference and explanatory information for software owners . - Marketing
Advertising texts, design developments for displaying a product .
5. Testing
Software testers join the work process at this stage . They are engaged in searching for errors, defects andchecking the ready product compliance with defined requirements . If any errors are revealed, the program is to be improved . After all defects being eliminated, testing is repeated .
6. Deployment and Technical Support
Ready software is transferred to a customer and deployed into a definite base .
While using the system, you can apply to developers for management consultations, usage and setting ofconcrete elements . There is a special technical support team . Specialists observe software status, update itand study its work characteristics .
Project development stages are universal for all developers . There can be changes only in their sequence andduration .