Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Software Architecture for Busy Developers

You're reading from   Software Architecture for Busy Developers Talk and act like a software architect in one weekend

Arrow left icon
Product type Paperback
Published in Oct 2021
Publisher Packt
ISBN-13 9781801071598
Length 174 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Stéphane Eyskens Stéphane Eyskens
Author Profile Icon Stéphane Eyskens
Stéphane Eyskens
Arrow right icon
View More author details
Toc

Table of Contents (14) Chapters Close

Preface 1. Section 1: Introduction
2. Chapter 1: Introducing Software Architecture FREE CHAPTER 3. Section 2: The Broader Architecture Landscape
4. Chapter 2: Exploring Architecture Frameworks and Methodologies 5. Chapter 3: Understanding ATAM and the Software Quality Attributes 6. Section 3: Software Design Patterns and Architecture Models
7. Chapter 4: Reviewing the Historical Architecture Styles 8. Chapter 5: Design Patterns and Clean Architecture 9. Section 4: Impact of the Cloud on Software Architecture Practices
10. Chapter 6: Impact of the Cloud on the Software Architecture Practice 11. Section 5: Architectural Trends and Summary
12. Chapter 7: Trendy Architectures and Global Summary 13. Other Books You May Enjoy

Introducing the different architecture disciplines

There are so many types of architects that we can quickly get lost and wonder who does what in an enterprise. Because this understanding is an essential asset, let's start by reviewing the different disciplines, and I will position software architecture in the mix in the next section. The following diagram shows some of the most common architecture disciplines and their main duties:

Figure 1.1 – Architecture disciplines: main duties

Figure 1.1 – Architecture disciplines: main duties

From top to bottom of the preceding diagram, you can find the main duties by order of priority. Not every discipline is represented, but the main ones are. A noticeable exception, however, is cloud architecture, which we will talk about later. We will discuss some of the related frameworks in our next chapter. Let's now focus on the scope of each discipline.

EA

Enterprise architects oversee the IT and business strategies, and they make sure every IT initiative is in line with the enterprise business goals. They directly report to IT leadership and are sometimes scattered across business lines. They are also the guardians of building coherent and consistent overall IT landscapes for their respective companies.

Most of the time, enterprise architects have a holistic view of the IT landscape and are not concerned with technicalities. Their primary focus is to identify and design business capabilities. They are helped by business architects, who are usually also a part of the EA function. Their role consists of defining the strategic orientations and making sure their standards percolate across teams. They usually work with The Open Group Architecture Framework (TOGAF) to define the processes and with ArchiMate to build visual models of the different domains. In some organizations, the EA function can assign a dedicated enterprise architect for large projects or programs.

Solution architecture (SolAr)

Solution architects help different teams to build solutions. They have so-called T-shaped skills because they oversee the design of a solution end to end (E2E). They mostly focus on NFRs to ensure a solution is fit for use. As with software architects, they also look at FRs (ensuring that they are fit for purpose), but they are not involved in the actual development of the features.

Infrastructure architecture (IA)

Infrastructure architects focus on building and operating specific application infrastructures and platforms that are shared across workloads. One of their duties is to keep the lights on, to ensure commodity services such as mail systems and workplace-related services are up and running. Infrastructure is organized around IT Service Management (ITSM), which most of the time is based on the IT Infrastructure Library (ITIL). The infrastructure department also provides a service-desk function. Many organizations have started to move (or have moved already) to ServiceNow, a more modern way to handle ITSM.

Security architecture (SA)

In this hyper-connected world, the importance of cybersecurity has grown a lot. SA deals with regulatory or in-house compliance requirements. In these modern times, more and more workloads are deployed to the cloud, which often emphasizes security concerns because many organizations are still in the middle of their cloud journey, or on the verge of starting it.

The security field is split into different sub-disciplines such as security operations centers (SOCs), the management of specialized security hardware and software, Identity and Access Management (IAM), and overall security governance, also known as the security posture. In medium-to-large organizations, you can find blue (defend) and red (attack) teams, composed of technical security experts. Together with the SOC, they evaluate the robustness of a business's overall resilience. The SA practice is usually managed by a chief information security officer (CISO), although the role is sometimes also carried out by a chief information officer (CIO).

Depending on the industry you are in, security is typically one of the lesser-known NFRs, not well understood by business, which leads to a complete lack of business requirements in that matter. Security-awareness programs are often required to alert businesses about the importance of security. In a nutshell, the way the security practice is conducted heavily depends on the culture, the risk appetite, and the organization's DNA.

Data architecture (DA)

Data architects oversee the entire data landscape. They mostly focus on designing data platforms for storage, insights, and advanced analytics. They deal with data modeling, data quality, and business intelligence (BI), which consists of extracting valuable insights from the data to realize substantial business benefits. A well-organized data architecture should ultimately deliver the data-information-knowledge-wisdom (DIKW) pyramid, as shown in the following diagram:

Figure 1.1 – Architecture disciplines: main duties

Figure 1.2 – DIKW pyramid

Organizations have a lot of data, from which they try to extract valuable information and knowledge and gain wisdom over time. The more you climb the pyramid, the more value there is. Consider the following scenario to understand the DIKW pyramid:

Figure 1.3 – DIKW pyramid example

Figure 1.3 – DIKW pyramid example

This shows us that, among other things, the work of a data architect is to help organizations learn from their data.

Application architecture (AA)

Application architects focus on building features that are requested by the business. They make sure the developed application is fit for purpose. They enforce coding patterns and guidelines to make maintainable and readable applications. Their primary concern is to integrate with the various frameworks and ecosystems. Their role resembles the software architect one but is, in my opinion, more limited. Let's now position software architecture within the various disciplines.

You have been reading a chapter from
Software Architecture for Busy Developers
Published in: Oct 2021
Publisher: Packt
ISBN-13: 9781801071598
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image