diff --git a/architecture.html b/architecture.html
index dd69bf5..594738a 100644
--- a/architecture.html
+++ b/architecture.html
@@ -36,11 +36,11 @@
The preventative solution to this problems is to try to design architecture up front, mitigating the various risks that come from cross-cutting concerns (defects, low modifiability, etc.) (Fairbanks 2010). A popular method in the 1990's was the Unified Modeling Language (UML), which was a series of notations for expressing the architectural design of a system before implementing it. Recent studies show that UML generally not used and generally not universal (Petre 2013). More recent developers have investigated ideas of architectural styles, which are patterns of interactions and information exchange between encapsulated components. Some common architectural styles include:
- - Client/server, in which data is transacted in response to requests. This is the basis of the Internet and cloud computing (Cito et la. 2015).
- - Pipe and filter, in which data is passed from component to component, and transformed and filtered along the way. Command lines, compilers, and machine learned programs are examples of pipe and filter architectures.
- - Model-view-controller (MVC), in which data is separated from views of the data and from manipulations of data. Nearly all user interface toolkits use MVC, including popular modern frameworks such as React.
- - Peer to peer (P2P), in which components transact data through a distributed standard interface. Examples include Bitcoin, Spotify, and Gnutella.
-
- Event-driven, in which some components "broadcast" events and others "subscribe" to notifications of these events. Examples include most model-view-controller-based user interface frameworks, which have models broadest change events to views, so they may update themselves to render new model state.
+
- Client/server, in which data is transacted in response to requests. This is the basis of the Internet and cloud computing (Cito et la. 2015).
+ - Pipe and filter, in which data is passed from component to component, and transformed and filtered along the way. Command lines, compilers, and machine learned programs are examples of pipe and filter architectures.
+ - Model-view-controller (MVC), in which data is separated from views of the data and from manipulations of data. Nearly all user interface toolkits use MVC, including popular modern frameworks such as React.
+ - Peer to peer (P2P), in which components transact data through a distributed standard interface. Examples include Bitcoin, Spotify, and Gnutella.
+
- Event-driven, in which some components "broadcast" events and others "subscribe" to notifications of these events. Examples include most model-view-controller-based user interface frameworks, which have models broadest change events to views, so they may update themselves to render new model state.
Architectural styles come in all shapes and sizes. Some are smaller design patterns of information sharing (Beck et al. 2006), whereas others are ubiquitous but specialized patterns such as the architectures required to support undo and cancel in user interfaces (Bass et al. 2004).