The software engineering deals with three basic types of entities – processes, project, and products. A software process is a method of developing software. A software project is a development project in which a software process is used. And software products are the outcomes of a software project.
Each software development project starts with some needs and (hopefully) project starts ends with some software that satisfies those needs.
A software process specifies the abstract set of activities that should be performed to go from user needs to final product. The actual act of executing the activities for some specific user needs is a software project. And all the outputs that are produced while the activities are being executed are the products (one of which is the final software).
These three entities require different processes. The major process dealing with products is the development process responsible for producing the desired product and other products (e.g. user manual, and requirement specification). The basic goal of this process is to develop a product that will satisfy the customer.
A software project is clearly a dynamic entity in which activities are performed and project management process is needed to properly control this dynamic activity. The development process specifies the development and quality assurance activities that need to be performed, whereas the management process specifies how to plan and control these activities so that project objectives are met. To handle the inevitable change and reworked requests another processes called software configuration control, process is generally used
The objective of this component process is to primarily deal with managing change, so that the cost and quality objectives are met and the integrity of the products is not violated despite these change requests. These three constituent processes focus on the projects and the products. In fact, they can be all considered as comprising product-engineering process, as their main objective is to produce the desired product. The process management process deals with the software process. It’s basic objective is to improve the software process. By improvement we mean that the capability of the process to produce quality goods at low cost is improved. The process management deals with the whole process of understanding the current process, analyzing its properties, determining how to improve and then implanting it.