Solution Architecture with .NET
eBook - ePub

Solution Architecture with .NET

Jamil Hallal

Share book
  1. 238 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Solution Architecture with .NET

Jamil Hallal

Book details
Book preview
Table of contents
Citations

About This Book

Learn about the responsibilities of a.NET solution architect and explore solution architecture principles, DevOps solutions, and design techniques and standards with hands-on examples of design patternsKey Features• Find out what are the essential personality traits and responsibilities of a solution architect• Become well-versed with architecture principles and modern design patterns with hands-on examples• Design modern web solutions and make the most of Azure DevOps to automate your development life cycleBook DescriptionUnderstanding solution architecture is a must to build and integrate robust systems to meet your client's needs. This makes it crucial for a professional.NET software engineer to learn the key skills of a.NET solution architect to create a unique digital journey and build solutions for a wide range of industries, from strategy and design to implementation. With this handbook, developers working with the.NET technology will be able to put their knowledge to work.The book takes a hands-on approach to help you become an effective solution architect. You'll start by learning the principles of the software development life cycle (SDLC), the roles and responsibilities of a.NET solution architect, and what makes a great.NET solution architect. As you make progress through the chapters, you'll understand the principles of solution architecture and how to design a solution, and explore designing layers and microservices. You'll complete your learning journey by uncovering modern design patterns and techniques for designing and building digital solutions.By the end of this book, you'll have learned how to architect your modern web solutions with ASP.NET Core and Microsoft Azure and be ready to automate your development life cycle with Azure DevOps.What you will learn• Understand the role and core responsibilities of a.NET solution architect• Study popular UML (Unified Modeling Language) diagrams for solution architecture• Work with modern design patterns with the help of hands-on examples• Become familiar with microservices and designing layers• Discover how to design modern web solutions• Automate your development life cycle with Azure DevOpsWho this book is forThis book is for intermediate and advanced.NET developers and software engineers who want to advance their careers and expand their knowledge of solution architecture and design principles. Beginner or intermediate-level solution architects looking for tips and tricks to build large-scale.NET solutions will find this book useful.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Solution Architecture with .NET an online PDF/ePUB?
Yes, you can access Solution Architecture with .NET by Jamil Hallal in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming in C#. We have over one million books available in our catalogue for you to explore.

Information

Year
2021
ISBN
9781801072434
Edition
1

Section 1: Understanding the Responsibilities of a Solution Architect

In this section, we will go through the different phases of the Software Development Life Cycle (SDLC) and we will learn about the differences between the popular SDLC models such as Scrum, Spiral, and DevOps. Then, we will learn about the hierarchy in a typical software development team and what to expect in terms of responsibilities from each member, including a solution architect.
Later in this section, we will explore some fundamental soft skills that every solution architect should have and we will get to know some common pitfalls that should be avoided.
This section comprises the following chapters:
  • Chapter 1, Principles of the Software Development Life Cycle
  • Chapter 2, Team Roles and Responsibilities
  • Chapter 3, What Makes an Effective Solution Architect?

Chapter 1: Principles of the Software Development Life Cycle

In the modern digital workplace, the role of the .NET solution architect is becoming crucial in the software development life cycle. Having a technology leader and a solution creator who can design and build robust and efficient solutions is a key factor to delivering successful products.
This book will highlight the fundamentals that you need to know, as a .NET professional developer, to become an effective solution architect in this growing and rapidly changing field.
Understanding the concept and principles of the Software Development Life Cycle (SDLC) is a great starting point toward planning a software product. This chapter aims to explain the notion of SDLC, its phases, and modern methodologies.
In this chapter, we will cover the following topics:
  • Understanding what the SDLC is
  • Exploring the different SDLC stages
  • Getting familiar with the popular SDLC models
By the end of this chapter, you will be able to describe the SDLC stages and explain the difference between the popular SDLC models, such as Scrum, Spiral, and DevOps.

Understanding the software development life cycle

In today's digital world, every company is looking to deliver a good quality software product in a short period, which means the efficiency and the speed of the development team are game changers. To achieve this goal, companies must apply a set of well-defined activities and structured stages that define the software development life cycle, also known as the SDLC.
The SDLC is a methodology of work and best practices that aim to ease the process of software development and make it more efficient, ensuring the final product is delivered on time within the project budget and is totally in line with the expectations of the client.
There are different variations and models of the SDLC, such as the Waterfall model, the Spiral model, and the Agile model. They are popular and widely used by most software development organizations. Selecting the right model depends mainly on the size of the project and other factors. In the following sections, we are going to explore these models in detail to help you decide which model is right for your team and the project.
Here are the six stages that are defined in the SDLC process:
Figure 1.1: The six stages of the SDLC
Figure 1.1: The six stages of the SDLC
We have just looked at an overview of the software development life cycle and its importance. In the next section, we will explore the different stages of the SDLC process.

Exploring the different SDLC stages

What are the main activities in the SDLC? No matter which model you choose to follow to implement your product, there are six different stages that are considered as common stages in most of the existing models. However, depending on the model, those stages can be executed sequentially or in parallel. By executing this series of stages, it is expected that you will be able to avoid typical and costly pitfalls and achieve the following goals:
  • Lower costs
  • Improved overall quality
  • Shortened production time
  • Excellent customer satisfaction
Let's explore these stages since understanding them is very important to the solution architect, who will be involved with all of them. On the other hand, knowing those stages is necessary to organize and facilitate the development of the product, as well as to make the entire development process more transparent. We'll understand each of them in the following sections.

Planning and requirement analysis

Since the requirements analysis is the first stage, it is the most important and fundamental stage in SDLC. This stage starts by identifying the client's stakeholders, and then conducting several meetings and workshops to define the expectations and gather the requirements.
This stage is performed by the business analyst, the project manager, and the senior technical members of the team. They conduct meetings and workshops with the client to gather all the functional and non-functional requirements, such as the purpose of building the product, what problems it will solve, how it will improve the efficiency of the work, what it will include in terms of functionalities and services, who the target audience or the end user is, identifying the user journeys, detailed use cases and test cases, hardware requirements, backup strategies, and failover processes.
Planning is the process of creating a detailed but high-level plan for how and when each module or task in the project will be developed. The aim is to identify the tasks and their dependencies, along with the expected output of each task. This should be aligned with the client's expectations, as defined in the requirement analysis.
After this stage, everyone in the team should have a clear view of the scope of the project, including its budget, resources, and deadline, as well as possible risks and quality assurance needs. This will be shared with the client to align them with the execution of the project and ...

Table of contents