Title: Systems and method for determining performance metrics for constructing information systems
Abstract: A method and apparatus for designing an optimal IS architecture of a business entity is disclosed. In different levels of abstraction, a business operations model, an applications model, a physical requirements model and technical infrastructure model are produced. The models in a stepwise manner generate an IS architecture meeting desired performance criteria of the business entity. An optimizer evaluates, in a numerical manner, implementations of the IS architecture and design alternatives such that an optimal IS architecture is determined. Subsequent continual refinement of the IS architecture is achieved by remodeling the physical requirements and the technical infrastructure, and by evaluating through the optimizer the then produced IS architecture.
Patent Number: 6,990,437 Issued on 01/24/2006 to Abu El Ata
| Inventors:
|
Abu El Ata; Nabil A. (1820 S. 181st, Omaha, NE 68130)
|
| Appl. No.:
|
606869 |
| Filed:
|
June 29, 2000 |
| Current U.S. Class: |
703/2; 703/22; 707/2; 711/159 |
| Current Intern'l Class: |
G06F 13/00 (20060101); G06F 12/08 (20060101) |
| Field of Search: |
703/2,22
707/2,102,5,513
709/220,221,223
705/7,35
715/513
711/159
|
References Cited [Referenced By]
U.S. Patent Documents
| 5146591 | Sep., 1992 | Bachman et al.
| |
| 5193183 | Mar., 1993 | Bachman.
| |
| 5195178 | Mar., 1993 | Krieger et al.
| |
| 5208765 | May., 1993 | Turnbull.
| |
| 5233513 | Aug., 1993 | Doyle.
| |
| 5241645 | Aug., 1993 | Cimral et al.
| |
| 5276877 | Jan., 1994 | Friedrich et al.
| |
| 5297279 | Mar., 1994 | Bannon et al.
| |
| 5446874 | Aug., 1995 | Waclawsky et al.
| |
| 5486995 | Jan., 1996 | Krist et al.
| |
| 5522014 | May., 1996 | Clark et al.
| |
| 5539652 | Jul., 1996 | Tegethoff.
| |
| 5680590 | Oct., 1997 | Parti.
| |
| 5724556 | Mar., 1998 | Souder et al.
| |
| 5724569 | Mar., 1998 | Andres.
| |
| 5726914 | Mar., 1998 | Janovski et al.
| |
| 5729746 | Mar., 1998 | Leonard.
| |
| 5771370 | Jun., 1998 | Klein.
| |
| 5790789 | Aug., 1998 | Suarez.
| |
| 5801958 | Sep., 1998 | Dangelo et al.
| |
| 5809282 | Sep., 1998 | Cooper et al.
| |
| 5822749 | Oct., 1998 | Agarwal.
| |
| 5881268 | Mar., 1999 | McDonald et al.
| |
| 5893074 | Apr., 1999 | Hughes et al.
| |
| 5937165 | Aug., 1999 | Schwaller et al.
| |
| 5953707 | Sep., 1999 | Huang et al.
| |
| 5958009 | Sep., 1999 | Friedrich et al.
| |
| 5984511 | Nov., 1999 | Vasey-Glandon et al.
| |
| 5999734 | Dec., 1999 | Willis et al.
| |
| 6003079 | Dec., 1999 | Friedrich et al.
| |
| 6009256 | Dec., 1999 | Tseng et al.
| |
| 6023706 | Feb., 2000 | Schmuck et al.
| |
| RE36602 | Mar., 2000 | Sebastian et al.
| |
| 6038540 | Mar., 2000 | Krist et al.
| |
| 6067412 | May., 2000 | Blake et al.
| |
| 6115718 | Sep., 2000 | Huberman et al.
| |
| 6119125 | Sep., 2000 | Glouderman et al.
| |
| 6145121 | Nov., 2000 | Levy et al.
| |
| 6272507 | Aug., 2001 | Pirolli et al.
| |
| 6311144 | Oct., 2001 | Abu El Ata.
| |
| 6327551 | Dec., 2001 | Peterson et al.
| |
| 6370681 | Apr., 2002 | Dellarocas et al.
| |
| 6393386 | May., 2002 | Zager et al.
| |
| 6532465 | Mar., 2003 | Hartley et al.
| |
| 6560569 | May., 2003 | Abu El Ata.
| |
| 2001/0041996 | Nov., 2001 | Eder.
| |
| 2004/0128618 | Jul., 2004 | Datta.
| |
Other References
Ata, N., "How we Avoided Murphy's Law at the Italian Stock Exchange", CMG 1997,
consisting of 7 pages.
Ata, N., "How Metrics and Models Made Architecture Real," presented at DCI Conference
in Washington, D.C. in Feb., 2000 (slides 1-21).
Menasce, D., et al., "Capacity Planning and Performance Modeling", 1994, Prentice-Hall,
ISBN 0-13-035494-5.
Agrawal, S., et al., "The aggregate server method for analyzing serialization
delays in computer systems", ACM Transactions on Computer Systems, vol. 1, Issue
2, pp. 116-143, May 1983, ISSN: 0734-2071.
Compaq Open VMS Documentation, "TCP/IP Networking on Open VMS Systems", Nov.
1996, URL: http://www.openvms.compaq.com:8000/ssb71/6436p.htm.
Altmann, M., "A list of software for computer simulations", Last updated, Nov.
11, 1996, URL: http://www.nmsr.labmed.umn.edu/˜michael/dbase/outgoing/FAQ.html.
Keshav, S., "Real 5.0 Overview", Aug. 13, 1997, URL: http://www.cs.cornell.edu/skeshav/real/overview.html.
Keshav, S., "Real 5.0 User Manuel", Aug. 13, 1997, URL: http://www.cs.cornell.edu/skeshav/real/user.html.
Keshav, S., "Real 5.0 Programmer's Manual", Aug. 13, 1997, URL: http://www.cs.cornell.edu/skeshav/real/prog.html.
Keshav, S., "Real 5.0 Changes", Aug. 13, 1997, URL: http://www.cs.cornell.edu/skeshav/real/changes.html.
Keshav, S., "Real 4.0 Programmer's Manual", Oct. 21, 1993, URL: http://minnie.cs/adfa.oz.au/REAL/prog.asc.gz.
Keshav, S., "Real 4.0 User's Manual", Oct. 21, 1993, URL: http://minnie.cs,adfa.oz.au/REAL/user.asc.gz.
Choukri, T., "cv—choukri.htm", 1999. URL: http://www.global-coms.com/consultants/cv—choukri.htm.
"BMC Software BEST/1," http://www.bgs.com (Updated: Apr. 10, 1998), 1 pg.
"About BEST/1," http://www.bgs.com/bgs.htm (Printed Out: May 21, 1998) 1 pg.
"BMC Software to Acquire BGS Systems," http://www.bgs.com/bmcbgs.htm (Printed
Out: May 21, 1998), 3 pgs.
"Performance and Capacity Management, BEST/1-Visualizer for AS/400," http://www.bgs.com/as400/as4—home.htm
(Printed: May 21, 1998), 2 pgs.
"BEST/1-Visualizer for AS/400, Product Description," http://www.bgs.com/as400/Slid—2.html
(Printed Out: May 21, 1998), 2 pgs.
"BEST/1-Visualizer for AS/400, Bottleneck Detection and Analysis," http://www.bgs.com/as400/Slid—3.html
(Updated: Nov. 22, 1996), 2 pgs.
"BEST/1-Visualizer for AS/400, Threshold Exception Reporting," http://www.bgs.com/as400/Slid—4.html
(Updated: Jan. 23, 1997), 2 pgs.
US. Trademark Electronic Search System, search result for Trademark Serial No.
74555204. Nov. 27, 2001.
Ata, N., "A Predictive Modeling Approach to Developing Complex Systems", CSC
Leading Edge Forum, Mar. 6, 2001, URL: http://www2.csc.com/lef/programs/forum/mar—01.htm.
Ata, N., "System Performance Modeling", ITC Meeting Minutes, Dec. 2, 1999, URL: http://www.istis.unomaha.edu/itc/meetings/m991202.htm.
Ata, N., "CMG97 Session Descriptions by Subject Area", CMG97 Orlando, The Computer
Measurement Group's 1997 Int'l Conference, Dec. 7-12, 1997, URL: http://www.cmg.org/cmg97/cmg97sessions.html
and http://www.cmg.org/cmg9/97Workload.pdf.
"BEST/1-Visualizer for AS/400, Track and Trend Long-term Performance," http://www.bgs.com/as400/Slid—6.html
(Printed Out: May 21, 1998) 2 pgs.
"BEST/1-Visualizer for AS/400, CPU/System Graphs," http://www.bgs.com/as400/Slid—8.html
(Updated: Nov. 29, 1996, 2 pgs.
"BEST/1-Visualizer for AS/400, I/O Subsystem Graphs," http://www.bgs.com/as400/Slid—9.html
(Updated: Nov. 30, 1996), 2 pgs.
"BEST/1-Visualizer for AS/400, Storage Pool Graphs," http://www.bgs.com/as400/Slid—11.html
(Updated: Nov. 22, 1996), 2 pgs.
"BEST/1-Visualizer for AS/400, Communication Line Graphs," http://www.bgs.com/as400/Slid13
12.html (Updated: Nov. 30, 1996), 2 pgs.
"BEST/1-Visualizer for AZ/400, Job Graphs," http://www.bgs.com/as400/Slid—13.html
(Updated: Jan. 22, 1997) 2 pgs.
"The Portable Simulation Initiative and the Common Modeling Framework," http://www.ses.com/psi-cmf.html
(Updated: Apr. 3, 1998), 3 pgs.
"SES —Products and Services: Why Simulate?" http://www.ses.com/whysimulate.html
(Updated: Apr. 2, 1998), 7 pgs. from Capacity Management Review, vol. 36,
No. 2, Feb., 1998.
"SES in the Press," http://www.ses.com/news/html (Updated: Apr. 8, 1998), 3 pgs.
"SES Inc. Announces Release of Strategizer", http://www.ses.com/pr—archive/010297.html
(Updated: Jul. 14, 1997, 2 pgs.
"SES Releases SES/Workbench 3.1," http://www.ses.com/pr—archive/022896.html
(Updated Jul. 14, 1997), 3 pgs.
"SES/workbench: Workbench Overview," http://www.ses.com/workbench.html (Updated:
Feb. 10, 1998), 3 pgs.
"SES/objectbench: Batch Execution," http://www.ses.com/Objectbench/sim—details—batch.html
(Updated: Apr. 6, 1998), 2 pgs.
"SES/objectbench: The Objectbench Animated Simulator," http://www.ses.com/Objectbench/simulator.html
(Updated: Apr. 15, 1998), 2 pgs.
"SES/objectbench," http://www.ses.com/Objectbench/index.html (Updated Apr. 6,
1998), 2 pgs.
EETimes: Intel, Others Eye Performancee Modeling Standard, http://www.techweb.com/se/directlink.cgi?EET19971103S0105
(Nov. 3, 1997), 2 pgs.
"Euroexpert: Best Practices: France Telecom," Euroexpert SA, Antony, France (Sep.
1, 1997), 2 pgs.
"Simulation modeling within workflow technology," Miller, et al., Proceedings
of the 1995 Winter Simulation Conference, Dec. 3-6, 1995.
"Analyzing and re-engineering business process using simulation," Bhskar, et
al., Proceeding of the 1994 Winter Simulation Conference, Dec. 11-14, 1994.
"BEST/1-Visualizer for AS/400, Workload Analysis," http://www.bgs.com/as400/Slid—5.html
(Updated: Jan. 23, 1997), 2 pgs.
Gunther, N., "The Practical Performance Analyst: Performance-by-Design Techniques
for Distributed Systems", McGraw-Hill, Table of Contents only consisting of
9 pages, 1998.
"Model Driver Architecture (MDA) Document No. ormsc/2001-07-01", Architecture
Board ORMSC, pp. 1-31, Jul., 2001.
Grady, R., et al., "Software Metrics: Establishing A Company-Wide Program", Prentice-Hall,
Inc., Table of Contents only, consisting of 5 pgs., 1987.
Jacobson, I., et al., "Software Reuse, Architecture Process and Organization
for Business Success", ACM Press, Table of Contents only, consisting of 9 pages,
Addison-Wesley, 1997.
Bontempo, et al., "Data Management Principles and Products", Prentice Hall, Inc.,
1995, Table of Contents only, consisting of 10 pages.
Soley, R., et al., "Model Driven Architecture" Object Management Group,
pp. 1-12 (Nov. 27, 2000).
Hutchins, G., "ISO 9000, A Comprehensive Guide to Registration, Audit Guidelines,
and Successful Certification" (Oliver Wight Publications, Inc.) 1993, Table of
Contents Only consisting of 5 pages.
Lazowska, E., et al., "Quantitative System Performance: Computer System Analysis
Using Queueing Network Models", Prentice-Hall, Inc., 1984, Table of Contents
Only consisting of 8 pages.
Beck, K., "Extreme Programming Explained", Addison-Wesley 2000, Table of Contents
Only consisting of 7 pages.
Sarris, D., et al., "The White Papers: Capacity Planning for e-Commerce Systems
With Benchmark Factory™", http://www.quest.com/whitepapers/cap—plan—Ecomm.pdf,
pp. 1-19. No date given.
Leymann, F., et al, "Production workflow: concepts and techniques", 2000, Table
of Contents Only consisting of 14 pages.
"PYRAMID: Quantitative management: get a grip on software!" 100 pages, 1991.
Shaw, M., et al., "Software Architecture: Perspectives on an Emerging Discipline",
Prentice Hall 1996, Table of Contents only consisting of 7 pages.
"EuroExpert GATE™ MODEL Product Description: A predictive approach
to efficient information systems", pp 1-21, 1994.
Rolia, J.A. and K.C. Sevcik, "The Method of Layers," IEEE Transactions on
Software Engineering 21(8):689-700, Aug. 1995.
White, R. V., "An Introduction to Six Sigma with a Design Example," Applied
Power Electronics Conference and Exposition, 1992. Conference Proceedings
1992, Seventh Annual, Feb. 23-27, 1992, pp. 28-35.
"EUROEXPERT—Best Practices: French Social Security—UNEDIC", http://www.accretivetechnologies.com/documents/UNEDIC,PDF,
Euroexpert and Gate(TM), 1992 Best Practices.
|
Primary Examiner: Phan; Thai
Attorney, Agent or Firm: Hamilton, Brook, Smith & Reynolds, P.C.
Parent Case Text
RELATED APPLICATION(S)
This application claims the benefit of U.S. Provisional Application No. 60/142,313
filed Jul. 2, 1999, the entire teachings of which are incorporated herein by reference.
Claims
What is claimed is:
1. Apparatus for designing an optimal information system architecture of a business
entity, comprising:
a model generator for producing one or more models representing the business
entity's IS architecture needs at different levels of abstraction, at least one
model representing an IS architecture meeting desired performance criteria of the
business entity; and
an optimizer coupled to receive the at least one model and evaluate, in a numerical
manner, implementations of the corresponding IS architecture such that an optimal
IS architecture is determined, the optimizer modeling memory performance by determining
a probability of accessing desired pages of page sets in an active zone memory,
wherein the active zone memory includes a portion of rarely referenced pages, determining
a probability of accessing the desired pages in the active zone memory comprises:
for each page set, determining a probability of any page being present in the
active zone memory;
for each page set, determining a number of distinct pages accessed;
for each page set, determining a number of pages present in the active zone memory
from the number of distinct pages accessed and the probability of any page being
present in the active zone memory; and
determining a hit ratio as the number of pages present in the active zone memory
relative to the total number of page accesses.
2. Apparatus as claimed in claim 1 wherein the model generator produces (i) a
business process model representing business operations of the business entity,
(ii) an applications model representing software elements for carrying out the
business operations, (iii) a data model representing physical requirements to support
the software elements, (iv) a technical infrastructure model representing an IS
architecture design for implementations meeting the physical requirements.
3. Apparatus as claimed in claim 2 wherein:
the business process model is at one level of abstraction;
the applications model is at a succeeding and less abstract level of abstraction
than the one level;
the data model is at a next level of abstraction; and
the technical infrastructure model is at a lowest level of abstraction.
4. Apparatus as claimed in claim 2 wherein the software elements represented
by the applications model includes software components and structures.
5. Apparatus as claimed in claim 2 wherein the data model is independent of computer
platform and operating system.
6. Apparatus as claimed in claim 2 wherein the physical requirements represented
by the data model includes data requirements, constraints and communications requirements.
7. Apparatus as claimed in claim 2 wherein the technical infrastructure model
is dependent on computer platform and operating system.
8. Apparatus as claimed in claim 1 wherein the desired performance criteria are
defined at the various levels of abstraction.
9. Apparatus as claimed in claim 1 further comprising a refinement member for
continually refining the optimal IS architecture by iteratively remodeling and
evaluating the IS architecture through the model generator and optimizer.
10. A method for modeling memory performance, comprising:
in a first level of abstraction, modeling operations in a subject business entity;
in a succeeding and less abstract level of abstraction, modeling software elements
for carrying out the business entity operations, including modeling the software
elements accessing desired pages of page sets in memory during business entity operations;
in a next less abstract level of abstraction, modeling physical requirements
to support the software elements, including the physical requirements of an active
zone memory, the active zone memory being upper memory providing temporary storage
of pages accessed from page sets in lower memory;
in a lowest level of abstraction, modeling technical infrastructure to determine
an IS architecture meeting desired performance criteria; and
determining a probability of accessing the desired pages of the page sets in
the active zone memory during the business entity operations; wherein the active
zone memory includes a portion of rarely referenced pages, determining a probability
of accessing the desired pages in the active zone memory comprises:
for each page set, determining a probability of any page being present in the
active zone memory;
for each page set, determining a number of distinct pages accessed during the
operations of the subject business entity;
for each page set, determining a number of pages present in the active zone memory
from the number of distinct pages accessed and the probability of any page being
present in the active zone memory; and
determining a hit ratio as the number of pages present in the active zone memory
relative to the total number of page accesses during the operations of the subject
business entity.
11. An optimal information system architecture for a business entity, produced
by the process of claim 10.
12. An optimal information system architecture as claimed in claim 11 wherein
the step of modeling physical requirements is independent of computer platform.
13. An optimal information system architecture as claimed in claim 11 wherein
the step of modeling physical requirements includes data requirements, constraints
and communications requirements.
14. An optimal information system architecture as claimed in claim 11 wherein
the step of modeling technical infrastructure is with respect to computer platform
and operating system.
15. An optimal information system architecture as claimed in claim 11 wherein
in the step of modeling technical infrastructure the desired performance criteria
are defined at the various levels of abstraction.
16. An optimal information system architecture as claimed in claim 11 further
comprising the step of iterating through the modeling of physical requirements
and modeling of technical infrastructure until desired performance criteria is met.
17. An optimal information system architecture as claimed in claim 11 wherein
the step of modeling software elements includes modeling software components and structures.
18. An optimal information system architecture as claimed in claim 11 wherein
the step of modeling technical infrastructure includes generating alternative information
system architecture designs meeting the performance criteria; and
further comprising the step of evaluating implementations of the alternative
information system architecture designs using a numerical analysis for quantitative
relative comparison between alternatives, such that an optimal information system
architecture results.
19. An optimal information system architecture as claimed in claim 11 further
comprising the step of continually refining the IS architecture by remodeling the
physical requirements and the technical infrastructure.
20. The method as claimed in claim 10, further comprising:
modifying one or more of the abstract levels in order to increase the probability
of accessing the desired pages in the active zone memory during the operations
of the subject business entity.
21. The method as claimed in claim 10, wherein the probability of a page being
present in an active zone is based on a page access rate of a corresponding page
set and a page replacement age associated with the active zone.
22. The method as claimed in claim 21, wherein the page access rate and the page
replacement age follow a Poisson law distribution.
23. The method as claimed in claim 10, wherein the active zone memory is cache memory.
24. The method as claimed in claim 10, wherein the active zone memory is at least
a portion of external storage.
25. The method as claimed in claim 10, wherein the active zone memory is a buffer pool.
26. A method for modeling memory performance, comprising:
in a first level of abstraction, modeling operations in a subject business entity;
in a succeeding and less abstract level of abstraction, modeling software elements
for carrying out the business entity operations, including modeling the software
elements accessing desired pages of page sets in memory during business entity operations;
in a next less abstract level of abstraction, modeling physical requirements
to support the software elements, including the physical requirements of an active
zone memory, the active zone memory being upper memory providing temporary storage
of pages accessed from page sets in lower memory;
in a lowest level of abstraction, modeling technical infrastructure to determine
an IS architecture meeting desired performance criteria; and
determining a probability of accessing the desired pages of the page sets in
the active zone memory during the business entity operations,
wherein the active zone memory is free of a portion of rarely referenced pages,
determining a probability of accessing the desired pages in the active zone memory comprises:
for each page set, determining a probability of any page being present in the
active zone memory;
for each page set, determining a number of all pages accessed during the operations
of the subject business entity;
for each page set, determining a number of pages present in the active zone memory
from the number of all pages accessed and the probability of any page being present
in the active zone memory; and
determining a hit ratio as the number of pages present in the active zone memory
relative to the total number of page accesses during the operations of the subject
business entity.
27. Apparatus for modeling memory performance, comprising:
a model generator producing (i) a business process model representing business
operations of a business entity, (ii) an applications model representing software
elements for carrying out the business operations, including modeling the software
elements accessing desired pages of page sets in memory during business entity
operations, (iii) a data model representing physical requirements to support the
software elements, including the physical requirements of an active zone memory,
the active zone memory being upper memory providing temporary storage of pages
accessed from page sets in lower memory, (iv) a technical infrastructure model
representing an IS architecture design for implementations meeting the physical
requirements; and
an optimizer determining a probability of accessing the desired pages of the
page sets in the active zone memory during the business entity operations; wherein
the active zone memory includes a portion of rarely referenced pages, the optimizer
determining a probability of accessing the desired pages in the active zone memory comprises:
for each page set, the optimizer determining a probability of any page being
present in the active zone memory;
for each page set, the optimizer determining a number of distinct pages accessed
during the operations of the subject business entity;
for each page set, the optimizer determining a number of pages present in the
active zone memory from the number of distinct pages accessed and the probability
of any page being present in the active zone memory; and
the optimizer determining a hit ratio as the number of pages present in the active
zone memory relative to the total number of page accesses during the operations
of the subject business entity.
28. Apparatus as claimed in claim 27, further comprising:
the model generator modifying one or more of the abstract levels in order to
increase the probability of accessing the desired pages in the active zone memory
during the operations of the subject business entity.
29. Apparatus for modeling memory performance, comprising:
a model generator producing (i) a business process model representing business
operations of a business entity, (ii) an applications model representing software
elements for carrying out the business operations, including modeling the software
elements accessing desired pages of page sets in memory during business entity
operations, (iii) a data model representing physical requirements to support the
software elements, including the physical requirements of an active zone memory,
the active zone memory being upper memory providing temporary storage of pages
accessed from page sets in lower memory, (iv) a technical infrastructure model
representing an IS architecture design for implementations meeting the physical
requirements; and
an optimizer determining a probability of accessing the desired pages of the
page sets in the active zone memory during the business entity operations, wherein
the active zone memory is free of a portion of rarely referenced pages, the optimizer
determining a probability of accessing the desired pages in the active zone memory comprises:
for each page set, the optimizer determining a probability of any page being
present in the active zone memory;
for each page set, the optimizer determining a number of all pages accessed during
the operations of the subject business entity;
for each page set, the optimizer determining a number of pages present in the
active zone memory from the number of all pages accessed and the probability of
any page being present in the active zone memory; and
the optimizer determining a hit ratio as the number of pages present in the active
zone memory relative to the total number of page accesses during the operations
of the subject business entity.
Description
BACKGROUND OF THE INVENTION
For the last twenty years, a tremendous amount of investments have been lost
due to unsuccessful projects in different sectors of activity that are highly dependent
on information systems. For the majority of these projects the main reason is the
absence of predictive capability that might help early enough to prevent later
on a performance crisis.
Much of the software development is performed on an ad hoc basis or at least
in a customizing approach. Typically there are no feedback loops close to the design
stage to prevent ultimate substandard results in the final product, e.g. an information system.
SUMMARY OF THE INVENTION
The present invention fills the gap of the prior art and helps the information
system designer to predict the performance of his/her design and to modify the
design to fit a predefined performance level. A quantitative iterative process
is used to modify the information system design to achieve a desired performance level.
The present invention is formed of two parts. The first part establishes the
base for a model-based architecture information system. In the information system
architecture model, decisions are based on quantitative as well as qualitative
evaluations of architecture options and on the limits associated with different alternatives.
The second part is directed to the mathematical process that assists the information
system designer, in general, and the database administrator in particular, in experimenting
and evaluating the different options to build efficient, scalable, optimal throughput
and optimal cost information systems. It also solves one of the most difficult
problems in information systems architecture that concerns the multi-layer memories management.
The two parts of the preferred embodiment represent complementary pieces of the
same exercise. The present invention targets a new approach that allows a smooth
translation of a business need into a data model that helps the designer to determine
early in the construction life cycle, the efficiency of the proposed (target) information system.
Accordingly, the present invention presents an original process to help
designers of new performance critical information systems architectures to apply
an analytical and mathematical approach for efficient and predictable numerical
evaluations. The evaluation process covers (i) a discovery analysis to define the
optimal selections of design scenarios, (ii) a sensitivity analysis to help the
selection among different options, (iii) the project management to optimize the
use of resources, and finally (iv) a stress analysis to determine the limits of
the new systems.
In a preferred embodiment, an optimal IS (information system) architecture for
a business entity is produced by the process of: in a first level of abstraction,
modeling operations of a subject business entity; in a succeeding and less abstract
level of abstraction, modeling software elements (structure and components) for
carrying out the business entity operations; in a next less abstract level of abstraction,
modeling physical requirements to support the software elements; and in a lowest
level of abstraction, modeling technical infrastructure to determine an IS architecture
meeting desired performance criteria. Preferably the step of modeling physical
requirements is independent of computer platform and operating system and includes
the modeling of data requirements, constraints and communications requirements.
The step of modeling technical infrastructure is with respect to or dependent on
computer platform and operating system. The desired performance criteria are defined
at the various levels of abstraction and the process further preferably iterates
through the modeling of physical requirements and modeling of technical infrastructure
until the desired performance criteria are met.
With respect to another aspect of the present invention, the step of modeling
the technical infrastructure includes generating alternative IS architecture designs
meeting the performance criteria and the process further includes the step of evaluating
implementations of the alternative IS architectures. Preferably a numerical analysis
is used for evaluating implementations of the alternatives such that a quantitative
relative comparison between alternatives is made and an optimal IS architecture results.
In accordance with another aspect of the present invention, the process further
comprises the step of, over time, continually refining the IS architecture meeting
the desired performance criteria (e.g., the optimal IS architecture) by remodeling
the physical requirements and the technical infrastructure.
According to the foregoing, apparatus of the present invention for designing
an optimal IS architecture of a business entity comprises (a) a model generator
for producing one or more models representing the business entity's IS architecture
needs at different levels of abstraction, at least one model representing an IS
architecture design meeting desired performance criteria of the business entity;
and (b) an optimizer coupled to receive the at least one model and evaluate, in
a numerical manner, implementations of the corresponding IS architecture such that
an optimal IS architecture is determined. The model generator preferably produces
(i) a business process model representing business operations of the business entity,
(ii) an applications model representing software elements (structure and components)
for carrying out the business operations, (iii) a data model representing physical
requirements to support the software elements, (iv) a technical infrastructure
model representing an IS architecture design for implementations meeting the physical requirements.
In a preferred apparatus of the present invention, a refinement member continually
refines the optimal IS architecture by iteratively remodeling and evaluating the
IS architecture's design alternatives through the model generator and optimizer.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, features and advantages of the invention will
be apparent from the following more particular description of preferred embodiments
of the invention, as illustrated in the accompanying drawings in which like reference
characters refer to the same parts throughout the different views. The drawings
are not necessarily to scale, emphasis instead being placed upon illustrating the
principles of the invention.
FIG. 1 is a schematic diagram of a system and method embodying the present invention.
FIG. 2 is a flow diagram of the selection process of information system architecture
options in the preferred embodiment.
FIG. 3 is a schematic overview of a computer environment in which the present
invention of FIGS. 1 and 2 operate.
DETAILED DESCRIPTION OF THE INVENTION
A description of preferred embodiments of the invention follows.
In a business entity or organization, information is communicated, stored and
shared across various channels and means. Generally, the hardware and software
components involved in the tracking, processing and recording of such business
information is referred to as the information system. The structure and interdependence/interaction
of supporting equipment and applications components (hardware and/or software),
policies and protocol forming the information system is referred to as "the information
system (IS) architecture".
The present invention provides a design methodology and tool for designing optimum
IS architectures and optimal IS configurations. In general, the design approach
of the present invention starts at a high level of abstraction and moves toward
technical requirements to meet a business entity's needs. The first level of abstraction
considers business operations referred to as "processes" and "subprocesses". The
succeeding level of abstraction couches the processes in terms of application software
solutions and components. A next level identifies the physical requirements (e.g.,
processing speed, memory, storage, etc.) to achieve and support the processes and
corresponding application/software components. A final level determines platform
specific components/hardware and alternatives. The alternatives provide an iterative
feedback loop through the various levels of abstraction and supports "what-if"
designing/brainstorming. Comparisons of alternatives and what-if scenarios are
with respect to performance criteria at each level, such that an optimal IS architecture
and configuration is achieved.
FIG. 1 is illustrative of a preferred embodiment of the invention employing
the foregoing design methodology and levels of abstraction, to configure an optimal
IS architecture and configuration. Math models are defined and utilized at each
layer/level based on the performance criteria determined for the respective level.
Outputs from these models enable optimization at each level and in combination
enable optimization of the overall IS architecture.
As illustrated in FIG. 1, the IS architecture is a compound of four layers, namely
the Business Architecture Layer
11, the Application Architecture Layer
15,
the Technical Architecture Layer
13 and the Infrastructure Architecture
Layer
17. Each layer has its own (i) definition, (ii) lifetime window and
associated tools, (iii) techniques and (iv) performance criteria.
Applicant has discovered that mixing notions and responsibilities among
the architecture layers and components produces confusion and delays a robust and
secure implementation of a new information system architecture. Applicant believes
that the modeling approach is the only way to avoid such confusion. Creating a
new IS architecture is a business planning exercise. The collaboration of different
departments of the organization is mandatory. A successful IS architecture is the
one that rationalizes conflicts between enterprise-wide objectives and project-specific
objectives and is able to move comfortably to the satisfaction of both. It also
interacts with clients to explain technical issues and solutions, and relates them
to recognized business drivers.
In order to define a new information system architecture, a few prerequisites
need to be satisfied as follows:
- The main architecture driver is a business need. The business profile
in terms of content and evolution trend should be defined. The associated quality
and modes of operations should be identified. And all permanent and volatile drivers
should be fixed.
- In most cases, the new architecture is different from the actual. A
new IS architecture is a great opportunity to redraw the whole picture. Partial
definition might create confusion in the short term and complexity in the long term.
- The phased construction of an IS architecture should be goal oriented.
Its evaluation and selection between options should be based on a criteria matrix.
This matrix is defined as the correlation between the organization critical factors
(such as the cost per transaction, the tps (transactions per second), scalability)
and the risk factors (such as ability to upgrade or add new processes, technology
obsolescence, rapid aging factors).
- While separating the different layers of an IS architecture, a mechanism
of communication between responsibilities should be in place (Organization's Architecture
Steering Group). The role of this communication mechanism is mainly to arbitrate.
Again, a clear method of selection should be based on the criteria matrix.
- As the IS architecture covers a long view of the future, a technology
watch function should feed its independent vision to the debate. The technology
cycle is in general shorter than the life span of the IS architecture. The adoption
of a conservative approach towards the technology should be seen only as a tactical
solution in an incremental and secured strategic technology vision.
- The new IS architecture embodies the organization's business vision.
The cooperation of different units of the organization within this frame is a guarantee
for the success and the future appropriation of the resulting solution. However,
this cooperation should not affect the consistency between the different elements
constituting the IS architecture.
Returning to FIG. 1, the definition of the scope and content of each of
the architecture layers
11,
13,
15,
17 represents the
levels of involvement and responsibilities of different components of an organization
in the definition of the new architecture. The new IS architecture becomes therefore
able to represent and to accompany the organization vision to its future. For each
layer, the following scope and responsibilities are determined.
The Business Architecture Layer
11 is the layer that represents the organization's
business vision. The architecture here translates the business plan into an urban
structure (i.e., overall or global architecture) that transforms the vision into
processes. This layer is responsible for the definitions of the business processes
of the organization, scope identification, content of each process (sub processes
and functions), the intercommunication among processes (and sub-processes and functions)
and their interdependencies. At this level, the performance and cost criteria are
accurately defined.
Usually, the business partners and the competitive analyses are the sources
from which to collect the business metrics necessary for the Business Architecture
Layer
11 definition. However, trend analysis and surveys are also invaluable
sources of information. Digesting this information is a continuous activity that
might impact "the global picture" (i.e., overall IS architecture), which is the
principal base of the Business Architecture Layer
11. In particular, it
is of major importance to proactively identify phenomena like process transformation,
new functions within a process, possibilities of consolidation and merges between
processes and the expected trends in the mode of operation to enable the right
time to construct and market to be identified. The outcome of this layer
11
feeds directly into the next layer (Application Architecture Layer
15) and
represents the framework for all other layers
13,
17.
While the global picture might undergo changes over time, generally these changes
are reflected in the lower layers. In most industries, a major change in the Business
Architecture Layer
11 will be observed over a long period of time (10 to
15 years). It is however indispensable to continuously revisit this layer
11
to maintain the vision and proactively assess potential modifications. From an
operational point of view, this layer
11 provides the framework, i.e., performance/quality
metrics, business drivers as well as the process structure and communication network,
of the following layers
13,
15,
17.
In the preferred embodiment, the Business Architecture Layer
11 is technology
independent, flexible to allow for change, dependable, extendable and manageable
and able to deliver desired business performance values. These are the preferred
requisite performance criteria
39 of this layer
11. Other performance
criteria
39 include time to market, flexibility, enhanceability, ease of
change/scalability and efficiency.
Based on these criteria, the system designer forms a corresponding Business
Process Performance model
19. This is a top level model portion in the overall
IS architecture model
25. Model
19 contains detailed definitions
of the business processes and their characteristics, e.g., dependency on external
events, interdependencies, etc. The model
19 also contains assumption-based
models to represent the three lower layers
15,
13,
17. Components
for the assumption based models are from a preexisting library of corresponding
models and physical components as disclosed in U.S. patent application Ser. No.
09/127,191 filed Jul. 31, 1998 and herein incorporated by reference. The designer
may also use the system disclosed in U.S. patent application Ser. No. 09/127,191
to define Business Process model
19 as well as the math models for the other
layers
15,
13,
17 in turn discussed below.
Next is the Application Architecture Layer
15. For a number of years,
this layer
15 was part of a larger domain called system architecture. Typically,
this layer
15 was not distinguished from the technology (physical requirements
and platform) domain. This became impossible with the explosion of varieties and
choices in computer system architecture and the unstable ground in the computer
technology arena.
Over the last ten years, all successful information system re-engineering became
possible in cases where a clear border was drawn between the application architecture
and the infrastructure underneath. This became not only a management imperative
but also a necessary target as the frequency of change on the infrastructure layers
is much higher to allow an efficient and economic application architecture. Some
architects call this layer
15 the conceptual architecture with narrower
content to what is discussed here.
The Application Architecture Layer
15 is the translation of both the business
functions and processes into computer application structures/components. Not only
is the computer application architecture proposed but also the road map to how
one translates the business layer
11 quality and performance criteria
39
into quantitative requirements and qualitative indicators is defined in this layer
15. The two sides of this translation become necessary to develop a robust
and high quality computer application that continuously matches the business need.
There is a many-to-many correspondence between business processes of layer
11
and application components of Application Layer
15.
Mainly what is output (at
27) by the Application Architecture Layer
15 is a blueprint on how the computer application architecture is distributed
vertically (application layers such as presentation layer, management, logic, data,
and associated communication) as well as horizontally (cycles corresponding to
back office activity, mid and front office, client access, etc.) At this level
of the overall IS architecture, the performance metrics are introduced and evaluated
in all stages until the end of the life of the computer application (to determine
aging, throughput limits, servicing quality and cost). These performance attributes
serve as prerequisites in the definition of the next layers
13,
17
and in particular for the Technical Architecture Layer
13. In this layer
15, part of a data model
23 (discussed below) is defined and the
associated performance and operational conditions of the data strategies are determined.
The most important performance criteria
41 here is openness. The Application
Architecture Layer
15 should allow the highest degree of freedom towards
the technical and technology infrastructure layers
13,
17. Other
performance criteria
41 include flexibility, enhanceability, adaptability
and dependability. Technology independence (or as much as will be able to be achieved)
should also be a target for this layer
15. It is however difficult to ensure
success in this area if the next layers
13,
17 choose a proprietary
technology. Proprietary technology will not make use of all possibilities of the
Architecture Layer
15 technology.
Based on the above performance criteria
41, the IS architecture designer
defines an Application Process Performance Model
21 that corresponds to
the output
27 of Application Architecture Layer
15. That model
21
is considered to be an intermediate or medium level model portion of the overall
IS architecture model
25. The model
21 simulates delays, tensions,
bottlenecks, etc., of the design (blueprint) output of Layer
15. If there
is any conflict, the model
21 reveals what application components need altering,
substitution or upgrading. The model
21 also shows suitability of application
components for respective business processes as modeled at
19 in the Business
Process Layer
11.
It is noted that model
21 executes with assumption-based models representing
lower layers
13 and
17 similar to that described above for model
19 but does not likewise need to assume a model for top layer
11.
Instead, model
19 as defined for layer
11 is included in the execution
of model
21. That is, as models
19,
21,
23,
25
for the various layers
11,
15,
13,
17 are defined,
they are employed respectively instead of the assumption-based models during the
design of each level of the IS architecture in FIG. 1.
In any case, the lifetime for the Application Architecture Layer
15 follows
that of the business plan/Business Process Layer
11 (10 to 15 years). One
can easily imagine at least three or four cycles of technology changes during that
time. A robust application architecture
15 should allow this technology
adaptation process without jeopardizing performance or degrading the cost impact
on the business entity.
The Technical Architecture Layer
13 translates the high level definitions
produced in the preceding layers
11,
15 into physical definitions.
Major choices in terms of interfaces, monitoring and data management alternatives
are determined, modeled and/or prototyped here. While this layer
13 is obviously
a technology dependent one, it is of great importance and responsibility of the
project management (the project is well defined and engaged at this level) to determine
the degree of possible obsolescence and the associated lifetime for a technology.
The considerations involved in technology layer
13 are not platform dependent,
i.e., determinations at this layer
13 should be made without regard to or
independent of platform.
One of the most delicate activities within this layer
13 is the transformation
of the logical structures and performance criteria identified in the above layers
11,
15 into physical requirements and implementation constraints.
In particular, data and information structures are not merely introduced but described
in detail here including metadata, storage, retrieval and security. Also transaction
rate, memory capacity and speed, processing speed and similar physical requirements
are defined here
13.
Further, the Technical Architecture Layer
13 describes the computer
application and system management plans in view of the interaction of applications
with the organization's system and workload management facilities. During this
stage of overall IS architecture construction, there are tight definitions of the
mechanisms to be used in order to ensure adequate system performance and growth
are achieved. At this level, the data model
23 serves as the efficiency
goalkeeper to predict the future implementation performance, propose alternativ