Development of programming languages was at the initial stages and much work has to be in field of software technology.
The hardware equipment used in programming were huge and weighed in tons. To operate one computer more than 10 persons were required. The space required for it was just like an auditorium. The expenses on maintenance were sky high. It was very time consuming effort for even to do simple mathematic calculations.
Research on development of software technologies was given more importance and works on these issues were employed. Many companies realized the importance of development of software technology and many research institutes were developed accordingly.
After the development of some programming languages like FORTRAN the importance of programming concepts were realized and companies like IBM, Microsoft, Apple, etc., invested heavily on the development of these technologies. The problems faced by these companies were:
Development Time problem: In the development of large systems sometimes technology goes through a generation change from the time it was first conceptualized to the tie of delivery. Sometimes systems have to be reprogrammed completely.
System User Interface problem: At the time of initial designing of the technology many associated operational procedures were neglected. This resulted in delay in the development process and need of other additional requirements. Additional hardware as well as software was frequently needed to meet the requirements.
These problems can be prevented through operational timelines.
Test and Integration problem: In the early stages of software development insufficient thought was given to integration and testing.
Appointing experienced programmer and conducting tests at all levels can avoid problems.
Maintenance problem: The expenditure was huge for the maintenance.
The best way to cut costs is to design the code in such a way that changes can be accommodated frequently.
Software development life cycle (SWDLC) models were used in developing a software product. SWDLC models helps in understanding the problem, design of a solution and tests on the solution can be performed in an operational environment. Some of the SWDLC are generic waterfall model, department of defense model, spiral model, NASA model, incremental developmental model, evolutionary prototype model, reuse and automated development models, etc.
SWDLC process goes through five phases. They are (1) requirement analysis, (2) design specification, (3) coding and unit testing, (4) test and integration and (5) acceptance test.
The people involved in software development process are:
1. Operators/Users: These are the end users who use the final products of the software system. Directly or indirectly users are involved in the development of software products. Keeping user's requirements in mind companies develop the final product. Since users are the key to the success of the final product most of the companies takes user's conceptions and develops the product accordingly.
2. Client: Client may be a person or a firm