Development

The only metric for good software is success

By promoting a secure development life cycle (see diagram), combined with a Shift Left of operation and security and supported by Agile/Lean principles, we optimise your software development process to help you achieve your goals. We have a templated road map based on your current state, a desired state, and the importance you attach to each step of the cycle. The cycle starts with planning, moving into code, build, and test, which is your usual development process. Once the software is released, it can be deployed and monitored. This informs a new round of planning.

secure development life cycle

Of course, this is a simple view of software development which does not consider things like continuous integration (CI) or continuous delivery (CD) or rapid SQA feedback. Everyone will need to modify this to their situation. What we offer is a customisation of those best practices to suit your organisation’s needs and goals to ensure a predictable, reliable, and robust software creation processes.

Below is a diagram of a fully shifted left development teams. All the different roles and responsibilities are outlined to produce successful software. Starting with product, who define the feature set of the software. Then with UX/UI designers ensuring the customers can use the feature set seamlessly. Architects define how the software will implement the feature set, and the technical leadership ensures the correct tools and processes are in place. Quality assurance ensures that what the development team produces is both validated and verified. Finally, we have the left shifted operations (DevOps and SRE), and security resources that work together with the development team. Note that there is no explicit technical writer there, as most documentation is written as part of handover to different departments, teams, and clients — The latter generally requires technical writers.

successful software

Note that some resources could be fractional, for example, a Security person could devote only a third of their time to helping write/design software. For some teams, these will vary. If you are producing a service software, the DevOps resource(s) might be full-time. If a team is responsible for front-end, they might require a full UX/UI designer on board. For a full back-end, then there is no need for a UX/UI designer at all. Context matters.

The important takeaway is that traditional developers plus SQA are not enough to produce successful software. You must have input from a wide range of departments: a full Shift Left of everything.

Many of the additions to the development team are a cost. They will not directly help sell software. However, what they will do is enable Sales and Marketing to deliver secure, robust, and efficient software which will be a pleasure to use. It will increase customer satisfaction and thus ROI.

Note that both security and operations have their section, while SQA does not. Software quality is an integral part of the development process. Without it, the software will be buggy and will be considered shoddy by your customers. This hit to reputation is something no one can afford. The ideal ratio of testers to developers should be 1 to 3, sometimes less, sometimes more, depending on many factors. From the test policy to the test strategy, and general collaboration between SQA and development, we will chart a road to success.

No matter how fine-tuned your development team is, if it is not supported by the business as a whole, it will fail to deliver value. This is why setting a clear vision and goals from C-suite down matters. Everyone must sing from the same hymn sheet and see the same goals. This communication is often overlooked and results in lost and wasted resources. By adding clear and efficient communication channels between the engineering team and the rest of the company departments, road blocks can be seen ahead of time, the course corrected, and thus blocks avoided.

It will make for a boring software process, with neither drama nor crisis. It will look easy and lucky that all aspects of the process just work.

Previous: People
Next: Security