Skip to content

Development Coordination Process

meghasandesh edited this page Apr 20, 2015 · 17 revisions

This is a proposed workflow for fixing issues and adding features to SEED.

  1. Collaborators of SEED use Github Issue Tracker to report the bug or request a new feature. Include as much detail as possible and screencaps, if it helps.

  2. QA Lead assigns issues to Developers.

  3. Assigned developers make a branch off of the "develop" from the main code base or fork the SEED code to a new repository.
    Difference between branches and forks

  4. Make a branch in individual dev environment with a descriptive name.

  5. Change code and push changes to branch.

  6. Test on individual development environment.

  7. For large or long-running changes, periodically merge master down to branch and re-test available unit tests.

  8. Developers, with finished bug fixes or new features, issue pull request to SEED repository against the master branch.

  9. Repository manager merges the developer branches into "develop" branch and pushes the code into the testing environment.

  10. QA Lead and additional internal SEED developers start review process to accept the branch into the main code.

  11. Develop acceptance tests.

  12. Unit tests (included in code) if possible (some issues will be easier to do than others).

  13. UI testing

    • Manual testing, walk through the GUI
    • Selenium (screen capture feature) - Firefox only -
    • Jasmine
  14. Visual code review

    • Minimum of one person, can bring in another person if needed
  15. Make sure changes are well documented.

  16. Comments on pull request.

  17. QA Lead tags the pull-request with "Ready for Production" tag.

  18. Repository manager accepts pull-request. The fix/feature is merged into "master" branch in seed repository.

  19. SEED server owner pushes the updated "master" branch to the production environment.

  20. Repository manager closes the pull-request.

  21. QA Lead and additional internal SEED developers test the updated code in the production server.

  22. QA Lead closes the issue thread.


Pull-requests are confirmed by the repository owner and should be tested first in the developer version of SEED before being merged with the official public version.
https://guides.github.com/activities/forking/#making-a-pull-request