Technology Architecture
APPENDIX A.............................................................................................................................................
ENTERPRISE PROFILE.........................................................................................................................
ENTERPRISE BUSINESS PROFILE....................................................................................................................
ENTERPRISE TECHNOLOGY PROFILE.............................................................................................................
APPENDIX C.............................................................................................................................................
MODELS....................................................................................................................................................
APPENDIX E.............................................................................................................................................
APPENDIX F..............................................................................................................................................
Description
This Technology Architecture is one of four architectural components that comprise the Enterprise
Architecture. This Technology Architecture is a logical view of the physical Technology
Infrastructure in that it describes a Technology Infrastructure independent of any vendor’s products,
or open, proprietary or private standards. Where specific names and/or standards are used, they are
used solely to illustrate a concept.
A Technology Infrastructure is the physical set of all software and hardware components and a
Technology Architecture is a description of those software and hardware components with rules for
their acquisition, standards and guidelines. A design specifies how the components are arranged, and
specifies which one of many available models (e.g. modular, peer-to-peer, component-based, star, bus,
ring, client-server, distributed, heterogeneous, homogeneous, and so on) will be used to define their
arrangement. Put another way, a Technology Architecture defines the what, a Design defines the how,
and a Technology Infrastructure represents the implementation of the architecture and design.
We use the term “Technology Infrastructure” to define one dimension of an “IT Infrastructure”, which
includes Human Resources, Organisational Structure, Technology, Finance, and so on.
Limitations
This is a software Technology Architecture. No statements or assumptions are made about hardware
or network architectures. A hardware architecture must consider technology trends in CPU’s, BIOS
plug and play, RAM, symmetric multi-processors, storage media (magnetic, optical), disk
management (raid, mirroring), Bus technology, display technology, and so on to arrive at a blueprint
for hardware acquisition. There is a great deal of confusion caused by the term “network
architecture”. The term is commonly used to mean network design. To illustrate this point, contrast
the content of IBM’s SNA Concepts and Facilities documentation with an SNA network design. The
former defines logical concepts (e.g. Logical Unit, Physical Unit), whereas the latter defines the type
and arrangement of physical devices (e.g. network front-end processors, cluster controllers).
Approach
The approach taken is to develop and discuss the concepts and rules necessary for a Technology
Architecture to be able to define a Technology Infrastructure that supports applications built to the
client-server model, operating in a heterogeneous computing environment. Depending on the target
computing environment and the degree of heterogeneity required, some of the concepts and rules
might seem idealistic; however, we maintain that these concepts and rules are necessary for the
creation of a truly distributed, heterogeneous computing environment. In practice, the degree to
which a distributed heterogeneous Technology Infrastructure can be created is influenced by software
vendors and the choices made by the enterprise. This Technology Architecture is a blueprint against
which software technology can be evaluated for its adherence to the standards and criteria chosen by
the enterprise.
The Technology Architecture is described in six sections and a number of appendices. The first
section describes the Business Problem to be solved by the Technology Architecture; the User Profiles
of the users of the Technology Infrastructure, and the Vision and Scope. The second section describes
the Features and Benefits of the Technology Architecture. The third section describes a model of a
Technology Infrastructure which serves as a tool for managing the content of a Technology
Infrastructure. The fourth section, Criteria, describes the criteria for achieving an integrated
heterogeneous computing environment. The fifth section describes how to use the model of a
Technology Infrastructure to cater for changing functionality, reuse and technology acquisition. The
sixth section discusses the next steps that ADCO can take to migrate to a distributed, heterogeneous
computing environment.
The most volatile aspects of a Technology Architecture are contained in the appendices. Appendix A
provides a template for Enterprise Business and Technology Profiles.
Appendix B names the services required in a Technology Infrastructure. Appendix C is divided into
parts (C1, C2,...., Cn). Each part describes a mapping of a particular vendor’s technology architecture
to the Technology Architecture model described in section three. Appendix D contains a number of
Business Problem
The diversity of available hardware and software, the changing needs of business, and decentralised
and autonomous decision-making processes for technology acquisition can combine to sub-optimise
the enterprise technology infrastructure.
TECHNOLOGY TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
Each organisational unit perceives a benefit, whilst the benefits to the enterprise are lessened. The
measures of benefit to the enterprise might be capital expenditure for perceived benefit; the ability to
obtain information about the enterprise from existing systems; the ability to deploy systems which
cross organisational boundaries (“enterprise applications”, typically cross-functional applications).
The problem for IT Management is to manage the degree of diversity, type and rate of change of an
enterprise technology infrastructure to meet the business objectives of the enterprise, without
constraining the business.
TECHNOLOGY
INFRASTRUCTURE
SOFTWARE TECHNOLOGY
ARCHITECTURE
SOFTWARE TECHNOLOGY
INFRASTRUCTURE
User Profile
Almost every employee in a enterprise is a user of information technology. The stakeholders in
information technology are executive management, business units and the information technology
division. These stakeholders are represented by executive management, line management and
influential end users.
View
User
Technology Infrastructure
End User
· The view presented through a
dumb terminal or desktop PC
or workstation
· Business Packages
· End-User Tools
Technology Infrastructure
· End-User (Product) Support · Business packages
· End-user tools (e.g. Personal
productivity applications)
· Desktop PC or Workstation
Application Architecture
· Systems Developer · Application Models
Technology Architecture
· APIs
· Operating System Services
· User Interface Services
· File & Database Services
· Messaging Services
· Component (Object)
Interfaces
· Communications Services
· Multimedia Services
Technology Infrastructure
· Operating Systems
· Databases
· Messaging Systems
· Other Applications
· Network
· Image, Text, Voice, Graphics,
Sound files
Technology Infrastructure
Technical Specialist
· Operating Systems
· TP Monitors
· Database Management Systems
· E-Mail/EDI Systems
· Protocols
Features
The Technology Architecture, which describes the Technology Infrastructure, must enable the
enterprise computing environment to be partitioned into clearly defined manageable components.
These components must be able to co-operate with each other and it must be possible to change or
enhance software components without impacting other software components. To meet these
objectives, the Technology Architecture should have the following features:
Simplicity
The Technology Architecture must be easy to understand and easy to communicate.
Classify Components
The Technology Architecture must focus on what components needs to be provided, rather than how
those components are implemented. It must provide a scheme for identification and de-coupling of
software components to enable technology requirements to be managed without being overly
concerned with complex inter-dependencies between software components..
Integration
The Technology Architecture must facilitate the integration of individual software components by
addressing Co-operation (Interoperability), Regulation, Compatibility and Portability. These terms are
defined in the following sections.
Absorb Change
The Technology Architecture must provide for technology independence so that software components
of the Technology Infrastructure can be changed or extended without impacting other software
components.
Integrated Systems
The Technology Infrastructure provides a platform for integrated applications and integrated systems
software. Integrated systems are required to be able to distribute applications in a heterogeneous
computing environment.
Benefits
Here are some of the benefits we can expect if we implement a Technology Infrastructure guided by a
Technology Architecture:
Location Transparency
Location transparency gives the user a view of data and function without knowledge of physical
location in the computing environment. The computing environment becomes a gigantic disk drive.
Management of Risk
An IT infrastructure provides appropriate levels of control, and a Technology Architecture provides
consistency and integration. Both can be used to manage risks.
APPLICATIONS
INFRASTRUCTURE
CONTROL
MANAGEMENT
SUPPORT
SOFTWARE TECHNOLOGY
INFRASTRUCTURE
This model is the pattern chosen to represent a physical Technology Infrastructure. When the base
technology of a Technology Infrastructure changes to component-based software, this model should
still hold because it is based on a client-server model of software (see Appendix).
This model is more than an illustration. It is the conceptual model of the Technology Infrastructure.
It gives a form and structure to the Technology Infrastructure. It is key because it offers an
APPLICATIONS
INFRASTRUCTURE
CONTROL
MANAGEMENT
SUPPORT
SERVICES
LAN
RPC Protocol
SQLAPI Network
API
Management
Protocol
WAN
APPC Protocol
Operating Inventory
API
System Services Management
API API
Software
Messaging
Distribution
API
Server
User
Interface
API Network Inventory
Management Management Other
Server Server Gateway
Servers
Object
Image FIle & Messaging Database
Storage
Server Print Server Server Server
Server
APPLICATIONS
INFRASTRUCTURE
CONTROL
MANAGEMENT
SERVICES
SERVICES
SUPPORT
SERVICES
Domains
The Technology Infrastructure Model defines four domains of software services that are present in an
enterprise software technology infrastructure, they are Control, Application, Support and
Infrastructure Management. The purpose of each domain is described next.
General Rules
Any software component used must not implement functionality that spans domains. The reason for
this rule is that, if this rule is not satisfied, it implies that the software performs more than one
fundamental function. In practice, until systems software is implemented in component form this rule
is unlikely to be satisfied (even though the internal design of a systems software product may separate
functionality into some internal domain structure or layers). In practice the best we can do is to
ensure that we don’t implement two software products to provide the same services.
Domain Rules
· The logical unit of addressability within a domain is a service.
· Services are implemented by software components called servers. A software server can provide
one or more services.
· A service definition (interface) consists of a service name and a template for the data, consisting
of the “in” and “out” parameters. This definition must remain consistent across the whole
environment.
· The protocols defined for Inter-Process Communication must be used when requesting a service.
Distribution
Distribution defined
One of the characteristics of the Technology Infrastructure is that it is distributed. To aid
understanding of a distributed computing environment it is important to provide a working definition
of distribution.
There are three aspects to distribution which together determine the degree to which a system is
distributed. They are Processors/Processing, Data and Control.
Processors/Processing
Distributed processing improves system resilience (eliminate single point of failure; relieve
performance degradation; availability), enables load balancing and provides a “best fit” by using the
processing environment best suited to a process. Distributed processing is a characteristic of
applications designed to the client-server model.
Levels of distribution are:
· Single Processor (different address space on same CPU)
· Multi-Processor (different CPU on same computer)
· Multiple Computers (different computer)
Application and system software distribution is enabled by a Remote Procedure Call facility.
Data
Data distribution is used to improve system resilience (eliminate single point of failure) and to
improve performance by locating data close to where it originates or is used (locality of reference).
Levels of distribution are:
· Single master Copy of Data and Directory (Location of Data)
A single copy of data is kept in a universally available location. No duplicate copies
exist.
Control
Distribution of control is used to provide a degree of autonomy in the computing environment and to
improve system resilience. However control is distributed, the system must appear as a single uniform
system (single system image), hiding the physical distribution and heterogeneity of the computing
environment.
Levels of distribution are:
· Centralised
A single fixed point of control in the computing environment.
· Master/Slave
Many control points under the direct control of a master control point. All updates and
maintenance are performed at the master control point.
· Autonomous (Non-Co-operative)
Autonomous systems each perform their own control using their own mechanisms and
are totally de-coupled.
· Autonomous (Co-operative)
Autonomous systems each maintain their own control and are completely coupled by means
of a co-operative protocol.
Distribution Rules
All logical designs within the Technology Infrastructure will cater for full distribution:
Processors/Processing
Multiple computers.
Data
Fully distributed data, replicated and/or partitioned.
Control
Multiple, fully autonomous, co-operating points of control.
Integration
Integration defined
In a distributed computing environment, heterogeneous or homogeneous, integration is necessary to
“undo” distribution. To aid understanding and guide the design and selection of software systems it is
important to provide a working definition of integration. There are two levels of integration. They
are Application Integration and Systems Integration. Systems Integration, or inter-operability, is a
prerequisite for Application Integration in a heterogeneous computing environment.
Systems Integration
Systems integration is a prerequisite for distributed applications in a heterogeneous computing
environment. Systems software which conforms to the protocol and interface standards of the
Technology Architecture is inherently able to be integrated and thus, enables applications to be
integrated in a distributed computing environment. These protocol and interface standards are the
features that enable Application Integration. That is, they are the mechanisms which enable
applications to communicate across the boundaries of differing systems software. In a systems
context, integration is the ability of different systems software to communicate. The term
“Interoperability” better describes the sense of Systems Integration.
Levels of Integration are:
· Network Integration
Integration Criteria
One of the design objectives of the Technical Infrastructure is to achieve full integration of the
individual components into a cohesive whole. To achieve this objective, the Technology Architecture
defines the major criteria which facilitate integration. These are completeness (functional
equivalence), compatibility of interfaces, and portability. The level of conformance to each of these
criteria determines to what degree integration will be achieved in the Technology Infrastructure.
Portability
Portability is defined as the ability to move software components between processing environments
and hardware architectures. Another sense of portability is the ability of different processing
environments to execute the same software component, rather than any inherent quality embodied in a
programming language and compilers. However, portability is usually viewed from a programming
language perspective. Levels of Portability are:
· Load and Go (Level 1)
A software component is fully portable if it can be moved from one processing environment
to another and executed without any change to source code.
· Interpretive (Level 2)
Interpretive portability is achieved when program source is transferred from one processing
environment to another and is either recompiled or run using an interpreter or emulator. No
change is made to source code.
· Transcribe (Level 3)
Transcription portability is achieved when the differences required to port to a different
processing environment are simple and do not impact the design of the software. Changes
that have to be made can be achieved through standard conversion techniques. So-called
“porting labs” do this using tools like code mirrors.
Integration Rules
Portability
Interpretive portability must be attained. For packages “Load and Go” portability must be attained.
User Interface
Full Compatibility must be attained
Programming Interface
Software products that provide services must conform to the defined service definitions.
Compatibility must be at level 1 (full) or level 2(adapted)
Interface Management
Interface incompatibilities are identified as one of the biggest inhibitors to achieving full integration.
The Technology Architecture defines a standard protocol and a standard programming interface i.e.
the interface which systems developers (level 2 users) will use. This is the Technology Architecture
view which was discussed in the section one.
The reality is that many products are, and will be, used which support many different interfaces. It is
idealistic (unrealistic) to believe that interface standards, per se, will solve the problems of interfaces
between software components (built or purchased). It is also naive to believe that vendors have the
customer’s interests at heart when designing their own standards. Industry standards will help solve
the problem, but the final responsibility rests with ADCO to ensure that the chosen software interfaces
are compatible.
If integration is a high priority, then it is imperative that ADCO takes a pro-active role in choosing
and managing interfaces through a formal Technology Acquisition Process (“TAP”). In that case, it
becomes the responsibility of the Technical Specialists (Level-1 Users) to adapt products and to
provide management tools so that all software used conforms to the interfaces defined by the
Technology Architecture. The minimum acceptable level is adapted compatibility.
Conclusion
Cost and time are factors that have to be considered in choosing and managing the interfaces. These
must be weighed up against the benefits of compatibility and portability which are critical in
achieving integration, consistency and, ultimately, a Single System Image
All of the above criteria are of the form:
· “What has to conform”
Interfaces and data formats
· “How must it conform?”
Interface and data format standards
· “How do you manage conformance?”
Techniques for achieving conformance.
By adhering to these criteria the features and benefits of the Technology Infrastructure can be
achieved.
Summary
All of these rules and criteria combine to form the framework for the definition and implementation of
software components. If the rules can be adhered to, then the probability of achieving integration and
distribution is increased. The software components that can be defined for a heterogeneous
computing environment are many and varied and change as the business needs and technology
change. Because of this volatility the software component descriptions are contained in the appendix.
ANALYSE FUNCTIONALITY
FUNCTIONALITY SATISFIED
Specialists and describes the rules for integrating functionality into ADCO’s Technology
Infrastructure. (Computing Environment).
Purpose
Gather high-level business requirements or features required of the Technology Infrastructure.
Deliverables
· List of business requirements expressed in terms of the technology architecture model.
Inputs
· Business IS/IT Plans
· Client-Server Model
· Technology Infrastructure Model
Process
1. Understand the Client-Server Model.
2. Understand the Technology Infrastructure Model.
3. Classify requirements in terms of the Technology Infrastructure Domain, Server, Service
hierarchy.
Purpose
Discover additional functionality required (if any) by analysing the knock-on effect of introducing new
functionality. New functionality in one domain may need new functionality in another domain or
software component.
Deliverables
· List of logical functionality required
· List of inter-dependencies between software components.
Inputs
· List of requirements expressed in terms of the Technology Infrastructure model domains and
software components.
· List of Technology Infrastructure software components.
· Current Functionality
· Technology Architecture Rules and Integration Criteria
Process
1. Match functionality required to functionality in the Technology Infrastructure model’s software
components.
2. Select each domain needed and document the functionality required.
3. Analyse the inter-dependencies between the domains to gain an understanding of the logical
functionality required.
4. Categorise missing functionality required into two types:
· Application-specific
· Potentially reusable (generic). This functionality might be an extension to current domains,
or require an entirely new domain.
1. Architect reusable functionality into domains thereby enhancing the overall functionality now
provided by the Technology Architecture. To do this incorporate the new functionality required
into domains by using the rules of the technology architecture model. Then analyse the inter-
dependencies between the domains once more to gain a full understanding of the logical
functionality required. At this stage we now have a full linear list of the initial business
requirements.
Purpose
To produce evaluation criteria for the functionality required to satisfy the requirements.
Deliverables
· List of services required
· List of interfaces required
Inputs
· List of logical functionality required
Process
The list of logical functionality required and the list of inter-dependencies between domains, obtained
from the previous step, are now taken and further refined. At the end of this step we now have
sufficient detail to evaluate software products for functional equivalence.
Purpose
To establish what can be re-used of the existing Technology Infrastructure
Deliverables
· List of requirements satisfied by existing Technology Infrastructure
· List of projects to investigate unsatisfied requirements
Inputs
· List of services required
· List of interfaces required
· List of conforming Technology Infrastructure
· Tactical plans for technology acquisition
Process
Match the output of the previous step to the existing Technology Infrastructure. Reuse should be
made of the Technology Infrastructure that is already conforming (i.e. fully compatible or adapted
compatibility). Reuse could also be made of components of the Technology Infrastructure that can be
adapted, but, obviously, needs to be adapted before it can be used.
By reusing the Technology Infrastructure that is “accommodated incompatible”, non-conforming
infrastructure is further entrenched, and this is to be avoided.
Purpose
Fully satisfy the requirements.
Deliverables
· List of requirements satisfied by the enhanced Technology Infrastructure.
· List of unsatisfied requirements (shopping list)
Inputs
· List of projects to investigate unsatisfied requirements
ENTERPRISE PROFILE
Specific Rules
Functionality
· Registration of new resources to assign a global unique identifier (GUID)
· De-registration and destruction of resources
· Addition of meta-data to any registered resource type.
· Amendment of meta-data (excluding GUID)
· Deletion of meta-data.
· Retrieval of meta-data.
· Copying of meta-data to other locations.
· Copying of physical resources.
Inter-dependencies
· Location Services
A global location service is required to determine the location of meta-data.
· Replication Services
A replication service is required to facilitate maintenance of currency of resources. Services
Security Services
Management of relationships between Users, Services and Data.
Specific Rules
Invocation of security services must be transparent to an application
Security checking will take place at the point of access.
A User resource is the focal point of security.
Inter-Dependencies
Resource Management Services
Directory Services
The maintenance and provision of Location and Currency information about resources.
Specific Rules
Responsible for location information about all resources at its own and all sub-network nodes.
Knows the network address of its immediate parent.
All requests for services are subject to authentication by the Security Services.
Functionality
· Maintain location data about resources.
· Provide location information about resources.
· Maintain currency data about resources.
· Provide currency information about resources.
· Load local servers when required.
Inter-Dependencies
Specific Rules
Requests for services are subject to authentication by the Security Services.
Functionality
· Synchronise the currency of all resources in the Technology Infrastructure.
· Synchronise the currency of all resources at a specified network node and its child nodes.
Inter-Dependencies
Image Services
Workgroup Services
LAN Protocol
WAN Protocol
Specific Rules
All functionality provided is location transparent.
Functionality
· Select data with location transparency.
· Insert data with location transparency.
· Update data with location transparency.
· Delete data with location transparency.
· Transform data from one format to another using the data interchange services.
Inter-Dependencies
· Data Interchange Services
Data format conversion.
· Resource Management Services
Provide meta-data storage.
Specific Rules
None
Inter-Dependencies
· Resource Management Services
Provide meta-data.
· Data Content Services
Provide facilities to define logical data views.
Specific Rules
All functionality is location transparent.
Functionality
· Define a view
· Modify a view definition.
· Delete a view definition.
· Execute Views with Select, Insert, Update and Delete functionality.
Inter-Dependencies
· Resource Management Services
· Data Interchange Services
Specific Rules
All functionality provided is location transparent.
Functionality
· Locate, Retrieve, Add, Delete, Move, Copy Object
· Select, Update object meta-data (properties)
· Search content (Text and OCR)
· Search based on meta-data values (properties)
Inter-Dependencies
· Resource Management Services
Meta-data storage and retrieval
· Directory Services
Maintain and return physical location of object.
Messaging Services
Responsible for storage and retrieval of messages (Text and Facsimile) and a storage structure for
personal and shared messages.
Specific Rules
All functionality will be location transparent.
Functionality
· Compose a message
· Send Message
· Receive Message
· Delete Message
· Move Message
· Forward Message
· Reply to Message
· Attach object to message (e.g. a FAX, document, spreadsheet, etc.)
· Create Folder (Local and Remote; Private or Shared)
· Delete Folder
· Promote Folder
· Demote Folder
· Export Folder
· Import Folder
· Search Folders
· Maintain personal address book of message recipients
· Maintain global address book of message recipients
· Convert messages between disparate messaging systems
· Provide API for messaging-enabled applications with all of the above functionality
Inter-Dependencies
· Resource Management Services
Meta-data storage and retrieval
· Directory Services
Maintain and return physical location of object.
Specific Rules
· Guarantees transparency for inter- and intra-processor communication.
· Guarantees the delivery of data.
· Guarantees secure communications.
· Invokes all servers.
Functionality
Provides a fast lightweight protocol aimed at providing a transaction-oriented transport mechanism
between clients and servers. The protocol makes a fast reliable message transfer mode of transport
available. The protocol does not impose constraints on the size of messages and therefore should
provide for assembly and disassembly of messages when required. The protocol is implemented
directly over the transport protocol and can use different transport protocols. The only requirement
from the transport protocol is that it must be possible to transmit an arbitrary packet, possibly of a
limited size.
The messaging model chosen for the Technology Infrastructure model is inherently an asynchronous
model. This provides for parallel processing between two co-operating environments, and enhances
the parallelism inherent in a multi-processing environment.
Inter-Dependencies
· Directory Services
Convert logical server names to physical server addresses.
Specific Rules
An instance of a display manager controls the visual interface. No other software component will
communicate directly to the visual interface.
Functionality
· Tailoring of user views of the computing environment.
· Tailoring of presentation formats (e.g. forms, dialogues)
· Interfacing to device drivers
· Transformation of input device specifics to application messages.
· Display data to the user interface
· Accept data from the user interface
System Services
Provides interfaces to the physical computing environment and resources.
Specific Rules
Services provided are not environment-specific.
Functionality
· File/Storage Services
· File and Directory
· Services
· Queuing Services
· Virtual Device Services (e.g. Screen and Printer)
· Network Services
· Memory Management
· Task/Process related Services
· System Control
· Time
· Monitors
· Semaphores
· Signals
· Schedulers
Inter-Dependencies
· Security Services
· Resource Management Services
· Inter-Process Communication Services
Database API
Messaging API
Communications API
Specific Rules
· Must be able to monitor network events
Functionality
· Definition of Network Events
· Maintenance of Network Events
· Logging of Network Events
· Triggering of Actions.
Inter-Dependencies
Specific Rules
-
Functionality
· Collect inventory data
· Store inventory data
· Query Inventory data
Inter-Dependencies
Directory Services
Data Content Services
Replication Services
APPENDIX C1
Distribution
Microsoft supports Processor, Data and Control distribution. Microsoft Windows NT Server executes
on single or multi-processors. Microsoft Windows NT Server’s Domain architecture enables an
enterprise to create NT Servers as autonomous co-operating points of control. Alternatively, the
Microsoft Network enables workgroups to set up peer-to-peer networks with each node operating
autonomously. Microsoft SQL Server supports full data distribution, replication and partitioning.
Integration Criteria
Microsoft’s Windows Open Services Architecture (WOSA), OLE and Win32 enable the creation of
fully integrated applications and systems. ODBC provides an open (published API) standard for
database access. MAPI provides an open standard for e-mail and messaging. OLE provides an open
standard for the development of co-operating software components. RPC provides a DCE-compliant
interface for inter-process communication in a distributed heterogeneous computing environment.
Microsoft’s support for TCP/IP enables integration across heterogeneous systems. Win32 provides an
open standard for the development of GUI applications. The Win32 interface is emulated in IBM’s
OS/2 and in various UNIX environments (using Windows Application Binary Interface WABI, or
emulators developed using Microsoft’s WISE software development kit).
Microsoft’s product line provides a complete technology infrastructure for building a distributed
computing environment. Microsoft’s Back Office products are designed to inter-operate with the all
major server operating systems and clients. In this sense Microsoft’s technology satisfies the
completeness criterion.
Adapted Compatibility in a heterogeneous computing environment can be achieved through the use of
emulators, although that solution should be considered only in the short-term.
“Load and Go” portability is achieved automatically for any software written for Windows NT Server
or Windows NT Workstation. Windows NT executes on a variety of single- and multi-processor
hardware including Intel, MIPS, DEC Alpha, and PowerPC. Through the emulation of the Win32
interface “Interpretive” portability can be achieved. Through the use of code-mirroring techniques,
“Transcribe” portability can be achieved.
The User Interface, Application Programming Interface and Data Formats are open (Published) and
thus Microsoft’s technology meets the integration criteria.
Summary
A Microsoft technology platform provides maximum flexibility for working in a heterogeneous
distributed computing environment. In a homogeneous distributed computing environment, based on
Microsoft technology, an enterprise has the ability to centralise or distribute processors and
processing, data and control throughout the enterprise.
APPENDIX C3
APPENDIX C4
APPENDIX C5
APPENDIX C6
MODELS
These models are used to develop, communicate and understand the Technology Infrastructure.
Different models will be required for different audiences and/or to communicate different concepts.
The models are not a design, nor are they models for implementation.
Process A Process B
Requests Services
CLIENT SERVER
Provides Services
In the Client-Server Model, a service is defined as a logical unit of work and a process is defined as
any executing program. Clients are requestors of services and Servers are providers of services.
Processes can be Client and/or Servers. Services are requested or provided by sending messages
between processes.
Whenever a client needs work done that it cannot do itself, it will send a request (message) to a server.
The server will perform the work for the client and send back a reply (message). If a server needs
work done (services), the server, in turn, becomes a requestor of a service i.e. a client.
Server does not mean hardware, it means an executing software process that services clients.
TECHNOLOGY TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
TECHNOLOGY
backed up with examples of duplication of function and data, problems of integration, and costs in the
current Technology Infrastructure.
TECHNOLOGY
INFRASTRUCTURE
backed up with examples of cross-functional business capability, shared function and data, integration
capabilities, and costs in the desired Technology Infrastructure.
Network Infrastructure
Network
Cabling & LAN to WAN
Adapter
Hubs Bridge/Router
Modems Cards
LAN
Protocol
Desktop
MultiPlexers
Front-End LAN-to-LAN Hardware
Processors Bridge
TeleComms
Lines
WAN Server
Bridge/Router
Protocol Satellite Cluster Hardware
Links Controllers
Gatewys
Desktop Other
Server Operating
Operating DBMS Server
System
System Types
Workstation Types
Desktop hardware has been classified into types. Each type defines a technical specification and
usage category. This classification by type serves three purposes.
Firstly, it facilitates a simpler hardware acquisition process for the user. By specifying the workstation
type, the user is relieved of the burden of having to supply technical specifications when ordering.
Secondly, it facilitates a simpler way of deciding what type of workstation to order. By stating the
intended usage, the user is assured that the workstation type will be capable of meeting the user's
requirements. This can eliminate the frustrating situations where users purchase low-cost PC's with
high-end usage expectations.
Thirdly, it enables to maximise the usage of its PC technology. By classifying workstations and taking
a corporate view of the deployment of workstations, organisation can maximise its investment in
workstation by redeploying workstations according to user's requirements.
· 101-Keyboard · Keyboard
· Mouse · Mouse
Network Interface Card 16 bit Ethernet RJ45, 16 bit Ethernet RJ45, 16 bit Ethernet RJ45,
10 Mbps 10 Mbps 10 Mbps
Operating System Windows for Windows for Windows 95 or
Workgroups Workgroups, Windows Windows NT
95 or Windows NT Workstation
Workstation
Network Protocol TCP/IP TCP/IP TCP/IP
General
All workstations are capable of being connected to a network. By default, all workstation types are
connected to a network.
Type A
Since type A classifies an installed base of hardware and operating systems, demanding that users
upgrade to meet the specification is unrealistic.
Recommendations
(1) On redeployment of 386DX and 486SX workstations, upgrade them to meet the Type A technical
specification.
Specifically, upgrade to:
· 8Mb RAM
· TCP/IP protocol
Types B and C
Types B and C include a network interface card, whereas currently a user must order a network
interface card as a separate item.
Types C is distinguished from type B by the ability to upgrade the processor.
Types B is the minimum specifications for new workstations. By default, new workstations will be
Type B. Acquisition of Type C workstations will require a motivation based on application
requirements. Type C is appropriate when it is anticipated that there will be need for frequent
upgrades to provide more computing power.
Depending on application requirements, this base technical specification may be enhanced with more
memory, larger monitors, specialised peripherals (e.g. Scanners), and specialised cards (e.g. Image
compression/decompression cards, Sound/Video cards).
Notebooks
*** TO BE DECIDED ***
In the majority, the current usage of notebooks is for stand-alone computing with intermittent dial-up
for terminal emulation. As mobile computing (with intermittent or frequent connection to the
enterprise network) becomes common, the strategy for desktop hardware will need to be revised.
To adopt notebook technology now, as an alternative desktop standard, would be prohibitively
expensive on a large scale. A notebook with the specification of a type B or C workstation will cost an
extra R 5000 to R10 000 per desktop over the current negotiated desktop prices because notebook
technology is evolving using more expensive leading-edge technology.
The type B and C specifications are necessary to enable Company to deploy business-critical systems
which will typically require one or more concurrent communications links, a multitasking operating
system and a graphical user interface.
Purchasing of notebook technology now, based purely on low price, means that we will be lowering
the specification of devices that may well become the next generation of desktops in Company. That
takes us right back to where we were before the Company LAN strategy. We may be constrained in
our deployment of business-critical systems in the future by the [lower] power of our notebook desktop
hardware.
That is not to say that we should ban the purchase of notebooks. We can't. But bear in mind that,
currently, the lower the price, the lower the specification, and that may limit us in the future.
Recommendation
As a standard, printers will be LAN-attached. This will allow for management of printers as a device
on the network, instead of being a peripheral attached to a workstation or server.
Corporate applications on LANs use the intrinsic print facilities of LANs
Mainframe printing
...
· Software Services
The table shows the software services implemented by each software server product.
SERVICE IMPLEMENTED BY
Software Installation, Configuration & Microsoft Systems Management Server
Distribution
X.400 Gateway, E-Mail MS-Mail Gateway (1)
Microsoft Exchange Server (H2/95)
SNA Services Microsoft SNA Server
Database Microsoft SQL Server
Database Gateway *** TO BE DECIDED ***
File Storage Microsoft Windows NT Server
Software Storage Microsoft Windows NT Server
Printing Microsoft Windows NT Server
Notes
Tools
Whilst modern application development environments include debuggers, compilers, editors, etc.,
there is a need to define a standard software version control system for the PC environment.
CD-ROM's
q Development Library
General
An "N/A" entry in the table means that the workstation type is not intended to provide this feature.
(1) Type B : Windows for Workgroups or Windows/NT
Depending on application requirements.
(2) 3270/5250 Terminal Emulation Client Software
*** TO BE DECIDED ***
Requests for volume prices have been sent out.
Notes
LOCATIONS
HEAD OFFICE REGIONAL URBAN DISTRICT DISTRICT
OFFICE OFFICE OFFICE (1) OFFICE (1)
SMALL TINY
Notes
(2) Printing
Where a LAN exists, Printers are attached to the LAN (i.e. not to the server machine).
Front-Office Operations at Branches
Require PC-attached printers. See also Hardware Specifications/Printers
Small District Office.
A printer attached to a workstation may be shared by workstations using Windows for Workgroups.
One workstation will use Microsoft Windows NT Server or Workstation to provide printing services
Tiny District Office
A printer is attached to the workstation.
The workstation will use Microsoft Windows NT Server or Workstation to provide printing services
Options for Confidential/Sensitive printing:
VENDOR
Use
LAN
VENDOR
LAN
BUSINESS Use
USERS
VENDOR
LAN
Manage
LAN
OPERATIONS
& SUPPORT
DEVELOPERS
SOFTWARE
VENDOR(S)
Use
HARDWARE
VENDOR(S)
Manage
LAN
OPERATIONS
& SUPPORT
Figure 11: Standard Infrastructure, Alliance with hardware & software vendor(s)
Compare Figure 1 to Figure 2, where we define LAN Infrastructure standards and choose an alliance
with hardware and software vendors.
Description
LAN nodes/Workstations are the most populous device in the organisation. Today ADCO has
approximately 1000 of them, and every year we buy more. Supporting these devices is where most of
the time, money and effort goes in operating a LAN and it is in ADCO’s best interests to standardise
the workstations. To reduce support costs and eliminate unnecessary faults due to lack of proper
configuration management it is imperative to exercise more control over the physical configuration of
each and every workstation.
We need to change our view of a PC from a Personal computer to a Corporate computer. This means
that the hardware, operating environment and configuration will be standard and will not be
configured to meet individual preferences. Sounds draconian? Well, maybe! We're relying on the
new LAN technologies to give us the flexibility to control what needs controlling, and leave to
personal preference what should be left to personal preference. For example, there is no benefit in a
user exercising personal preference over the location of an operating system, or any other software,
provided that it loads and operates fast enough when the user wants to use it. It does make sense that
a user chooses the colour and layout of a graphical user interface.
What does it mean to "compromise the workstation"? Running OS/2 or UNIX when the standard is
Microsoft Windows for Workgroups and Windows/NT; Using LOTUS 1-2-3 when the standard
spreadsheet is Excel; Individuals making choices on how software will be installed or how the
operating system will be configured. These are all examples of "compromising the workstation".
Each time this happens, a support overhead is incurred.
If we give way on this principle, we leave ourselves open to a chaotic LAN environment because we
have so many workstations. In other words, we will be back to square one.
That is why we say that if this principle is not accepted, then this LAN Infrastructure design is null
and void. Similarly if the principle is accepted but not enforced, we'll have the same outcome.
Business Impacts
Manageable installed base of workstations.
Focused training for supporters & users
Less choice and less management/admin. overhead
Less purchasing overhead
Fewer vendors to manage -> less overheads
Users can become more expert, by using one operating system/environment
Cost savings through bulk purchasing
Focused skills
Description
Systems software products like DBMS', Gateways and LAN Operating Systems are sensitive to the
hardware they run on because they exploit hardware features at a much lower level than application
software does. When we have many varieties of hardware, we get compatibility problems. When we
get problems on a server, up to 200 users may be affected. Problem diagnosis is complex.
By having a standard server platform (hardware and operating system) we minimise the risk of
failure. That means that if we do get hardware/software compatibility problems, then once we've
solved them, we've usually solved them for all of our servers.
Operating and supporting servers requires a higher degree of skill than supporting a workstation.
Skills of this nature are at a premium. By adopting central management of servers, we can pool
scarce skills and use them more effectively.
Distributing servers within the network means that we will make conscious decisions about server
deployment, rather than the de facto "one per LAN" deployment strategy.
Business Impacts
The "right" number of servers to meet our needs
Focused training for supporters & users
Less choice
Less purchasing overhead
Fewer vendors to manage
Operations staff become more expert - one operating system/environment
Cost savings through bulk purchasing
Focused pool of skills
Less duplication of servers
Common approach (Installation, Operation, Management)
Description
Operating and supporting LAN-based software services requires a higher degree of skill than
supporting, say, a word processor or a spreadsheet. Skills of this nature are at a premium. By having
more than one product to do the same job, e.g. two or three different DBMS' and two or three different
Network Operating Systems, we stretch our capacity to provide effective support. By defining
standard services, we can pool scarce skills and use them more effectively.
By adopting central management of LAN-based software services, we can begin to exploit some of the
more advanced features of these software products to our benefit.
Excessive capacity is caused by duplication of services, the "one per LAN" de facto standard. These
services are expensive and are individually under-utilised or not used at all.
Distributing LAN-based software services within the network means that we will make conscious
decisions about service deployment. You may have noticed that servers and services go hand-in-hand.
The same arguments apply here.
Description
On large LANs and remote LANs it is not feasible to perform regular checks on every workstation for
adherence to standards, software piracy, currency of software and general well-being of the
configuration. Remote support will enable us to perform these checks and ensure that our
workstations are in a proper state for reliable operation. We can also reduce travel and/or walk-about
costs for support.
Remote management of servers enables us to deploy servers appropriately within the network whilst
retaining management control.
In both cases, we can extend the range of operation and support further out into the network without
having to move the skills out.
Description
Similar argument to Remote Management of Servers and Workstations. We can ensure that only legal
software is used. We can manage software upgrades more effectively by not having to visit every
workstation. We can standardise the way software is installed. We can manage what software is
installed.
Business Impacts
Configuration & Installation
Hardware and software configurations are predictable
Standardised, resulting in ease of support
Extend skills further into the network
Improved service turnaround, through reduced time to diagnose problems
The number of software problems due to configuration problems drops
Reduced travel costs for support
Distribution
Management of software releases (e.g. Office automation applications)
Fewer people needed to perform & manage software distribution
Ease of support
Description
Workstations
The bulk of support effort in a LAN environment is directed to workstations. This is the environment
that needs the most protection from deviations from standards since workstations are the most
populous device in our LANs.
Business Impacts
Be aware of and manage dislocations
Manage known dislocations, instead of attempting to manage a divergent infrastructure
Description
It is realistic to expect that extraordinary business requirements may result in a LAN-based business
system that deviates from our LAN Infrastructure standards. While every attempt should be made to
have vendor's products conform to our standards, here's how we propose to deal with those, hopefully
extraordinary, situations. There are three situations that we envisage:
1. The solution completely conforms to our LAN Infrastructure standards.
No problem
2. We can accommodate the solution without compromising our workstations, but the server and/or
services do not conform to our standards.
To protect the workstation platform from compromise, any vendor solution that deviates from our
workstation standards shall be capable of being encapsulated within a server and it is the vendor's
responsibility to guarantee that capability.
The server and/or service will be managed as a separate environment. That environment will fall
outside the scope of support infrastructure. The business unit requiring this solution will be
responsible for arranging support for this environment. Ideally, this support will be provided by
the vendor, since the organisation’s training and support will be directed to the standard LAN
infrastructure.
Every attempt should be made to mange the vendor to converge to our LAN infrastructure
standard.
3. The vendor's solution does not meet any of our LAN infrastructure standards.
The whole environment will be managed separately. That environment will fall outside the scope
of the standard support infrastructure. The business unit requiring this solution will be
responsible for arranging support for this environment. Ideally, this support will be provided by
the vendor, since the organisation’s training and support will be directed to the standard LAN
infrastructure.
The features and facilities of the environment shall be exploited solely in the context of the
business solution. For example: ADCO purchases a turnkey business solution which executes on
UNIX. If UNIX is not part of our LAN Infrastructure standard, then any internal systems
development on UNIX must be directly related to that business solution.
Every attempt should be made to manage the vendor to converge to our LAN infrastructure
standard.
Deviation from our LAN standards should be considered only to meet extraordinary business
requirements.
Illustrations
Workstation Workstation
ADCO NETWORK
Service
Service
Service
Service
ADCO NETWORK
Workstation Workstation
Figure 1 illustrates the Infrastructure from a user's perspective. There is just a network. No LANs
and no WAN’s from the user's perspective.
ADCO NETWORK
Standard
Server
Workstation
Standard Workstation
Service #1 Server
...
... Dedicated
Service #n Service
Workstation Workstation
Standard
Non-Standard Server
Server
Service #1
Dedicated ...
Service ...
Workstation Service #n Workstation
ADCO NETWORK