Software Development Process and Infrastructure
Status Report: October 2011 - April 2012
Ethan Davis, et. al
Strategic Focus Areas
Software Development Process and Infrastructure supports the following Unidata funding proposal focus areas:
- Broadening participation and expanding community services
- Advancing data services
- Developing and deploying useful tools
- Enhancing user support services
- Providing leadership in cyberinfrastructure
Activities Since the Last Status Report
Infrastructure
- Git/GitHub: Source code repositories for a number of software products have moved to publicly visible GitHub repositories: CDM/TDS, IDV, and LDM, VisAD (experimental branch).
- Maven: Build and dependency management of a number of projects have switched to Maven: CDM/TDS, VisAD (experimental branch), and IDV (branch).
- Jenkins-CI: Support for automatic builds and tests (continuous integration) for a number of projects has moved to Jenkins: CDM/TDS, netCDF-C (planned)
- JIRA/Redmine: Issue tracking is done using JIRA (netCDF-C and CDM/TDS) and Redmine (IDV).
- Build Platforms: Several build platforms have been decommissioned: IRIX, OSF, HP-UX. Looking for an AIX replacement system.
Note: A number of contributions from outside developers have been received, facilitated by the use of git, github, and maven.
Process
- Experimenting with various practices from Agile methodologies (e.g., Scrum, Kanban, XP).
- High-level, cross-project discussion and planning has resulted in a list of possible cross-project efforts.
Planned Activities
- Continue experimenting with various practices from Agile methodologies.
- Develop understanding of Git Best Practices and document for Unidata community.
- Look at moving more Java software projects under Maven to simplify cross-project builds (e.g., IDV dependency on CDM).