Educational Guidance on Extensible Software Development
Abstract
Software extensibility is a software engineering principle that characterizes how easily new features can be added to the software system by requiring no or minimal rewrite of existing code base. Software that is extensible leads to reduced development time, increased stability and security, and better support of software assurance and maintenance. Although it is critically important, the Department of Defense (DoD) utilizes software development documents that provide only limited information and guidance on software extensibility. Moreover, the software development processes supported by the DoD do not fully address Model-View-Controller (MVC), a design pattern that industry experts recommend for a higher degree of software extensibility. This thesis studies the design patterns and software extensibility in the context of the DoD software development environment with the case study on mobile application design. The design guidance on software extensibility developed in this thesis will integrate well with currently utilized DoD software development documents and processes.
Document Details
- Document Type
- Technical Report
- Publication Date
- Sep 01, 2018
- Accession Number
- AD1065068
Entities
People
- Damon R. Alcorn
Organizations
- Naval Postgraduate School