We adopt an Agile approach to the design and implementation of our products and services. Working with our experienced team, we liaise closely with the customer through all stages of the development cycle and provide a Minimum Viable Product with incremental drops in functionality. Our development processes and tools are designed to ensure quality and security is at the heart of what we do. We use Visual Studio Team Services, Git and continuous development methods to manage source code revisions and track the structure of the project including features, faults and release iterations. The development team undertake code peer reviews to ensure high levels of quality throughout the development process. Feedback is obtained from the customer as part of the sprint development cycle, and incremental modifications are made as required “evolving” the Minimum Viable Product to completion.
Developed software is “black box” system tested by the QA and Testing team in addition to the developer’s own testing to ensure consistency of look and feel as well as adherence to the specification. We utilise Microsoft Visual Studio Unit Test framework to allow individual components to be tested, and regression tested. We use the latest version of Microsoft Visual Studio to ensure that .NET managed code assemblies conform to the Microsoft .NET Framework Design Guidelines. This reduces the likelihood of software faults and delivers robust applications.
We utilise “Technical Project Managers” as part of our development team, as opposed to “Task Based Project Managers”. Our Project Manager will have a thorough understanding of the customers systems and requirements as well as an excellent understanding of the technical aspects of the development processes and technologies being deployed. This approach enables us to communicate with the customer at a more detailed level whilst still providing the Project Management, client contact, issue reporting and risk management role fulfilment.
We adopt a system of “Change Requests” where additional functionality outside of the original scope of the project is required. Each “Change request” describes the necessary functional requirements and are agreed in advance by both parties before being undertaken.