Methodology
OnCast understands that above all existing sciences for software development, software is made and used by people and its results has impact in someone's life. Quality to OnCast means, therefore, the aderence between the needs of the client and the offered solution.
To maximize the quality of the product, the OnCast's methodology is organized in two levels: project management and software development. Both approaches are based on the cross-functional capacity of our collaborators, forming self-managed and efficient teams to deal with the whole life cycle of a solution. Following there are some details about these approaches:
- To manage the complexity of our projects and to guarantee products that deliver value faster, we use Scrum. Scrum is a framework to manage complex projects, designed to develop functionalities in an iterative and incremental way. These functionalities are delivered in short periods - within 2 to 4 weeks - and allow immediately utilization and extraction of value by the client.
Instead of relying on a bureaucratic and traditional development processes which impose a command and control culture, Scrum is based on people, in self-managed teams capable to develop quality and mature solutions;
- In the software development area the OnCast's methodology encapsulates practices derived from Extreme Programming (XP) and Lean Software Development. This last one had its origin in the Lean Manufacturing and it brings to software development concepts about team empowering, waste elimination and effective integrity of the developed products. Lean has been successfully adopted by big companies, beyond the pioneer Toyota, which got a reduction in the delay to develop a new car from 4 to 1 year, overtaking GM - leader in the automotive sector during 76 years - and being the most rentable car maker in the world.
From XP, OnCast extracts practices that guarantee the continuous evolution, higher velocity in the development, and a better support to future product maintenances, by means of using automated builds and tests, refactoring, simplicity and continuous integration.
In fact, OnCast uses a blend of the best world practices in project management and software engineering, which are based on the Agile Manifesto and supported by the Agile Alliance. The Agile Manifesto consists in four values that indicate points that help in the prioritization of the tasks:
- Individuals and interactions over processes and tools;
- Working software over comprehensive documentation;
- Customer collaboration over contract negotiation;
- Responding to change over following a plan.
The points presented at the right side are very important in the OnCast's development methodology. However, the value of the services provided to our clients is actually situated in the left column, and due to this fact, their priority is higher.
As well as the agile manifesto signers, we also follow and support the following principles:
- Our priority is to satisfy the client through the continuous and fast software delivering with high added value;
- Requirement changes are welcome, even late in the development process. We accept the changes in benefit of the competitive advantage of our clients;
- We deliver working software, in periods of 2 weeks to 2 months, with preference to smaller periods;
- We support environments where business executives and developers work daily together;
- We build projects with motivated people. We give them the environment and the support they need, and trust them to have the work done;
- We foment the most efficient communication method, which is through face-to-face conversations;
- Working software is our primary measure of progress;
- We consider simplicity essential - the art of minimizing the amount of unnecessary work;
- We understand that the best architectures, requirements and designs arise from self-organized teams;
- On each iteration, our team reflects on ways to make the methodology increasingly effective, and so we adjust it and improve our behavior accordingly.
This is the way OnCast develops software!