We believe that it takes a lot of experience and passion to keep up continuously with the newest technologies and at the same time to leverage the foundation represented by the vast experience of the past. That experience and passion gives us the ability to tailor our development process to best fit each and every one of our customers. Starting with understanding the business case and finishing with customer support, we have invested a tremendous amount of time and effort to optimize each process involved in software development. Quality management is one of the most important pillars of our organization. As a result of our strong commitment to use the best practices of quality management, we have been ISO 9001 certified since 2008. Moreover, ISO 27001 certification is under way. Compliance with the established standards and procedures are continuously assessed and reinforced by our Quality Management Department.
Just to give a brief description of the way we approach each step of the software development process:
Everything should be centered on the real business requirements. That is why our team consists of experienced business analysts and consultants who understand customer needs and propose the best solutions tailored specifically for each customer. Either we use the Waterfall methodology or Agile approach, we make sure that requirements are thoroughly understood and documented using a familiar language to both the business and technical people. Our philosophy employs a very collaborative relation with our customer and frequent feedback loops so that we clarify any issues as soon as possible in the analysis process. In order to speed up the application design, we use extensively UML design and clickable mockups – methodologies that have proven to be successful in former completed projects.
The development process starts with specs clarification between the business analyst and technical lead of the team. After everything is clarified, the technical design is performed and validated. Subsequently, the technical design is formalized and documented in Technical Design Document, which may also be approved by the customer. The next step is the detailed estimation of development and planning the development of each module. We prefer to group the features in functional modules and deliver them as soon as possible to the customer. The order of development is prioritized together with the customer, based on the business impact they have.
Quality is a very important aspect of any new product development. Losing focus on quality results only in low levels of end-user satisfaction, increased costs to fix bugs and longer time to market. That is why, we place a strong emphasys on using very stringent quality control methods and criteria. Our testing process is based on Test Plan and Test Cases. In terms of testing methodologies we employ several approaches. The most common ones we use are: unit testing, functional testing, automated testing and usability testing. The results are recorded in Test Plan and further corrective actions are planned based upon issue classification and prioritization. Also, based on the periodic analysis of test results feedback is continuously provided to the software development team, in order to decrease systematically over time the number of errors.
In order to complete successfully our projects on time and budget, we resort to best practices in project management. Our team leverages the experience gained over time on complex projects in various industries. Our methodology covers thoroughly project scope, cost estimation, quality assurance, planing, project monitoring and control, risk management, conflict resolution and esacalation procedures.
Please contact us in order to perform a professional evaluation of your project and request a quote.