Case Study
GeoNetwork
|
Software Improvements was contracted by the Office of Spatial Data Management (OSDM) to assist in the implementation of enhancements to the GeoNetwork open-source software to enable discovery and access to metadata available from all the Australian Spatial Data Directory (ASDD) nodes, and to review/incorporate the ANZLIC metadata profiles. The aim of this project was to enhance GeoNetwork to provide functionality to a level suitable to replace the existing ASDD software.
GeoNetwork was new to Software Improvements. Although several of the desired Australian Spatial Data Infrastructure (ASDI) “Look and Feel” (L&F) functions appeared quite simple, it didn’t take long to realise that it was important to understand more about the software module connection detail than was initially perceived. The full impact of change could only be understood with greater knowledge of content as well as structure. Once a reasonable, early level of understanding had been gained of what parts of the code had to be changed/developed, reasonable estimates of effort could be made.
Problems faced
- There was very little low-level developer documentation for GeoNetwork
-
- There were some mostly out of date very high-level documents
- There were few comments in the code
- Reasons for updates/changes were not always evident - giving potential for an unstable code base
- Gaining knowledge from other sites was sometimes no easier
- Required mapping functionality
- For a while, the more that was read resulted in more questions being raised
- Software engineering principles
- The benefit to the ASDD effort was questioned because there was little in the way of good practices being observed
- Implied requirements, rather than specified requirements
- Design-to-be-discovered in the code
- Test strategy difficult since there were no detailed requirements
How the ASDD development was managed
- Project initiation
- The ASDI L&F Document became the basis of the work. This provided a very good start and essential overview of requirements
- Setup project environment - wiki and an internal mirror the GeoNetwork Subversion repository
- Initial analysis of code for making estimates
- Draft ASDI L&F Requirements - for comment and negotiation
- Clarification
- Ensuring mutual understanding of ASDI Requirements
- Estimation
- Setting expectations of minimum and maximum of effort for each task
- Judged using a function counting approach
- Broad range resulted from combination of uncertainties
- Scoping
- Initial learning, analysis, and development of Statement of Work
- Minimum and maximum estimate of all tasks
- Tasks prioritised as High, Medium or Low
- Progress reporting, internal and customer meetings
- Participation in the wider GeoNetwork community
- Submission of defect reports and patches
- Providing new "how to" guides for the GeoNetwork developer wiki
- Presentation at OSDM-hosted GeoNetwork workshop
April 2009
Back to Case Studies
|
|