Errata

Software Architecture: The Hard Parts

Errata for Software Architecture: The Hard Parts

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.

Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted By Date submitted Date corrected
Chapter 2

One of the most difficult tasks an architect will face is untangling the various forces and trade-offs at play in ---->[distibuted]<---- architectures.

Note from the Author or Editor:
fixed in Atlas

Roman  Dec 26, 2021  Aug 26, 2022
Page text
throughout

Typos:

1.
Current Copy
Paracelsus One of the most difficult tasks an architect will face is untangling the various forces and trade-offs at play in distibuted architectures.

Suggested
"trade-offs at play in distibuted architectures." should be "trade-offs at play in distributed architectures."

2.
Current Copy
Transactionality— having several services participate in an all-or-nothing transaction— is one of the most difficult problems to model in distibuted architectures, resulting in the general advice to try to avoid cross-service transactions.

Suggested
"at play in distibuted architectures." should be "at play in distributed architectures."

3.
Current Copy
Shared code: Do services need to share codeamong one another?

Suggested
"need to share codeamong one another?" should be "need to share code among one another?"

4.
Current Copy
Responsiveness is good from the end user’s perpective, and the user can work on other tasks while the errors are handled by the system.

Suggested
"the end user’s perpective, and" should be "the end user’s perspective, and"

5.
Current Copy
Most significantly, the Star Schema is purposely denormalized to facilitate simpler queries, simplified business logic (in other words, fewer complex joins), faster queries and aggregations, complex analytics such as data cubes, and the ability to form mutidimensional queries.

Suggested
"the ability to form mutidimensional queries." should be "the ability to form multidimensional queries."

6.
Current Copy
Similarly, communication to the data plane should genearlly be asynchronous, so as to have minimal impact on the operational architecture characteristics of the domain service.

Suggested
"plane should genearlly be asynchronous," should be "plane should generally be asynchronous,"

Note from the Author or Editor:
Fixed in Atlas

Anonymous  Mar 17, 2022  Aug 26, 2022
ePub
Page n/a
text

Typos:

1.
Current Copy
Example 5-5 shows the pseudocode for thisfitness function.

Suggested
"pseudocode for thisfitness function." should be "pseudocode for this fitness function."


2.

Current Copy
Component Namespace Responsibility Survey ss.survey Send and seceive surveys After applying the Flatten Components pattern (illustrated in Figure 5-12), Addison observed that there were no “hills” (component upon component) or orphaned classes and that all of the components were contained only in the


Suggested
"Send and seceive surveys" should be "Send and receive surveys"

Anonymous  May 04, 2022  Aug 26, 2022
Printed
Page 15
Heading of second paragraph

The heading reads "Atomicty" instead of "Atomicity"

Andrew Ingraham  Jul 02, 2022  Aug 26, 2022
Page 26
2nd paragraph

Paracelsus was not a Greek philosopher but a medieval Swiss physician (and philosopher). ????

Note from the Author or Editor:
fixed in Atlas

T. P.   Jan 10, 2022  Aug 26, 2022
Page 26
4th paragraph

The first sentence in the 4th paragraph ends: "at play in distibuted architectures". I believe you meant "distributed."

Note from the Author or Editor:
agreed, spelling needs to be fixed to distributed

Orlando  Sep 15, 2023 
Page 110
Table-5.11

Typo in Responsibility column.

"Send and seceive surveys" -> "Send and receive surveys"

Note from the Author or Editor:
fixed.

Orhan Ozalp  Jan 04, 2024 
Page 155
example 6-1, 6-2

Do either of these queries "get open tickets for customer"? Ticket doesn't participate in the query. I think these views relate to customer contract payments.

Note from the Author or Editor:
Fixed in Atlas with better captions

nigel  Jan 24, 2022  Aug 26, 2022
Printed
Page 196
2nd paragraph

There are extra underscore characters in the first sentence. Instead of:

"Another primary driver for granularity disintegration is_ extensibility_—the ability to add..."

It should probably be:

"Another primary driver for granularity disintegration is extensibility—the ability to add..."

With "extensibility" in italics.

Anonymous  Aug 22, 2022  Aug 26, 2022
PDF
Page 197
1st paragraph

It says "The four main drivers for granularity integration are as follows:", but there are only two drivers listed below, the other two ones missing.

Note from the Author or Editor:
The last two list items are present, but currently part of the 2nd bullet by mistake. The text should read:

The four main drivers for granularity integration are as follows:
* Database transactions: is an ACID transaction required between separate services?
* Workflow and choreography: do services need to talk to one another?
* Shared code: do services need to share code between each other?
* Database relationships: although a service can be broken apart, can the data it uses be broken apart as well?

Brian  Apr 23, 2022  Aug 26, 2022
Page 242
3rd main para

"... the early 20th Century trend of orchestration-driven service-orientated architecture" - should this read "early 21st Century"?

Note from the Author or Editor:
corrected in atlas

Nigel  Jan 24, 2022  Aug 26, 2022
Page 395
2nd paragraph

"and maintaining the DQP cooperative"

Should be DPQ.

Note from the Author or Editor:
Yes it should be DPQ

Michael Cook  Mar 13, 2023