The Business Situation
Having embarked on an effort to make it easy for its agents and policy holders do business with the company and to defend their competitive position, the company was part way through development of a web-based policy administration system. The system would allow agents, policyholders and potential customers to obtain quotes, complete applications, and buy services online.
The IS staff and web development team had completed development of one product for the web, but recognized the need to review the architecture before moving forward with others.
The IT leadership wanted to ensure that the underlying solution architecture was robust, followed proven industry best practices and patterns, and supported business objectives. With the goal of continuous improvement, they desired an independent and objective assessment from outside experts experienced in modern and agile software development.
Our Work
Beginning with a series of fact and artifact gathering sessions with IT leadership, architects and developers, X by 2 performed a "breadth-first" analysis of the logical and physical architecture, run-time qualities of the application, the use of application frameworks, and integration with internal legacy and external systems. We also analyzed the requirements-through-quality assurance development processes.
Team throughput - the delivery of functionality to the business - was high on the agenda for IT and business leadership. Thus, we reviewed key aspects of the application architecture and development process that were likely impeding the speed of development. We employed strategies such as simplification of the architecture, enhanced reuse, elimination of non-value-added activities and automation opportunities to improve team throughput.
The application architecture and layers were analyzed to determine how dependencies between and within layers were handled, and to identify ‘bottlenecks’ that kept them from achieving their objectives in rapid time frames. We assessed how well the existing architecture adhered to proven patterns and best-practices, and the use or lack of robust, proven, industry standard frameworks. We also examined integration mechanisms with back-end legacy systems, best-practice approaches for security performance, and scalability.
We determined that over-engineering in certain areas, lack of proven practices for dependency management within and across layers, and the tendency to write code from scratch was impacting delivery throughput. We made recommendations for the use of pre-existing, proven frameworks and components, allowing the client to save time, lower the cost of developing from scratch, and ensure quality.
X by 2 also reviewed the agility of the development process. We analyzed team composition, roles and responsibilities, communications between teams, testing processes, quality assurance, and the deployment process. We brought about awareness to agile practices such as agility in planning, the discipline of fixed-time iterations, continuous integration, and automation of development builds, tests, and deployments.
The project was completed in 4 weeks, with minimal disruption of regular business activities.