Project lifecycle in KeyToTech
In KeyToTech we have a defined, well-formed project development methodology to cover all aspects of building a product from scratch.
From the start of project development in KeyToTech we are defining four main phases to work on during project development life-cycle:
- Thinking and planning: First of all we are trying to understand what problems the product is solving.
- Building. At this stage, the software architect is building the proof of concept. This is basically the minimum viable product (MVP). The idea is to provide just enough features to satisfy customers on early stages and to provide feedback for future product. The architect builds this concept according to technical task in a limited time frame. The resulting product contains issues and bugs and is open to future fixes and improvements.
- Extending. Most of the work is done here. This phase contains the process of finding, reporting and fixing issues and bugs on the product. It requires all team members to be involved. Given this, this phase takes the most time and requires the most investment in the project.
- Releasing and using. The product is being launched and now it’s time to collect user’s feedback. After sorting out negative feedback we are fixing all the issues and updating the product by releasing the next versions.
Thinking and planning. This phase of product development requires a lot of communication with the product owner. We are trying to understand the product, what problems it is solving. Also, we are choosing the best technology stack. This phase is the most important for the project as it defines the main route map.
Building. At this stage, we are creating a project repository with a project board assigned to it. A software architect is building a skeleton of the product. This phase lasts for a couple of days. In most of the projects, it is done in a week. The responsibility of a project architect is to create the project from scratch, build the base architecture, setup continues integration platform etc.
By the end of this phase, the project is on the stage of a working skeleton, available for testers through a delivery system.
Extending phase is the longest phase of the project. Now we are forming a team of developers for the project. We are gathering all inconsistency and lack of functionality on the project into issues tracking platform. This data we are treating as bugs. Bugs are welcomed in our projects in this phase. The more bugs we will find here – the less of them will get to the final users of the product after release. For each of them, the project manager is opening a ticket and assigns them to our team of developers. All tickets are being separated into sprints by their priority and being checked by our high-quality control.
Releasing and using. At this stage, the product is being released into the market and we are collecting all possible feedbacks from customers. By tracing all the feedback we are gathering reports of bugs, issues, and requests for new features from the product owner. At this stage, we are getting few negative feedbacks because of the earlier fixing phase. So our updates here are mostly minor.