Lesson

Structure software development ITS projects as a series of phased, smaller tasks with specific, incremental deliverables and associated acceptance testing.

A Washington State Department of Transportation implementation of a regional ATMS.


12/1/2002
Seattle,Washington,United States


Background (Show)

Lesson Learned

Software development projects structured as a series of phased, smaller tasks offer opportunities to enhance system quality. Another lesson learned from this project noted the difficulties that resulted from a lack of comprehensive testing procedures. Results from the project evaluation suggested that a phased approach to software deliverables, with accompanying testing, would offer the opportunity to incrementally test functionality, adjust subsequent deliverables as necessary, and encourage user participation and reviews.

The following observations emerged during the evaluation process:
  • Structure software development projects as a series of phased, smaller tasks. A phased series of tasks, combined with acceptance tests, improves project management by identifying problems earlier in the process. Each phase must be successfully completed as a prerequisite for continuing to the next project phase. Each test also becomes a decision point that forces project managers to periodically review the logic of continuing the project and facilitates mid-course adjustments to accommodate unexpected problems, new technologies, or a changing political climate and requirement set. A phased, task-based approach helps all parties to sustain their focus on the products, thereby keeping day-to-day interest and attention levels high, and helps to simplify project management by breaking a large complex project into more manageable, testable parts.
  • Define phases in a way that encourages user testing of modules at each stage of the delivery process. In the NSATMS project, the collection of installed modules at intermediate points in the development process did not provide a sufficiently useful suite of functions to entice prospective users to work with the system on a regular basis. As a result of this lack of useful user capabilities, the system was largely unused (and therefore untested) by a broad user base. In addition, the resulting lack of active “exercising” of the software components by a user group also meant that whenever even small changes in system configuration (e.g., new sensor types) were made, any conflicts with existing modules that might have been triggered by those changes were not detected. (The contractor contended that at least some of these issues could have been addressed if the client had purchased and installed a new software configuration management system, as the contractor had recommended.)
  • Develop some level of operational functionality early in the project, and deliver usable, visible products periodically. The availability of even a subset of the envisioned system functionality can help establish and maintain participants’ interest in the project, particularly the prospective user group. User feedback at an early stage can also provide developers with valuable insights that can be factored into product design during its formative stages, when changes are less disruptive. Concrete progress (and active feedback) helps maintain project interest and sustains project developer focus. The distribution of product deliveries throughout the task schedule maintains interest and focus in the project, while also providing useful “go”/ “no go” decision points.

In the case of the NSATMS, a phased software delivery approach and a testing cycle would have offered opportunities to address the lack of functionality testing that became a point of contention during the project, and they would have encouraged continuing participation by project partners.


Lesson Comments

No comments posted to date

Comment on this Lesson

To comment on this lesson, fill in the information below and click on submit. An asterisk (*) indicates a required field. Your name and email address, if provided, will not be posted, but are to contact you, if needed to clarify your comments.



Source

North Seattle Advanced Traffic Management System (NSATMS) Project Evaluation

Author: John M. Ishimaru and Mark E. Hallenbeck

Published By: Washington State Transportation Center (TRAC)

Source Date: 12/1/2002

EDL Number: 13818

URL: http://ntl.bts.gov/lib//jpodocs/repts_te//13818.html

Other Lessons From this Source

Lesson Contacts

Lesson Contact(s):

John M. Ishimaru
Washington State Transportation Center (TRAC)
206-543-3335
jmi@u.washington.edu


Agency Contact(s):

John M. Ishimaru
Washington State Transportation Center (TRAC)
206-543-3335
jmi@u.washington.edu

Lesson Analyst:

Firoz Kabir
Noblis
202-863-2987
firoz.kabir@noblis.org


Rating

Average User Rating

0 ( ratings)

Rate this Lesson

(click stars to rate)


Lesson ID: 2005-00112