What are planning practices in software engineering and explain their principles?
The planning activity defines a set of management and technical practices that enable software team to define road map for travel to word it is strategic goal and objective. Planning provides guideline for software team to progress very fast in the project development.
There are some principles as follow:-
1) Understand the scope of project: – if team unaware about destination then it is impossible to use roadmap. Scope provides the software team with destination as scope represent the range within which development take place.
2) Involve the customer in the planning activity: – the customer defines priority and establish project constraints. While direct interacting with software team ,customer can negotiate on order of delivery ,timeline and other project related issue so customer involvement is important
3) Recognize that planning is iterative: – project plan is suppose to change or the personal reason so plan must be adjust to accommodate these changes. Incremental model dictate replanting that is after delivery of each software increment to user feedback is receive and change are made
4) Estimate based on what you know: – Team works effectively .if efforts, cost and task estimates are reliable so estimation provides reliability and conveniences to software team if the information is reliable.
5) Consider risk as you define the plan:-Risk is event when cause happens some unwanted outcomes because risk may have high impact and high probability on project which will destroy it. so proper management of risk is a required
6) Be realistic: – project should be a realistic .all the practical aspect has to be considered .plan should be dynamic enough to include all reason like delay, mistake, and wrong decision lagging due to technical reason due to personal reason of team.
7) Adjust granularity as you define the plan :- Granularity means level of detail for particular specification .some activity are repeated and require longer time required detail plan hence granularity must be adjust in the project plan. So that is why Adjust granularity as you defines the plan.
8) Define how you are going to achieve quality: – the most effective mechanism applied during project development to assure the quality. Formal technical review is meeting conducted by technical staff to find out defects in any stage of development and quality is improved by removing defects that is why it mention very clear to achieve quality.
9) Describe how you aim to accommodate change: – Good quality software must be well planned to accommodate changes that are demanded by customer in any stage of software development process. Changes in project affect the cost and the schedule of the project so it is important to think about change. So that why Describe how you aim to accommodate change.
10) Always keep track of the plan and make changes as required: – track the progress of project development on daily basis all team members should participate in planning activity so that they will accept to recover the lagging schedule.