Monterey Bay Aquarium Research Institute
Shore Side Data System
Development: Methodology

The development team evaluates and adopts the methods best suited to MBARI and SSDS requirements. We exchange ideas often with developers at MBARI and elsewhere.

Key development approach components:

  • Select a high-end collaborative development environment
    • Integrated Development Environment: Together/ControlCenter and Eclipse
    • Configuration control: Concurrent Versioning System (Unix CVS server, SmartCVS client)
    • Build control: Ant
    • XML support: XMLSpy and Oxygen
  • Use an iterative development process
    • Interim milestones:
      • Deliverables every 4-6 months
      • Prototypes released more often, if available
      • User reviews of "user story" status every 2 weeks, when possible
    • General philosophy of "just do it" (to avoid getting stuck in design phase)
    • An occasional "extreme programming" week with all participants involved
    • A complete testbed system, which can be intentionally "broken" at any time to test development progress
    • All code checked in to main branch should compile and not break the system
  • Use a variety of feedback mechanisms
    • Yearly proposal process
    • Internal MBARI reviews
    • Direct user feedback on products (some products require extensive iteration with users)
    • User surveys

Our team is interested in identifying synergistic activities, which could either benefit from using SSDS or benefit other users of the system or both.

Last updated: Feb. 06, 2009