Page 281 -
P. 281
252 PART THREE CONVENTIONAL METHODS FOR SOFTWARE ENGINEERING
However, the price for this change is largely borne by the IT [information technology]
organizations that must support this polyglot configuration. Today, each IT organization
must become, in effect, its own systems integrator and architect. It must design, implement,
and support its own unique configuration of heterogeneous computing resources, distrib-
uted logically and geographically throughout the enterprise, and connected by an appro-
priate enterprise-wide networking scheme.
Moreover, this configuration can be expected to change continuously, but unevenly,
across the enterprise, due to changes in business requirements and in computing technol-
ogy. These diverse and incremental changes must be coordinated across a distributed envi-
ronment consisting of hardware and software supplied by dozens, if not hundreds, of vendors.
And, of course, we expect these changes to be seamlessly incorporated without disrupting
normal operations and to scale gracefully as those operations expand.
When taking a world view of a company’s information technology needs, there is lit-
tle doubt that system engineering is required. Not only is the specification of the appro-
priate computing architecture required, but the software architecture that populates
the “unique configuration of heterogeneous computing resources” must be devel-
oped. Business process engineering is one approach for creating an overall plan for
Three different implementing the computing architecture [SPE93].
architectures are Three different architectures must be analyzed and designed within the context
developed during BPE: of business objectives and goals:
data architecture,
application • data architecture
architecture, and • applications architecture
technology
infrastructure. • technology infrastructure
The data architecture provides a framework for the information needs of a business
XRef or business function. The individual building blocks of the architecture are the data
Data objects are objects that are used by the business. A data object contains a set of attributes that
discussed in detail in define some aspect, quality, characteristic, or descriptor of the data that are being
Chapter 12.
described. For example, an information engineer might define the data object cus-
tomer. To more fully describe customer, the following attributes are defined:
Object: Customer
Attributes:
name
company name
job classification and purchase authority
business address and contact information
product interest(s)
past purchase(s)
date of last contact
status of contact
Once a set of data objects is defined, their relationships are identified. A relationship
indicates how objects are connected to one another. As an example, consider the