EOSSAC was a coordinated project founded by Spanish government (TIN2013-44641-P) that was conducted from January 2014 to December 2016.
Keywords: Software Services, Apps, Open Source Software, Software For Citizens, Software Ecosystems, Advanced Life Cycles, Software Quality, Empirical Software Engineering
Introduction
The potential and capabilities of modern ICT infrastructure is provoking that the number, diversity and complexity of software services and apps offered to the individual citizen is exponentially growing. These services and apps have differentiating characteristics with respect to other types of software that make them especially challenging to engineer: they are very volatile, need to adapt to very different profiles of user, need to interoperate, etc. To cope with this scenario, collaborative approaches to software engineering are required, and open source software development stands out as one of such approaches. This project explores the adoption of an open source perspective into the engineering of software services and applications for the citizen. Objective The goal of the EOSSAC project is to propose models, methods, processes, techniques and tools in the Software Engineering discipline to enable the engineering of high-quality open source software services and apps for the citizen (OSSSA) in a highly collaborative environment, boosting performance and managing risks.Means
To attain this objective, EOSSAC will rely upon the following means:- Elicitation and definition of the processes that characterise OSSSA ecosystems, which include communities, providers, consumers and brokers. Adequate notations for the modeling of these ecosystems will be provided, with special attention to the link between the technical and strategical levels.
- Engineering and processing of measurements to assess the evolution of OSSSA ecosystems. A monitoring platform will be deployed able to compute the value of these indicators from community repositories. A risk management framework will be set up to discover risks and propose mitigation actions.
- Engineering of processes for ruling the life cycle of OSSSA, which needs to reconcile classical OSS development with the more innovative service and apps development and usage. Discovery, composition, upgrade, personalization and retirement of OSSSA need to be properly dealt in this life cycle.
- Definition of quality frameworks for OSSSA. Quality attributes will be defined in order to allow creating catalogues of OSSA facilitating their discovery for use and combination to create more complex ones. Functional, non-functional and non-technical attributes will be identified and properly managed.
- Engineering and processing of measurements for assessing the quality of OSSSA. Quality attributes will be operationalized into measurements to be collected at runtime through a monitoring platform. We foresee the need to integrate sensors and other physical devices in the measurement process for the case when OSSSA will be integrated into cyber-technical systems.