Cobuild Lab's documentation for Project Management and Software Development Conventions
This is the main repositoty of documentation for the company. In here we set up all the agreements for the different processes of the Organization.
Process to follow for the Process of Project Management in Cobuild Lab.
2. Terms Definition Link
3. Roles and Responsabilities Link
Here we outline the main activities when starting a project in a non-necessary sequential order:
- CREATE THE PROJECT SLACK CHANNEL:
When a project is started the first step is to assemble the team in a slack dedicated project channel. Project Channel names start with a double hyphen “--”, followe by the short name of the project in lowercase. Example: “--awaken-flow”, “--c2g”
- CREATE THE PROJECT FOLDER:
The Project folder must be created under the main “Projects” folder managed by the organization. (Google Drive)
- SET UP GITHUB:
- Create the code repositories under the (repositories naming convention)[/conventions/repository-name.md]
- Set up the Kanban project with the Kanban Project Conventions (TODO)
-
- PROVISIONING:
Infrastructure Provisioning: Servers, 8base workspace, hosting, GitHub, slack channel, buddy works, DNS setup, etc
- Set Github Kanban with columns and labels
- Subscribe Github notifications to Slack Channel
- The full scope of the project must be shared with the Development Team to create an Execution Plan with milestones and deliverables.
- Create Milestones in Github Project Kanban
- Provide access to the team members to the Github repositiories, Project Folder and any other external assets (Invision, XD, Auth0, AWS, Buddy works, etc)
- Set Fisherman (activity Tracking for developers) for the project’s repositories tracking and standups.
- Complete all User Stories (Issues or Tickets) in the project scope on a Planning meeting.
- Set the meetings for the Planning and Daily Standups with the development team.
- Set the communication channels with the Customer.
- Kickoff meeting with the Development Team.
- Ensure that all requirements for the full development of the project are in place or scheduled to be in place.
- High level Data model
Ticket specification is responsabilitye of the Project Manager, QA and Technical Lead.
- If the Issue is estimated to be longer than 2 days, it needs to be split.
- If the Issue doesn't have the specification completed, it needs to be completed.
- If the Issue doesn't have the technical specification completed, it needs to be completed.
- If the Issue requires a UI and it doesn't have it
-
Use the Wiki to define Business processes that need to be tested.
The complete list of conventions and agreements for codebases can be found in here
- Requirement Management: (documentacion de requerimientos, alcance del requerimiento, cambio de alcance).
- Coding Conventions: https://github.com/cobuildlab/conventions
- Unit Testing, Check lists, Definition of Done
- Project Management Strategy: https://docs.google.com/document/d/1AGbBEnYg5_k0Bd-e4j-TdmNk3qu4vdAYhExS9kD6C-Q/edit (Scrum + XP + Kanban)
- Environments: https://docs.google.com/document/d/1AGbBEnYg5_k0Bd-e4j-TdmNk3qu4vdAYhExS9kD6C-Q/edit
- Release processes: Main -> QA, QA -> Stage, Stage -> Prod: https://docs.google.com/presentation/d/1hIx5LVp6RTd7bKj8ZSllu4aZX2gf_w5frNTMq2DGbG0/edit#slide=id.p
- Quality Assurence: Testing Plan, Test Cases, Issues and Issues reporting
- Miscelaneos
- Test Automation
- Coonstant Education and Training
- TMMI
- Template for User Stories
- Template for CLIENT FEEDBACK (Issue tracking)
- Release process por environments
- Roles and responsabilities for Project Management and coordination: https://docs.google.com/document/d/1AGbBEnYg5_k0Bd-e4j-TdmNk3qu4vdAYhExS9kD6C-Q/edit
- Name releases (versioning): https://semver.org/
- Emails content for releases to clients
- Form to incoming request for features / issues / bugs / enhancements / etc
- TODO list for Env Release
- TEMPLATE: Follow up emails
- Client Feedback Spreadsheet: