
Software Systems development requires an organized, step by step approach. The steps should be natural and have well-defined results. The completion of each step should provide a check-point where it can be determined whether the next step can be carried out or not.
The Conception Phase starts as someone, the user or anyone else, recognizes a problem or an opportunity, which has a data processing solution. The systems analyst and the user meet to develop information, mainly description of the problem or opportunity, goals, benefits and project scope.
The Initial information of the Conception Phase are generally recorded in a document called Project Request Form, whatever be its format. In the Conception Phase face to face discussion with the user is the best way to collect the true and exact facts.
Since users mostly can't explain their problems properly, the systems analyst must have interviewing skills. He should know what questions to ask. Thus Conception and Initiation are the preliminary phases involving a lot of queries, and interviewing those people who will be using the system. As stated earlier, one has to know what questions to ask to bring out the exact requirements. Users are not always very clever in expressing what they actually need.
Goals to be achieved and benefits to be derived from the software system must be well defined and documented. It will show whether the solution is adequate or not. A systems analyst should have a reasonably good understanding of the user's business and particularly the functional area for which the system is to be developed.
Sources from which information have been derived should be properly listed.
Benefits should be quantified in terms of money and should be listed in a sequence such that the first one is the easiest one to quantify.
A rough estimate of the project development cost is necessary against which the money values of the benefits are to be compared.
All the departments & sections as well as personnel that will be affected by the software system are recorded to determine the size of the project.
'User' is the manager, lowest in the organization, to whom all affected areas report.
Analysis and design are the two most vital phases, which can ensure a long life of the software.
Analysis part is all about understanding and ascertaining what the system is supposed to do.

In involves preparation of the Context Analysis Diagram,
Data Flow diagram, top level as well as lower level ones,
identifying external entities involved with the system, like the departments affected by the system or outside people,
processes that are required to convert raw data into processed data,
which then becomes usable, meaningful information for the user,
blowing up the processes to identify the sub-processes existing within the major (top level) processes, and identifying the data structures that are required to be updated by the various processes.
converting processed data into meaningful, understandable data, properly formatted and printed or shown on the screen,
Design part is supposed to take care of how the system should perform all that has been ascertained in the Analysis part. It involves preparing structure charts, module specifications, logic involved, checks and validations that need to be incorporated, taking care of interfaces with other systems, and exporting or importing data to or from other systems.
Building a software is a costly affair. A company cannot build it from the scratch every year, though upgradations are always done according to the changes that take place in course of time. So a long life of the software is very essential. Another very vital thing is the changeability of the software system,.... how far and how long it can undergo changes. The more flexible it is, the longer will be its life. So its development cost will automatically be spread over a long period,....seven to ten years... thereby lowering the yearly charge. Changeability totally depends on the Design part..... how the individual modules of the software are related to one another, and how far the modules are independent. The more independent a module is, the less will be chances of other modules getting affected by a change made in one particular module. More the changes a system can take, the more will be its life and the more beneficial it will be for the company using the software.
Another very vital thing is designing the database structure, and individual data file structure. There are rules and principles to do that. This also affects the changeability of the system. A poor database structure will make the system too rigid, ....life span will not be more than four years. It has to be scrapped after that period.
Then comes the Construction Phase when the actual programming work, building up the data files and the database, syntax and logical testing etc. are done. Interactions with the user are necessary, as and when required.
At the end comes the System Testing part when tests like Stress Testing, Volume testing, Data Validation Check Testing etc. are done.
This completes an overview of the system development process.