Overview >
Roadmaps >
Small Projects
Roadmap: Developing Small ProjectsTopics
Introduction
The key to achieving the delicate balance between delivering quality software and delivering it quickly (the e-software paradox!) is to understand the essential elements of the process and to follow certain guidelines for tailoring the process to best fit your project's specific needs. This should be done while adhering to the best practices that have been proven throughout the industry to help software development projects be successful. No project requires all the activities and artifacts described in the Rational Unified Process (RUP). Small projects, especially, are best served by a light-weight process which enables the project team to spend most of its time developing software, without a lot of administrative overhead. In all cases, it is important not to include activities and artifacts that cannot be clearly justified. As a project grows and succeeds (which is the objective of all successful small projects!), it will be important to include more and more tools to help automate your team's implementation of the best practices. But the key to success, is to start small, implementing only those essential elements, and add the others when they are clearly needed. Process Overview
The RUP consists of the following disciplines.
With the possible exception of Business Modeling, all of the above disciplines should be represented in any variant of the RUP, even for small projects. In particular, small projects should focus on best practices, and the essentials of each discipline. Inception Phase
Activities
The basic workflows for the Inception Phase are streamlined, through the focus on the essential activities and essential artifacts. The Milestone: Lifecycle Objectives completes this phase Elaboration
Phase Activities
The basic workflows for the Elaboration Phase are streamlined, through the focus on the essential activities and essential artifacts. The Milestone: Lifecycle Architecture completes this phase. Construction
Phase Activities
The basic workflows for the Construction Phase are streamlined, through the focus on the essential activities and essential artifacts. The Milestone: Initial Operational Capability completes this phase. Transition
Phase Activities
The basic workflows for the Transition Phase are streamlined, through the focus on the essential activities and essential artifacts. The Milestone: Product Release completes this phase A Minimal
Development Case
The following is an example of Artifact: Development Case for a project of ABC Company, called Project Small. Project Small wishes to adopt minimal process and tools, but still follow the RUP best practices. Project Overview
Project Small is a team consisting of a project manager and four programmers. The duration of the project is only four months. The stakeholders have good informal working relationships with the development team, and there is no need for formal contracts or reviews. The stakeholders have ongoing visibility during development. The team is highly skilled and disciplined, and has shown in the past to produce quality products without much formal process. The team believes that they can improve their productivity and the end-product by following the best practices recommended in the RUP. However, given the short time-frame of the project, and lack of experience with integrated toolsets, the team has decided to use a minimal set of tools. A separate parallel activity will be initiated to investigate tool benefits, re-use opportunities, and to further refine the process for future projects. Roles
Project Small has a small team, so each person is responsible for a variety of RUP roles. The following table provides this mapping:
General Tailoring
Artifacts and ActivitiesProject Small uses the essential artifacts of the RUP. Some exceptions are as follows. The following "essential" artifacts are considered not applicable to Project Small, and so are not implemented:
Configuration Management artifacts are not marked as "essential" in the RUP, however, Project Small considers a minimum level of Configuration Management to be essential, as shown below. Project Small also considers Status Assessment and Change Request to be essential, although these may be managed very informally, for example with a project notebook and post-it notes or with email. All documentation artifacts are provided and maintained exclusively as web pages on the Project Small web site. All templates for these artifacts have been generated as initial drafts of these web pages. The tailoring of the artifacts implies a certain level of tailoring of the process. Only those activities which contribute directly to the artifacts are considered as a mandatory part of the Project Small process. ReviewsAll artifacts are to be reviewed informally by at least one other person, usually the chief programmer, who approves the artifact before it is considered complete for a given milestone. Any defects found during review which are not corrected prior to releasing for integration must be captured as Change Requests so that they are not forgotten. Disciplines
Business ModelingNot used. RequirementsFor details see the Requirements Overview.
Analysis & DesignWorkflowFor details on the workflow, see the Analysis & Design Overview. Artifacts
ImplementationWorkflowFor details see the Implementation Overview. Artifacts
Additional Review ProceduresInformal code reviews are performed. All code must be examined line by line by one other developer, typically the Chief Programmer. Any defects found during review which are not corrected prior to releasing for integration must be captured as Change Requests so that they are not forgotten. The code will not be released for integration until the reviewer agrees that code and unit testing is of sufficient quality, and that any deferred defects have been properly captured as Change Requests. TestingWorkflowFor details on the process, see the Test: Overview. Artifacts
DeploymentWorkflowFor details on the process, see the Deployment: Overview. Artifacts
Configuration & Change ManagementWorkflowFor details on the process, see the Configuration & Change Management: Overview. For Project Small, we have a lightweight configuration management process which ensures that:
Hand-generated artifacts are stored in a filing cabinet. Softcopy artifacts are snapshot at regular intervals and backed up. Artifacts
Project ManagementWorkflowFor details, see Project Management: Overview. Artifacts
EnvironmentWorkflowFor details on the process, see the Environment: Overview. Artifacts
|
|
Rational Unified
Process
|