Generally the Software Development process starts with the requirement gathering by business analysts or the people having same sort of designation. These business analysts gather requirements from specific customers site people (for application development) and also gather requirements from modal customers (in the market) for product development. After gathering the requirements business analysts release document which is known as URS/CRS (user/customer requirement specification) after that they move ahead for BRS (Business Request Specification) for the completeness and correctness.
When BRS is base lined (Tested), the systems analysts come into picture. They convert the BRS into SRS (System Request Specification) which consists of the final requirement to be developed and non-functional requirements to be achieved.
Basically Business Analysts finalize what to develop and the System Analysts finalize how to develop the software/application.
After completion of the SRS preparation. corresponding system analysts review the document for completeness and correctness. When SRS is baselined (already tested) , the designer category people concentrate on software designing at high and low level. High level design is known as system design/architectural design. High level design depicts the overall architecture of total software/complete software But low level design tell about the internal logic of the specific module. This is the reason why any project/product design consists of one HLD and many LLDs.
After Completion of the HLD and LLDs corresponding designers review the documents for completeness and correctness. When designing of the documents is done, Programmers come into picture and start coding.
Learn Next- Unit Testing