Project Artifacts Map

Project Artifacts Map

A practical way to create project artifacts map.

By Amir Firdus (www.firdus.com)

January 2010



Overview

Every project has its artifacts. Typical artifacts are: business and technical documents, code and various scripts. It is the responsibility of the project leaders to decide which artifacts to produce, how to organize them and where to store them. The artifacts are produced by different teams often working in relative isolation from each other and stored across multiple systems. This article presents a way how to capture information about the project artifacts on the map that is easy to create and use.

How To Create The Artifacts Map

The artifacts map is created using FreeMind tool. It belongs to the “mind mapping” category of tools. These tools can quickly create nodes and links between them. A node can be described by text note, miscellaneous icons and links to external documents. This makes building an information structure a breeze. According to the researchers, brain stores information the same way hence the term “mind mapping”.

For illustration, let's take a look at the sample project artifact map. It is based on Java platform and popular free tools, so anyone can give it a try. Other tools can require adjustments in the node names and map organization. It only takes a few minutes to create the initial map. Of course, a bit more time to adjust and refine for the project at hand.

The Sample Project Artifacts Map Diagram

How To Organize The Artifacts Map

The artifacts map is the reflection of the project itself. There is no universal formula or silver bullet how to execute a project. Consequently, the artifacts map has to be adjusted per project. Not to forget, the map only captures information about artifacts like their names and instructions how to get to them. Actual artifacts are stored in their respective systems of record. Here is the high level overview of the sample project main nodes.

Eclipse

The “eclipse” node is added to the map primarily to indicate a development tool, in this case Eclipse. Possible artifacts are documents regarding the project specific Eclipse configuration.

Business Docs

The “business docs” node captures information about artifacts from the project's business aspect, documents like statement of work, project plans and different agreements.

Technical Docs

The “technical docs” node captures information about the artifacts needed to build the software, documents like use cases, user interface designs and various diagrams. It is recommended to organize the artifacts to match typical development life cycle phases: analysis, design, development and deployment or in Unified Process terms: inception, elaboration, construction and transition.

Code Projects

The “code projects” node is added to the map primarily to show how the code is organized. Development tools organize code in projects. According to Sun guidelines, there are two types of code projects: component and application. The component projects contain the code reusable across applications.

Env

The “env” node is added to the map primarily to indicate run-time environment. Possible artifacts are project specific environment configuration and deployment scripts.

How To Use The Artifacts Map

Just by having the artifacts map available on the project should result in improved communication, bringing the new team members up to the speed faster, better project documentation and shorter transition time to other teams.

The map format brings the benefit of the “at the glance” view. Missing sections are easy to spot, so we can eyeball the progress of the project. Also, number and size of the artifacts should match the project size. Major deviation from this general rule can indicate possible problems.

It would be a mistake to force when should the artifacts map be created during the project life cycle. It is useful all along. Nevertheless, it is better to do it earlier than later and let the artifacts map evolve with the project.

Most importantly, to really profit from the artifacts map, it has to be used. FreeMind tool offers a wide range of export formats like HTML, Java Applet, Flash, PNG and JPEG for easy sharing and presentations.

Conclusion

To capture the information about the project artifacts is always a challenge. The so called “mind mapping” tools have a potential to do that with a little overhead and at the same time be very useful in different project activities. The artifacts map can be a valuable addition to the project documentation set.

References

http://java.sun.com/blueprints/code/projectconventions.html

http://tomcat.apache.org/tomcat-6.0-doc/appdev/source.html

http://www.javaranch.com/journal/200603/AntPart1.html

http://freemind.sourceforge.net

Download

Sample project artifacts map is available for download at www.firdus.com.



4/4