The basis of Blackthorn Vision values is the desire of customer. This means that we have a flexible approach, depending on the requirements and wishes.
How We Work
Most of the implemented projects are based on Agile methodologies, like Scrum and Kanban, others use more traditional iterative processes like UP (Unified Process). Agile approaches interest us the most of all, because we do prefer to work with dedicated team business model and all management on our side. These approaches are mainly focused on communication, integration and interaction between all parties involved, all processes are flexible and aimed to solve problems or unforeseen changes during work on software development. This scheme worked well with projects that have incomplete requirements and require evolutionary development and deployment. Scrum and Kanban Agile approaches are mainly used in our practices, backed up with XP methodology.
Scrum is an iterative and incremental agile software development framework for managing product development. The Scrum team includes three roles: the product owner, the ScrumMaster, and the members of the development team. The product is built incrementally over a series of short time periods called sprints. A sprint is a fixed time period, up to four weeks long but with a preference toward shorter intervals. During each sprint, the Scrum team builds and delivers a product increment. Each increment is a recognizable, visibly improved, operating subset of the product, meeting understood acceptance criteria and built to a level of quality referred to as the Definition of Done.
Scrum includes three essential artifacts: the product backlog, the sprint backlog, and the product increment. The product backlog is the list of ideas for the product, in the order we expect to build them. The sprint backlog is the detailed plan for development during the next sprint. The product increment, a required result of every sprint, is an integrated version of the product, kept at high enough quality to be shippable if the product owner chooses to ship it. In addition, Scrum requires transparency within the team and with the client. Therefore the Scrum team produces visible displays of plans and progress.
Kanban is a methodology which manages the creation of products with an emphasis on continual delivery while not overburdening the development team
Kanban is based on 3 basic principles:
- Visualize what you do today (workflow): seeing all the items in context of each other can be very informative
- Limit the amount of work in progress (WIP): this helps balance the flow-based approach so teams don’t start and commit to too much work at once
- Enhance flow: when something is finished, the next highest thing from the backlog is pulled into play.
The Kanban methodology fits better in development projects where tasks are constantly changing and there is no way to specify the iterations. It’s also good for projects that are at support stages. Kanban promotes continuous collaboration and encourages active, ongoing learning and improving by defining the best possible team workflow.
Benefits of Agile Approach
- Ensures high customer satisfaction courtesy frequent releases
- No overheads, minimal documentation, no useless meetings and clear communication with all stakeholders
- Shortens the learning curve and development time for iterations
- Testing team get ‘Early Access’ to the software to test
- Better visibility of the project and ‘right expectations’ from each other.