HLA Software Development Cycle

1.     Gather Requirements and Use Cases

Include interviews with physicists, operators, engineers, project leads, and any other stakeholders for use cases

2.     Write Requirements document.

Requirements Template: https://slacspace.slac.stanford.edu/sites/LCLS%20Document%20Storage/01%20-%20LCLS%20Systems/electronbeamsys/controls/Shared%20Documents/Applications/Requirements%20Specification%20Template.doc

3.     Review Requirements with users

-          Email requirements doc to distribution prior to review meeting

-          Prepare power point for review meeting

-          Take minutes and notes during review and publish

-          Update requirements doc after review, republish and distributet

4.     Gui Mockup Review with HLA developers

Include Mike, the GUI consistency guy

Gui standards: https://slacspace.slac.stanford.edu/sites/LCLS%20Document%20Storage/01%20-%20LCLS%20Systems/electronbeamsys/controls/Shared%20Documents/Applications/GUIStandards.doc

For Java apps, use our standard GUI framework unless you get authority to do otherwise

Gui Framework: https://slacspace.slac.stanford.edu/sites/LCLS%20Document%20Storage/01%20-%20LCLS%20Systems/electronbeamsys/controls/Shared%20Documents/Applications/GUI/GUIFrameworkRequirements.doc

5.     Gui Mockup Review with users 

Note: 3 and 5 can be the same review

6.     Prototype the code  (usually no longer than 2-4 weeks)

7.     Write Software Conceptual Design

Conceptual and Design Template: https://slacspace.slac.stanford.edu/sites/LCLS%20Document%20Storage/01%20-%20LCLS%20Systems/electronbeamsys/controls/Shared%20Documents/Applications/SoftwareCandDDesignTemplate.doc

8.     Review Design with developers

Ensure Model/View/Control Architecture.

Ensure desired functionality has public API such that Matlab, java packages, and other scripts, etc, can call desired functions.

9.     Write Software

10.                        Write Test Plan

11.                        Unit Test / Test and Integrate

12.                        Code Review

13.                        Comissioning

Release procedures: /usr/local/lcls/physics/README


14.                        Training and Help

Plan is to place html on operations wiki


Notes:

Documentation

Post all documents on Sharepoint under Controls | Applications folder

https://slacspace.slac.stanford.edu/sites/LCLS%20Document%20Storage/01%20-%20LCLS%20Systems/electronbeamsys/controls/default.aspx?RootFolder=%2fsites%2fLCLS%20Document%20Storage%2f01%20%2d%20LCLS%20Systems%2felectronbeamsys%2fcontrols%2fShared%20Documents%2fApplications&FolderCTID=&View=%7b0A3720EF%2dDBE1%2d401C%2dBC2B%2dD592988DBC46%7d

Confluence wiki home for Accelerator Software - Meeting minutes and more interactive documentation:

http://confluence.slac.stanford.edu/display/ACCSOFT/Home

  

  • No labels