Estimate Record

De productpatterns_wiki
Saltar a: navegación, buscar

Spanish.jpg Español


  • Business records


  • Business records



Estimar Historia.jpg

Development time

    • To acquire the necessary knowledge to develop the software product:
    • To create the Product Pattern: 15 minutes.
    • To apply the Product Pattern:

Explanatory video

    • Not applicable

Quality Controllers

  • None


  • Historias_Negocio.doc

Support Tools

Initial Context

This product can be used in any project that once collected the requirements of the business area for the implementation of an application, they have to be estimated by the area of technology. The estimate refers to the time in weeks, estimated it will take the full implementation (analysis, design, development, testing, integration) of a feature (record).

The most efficient estimate is based on the point estimate of record, which is the only mechanism that determines the size of a user record, ie it is the same as for any member of the group, regardless of experience on the team (junior developer / senior developer).

Record points are the relative size of each user record compared with other records estimated by the same team.

Resulting Context

Two sets of records will be obtained, some of which have been estimated by the area of technology and others that have not been estimated because they are too complex to treat unitarily or they are not sufficiently detailed. In the latter case they will be returned to the area of business for which either they will be simplified (in several records) or completely detail.


The technology area should get an estimation of all the records provided by the business area. The maximum estimation for each story), can not exceed three weeks.

Once the team gains experience estimating points of record, the estimation becomes more accurate and can be performed very quickly compared to traditional estimation techniques.

Restrictions (Forces)

  • Characteristics of organizations: This pattern can be used in existing projects in any company.
  • System Type to develop This product can be used in projects in which user requirements are changing.
  • Type of Customer: It must exist or be achieved, the target area development business being involved in achieving it.
  • Heuristics for use:: It must set up meetings between business and technology where communication is smooth and has mutual trust areas. The workspace should be organized according to the guidelines of the methodology. It is important to keep food and drink to ensure meetings are relaxed.


  • Developers (2-12)
  • Director of Development Project (1)
  • Trainer (1)
  • Controller (1)

Note: The trainer and driver can be the same person.

Lessons Learned

  • The assessment should be based on a simple implementation as much as possible. Keep in mind that the property of the generated code is common to all members of the project. If record can not be estimated answering the above premises should be returned to the area of business for the rewrite.
  • Establish meetings in which always involved the business area along with the development team (developers included).
  • Point of record estimations more efficient than traditional methods for its homogeneous result against various team members record.

Maturity level

  • Not applicable.

Basic Knowledge and Skills


  • Knowledge of coding standard that defines the shared code ownership and the rules for writing and documenting code and communication between different pieces of code developed by different teams. Programmers have to follow the so that the code in the system look like if it had been written by one person.
  • Knowledge of the common vision of how the program in which the activities take place works.
  • It is necessary to know the complexity of each user story as well as the importance in business to make a good estimation of record points.


  • Ability to work in group. All on an XP computer contribute in any way they can.
  • Predicting what will be completed by the deadline, and determining what to do next.
  • Programming capability in pairs. Besides to generate better code and tests, used to communicate knowledge through teams.

Information Resources