More Information
  • Overcome real-world architectural challenges and solve design consideration issues
  • Apply architectural approaches like Layered Architecture, service-oriented architecture (SOA), and microservices
  • Learn to use tools like containers, Docker, and Kubernetes to manage microservices
  • Get up to speed with Azure Cosmos DB for delivering multi-continental solutions
  • Learn how to program and maintain Azure Functions using C#
  • Understand when to use test-driven development (TDD) as an approach for software development
  • Write automated functional test cases for your projects

Software architecture is the practice of implementing structures and systems that streamline the software development process and improve the quality of an app. With this software architecture book, you’ll follow a hands-on approach to learning various architectural methods that will help you develop and deliver high-quality products.

You’ll begin by understanding how to transform user requirements into architectural needs and exploring the differences between functional and non-functional requirements. Next, you’ll explore how to carefully choose a cloud solution for your infrastructure, along with covering dos and don’ts that will help you manage your app in a cloud-based environment. Later chapters will cover techniques and processes such as DevOps, microservices, and continuous integration, along with providing insights into implementing them using Microsoft technologies such as ASP.NET Core, the Entity Framework, Cosmos DB, and Azure DevOps. You will also learn about testing frameworks and automation tools that will help you through the development process. Finally, you’ll discover design patterns and various software approaches that will allow you to solve common problems faced during development.

By the end of this book, you’ll be able to develop and deliver highly scalable enterprise-ready apps that meet customers’ business needs.

  • Become a software architect capable of creating modular apps for specific business needs
  • Design high-performance software systems using the latest features of C# 8 and .NET Core 3
  • Explore different enterprise architectural patterns to solve the problem of scalability in web applications
Page Count 598
Course Length 17 hours 56 minutes
ISBN 9781789800937
Date Of Publication 29 Nov 2019


Francesco Abbruzzese

Francesco Abbruzzese is an author of the MVC Controls Toolkit. He has also contributed to the diffusion and evangelization of the Microsoft web stack since the first version of ASP.NET MVC through tutorials, articles, and tools. He writes about .NET and client-side technologies in his blog, Dot Net Programming, and various online magazines/blogs. Now, his company, Mvc Controls Toolkit Core, implements and offers web applications, AI software, SAS products, tools, and services for web technologies associated with the Microsoft stack. He moved from AI systems, where he implemented one of the first decision support systems for banks and financial institutions, to the video games arena, with top-ten titles such as Puma Street Soccer.

Gabriel Baptista

Gabriel Baptista is a Software Architect who technically leads a team in the most diverse projects for retail and industry, using a dozen of varieties of Microsoft products. He has become a specialist in Azure PaaS solutions since the design of a SaaS platform in partnership with Microsoft. Besides, he is a College Computing Professor who has published many papers and teaches different subjects related to Software Engineering, Development, and Architecture. He is also a speaker on Channel 9, one of the most prestigious and active community websites for .NET stack. As well as, he is a co-founder of a startup for developing mobile applications, where Scrum, Design Thinking, and the DevOps philosophy are the key to deliver user's needs.