Solution Architecture with .NET
eBook - ePub

Solution Architecture with .NET

Jamil Hallal

Condividi libro
  1. 238 pagine
  2. English
  3. ePUB (disponibile sull'app)
  4. Disponibile su iOS e Android
eBook - ePub

Solution Architecture with .NET

Jamil Hallal

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

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.

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
Solution Architecture with .NET è disponibile online in formato PDF/ePub?
Sì, puoi accedere a Solution Architecture with .NET di Jamil Hallal in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Computer Science e Programming in C#. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

Informazioni

Anno
2021
ISBN
9781801072434
Edizione
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 ...

Indice dei contenuti