Consulting and implementation
We combine leading-edge technology and extensive experience to design and implement business process automation solutions. These solutions can include communication with internal and external systems, storage and manipulation of data, reporting, reconciliations and custom user interfaces.
Development
Overview
Digiata uses an agile development process. Some of the principles behind this are
- Rapid, continuous delivery of working software.
- Changes to requirements are welcomed.
- Daily, face-to-face communication between developers and the customer.
- Continuous attention to technical excellence.
- Incremental design.
What does this mean to the customer?
- Working software from week 1.
- A new version is available every time the code changes – which mostly means daily.
- Requirement changes can be made at any time.
- The effect of changes in requirements and other problems on project time lines and costs is visible.
- Responsibility to produce and prioritize detailed requirements.
- Better, cheaper software.
How do we ensure that the software does not break when we make changes?
The developers write unit tests before and during implementation of a feature. All the unit tests must pass before developers can commit their code to source control.
When developers work on a feature they
- Accept ownership of the user story.
- Update their code with the required version from source control.
- Write unit tests to make sure the feature they are about to implement works.
- Run the unit tests to make sure the new tests fail.
- Implement the feature.
- Run the unit tests to make sure they all pass.
- Get another developer to review the changes made to the code.
- Check it into source control.
Where can I read more about this?
Martin Fowler
Cost of Change