Tools & Templates

The diagram below lists some of the artifacts produced during a software development project. It is an abstraction and a simplification of actual processes, but, in my opinion, it helps in getting a good overview of the products of a software development project and, consequently, of the tools and templates which can be used during the process1.

diagram in SVG format

(If you cannot view the picture, which is in SVG format, you can download a PNG version instead.)

In more details:

  1. Plan uses as input the scope document and produces a list of documents detailing the project: estimations about effort and costs, a schedule (often using a Gantt chart), a budget, a quality plan, and a list of risks.
  2. Work: the documents produced above describe the work (activity 2. Work) which will be carried out. In software development processes, the artifacts produced during this activity include requirements, mockups, design documents, test cases, and, of course, code.
  3. Monitor has the goal of analyzing the work carried out and the products being produced to compare them with the plans (and replan, if necessary). We distinguish, in particular, four different monitoring activities:
    • Work and Productivity, which has the goal of evaluating how work progresses. Some of the artifacts produced by this activity include information to qualitatively and quantitatively assess the project status. The former includes information such as meeting minutes, status updates, a list of issues and risks which have occurred, while the latter includes information such as timesheets, expenses incurred into.
    • Metrics Collection, which has the goal of quantitatively measuring the output of the work being executed. More in details, the goals is measuring quantitative information about the code being produced, including code size (and code growth trends), some indicators of code quality (e.g., comments/LOC ratio), number of bugs (and trend over time).
    • Quality Inspections, which has the goal of qualitatively evaluate the artifacts. The output typically includes “audits reports”
    • Assess Status: the information collected by the monitoring activities is finally analyzed and compared with the plans, to produce a project status, which is the basis for replanning (if necessary).

Notes

1 The diagram uses a modified version of the UML activity diagrams: in yellow you will find the planning, execution, and monitoring phases of a project (initiation and closing have been “abstracted” away, for the moment; the monitoring phase is split in four activities). The rectangle are the artifacts produced or consumed by each phase.