Modular Design and Development for Federal Technology Products
What It Is
Modular design is a practice that encourages breaking up large systems into collections of smaller ones, which can be reused or altered, without impacting the functions of the other components. This approach is commonly used in software engineering. However, the approach should also be extended to include the contracting and development of digital technologies and applications.
Why It's Important
Specifically, systems should be built in such a way that removing or upgrading one portion should not necessitate the upgrading or modification of another. For example, making a change to an enterprise accounting system should not require modification of a project management tool, even if they are connected. This can be done by using standard protocols between systems. This also allows for parallel development with different teams handling different components. In the long run, modular design will save money and prevent legacy systems from locking in an agency and preventing it from moving to newer technology.
How to Implement
- Get management buy-in first. Leadership support is vital for this approach. Many times leaders simply want the task done without concern of future upgrades or changes in technology. It may take some education of the leadership that a quick fix now will involve considerable expense later. Given concern over future budgets, an ounce of prevention is worth a pound of cure with this design feature.
- Contract and project management challenges will require extra dilligence. Contract management can make this very difficult. Vendor A will not want to be responsible for making their products work with an unfinished product being created by Vendor B. This can be resolved by providing milestones and an effective change control plan. Then if Vendor B doesn't deliver, Vendor A can extend the time of their deliverable. This requires active oversight. It also requires issuing multiple contracts. This is difficult but the rewards will be the ability to have up-to-date technology without huge costs.
Content Lead:
Mike Kruger
Page Reviewed/Updated: November 30, 2012