1. Planning
Planning involves the creation and maintenance of a plan. As such, planning is a fundamental property of intelligent behavior.
This thought process is essential to the creation and refinement of a plan, or integration of it with other plans; that is, it combines forecasting of developments with the preparation of scenarios of how to react to them.
2. Design
Design is the creation of a plan or convention for the construction of an object or a system (as in architectural blueprints, engineering drawings, business processes, circuit diagrams and sewing patterns). Design has different connotations in different fields.
In some cases the direct construction of an object (as in pottery, engineering, management, cowboy coding and graphic design) is also considered to be design.
3. Development
Development is the computer programming, documenting, testing, and bug fixing involved in creating and maintaining applications and frameworks involved in a software release life cycle and resulting in a software product.
The term refers to a process of writing and maintaining the source code, but in a broader sense of the term it includes all that is involved between the conception of the desired software through to the final manifestation of the software, ideally in a planned and structured process.
4. Testing
Testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. Testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation.
Test techniques include, but are not limited to the process of executing a program or application with the intent of finding software bugs (errors or other defects).