software developer | | 1.4 - Stakeholders in Software Engineering | | software development time because it is very hard for people to assess the quality of software or to appreciate the amount of work involved in its development | | | stakeholder | | the use of obscure features of technology because later versions of the technology might be changed in ways that are incompatible with how you have used it or the producer of the technology might go out of business or withdraw it from the market | a design pattern without understanding in depth the forces that need to be balanced, and if another pattern would better balance the forces | | A person involved in the development of software | |
cost estimator | extra time into a time estimate to account for typical delays | 11.3 - Cost Estimation | the results of several different cost estimation techniques | the total amount of work required by not understanding the amount of work involved in certain activities or omitting them entirely | the project up into individual subsystems, and then divide each subsystem further into the activities that will be required to develop it, then make a series of detailed estimates for each individual activity, and sum the results to arrive at the grand total estimate for the project | inaccurate estimate if he or she tries to estimate the entire cost of a project as a single number | software developer | differences when making an estimate for a new project:- different software developers with different skill levels
- different development processes and maturity levels
- different types of customers and users
- different schedule demands
- different technology
- different technical complexity of the requirements
- Different domains
- Different levels of requirement stability
| making only a best-case estimate | cost estimation principles | estimates because- As you gather requirements and begin specifying details, you will be able to increase the accuracy of your estimate
- As you move into the design phase, you can again increase the accuracy of your estimates
- You will adjust your estimates as requirements change, or features are dropped in order to meet a budget or deadline
- As you encounter problems during design and implementation, you will be able to adjust your estimates to take these into account
| | time by making 3 separate estimates - optimistic, likely and pessimistic - to come up with a global estimates of the best-case, typical case and worst-case cost for the project |