dkFlyer

'Dual' MultiTier WebDB

(Example Preliminary Design and Quotation)
(This HTML was delivered to a Customer who was using Oracle on AIX.)
Note that this design was originally completed back in 1991 as part of UniDos and (Original) PIC, then completely reengineered in PIC - Practical Intelligenc Computing

View the Editorial on the Web Database here.
View the Introduction on the Web Database here.
View the Client / Server Architecture on the Web Database here.
View the Total Solution circa 1996 here.
View the Presentation Library (for a customer) circa 1996 here.

Design

Database Soft Code ======> Business
Logic
(C++)
Physical
Database
(Oracle)
Database
Server
(Oracle)
Login
Server
(C++, Maintain Connectivity)
Web Server / Firewall (Apache)
(Intranet / Extranet / Internet)
Web Client / Server
(C++, Initialize Logins, Fork Processes)
...
Web (Java)
Client
Admin
Web (Java)
Client
Web (Java)
Client
...

Details

Item Explanation
Written Entirely in C-Family
  1. C-Family includes Java, C++ and C (with CORBA)
  2. Readily Available Talent Pool for Future Modifications
  3. Greatest Speed
  4. Maximum Versatility / Extendibility
  5. Singular Programming / Object Oriented
  6. Shared Code between Applications
  7. Most Permanent Coding Language / Style
  8. Potential for Platform Independence (Any Hardware, Any Operating System) and Parallel Usage
Business Logic
  1. Minimum Maintenance - All Business Logic contained in One Easily Updateable Server Program
  2. Minimum Hardware Requirements - Singular Program
  3. Utilize Database Soft Code (code stored in Fields in the Database) accessible from C++ Business Logic Program - Volatile Code Changes merely require Database Field Updates (through Web (Java) Client Admin) rather the Program Modifications
  4. Easily Scalable
Physical Database (Oracle)
  1. Current Physical Database is now Oracle - Minimize Learning Curve, Maximize Current Code
  2. Oracle is Number One in Large Databases
  3. (Upgrade to 8i)
  4. Easily Scalable
Database Server (Oracle)
  1. Database Server Program - allows for Distributed Physical Database
  2. Easily Scalable
Login Server
  1. Minimum Maintenance - All code in One Easily Updateable Server Program
  2. Minimum Hardware Requirements - Singular Program
  3. Maintains Connection with Database Server (Oracle)
  4. Greatest Speed - Eliminates Multiple Login Requirements, never gets 'Stale'
  5. Manages Individual Web (Java) Client Logins / Permissions (Soft Coded)
  6. Minimizes Oracle Licensing through Singular Connection
  7. Potential for creating Maintenance Routines, Logging, Tracking, etc
  8. Easily Scalable
Web Server / Firewall
  1. Apache is the Number One Web Server
  2. Can be run in any combination of Multiple Styles:
    • Intranet - Web Database used Internally and run along the Local Area Network (LAN)
    • Extranet - Web Database used Internally and run along the Internet
      (Virtual Private Network (VPN))
    • Internet - Web Database used and run Publicly along the Internet
  3. Potential for adding Stronghold (128-bit SSL) Security
  4. Minimizes Server Licensing through Singular Connection
  5. Easily Scalable
Web Client / Server
  1. Minimum Maintenance - All code in One Easily Updateable Client / Server Program
  2. Minimum Hardware Requirements - Small Program
  3. Maximize Speed - Store program in Shared Memory
  4. Maximize Speed - Connect Instantly to the Login Server for Oracle Connectivity
  5. Initialize Logins (Password Screen)
  6. Fork on Demand (One per Usage Basis)
  7. Send and Receive Data to / from Web (Java) Client - the HTML Browser
  8. Allows Web (Java) Client to use Any Internet Browseable Computer
  9. Client Tracking and Recovery from Last Session
  10. Easily Scalable
Web (Java) Client Admin
  1. Web (Java) Client with Administrative Permissions
  2. Based on Login
  3. Multiple Users / Usages Allowed
  4. Allows Client to use Any Internet Browseable Computer
  5. Wizard-Style Interview or Fast Entry HTML
  6. Dial-Up Internet Connection Capable
Web (Java) Client
  1. Normal Client Usage - HTML Browser with Java Enabled
  2. Based on Login
  3. Multiple Users / Usages Allowed
  4. Allows Client to use Any Internet Browseable Computer
  5. Wizard-Style Interview or Fast Entry HTML
  6. Dial-Up Internet Connection Capable

Initial Configuration

(Single Server with Oracle, to be determined)

AIX Based on current Configuration
Linux Most Inexpensive and Scalable Operating System by Far
FreeBSD 'Identical' to Linux, but Re-Marketable
Sun Most Reliable Software / Hardware Combination

Scalability

Entire 'Dual' MultiTier WebDB
  1. Can be Installed on Multiple Servers in Multiple Locations as Required
Business Logic
  1. Can be Installed on Multiple Servers as Required
  2. Can be Utilized Separately for General Business Logic, Calculations, History and Report Generation (GIF, JPeg (Re-Marketable) and / or Adobe Acrobat® PDF)
Physical Database
and
Database Server
(Oracle)
  1. Can be Installed on Multiple Servers as Required
  2. Distributed Database Capabilities
  3. Can be Distributed via Demographics, Utilization, etc
Login Server
  1. Can be Installed on Multiple Servers as Required
Web Server / Firewall
and
Web Client / Server
  1. Can be Installed on Multiple Servers as Required
  2. Can be Utilized Separately for Web Server, FTP Server and Firewall as well as for Intranet, Extranet and Internet

Reliability

Entire 'Dual' MultiTier WebDB
and / or
Individual Components
  1. Designed for 24-7 Operations
  2. Designed for Local and Remote Web (Java) Administration
  3. Can be Installed with Raid Services
  4. Can be Replicated to Raid System
  5. Can be Set Up with System Redundancy ('Twins')

Soft Coding

Volatile Information and SQL To allow for Additions and Changes, such as Rates, etc
Date / Time Initialization To allow for When Changes go into Effect
Stored Procedures Additional 'Safety Net'

Modes of Operation

The Entire WebDB should be capable of running in three (3) Modes:

Programming Mode To allow Programming and Initial Testing of Programs (on Test Data)
Testing Mode To allow Final Testing before Release (on Test Data) - both Programming and Factors (Data)
Production Mode To allow Client Usage (on Live Data)

Advantages

  1. The Key to the Program is in the 'Engine', which is built from 'Objects' of Industry Standard Code.

  2. Once the 'Engine' is built, it may be Easily Enhanced for Other Applications, such as E-Mail, Memo's, Letters, Spreadsheets, Projects, etc.
  3. The 'Engine' can be Enhanced by building or purchasing Additional Objects, creating Additional Functionality to Every Application that uses the 'Engine'.
  4. The 'Engine' may be used for Other Applications within the Corporation, Very Signficantly Reducing their Development Costs.
  5. The Applications may contain Only the Funtionality that you want, nothing More, nothing Less.

  6. The Available 'Source Code' for the Engine and the Initial Application is Included, allowing for Modifications and Improvements.
  7. With Simple Maintenance and Updates, the 'Engine' and the Applications will 'Never' become Obsolete almost eliminating Replacement Costs.
  8. Training Costs will be Very Signficantly Reduced, not only by maintaining the One Application 'forever', but by making All Future Applications work Similarly.
  9. The Resulting Applications may be Resold to other businesses (without source code).
  10. The 'Engine' (thus all of its' Applications) can be Easily Modified to work on Any Computer Operating System and Any Hardware, both now and in the Unpredictable Future.
  11. Simple Modifications allow for Connectivity to almost Any Desired Database (Oracle, DB2, SQL, etc).
  12. Scalability of the Entire System can be determined in Any Direction easily by Need as well as by the Available Budget.
  13. All Applications may access All Data (within Security Allowances).
  14. Virus Protection can be Built into the 'Engine', thus the Applications, too.
  15. Security is Built into the 'Engine', thus the Applications, too.
  16. Administration is Reduced to its' Simplest.
  17. Licensing is Reduced to One, on everything.
  18. Potential for Eliminating All Software Costs outside of the 'Engine' and its' Applications.
  19. Ultimately you can have Everything that you want - 'We can't do that' will no longer apply.

Future Enhancements

Unconnected Usage Oracle or DBF Database with Data Uploading
Forms Repository Print Blank Forms without Information
Automated Maintenance On the Servers and the Database
Data Analysis Information to allow better Business Decisionmaking
Practical Intelligence Computing® Automating Business and Other Decisionmaking
Parallel Processing Increase Speed Exponentially
Distributed
Inter-Process
Communication
Real-Time Communication
Program Extendibility C-Family Code may be reused in other Applications, even Replace Commercially Purchased Applications
Linux as a WorkStation Significantly Decrease Costs, Increase Capabilities
Automated Set Up and Configuration On the Servers, the Database and WorkStations

Additional Notes

Singular Programming Replaces potentially 100's or 1000's of Scripts and / or Active Server Pages
True Client / Server No DAO (Data Access Objects), ODBC (Open Database Connectivity), OLE (Object Linking and Embedding - ActiveX), COM (Common Object Model), VBX, OCX, DLL, VBScript, Cartridges, IS (Index Server) or TS (Transaction Server) Required
Simple Design for Maintenance No Learning Curve or Upgrades for Multiple Layers or Programs
Minimum Risk Virtually Impervious to Changes in Computer Industry
Permanent Solution The C-Family provides the Most Permanent Code for Reusage and Extendibility
Open Architecture Maximizes Open Systems for Greatest Functionality
Open Architecture - JavaScript Virtually Every Popular Browser Supports JavaScript
Total Control with Linux Using Linux as the Operating System provides Total Control of Everything

Quotation

Pricing Includes: Reproduction of the XXXXXX XXXXXXXXX Program in Web (Java) HTML / Browser Client, both in Wizard-Style Interview and Fast Entry HTML
Detailed Design and Specifications
All C-Family Programming as Described
All Oracle Programming and Database Changes (to include Soft Coding) as Described
Any and All Purchased Libraries as delivered for Future Programming Modification
Setup of the Operating System Upgrade or Install (One Server)
Setup of the Oracle 8i Upgrade or Install (One Server)
Setup of the Apache Web Server Software and Firewall (One Server)
Setup of the C-Family Compilers Upgrade or Install (One Server)
Pricing Does Not Include: Purchase or Installation of Any Commercial Software (as not described above)
Purchase or Installation of Any Hardware
Any Data Entry Required
Quotation: $XXX,XXX.00

Additional: Reproduction of the XXXXX XXXXX XXXXXXX Program in Web (Java) HTML / Browser Client, both in Wizard-Style Interview and Fast Entry HTML and Report Generation
Quotation: $XX,XXX.00 (if included with above)

Comparison

    Suppose every few years, your Business had to fire all employees, tear down all buildings, throw away all products, etc.

    Then, you 'Start Over from Scratch', building new buildings, hiring and training new employees, finding new products, etc.
    (Oh - and each department HAS to speak a different language.)

    Obviously, this can not work for business.
    (Besides that, it would cost a fortune!)

    Yet, we are constantly doing this with our Computers.
    We throw away everything and 'Start Over from Scratch'.

    It CAN'T work for Business.
    It CAN'T work for Computers any more, either.

    In Business, you build your building, produce your product, etc.

    For the Computer, this is the 'Engine'.
    Just as the building changes and the products change, so does the 'Engine'.

    But, just as you build your Business on the Successes of the Past, so can the Computer build on the 'Engine'.

Back to the Table of Contents


Author: Dennis Kennedy
Copyright © 1999 dkFlyer
If you have any questions, email me.

Hosted by www.Geocities.ws

1