Gorman J., Bellenguer Querol L., Hanke S., Furfani F., Maglaveras N., Tazari S., Benc I., Peres Y., Schmidt A., Petkovic M., Valles J., Wanscher C. E., Hackbarth K., Obermeisser R., Lázaro-Ramos J. P., Boos H., Vera C.
Ambient Assisted Living Context-aware application Smart Environment Distributed Computing Computer-communication networks
This deliverable deals with the integration of components from other projects (or newly created) and their testing, for which a set of tools and development guidelines are studied and selected. These tools and procedures set up a development process that each piece of software must follow to be integrated into universAAL, ranging from the very inception of the process, selection of existing components, code development, testing and deployment. This document first starts with the common decisions a software project must make at its beginning, like deciding the code language and running framework. For universAAL, Java and OSGi have been selected due to their usage in most of the input projects. In international projects like universAAL, with so many different partners, it is necessary to use tools that help in synchronizing the work of developers when coding, building and documenting the software. In this aspect, we will use Maven for building, GForge for development management, Subversion for code sharing, and scripted HTML and Wiki documentations. A set of requirements should be addressed throughout the whole process in order to not only properly manage the project but also make it a successful open source one. The IPR management section gives recommendations and advice about how to decide for a license for the software developed at universAAL, despite it is not its purpose to decide which one must be use. It also advices on how to behave when using third-party software, as this may have different licenses, and defines a procedure and registry to deal with this issue. Lastly, it gives guidelines to follow when writing code in regard to the license applied. Development Environment section specifies how to properly use Eclipse IDE, by installing some plugins that help developers maintain an integrated interaction with the rest of tools and guidelines, namely Subclipse, ADJT, M2Eclipse and Pax runner. Other tools and advices are commented related to style and code documentation. Project Management and Issue Tracker is a section that introduces GForge as main managing tool for the development of code. It covers a wide range of features of project management, from version control to documentation and, one of the most important, includes an issue tracker to keep trace of the appearing bugs and issues and manage them as they are solved. The Integration Strategy defines the process through which an external software component is adopted into universAAL reference implementation, by passing different approval stages, adaptation and evaluation. In the case of a new development, it describes the path it would follow in an analogous way. Responsibilities are adjudicated for each of the major releases in universAAL, by describing how to lead the release plan. Integration Strategy also contains the risks of its process identified so far along with possible mitigation strategies. The Testing and Deployment Strategy describes the tools and techniques used for automated code testing that developers should follow (JUnit, for instance, among others), along with the tools selected for deployment (Nexus)
Source: Project report, UniversAAL, Deliverable D2.3-A, 2010
@techreport{oai:it.cnr:prodotti:161274, title = {universAAL - universAAL integration and testing strategy and issue tracker}, author = {Gorman J. and Bellenguer Querol L. and Hanke S. and Furfani F. and Maglaveras N. and Tazari S. and Benc I. and Peres Y. and Schmidt A. and Petkovic M. and Valles J. and Wanscher C. E. and Hackbarth K. and Obermeisser R. and Lázaro-Ramos J. P. and Boos H. and Vera C.}, institution = {Project report, UniversAAL, Deliverable D2.3-A, 2010}, year = {2010} }