--- title: Project workflow handbook tags: handbook,project,workflow,WIP --- Project workflow for developers === Development Methodology: **Agile** # 1. Housekeeping <a name="housekeeping"></a> In a project ensure the following positions are settled 1. Project Manager 1. Quality Assurance member 1. Lead Developer 1. Member developer 1. Designer The following are the duties of the position. 1. Project Manager - Communicates with the client 2. Quality Assurance member - Ensure the deliverable is ready to be delivered for client satisfaction 3. Lead Developer - Ensure quality code base of project - Develop the functional requirements of the project 4. Member developer - Develop the functional/non-functional requirements of the project 5. Designer - Design the User Interfaces of each pages # 2. Development flow <a name="development-flow"></a> **Git flow** is observed in development {%hackmd thRxXoyFRVOkg6jCf8wzVw %} Generally the flow of the development progresses as follow: 1. Assignment of task 2. Create Appropriate branch for the task 3. Develop task 4. Test developed task locally 5. Create Pull request for the task 6. Lead will then review the code implementation for the task 7. Apply developed task to staging server 8. QA team will test the developed task 9. Client will be informed and test the developed task 10. Task is tagged as done ### Feature {%hackmd I0blJOzgQlaSJBZCXJtIYg %} ### Bug-fix {%hackmd BzZzmIt_QdCi81aeHWViOA %} ### Hotfix <a name="production-issue"></a> Hotfix are issues and bugs occuring on production environment. {%hackmd /CW6IQrtgReSumeMwMmOyZg %} # Release Release to production shall be done via Pull request from develop to master (release process may differ on project circumstances) Release is falls into 2 periods: - Pre-release period - Maintenance period ### Pre-release period This is before the project is release to production environment. Pre-release period follows the release timeline of the project. In this period, before a release is done the following checklist is provided: ### Maintenance period This is after the project has been released to production environment The release on maintenance period may follow a release cycle upon client's agreement this could be either weekly,semi-monthly, monthly and quarterly or no release cycle at all. - If release cycle is implemented, then release shall be done on release cycle schedule. - If no release cycle is implemented, then release shall be done immediately on client's permission, provided it adheres to the release rules ## Rules - No Release shall be done on Friday and Weekends. - No Release shall be done after working hours. - Release shall be done by Lead/DevOps either manually or through CI/CD ## Checklist for every release {%hackmd n7SD-6gnT8md7_S6iV6wRA %} --- Other Read [close] --- - [ Project Quality Handbook ](/09NUoa6JTPqP9Jsin8zxBw) - [ Coding Documentation ](/gqDUn0q5TLm8Yvd2WO1XGg) - [ Git handbook ](/o6_pCakfTiyG58mh9S5SRw)