ABSTRACT

The chapter mainly discusses the methods and tools to optimize the performance of the digital platform. A performance-based design incorporates the performance best practices in all phases of the Software Development Life Cycle. During the design and architecture phase, we define the performance design principles and develop a performance checklist and performance patterns that could be used during the development and testing phases. During the development phase, a performance-based development methodology would be adopted using iterative performance code reviews. We perform iterative performance testing and measure all the identified performance metrics and service level agreements for end-to-end performance scenarios during the validation phase. During post production we conduct performance monitoring activities. The main performance anti-patterns are bad design of key pages, heavy landing page, absence of performance monitoring and bad integration design. The main page design best practices are adopting user-centric design, conducting iterative performance testing, adopting user-friendly and intuitive information architecture, using Responsive Web Design, lightweight design and others. The main web performance patterns are model-view-controller architecture, microservices architecture, Web-Oriented Architecture (WOA), Single Responsibility Principle (SRP), adaptive design, single code base, separation of concerns, testability, plug-and-play architecture, extensibility and service governance. Load testing and stress testing are the main performance validations to assess the overall performance of the application. The main performance metrics are response time, system scalability, availability, resource utilization and resilience.