The inputs to ADM Step A are:
The outputs of this step are:
As a preliminary to this step it is necessary to define the scope of activity, including what is in scope, what is out of scope, what the limits are and what the financial envelope is. Within this step fall defining the business process, recording the assumptions made and developing any new requirements. The information collected is used to gauge the current system and to determine the return on investment of potential changes. Use-cases are a useful tool in this step to describe the business processes and they can be used to do a sanity check against the resulting architecture.
The business goals driving improvements in the sales process were:
In this example financial and time constraints, and business return have not been dealt with in detail, but normally these constraints would be used to guide the process along the entire way to avoid over-engineering or "creeping elegance". The architect should especially look at these constraints whenever iterating between steps. Also not shown in this example are the use-cases scenarios. However, the process described below does include participants, or actors, of the use-case with brief descriptions of their roles in Table J-1.
For the sake of brevity in this example, it is assumed that the scope of the architectural work would not extend beyond the sales arena, and that the proposed solutions fit within the financial and time constraints imposed by XYZ.
The assumptions made by the XYZ architect during Step A are:
The relevant business process in scope of this example in the XYZ company is the customer facing portion of the sales process and the supporting systems. This sales process consists of the following steps:
1. initiate the sales process with the customer
1.1 sales person
1.2 customer
2. discuss the customer requirements
2.1 customer
2.2 sales person
3. work with the customer to create a product configuration
3.1 sales person
3.2 sales person's laptop
3.3 sales person's local (LIPR) and central (CIPR) information process resources
3.4 product configurator
3.5 customer
4. verify that the desired configuration can be delivered
4.1 sales person
4.2 sales person's laptop
4.3 inventory control system
4.4 scheduling system
4.5 customer accepts or rejects
5. determine the price of the requested configuration
5.1 sales person
5.2 sales person's laptop
5.3 pricing system
6. confirm the desire to purchase with the customer
6.1 sales person
6.2 customer
7. place an order
7.1 sales person
7.2 sales person's laptop with printer (for fax)
7.3 order system
7.4 customer
8. customer acceptance
8.1 sales person
8.2 customer
The following use-case table represents participants (sometimes referred to as "actors" in use-case) in the rows, steps of the business process in the columns and roles in the cells. Note that this is an example, and it is not intended to be accurate, but rather demonstrative. Constructing a use-case table is a comparatively small effort that will ultimately enhance the speed and quality of the resulting architecture.
The meanings of the various acronyms used in the table, and in subsequent figures, are listed below:
CIPR | Central Information Processing Resource |
ICSys | Inventory Control System |
LIPR | Local Information Processing Resource |
OrdSys | Order Processing / Information System |
ProdConfig | Product Configurator System |
ProdSys | Product Information System |
SchSys | Scheduling System |
$Sys | Pricing Information System |
1. initiate | 2.discuss reqs |
3. create config |
4. verify config |
5. price | 6. confirm | 7. order | 8. accept | |
sales person |
greets customer |
listens | represents options with different capabilities |
accesses ICSys and SchSys and presents availability to customer |
accesses price system and presents price to customer |
presents offer |
accesses order system |
presents contract |
customer | accepts sales person |
discusses problems /desires |
listens and decides on options based on capabilities |
accepts or rejects |
accepts or rejects |
signs or rejects |
||
sales person's laptop |
interacts with configurator |
interacts with ICSys and SchSys |
interacts with Price System |
interacts with order system and receives fax response |
||||
sales person's CIPR |
provides central information processing |
|||||||
sales person's LIPR |
provides local information processing |
|||||||
ProdConfig | presents configs to sales person per needs, providing capabilities |
|||||||
ICSys | provides availability |
|||||||
SchSys | provides delivery date |
|||||||
$Sys | provides price information on a config |
|||||||
OrderSys | processes order and sends fax of order to sales person's laptop |
Table J-1: Use-Case Table of Sales Process
Steps 1, 2, 6 and 8 are not within scope of the architecture work since the only participants involved are humans. The other steps are considered within scope since there are computing components involved in supporting the sales process. Note the computing participants are the first set of identified candidate building blocks - Business Process Driven List.
During Step A, the business goals were developed into more detailed business requirements, and these were:
A very simplified view of the candidate building blocks required to support the business process with an idea of location is provided below. This model was built from elements of the above table.
Figure J-2: Model of the Candidate Building Blocks - "Business Process Driven List"
Phase B - Technical Functionality and Constraints level.
Copyright © The Open Group, 1998