Key FeaturesIdentify design issues and make the necessary adjustments to achieve improved performanceTransition seamlessly between software architecture and software design and understand the differenceGain knowledge of architectural principles and how they can be used to provide traceability and rationale for architectural decisionsBook DescriptionSoftware architecture or creating a blueprint design for a particular software application is not a walk in the park. The two biggest challenges in software architecture are keeping architecture "in sync" with the requirements as they are uncovered or evolve, and in sync with the implementation as it gets built and evolves.The book starts off by explaining how Python fits into application architecture. Next, you will gain knowledge of architecturally significant requirements and how to determine them. Later, you’ll get a complete understanding of the different architectural quality requirements that help an architect to build a product that satisfies business requirements such as Maintainability/Reusability, Testability, Scalability, Performance, Usability, and Security.You will use various techniques such as incorporating DevOps, Continuous Integration, and more to make your application robust. You will understand when and when not to use object-orientation in your applications. You will be able to think into the future and design applications that can scale proportionally to the growing business.The focus is on building the business logic based on the business process documentation, and which frameworks are to be used when. We also cover some important patterns that are to be taken into account while solving design problems, as well as those in relatively new domains such as the cloud.This book will help you understand the ins and outs of Python so that you can make those critical design decisions that not just live up to but surpass the expectations of your clients.What you will learnBuild programs with the right architectural attributesUse Enterprise Architectural Patterns to solve scalable problems on the WebOptimize the performance testing tools in PythonDeploy code in remote environments or on the cloud using PythonDevelop Micro services with PythonSecure architecture applications in PythonAbout the AuthorAnand Balachandran Pillai is an Engineering and Technology Professional with more than 16 years of experience in the industry in product engineering, research, and software development. He has a Bachelor’s degree in Mechanical Engineering from the Indian Institute of Technology, Madras.He has worked at companies such as Yahoo!, McAfee, and Infosys mostly as an architect or lead engineer in product development teams. His interests lie in software engineering, software architecture, scalability, and Enterprise Architecture. He also worked as a consultant to the University of Agder, Norway, in European Union projects on Web Accessibility and Monitoring from 2005-2008 and during 2012-2015.He has three patents and defensive publications and has published five papers at international conferences and journals on topics related to Web accessibility and Web crawling.He is the founder of the Bangalore Python Users Group (“BangPypers”) and has been a mentor to many youngsters by way of his open source activities through the group. He is an elected Fellow to the Python Sofware Foundation (PSF). Currently, Anand works as a Consulting Architect cum Professional Trainer and Developer in Bangalore, India.
Author: Anand Balachandran Pillai