PM-Dev-QA Interaction Process
Languages: |
English | Translate this article... |
Contents |
PM should do:
- Write Functional Spec (FS) as a Draft.
- Get FS Draft to be reviewed by:
- The Customer (for example, HIS) in case of collaborative development
- The GPS team as a representative of the Customer for us
- Dev/QA in any case, and moreover in case of Internal projects
- UX* in case the feature involves an important GUI change
- Write FS Final taking into account all parties feedback
- Get FS Final signed-off by both Customer (if applicable) and/or GPS/Dev/QA/UX* teams
- Write user document and help on translation
Points to be noted:
- FS Signed-off means that the initial required information (basis) from the point of view of Customer/GPS to fulfill their needs and Dev/QA/UX* teams to start working on project is in there, so that everyone is on the same page and understand each other. Later on during development cycle FS can be changed (if required) under PM approval
- FS sign-off means that Customer/GPS, Dev/QA/UX* must edit FS wiki page and fill in "sign-off" cell with OK and a date.
Dev Team should do:
- Review FS Draft
- Sign-off FS Final
- Write Technical Specification Draft
- Prototype the feature to be implemented. In case of GUI-heavy features, UX needs to be consulted to design mockups of screens and flows before actual prototyping (code) starts.
- Present a prototype and Technical Specification Draft to the Product Owner, Customer (if applicable), GPS, UX* and internal development committee: OB Functional and Technical experts (EAR, GDA, PSA, those of them who can attend) and Management.
- Coding / Feature implementation
- Inform QA when they estimate code is going to be ready for testing
- Development feature testing in a wide set of environments: main-ora, main-pg, qsqss. For modules it also includes installation tests in these different environments from Stage
- Deliver feature (published in Stage for Modules, branch access for big core changes) to QA for testing
- Fix the bugs reported by QA
- After fixing the bugs Dev team has to execute all the test cases written by QA.
- If the project has lots of test cases (more than 10) then developers only test the critical or important ones. QA will guide Dev Team here.
- Dev team to send a confirmation to QA that all the tests passed before delivering feature back to QA for re-test
- After fixing the bugs Dev team has to execute all the test cases written by QA.
- Final feature presentation to the Product Owner, Customer (if applicable), GPS, UX* and internal development committee: OB Functional and Technical experts (EAR, GDA, PSA, those of them who can attend) and Management.
- Feature release/delivery (CR publication, PI merge)
Points to be noted:
- Prototyping is very important to get early feedback. It could be done just with windows / business processes mock-ups. Recommendation is to use 20/80 rule of the project efforts and length for the first prototype version. For big projects it makes sense to have several prototypes demos during the project progress. For initial idea generation and wireframing, always consult UX for features with a heavy GUI component. For tips & tricks on sketching, modeling and wireframing, do also consult UX.
- Internal development committee aims to get Functional and Technical feedback from most senior people in OB which we should value a lot.
- QA should maintain the result of the execution, number of test cases failed during the execution.
QA Team should do:
- Read the functional specs.
- Sign-off the FS
- Design the test cases and setup environment required (Oracle and Postgre)
- Once code is ready, execute the test cases just once and log all the issues
- Once Dev team confirms to QA that the issues are fixed and tested QA does the final round:
- Second round of execution of the test plan
- Closing resolved issues
- Green lights for Release