The following are some basic beliefs we use to guide our practices.

All Good Things Come from God

"The fear of the Lord is the beginning of wisdom; all who follow his precepts have good understanding. To him belongs eternal praise." Psalm 111:10

Don't Avoid the Hard Work

"The most practical, beautiful, workable philosophy in the world won't work if you won't." -Zig Ziglar

"It's easier to explain price once than to apologize for quality forever."-Zig Ziglar

Data Models are the Foundation

Business processes (how a business operates) change faster than data models (what a business operates on). Whether it's credits/debits, product/services, or customers/vendors, the basic "what" of a business doesn' t change much. In contrast, business processes can change often. Applications with comprehensive data models support changes to business processes more efficiently.

Three Kinds of Data Structures

In data modeling, there are three kinds of data structures in an application:
  1. Business Objects - Fundamentals of the business, whether computerized or not.  Ex. credits/debits, product/services, etc
  2. Business Intelligence Objects - Reporting and Information, whether computerized or not.  Ex. month-end aggregates, units queued at an operation
  3. System Objects - Necessary for computerized use.  Ex. users, login history, error logs.

Pre-Defined Business Objects

Pre-defined Essential Entities (Generic Data Model Patterns) are available and increase efficiency of requirements analysis and design.

Two Forms of Business Intelligence

In an application architecture, there are two forms of business intelligence:
  1. Real-Time Reporting
  2. On-Line Analytical Processing (OLAP)

Two Modes of System Operation

In an application implementation, there are two modes of system operation:
  1. On-Line Transaction Processing (OLTP)
  2. Batch Processing.

Oracle Database Focus

Database agnostic requires one of 2 approaches:
  1. LCD (lowest common denominator) of database functionality
  2. different software/codepaths for each database (increased complexity)
Every design decision is driven by this choice. Use of a single database platform increases simplicity and efficiency.

Software Automation

"Don't do anything yourself that you can get a machine to do for you." - Walter "Pat" Dieterich, Riesel, TX