Developing service-layer applications
Now that the network operations, including ledger and contract setup, are out of the way, we can focus on the development of applications that a user or software agent in the real world will use. (In other words, if we examine Figure 9.2, everything in the bottom layer is complete and ready for use.)
Figure 9.3 showed the architecture of our application from a component-based view. The middle portion contains the contracts representing the lowest layer of our technical stack. The components in the outer portion represent the applications we still need to build and run. And where the contracts were designed in a ledger-centric manner (because they act on the ledgers as if they are common databases, even though those ledgers are shared among multiple peers), our higher-layer applications are designed in a user-centric (or organization-centric) manner because they act on behalf of different stakeholders. Therefore, we have four applications,...