CSC 610
Computer Systems Architecture
Submitted in partial fulfillment
Of the requirements for the Degree
Of
Doctor of Philosophy, Computer Science
At
Central Pacific University,
Honolulu, Hawaii
By
Richard F. Kubli
Submitted to:
Anthony S. Russo, Ph.D, CS
Lead Computer Sciences Faculty Advisor
Central Pacific University
Contents
Introduction 3
Fundamental Concepts 5
Hardware 6
Software 9
Data 12
People 15
The Future 18
Bibliography 20
Introduction
Figure 1. --- Computer System Model
Figure 1. describes the basic Architecture of the general-purpose (programmable) computer envisioned by John von Neumann in 1945. This led to the EDVAC which was the first operational stored program computer --- which led to the UNIVAC 1 (First Commercial Application) in 1951.
Although there has been an exponential improvement for the individual components of the Architecture since 1951, the basic Architectural Model developed by von Neumann still persists. The Input--Processing--Output (IPO) algorithm supported by a stored program has not changed. Punch Cards have been replaced by an Optical Scanner, Keyboard, Mouse, and etc. to mitigate the Input Bottleneck. Hard-Copy listings of Punch Cards have been replaced by Visual Display Units, Printers, and Physical Control Devices. Automatic Interfaces update other Systems that in the past were manually posted to reflect hard-copy results. My days of manually updating the Sales Kardex from the Punch Card Listings at the Wholesale Grocer in middle 1960s is an event hard to imagine in present day. Although the IPO algorithm has not changed much, the Hardware/Software components supporting the algorithm have improved dramatically.
Likewise the Central Processing Unit (CPU) has remained architecturally unchanged. We still have a Control Unit (CU), an Arithmetic-Logic Unit (ALU), Cache Memory, and Primary Storage (RAM, ROM, EPROM, etc.). Improvements in Chip Technologies provided Special Purpose Processors such as Math Co-processors, I/O Processors, and etc. to compliment von Neumann's General Purpose Programmable Computing Concept.
Secondary Storage has improved dramatically since 1951 providing unforeseen options to those original Hollerith 80 Column Punch Cards. Unit Record Equipment to sort, collate, and list Punch Cards has long ago been replaced by Magnetic Disk, Optical Disk, Tape, and etc. However, again the purpose of this segment as it contributes to the Architecture has remained unchanged.
An essential component of the Architecture of the Computer System Model described by Figure 1. Is Software. Advances in Software are required to keep pace with the advances in Hardware. Operating Systems (OS) manage the critical Hardware, Software, and Data Resources of the Computer System. Development Software provides the environment to develop the Application Software which turns the General Purpose Machine envisioned by von Neumann into a Special Purpose Machine.
The remaining component (often the forgotten component) is People. If Users cannot apply the Computer System Architecture to support Enterprise Operational, Tactical, and Strategic Activities, then the Architecture will not evolve. As such advances in Information Technology (IT) will extend the Architecture only if People can apply advances in IT to the Enterprise. People ,as has always been the case, are the limiting factor.
Von Neumann in his infinite wisdom realized that the Computer System Architecture Model had to be adaptable, flexible, and useable. Client/Server (C/S), Distributive Processing (D/P), Massively Parallel Processing (MPP), and Symmetrical Multi-Processing (SMP) are terms unfamiliar to von Neumann in 1945. Not surprisingly his basic Computer System Architecture Model has adapted to these Architectural Extensions just as it has adapted to rapid IT advancements in Hardware, Software, and Data Management over the last 55 years.
Fundamental Concepts
The Computer System Architecture Model includes four major components: Hardware; Software; Data; and People (Users). These are the same fundamental components which are also considered fundamental Information System or IT Resources. As such, von Neumann in 1945 envisioned a Computer System Architecture Model that directly corresponds with what is considered today fundamental IT Resources required to support the Enterprise.
The successful evolution of the Computer System Architecture Model depends on the application of advances in these IT Resources to create Computer Systems to support the Enterprise's Business Model.
Hardware
Figure 2. --- Input Hardware
The Input portion of the IPO algorithm has always been a major bottleneck for the Computer System Architecture Model. Major improvements did not occur until Fourth Generation Graphical User Interfaces (GUIs). Pointing Devices have come along way since the Punch Card Days to finally provide the User opportunity to interact with the Hardware, Software, and Data Components of the Architecture.
Figure 3. --- Output Hardware
The same Media Methods that have improved the Input portion of the IPO algorithm can be used to improve the Output portion. As was the case with Input Hardware, the Fifth Generation GUI has become more natural, expeditious, and intuitive for Output Hardware as well. These improvements have not only eliminated the dreaded Punch Cards, but also the voluminous Hard-Copy Reports and Documents that tend to make Users "Data Rich" but "Information Poor".
Figure 4. --- Primary and Secondary Storage Hardware
As the cost/capacity and cost/access-speed have improved at an exponential rate for Data and Program Storage, the Computer System Architecture Model first proposed by von Neumann some 55 years ago has proven its ability to evolve and support the ever increased demands on IT to support the Enterprise. Dramatic improvements in cost/performance of Storage have begun to blur the distinctions between Primary and Secondary Storage. Even though as access-speed increases the cost per Bit also increases, Primary Storage today costs less than Secondary Storage a few Hardware Generations past. For example 64 MB of DRAM costs about $30 for a Desktop PC.
Figure 5. --- Central Processing Unit (CPU) Hardware
Figure 5 summarizes the dramatic improvements in the Processor (CPU) portion of the Computer System Architecture Model afforded by transition from Vacuum Tubes to Silicon and Very-Large-Scale Integration (VSLI). Special Purpose Processors and Primary Storage have also taken advantage of this transition and the associated manufacturing processes that have made these dramatic improvements possible.
As such dramatic improvements in the cost/performance of the Hardware Component far exceeded everyone's expectations including von Neumann.
Software
Figure 6. --- Software Examples
The General Purpose Programmable Computer System Architecture Model envisioned by von Neumann in 1945 could not have evolved to it's present state without advances in the Software Component. Software is segmented into two major categories --- Application and System.
Advances in Operating Systems and Network Management Systems have been instrumental in extending the base Computer System Architecture Model to support Three Tier Client Server (TTCS), Distributive Processing (D/P), Massively Parallel Processing (MPP), and Symmetrical Multi-Processing (SMP) Computer System Architectures. In addition to System Management Software, System Development Software provides the means for developing, installing, and maintaining Application Software. Without Application Software the General Purpose Programmable Computer System Architecture could not be adapted to support the IT needs of the Enterprise.
As such, all the members of the Software Family must work in synergy to extend the Computer Systems Architecture Model. The Software Component drives the Hardware Component of the Computer Systems Architectural Model. The Software Component turns the General Purpose Machine into a Special Purpose Machine.
Figure 7. --- Key Trends in Software
Although the basic underlying fundamental concepts supporting the Hardware Component of the Computer System Architecture Model have remained static, the Software Component has undergone dynamic change. Rapid Application Component Based Object-Oriented Languages (RACBOOL) is a major advance over my early experience of wiring circuit boards for Unit Record Equipment at the Wholesale Grocer. Object-Oriented Development (OOD) is a more natural way of developing Software. Users (People Component) are more likely to maximize their use of Application Software if it's use is intuitive or natural. OOD provides Software Components that can be assembled, re-used, and tailored without knowledge of the nuances of any particular Programming Language. In fact Integrated Development Environments (IDEs) are becoming Program Language Independent. As such, finally the Software Development Life Cycle (SDLC) is directed toward the Enterprise User instead of the Programmer (Coder).
As improvements in the Hardware Component were continually directed at the User to ease the IPO Bottleneck, likewise the Software Component beginning with Fifth Generation is taking the same track. As stated many times the limiting factor for extending and evolving the Computer System Architectural Model is the User (People Component). The Software Component is the "glue" that will bind the Hardware, Data, and People Components of the Architecture to allow it to evolve to serve the IT needs of the Enterprise.
The RACBOOL approach is a dynamic paradigm change that will ensure the "glue" sticks. Although 55 years ago von Neumann could not envision OOD, he knew Software was the key to ensure Users could use his General Purpose Machine for their Special Purpose(s).
Data
Figure 8. --- Database Management Systems (DBMS)
The OOD paradigm change seen in the Software Component has also carried over to the Data Component. Rather than managing the Data through the Application Software, Data is managed by Database Management System Software (DBMS). This approach provides a Software Component that is dedicated to managing the Data. As such, these Software Objects (Components) do not have to be re-invented for each individual Application Software Component.
The DBMS has become an important member of the System Software Family. The DBMS has become integrated with the Application Software to provide a complete Application Software Solution.
As such, new Applications have become Database Design Driven as opposed to Report Design Driven. The Data Model has become the major determinant of the success of the Application Software. Since most of the traditional Application Software Functions (Input, Query, Database, and Report) have been subrogated to the DBMS, the only remaining variable is the Data Model.
Figure 9. --- Distributed Databases
Development of an Enterprise-wide Data Model is a difficult proposition because of the dynamic nature of the Enterprise's Data Component. Flat Files and Databases unique to particular Applications are physically distributed across the Enterprise supported by a myriad of DBMS and File Processing Technologies. As the Computer System Architecture Model evolved, specific Data-Stores were developed on an Application by Application basis, rather than on an Enterprise-wide basis.
As such reversal of this process, will require a migration plan to build an Enterprise Data Model from the existing Data-Stores. Data must be cleaned, normalized, and converted to the new Enterprise-wide structure. The Data Model must be built in stages as a work-in-process, while accommodating the ongoing Production Application's Data requirements.
Figure 10. --- Development of Data Models
Development of the Enterprise-wide Data Model requires a focus on the Enterprise's Business Processes. Re-engineering and improvement of the Enterprise's Business Processes drives the planning, design, and development of the Data Model(s) required to support those Business Processes.
This is a revolutionary approach toward evolving the Data Component portion of the Computer System Architecture Model. An approach that first defines the Business Process to determine the Data Model that drives the Computer System Architecture required to support the Business Process. Another words, in this new era of Pre-Assembled Certified Component Objects the uncertainty of the Computer System Architecture is primarily confined to the Data Model. Get the Data Model right --- you get the Architecture right.
The problem is that the Data Model view is Enterprise-wide as opposed to an Application-specific view. Furthermore, develop the Data Model to support re-engineered and/or improved Business Processes rather than merely to support existing Business Processes. Thus the Computer System Architectural Model relates to the Enterprise as a whole rather than to specific Applications. The Model must be based on a viable Long Range Information Systems Plan (LRISP) rather than individual specific Application Plans.
People
Figure 11. --- Virtual Team
The limiting component of the Computer System Architectural Model is People. Regardless of the technical viability of the Hardware, Software, and Data Components, if People cannot use, develop, and maintain the Computer System Architecture it is going to be a failure. As the Computer System Architecture Model evolves through advances in Hardware, Software, and Data Management Technologies, User, Developer, and Support Personnel must adjust their roles and modus operandi to keep pace. Virtual Teams representing "stake holders" of User, Developer, and Support Personnel from an Enterprise-wide perspective must be formed to actively participate in development, evolution, and extension of the base Computer System Architecture required to support the Enterprise.
Figure 12. --- Enterprise Collaboration System
Accordingly, the base Computer System Architecture Model must be extended to provide an Enterprise Collaboration System to support the process of Virtual Teams described above. Advances in Hardware, Software, and Data Management surely can be used to support the re-engineering and improvement of the SDLC. Project teams isolated geographically or focused on a particular aspect of the Computer System Architecture should be able collaborate and contribute to the Enterprise-wide effort.
Figure 13. --- Groupware and Collaboration Tools
Fifth Generation Hardware, Software, and Data Management tools have made Enterprise Collaboration a reality for ensuring the People Component of the Computer System Architecture can keep pace with the advances in the other Components. Any Enterprise that does not take advantage of these Groupware Collaboration Tools risks the People Component truly become the limiting factor which in the end impedes the growth, evolution, and extension of the Computer System Architecture.
The Future
The base Computer System Architecture Model envisioned by John von Neumann in 1945 has persisted for 55 years. Exponential advances in IT have extended the reach of the Computer System Architecture Model to every aspect of the Enterprise's Operational, Tactical, and Strategic Processes. Enterprises that continue to evolve the Architecture Model to enhance and support Business Processes will continue to profit, grow revenue and gain market share.
The Hardware component will continue it's exponential improvement of the Cost/Performance Ratio. As such, Microprocessors will pervade all electro-mechanical devices from automobiles to watches. The rapid proliferation of the Hardware Component will not take place without a comparable advancement in the Software Component. This has been the case since 1945 and is expected to continue. OOD along with Component Development has been the major catalyst for ensuring that the Software Component kept pace with the Hardware Component of the Architecture.
The Data Component evolvement although fueled by advances in the Hardware and Software Components, requires re-structuring of the Data Model for Enterprises with Legacy Systems embodying obsolete IT. This will require LRISP to migrate the existing Data-Stores to a new Enterprise-wide Data Model that supports re-engineered Business Processes. The LRISP process will require active participation of Personnel through out the Enterprise.
Even though the Hardware, Software, and Data Components of the Computer System Architectural Model will continue to advance unabated, beneficial application of the resulting benefits will require the People Component. If People cannot continue to use and/or apply the IT Benefits, then the advances anticipated in the Computer System Architecture Model will not continue to provide benefits to the Enterprise. As such, the People Component becomes the limiting factor.
Continued growth of the People Component requires taking advantage of these continued advances of IT to support the People Component. Thus all four Components of the Computer System Architecture Model must work in synergy. New Collaborative Applications will evolve from the Architecture to allow active participation of all Personnel within the Enterprise to apply IT to improve Business Processes. The application of IT will continue to permeate the Enterprise at even a greater extent than von Neumann could envision.
Bibliography
1.) Introduction to Information Systems, Essentials for the Internetworked Enterprise, 9th Edition, James O'Brien, Irwin-McGraw-Hill Publishing, 2000
2.) Encyclopedia of Computer Science, Anthony Ralston, Petrocelli/Charter, 1976
3.) Operating System Concepts, Fifth Edition, Abraham Silberschatz and Peter Baer Galvin, John Wiley & Sons, Inc., 1999
4.) Operating Systems Survey, Anthony P. Sayers, Auerbach Publishers, 1971
5.) OS Data Processing with review of OS/VS, Harry Carroll, John Wiley & Sons, 1974
6.) Computer Organization and the System/370, Harry Katzen, Jr., Van Nostrand Reinhold Company, 1971
7.) Computer Architecture, Caxton C. Foster, Van Nostrand Reinhold Company, 1971
8.) Operating Systems, Stuart E. Madnick and John J. Donovan, McGraw-Hill Book Company, 1974
9.) Computer Structures, Bell & Newell, McGraw-Hill Book Company, 1971
10.) I/O Design --- Data Management in Operating Systems, Donald E. Freeman and Olney R. Perry, Hayden Book Company, Inc., 1977
11.) Operating Systems --- A Systematic View, William S. Davis, Addison-Wesley Publishing Company, 1977
12.) Operating Systems a pragmatic approach, Harry Katzen, Jr., Van Nostrand Reinhold Company, 1973
13.) Architecture and Implementation of Large Scale IBM Computer Systems, N.S. Prasad, QED Information Sciences, Inc., 1981
14.) Systems Analysis and Design for the Small Enterprise, Second Edition, David Harris, The Dryden Press --- Harcourt Brace College Publishers, 1999