Our approach
The key principle of our development approach is the orientation of a client’s business goals because of the rapid market transformation. That is why we are adherents of open code as a tool for the modernization of digital society. And for that reason, we focus not on the package but on creating important product functions.
We use Agile
We love Agile! It allows us for maximum flexibility while our clients can regularly track our progress. We bring maximum transparency to our client relationships and gather regular feedback to make sure that we move in the right direction. Our main objective is to deliver a product that our clients are happy with at the end. This way, we reduce time-to-market and development costs.
We use Waterfall
For more small-scale projects, we prefer Waterfall. Applying this model gives us the advantage of ensuring thorough planning and throughout all development stages, from requirements analysis and design to deployment and maintenance. The waterfall model could easily provide a structural approach as it contains easily understandable and explainable phases. Our managers would be happy to help you to choose the best-fit approach for your project.
Open Source
"Why open-source?" one might ask. Well, that's purely for our clients' benefits. With our open-source solutions, we never lock you in with our "in-house" developed web solutions. You own everything we produce for you and can easily access the source code at any time. Using open-source is a much more cost-effective approach that helps to solve enterprise problems while effectively sharing some of the maintenance costs.
Understanding
How and Why
We stick to the idea that good and effective communication is an essential tool in achieving common goals in any relationship. Being on the same page reduces the possibility of misunderstanding and misallocation of time and budget. On each stage, we pay attention to the analysis of the client's needs and goals. Deep integration in customer’s business guarantees full usage of all experience and knowledge to create solutions and implement the required course of action.
Our Development Process
1. Planning & Consulting
Understanding Customer’s Needs
Complete understanding at first stages helps to avoid extra issues in the future. That's why our primary goal is to get all requirements, business needs, strategy, and expectations of the Client to produce a result-oriented product.
Creating a Project Roadmap
We compose a project roadmap to keep the Client and development team informed about milestones, timeframes, deadlines, and events.
Prioritizing Project Features
For getting a better understanding of the project, we determine its structure and prioritize the essential features. Deep collaboration with the client helps to make the structure suitable for both sides.
Putting up a Team
Choosing the right team members is a highly important step in project planning. Based on our experience we choose the most fitting team players for each project.
2. Prototyping & Design
Defining "Use Cases"
Understanding different ways of users' interacting with the product help to make a proper analysis and find an agreement about system requirements. Therefore, we create detailed descriptions of all possible “use cases”.
Thinking over the Architecture
We involve our best architects in this process to get the full idea of the future project. Deep collaboration and communication at this stage is the key to success.
Designing Mockups
We design UI mockups to simulate expected user behavior and eventually deliver relevant user experience through a smart, user-friendly interface.
Updating the Roadmap
Prototyping allows us to re-evaluate the fundamental features of the project, realize the product's strengths and weaknesses. As a result, product strategy may be altered a bit.
3. Development & Testing
Product Backlog
We compose a product backlog that is a list of features with given priorities. Using backlog we create a list of tasks in the task management system. Since that, we are ready for the first sprint planning.
Running the Sprints
Detailed sprints planning is an integral part of our work. Daily meetings during each sprint help us to keep track of the progress, identify possible difficulties at the early stages.
Continuous Architecture and Code Review
A permanent code review helps us to avoid plenty of bugs and improve code readability. It's a significant thing for long-term successful projects we usually work on.
Retrospective and Demo
Throughout the whole process, we hold demos and make an analysis of our work after each sprint. It provides us with an opportunity to highlight success and ponder upon failures.
4. Continuous Delivery
Staging
Adhering to this approach, we give the opportunity to our clients to see the progress and the results of each sprint on our Staging environment.
Versioning
Usage of the version control system allows us to involve several developers in the project at the same time. It also enables us to revert to the previous state of features at any time.
Continuous Deployments
All changes are constantly deployed on development and staging environments. As a result, we are able to carry the full development cycle including review, testing, and approval stages.
Early Feedback
Early feedback is a robust tool for achieving better results and boosting productivity. A full connection from the very beginning saves time and budget for both sides.
5. Evolving & Support
Support
High-quality support guarantees the smooth work of the website and an opportunity to prevent the issue. Our support team is open to proposing the best-fit support model for each project.
Training
Our development team provides our clients with full video and text instructions which explain peculiar properties of using all features of their product.
Continuous Evolving
After finishing the active stage of the project we continue our collaboration and provide our clients with consulting. We are always happy to give recommendations about new opportunities and novelty for the product.
Updating
Timely updating of the website makes it more productive and secure. From the point of view of internet marketing and increasing traffic, timeous updates are an integral part of the process.