Design
- Documents
- Requirements
- UML
Implementation
Java
...
...
Other languages
Testing
- Target
- Unit tests
Documentation
- Comments
- JavaDoc
- Other
- Help
...
Release
- Plugin
- Feature
- Product
...
Implementation
Java Coding Standards
http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html
Additional standards:
- Package names start with edu.stanford.slac.
...
Java Exception Handling
- You should never throw/catch a generic exception (an instance of Exception, Throwable, or Error).
- Exceptions resulting from AIDA/EPICS data errors should be logged via Err.
...
Java G11N Practices
- All meaningful strings should be externalized.
...
Eclipse UI Best Practices
http://wiki.eclipse.org/index.php/UI_Best_Practices_v3.x
...
Documentation
JavaDoc Guidelines
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
Additional guidelines:
- All fields and methods (incl. those that are private) should have JavaDoc comments.
- You should generate links to external JavaDoc (see here).
...
Testing
Testing Against Target
All software must be tested against SEAL target.
...
Release
How To Release A New Plugin
- Reset target to DEFAULT.
- Check out all SEAL/CSS plugin projects from CVS.
- Build product using "seal.applications" (note: the order of the features matters!)
- Test your product.
- Copy the product to /afs/slac/g/lcls/physics/seal.new/product and update the "current" link.
Building
Deploying new plugin
Steps for deploying new plugin
- Increment the version of your plugin.
- Check out all features from CVS into your Workspace.
- Delete features from the target directory. (but NOT the plugins!) Note: This is a very wrong step that seems to originate from an Eclipse bug in how features are built against a target.
- Increment the version of each updated feature.
- Remove plugins/features from the update site.
- Export RELEASE feature to SEAL update site (Export... => Plug-in Development => Deployable features)
- Check out the "update.seal" project from CVS.
- Update the names and versions of the features in site.xml.
- Export site.xml to SEAL update site. (Export => General => File System)
- Start SEAL in "admin"- mode.
- Update SEAL.
- Build JavaDoc. (optional)
- Commit all changes to CVS.Remove all old plugins from the installation site
- Reload your Plug-in Development target.
- Remove all unnecessary projects from your workspace.Reload your Plug-in Development target.
...