This page describes the Software Development Environment (SDE) of the CI Development Team. It is part of the OOI CI Project Infrastructure. The parts of the SDE are described below:
Architecture and Design
- Architecture Documentation: Applying DoD Architecture Framework (DoDAF) to structure and document the system architecture
- Design Drawings: Unified Modeling Language (UML) for domain models, class diagrams, sequence diagrams
- Visio for drawing UML diagrams
- Architecture Tool: Sparx Enterprise Architect, Ultimate Edition
- Current documentation on Confluence, aggregated into architecture documents for larger milestones (PDR, FDR)
Programming Environment
- Integrated Development Environment (IDE): Komodo, vim, netbeans, eclipse, emacs, etc.
- Programming language and tools: Python, Twisted, txAMQP
- Host operating system: MacOS X and Linux
- Virtual machine technology for development: Virtualbox, Amazon EC2
Source Code and Version Control
- Repository Structure
- Version control system: GIT
- Git user and project management: Gitosis
- See the Revision Control page for detailed information on installation and usage of GIT.
- Public repositories can be accessed at the Gitweb site hosted on amoeba.ucsd.edu.
Documentation Environment
- Source Code Documentation: Python, in-line
- Documentation Generation: Doxygen. See this page for details. Auto-generated docs are posted at ooici.net's page here
- Documentation Reporting
Unit Testing
- Unit test framework: Trial. See the tutorial here
- Automated unit test execution via Buildbot
- Test result reporting
Build Environment
Dev server and links
- http://ooici.net/ is our local dev server, and the page there has links to git, doxygen docs, DAP server, etc.
Logging
- We use the Python logging system, see this tutorial on its use and configuration.
- TBD