@startuml '!theme mono 'order |System\nTeam| |Jira| |Review\nMeeting| |Scripts| |Scrum master| |SW/FW Team\nDeveloper| |VV Team| |Bamboo| |System\nTeam| start |System\nTeam| :Update PRS/SSRS Requirements; :Update Sys Architecture; :Update Sys Hazard Analysis; :Update Sys Verification Test Cases; |System\nTeam| :Creates Epic; |Jira| :Creates System Storis; |Review\nMeeting| :Define the - Scope of Epic - titles of stories; |Scripts| :Creates - SW Stories - FW Stories - VV Stories; |Scrum master| :Creates Sprint; |Review\nMeeting| :Assigning **STORIES** to active **SPRINT**; |SW/FW Team\nDeveloper| :01: SRS (Software Requirement Specifications); |VV Team| :Update Test Protocols; repeat |SW/FW Team\nDeveloper| :SDD; |Review\nMeeting| :SDR (SDD Review); |SW/FW Team\nDeveloper| repeatwhile (Design approved?) is (No) not (Yes) |SW/FW Team\nDeveloper| :Creates **Feature Branch** by **Jira Story** with **story title** as **Feature Branch Name** from **staging** ---------- BRANCH NAME: -; |Jira| :Creates **Feature Branch** in Bitbucket; :Creates **Code Review** in Crucible; |SW/FW Team\nDeveloper| '(A) :Checks out on **Feature Branch**; repeat repeat repeat repeat repeat label lbl_implement :**Implementation subtasks** - 04: DEV - Feature Implementation - 05: DEV - Diagnostic - if needed - 06: DEV - Modularize - if needed - 07: DEV - Dialin Implementation - 08: DVT - Simulator Implementation - 09: SDD - Functionality; :Commit on **Feature Branch** with **sub-task title** as **commit titile** and adding **description** of work; :push **Feature Branch**; repeatwhile (ready for test) is (no) not (yes) |SW/FW Team\nDeveloper| :push **develop**; |Bamboo| :Generates SDD - doxygen pdf; :Creates **develop** Package; :Updates 01 - (Ops) Epic SW package **develop** Subtask; |SW/FW Team\nDeveloper| :Dev test; repeatwhile (Feature is complete) is (no) not (yes) |Review\nMeeting| :11: SCR - Code Review; |SW/FW Team\nDeveloper| repeatwhile (**unresolved comment**?) is (Yes) not (No) |SW/FW Team\nDeveloper| :push **staging**; |Bamboo| :Generates SDD - doxygen pdf; :Creates **staging** Package; :Updates 02 - (Ops) Epic SW package **staging** Subtask; |SW/FW Team\nDeveloper| fork :Code Quality Report & Automation - 13: SUT - Software Unit Tests - QtTest - 14: SIT - Software Integration Tests - SquishQt - 15: COC - Code Coverage - SquishCoco - 16: CQR - Code Quality Report - SUIT+SIT+COC This is only the automation of the 08: DVT - Simulator Implementation. Should never fail and shall be caught earlier.; |SW/FW Team\nDeveloper| fork again |VV Team| :Run Test Protocols; if (Test Failed?) then (Yes) label spacer label spacer :Create **BUG** ticket; label spacer |Jira| fork |Jira| :**Bug** ticket; fork again |Review\nMeeting| :Prioritize **Bug**s; |Jira| endfork else (No) |VV Team| label spacer end end if |SW/FW Team\nDeveloper| endfork repeatwhile (No Critical BUG?) is (Yes) not (No) repeatwhile (All tests passed and Coverage % completed?) is (No) not (Yes) |SW/FW Team\nDeveloper| :**master/release** push; |Bamboo| :Generates SDD - doxygen pdf; :Creates **master/release** Package; :Updates 03 - (Ops) Epic SW package **master/release** Subtask; |VV Team| :Run Test Protocols; if (test failed?) then (Yes) :Create **LeaBug** ticket; |Jira| fork |Jira| :**LeaBug** ticket; |Review\nMeeting| fork again :Prioritize **LeaBug**s; |Jira| endfork else (No) endif |System\nTeam| :Dry Run System Verification Tests; |System\nTeam| stop @enduml