In this master thesis we have investigated how to develop a web application by using free and open source tools, and how to design for flexibility in regards to software change and platform-independency. By incorporating free and open source tools, the requirement of a flexible design is higher than that of a traditional “in house” development. The nature of free and open source products is a constantly evolutionary process of change in software code. For an application to use these products, and be able to evolve, it cannot rely on a free and open source product to support the future requirements of the application. A need for substituting the product in the future is likely, and therefore, the design must make the application able to adapt to the changes.
The background for our investigation is the Health System Information Program (HISP), and their health information system - District Health Information System (DHIS). The development of DHIS started a decade ago, and has now reached a phase in the maintenance process that requires a complete reimplementation of the system to support new requirements, both functional and non-functional. During the development of a smaller web application - Joly - we investigated how to design and develop a web application by using free and open source products and tools to support the non-functional requirements of a new version of DHIS, and designing it to easily adapt to changes.
The two main theoretical topics considered in this thesis are:1. Evaluation of free and open source solutions.2. Design for change to ease maintenance process.