Tuesday, February 3, 2009

Semantics

We believe that the successful application of technology in business requires synergy between business and IT experts. Here we layout the background and context of commonly-used-terms at DataWildFire.

Business
Business is what you would expect - any person or group of people with the purpose of exchanging some valuable commodity in for some other valuable commodity (usually currency).

Let’s use the term “operations” to mean everything that goes into making and selling the good or service. Operations can be broken down into three areas: production, marketing, and delivery. The profitability of a business depends on keeping the cost of operations lower and the benefit (sales) higher.

Achieving such profitability requires one or more people who possess a wealth of knowledge and concise vision specific to their enterprise, as well as the business skills common to all industry. Such people are what we mean when we say “business people”.

IT
IT is shorthand for Information Technology. IT is the anything related to the use of computers to collect, analyze and distribute information.

Academically, IT is called Computer Science. Just as a person can receive a degree in business, they can receive a degree in Computer Science. This is an important point because it’s imperative to understand that IT is an incredibly large universe of knowledge with its own laws and behaviors.

The final product of the IT universe is categorized as either hardware or software. Hardware is a tangible good, usually a machine or machine part (think computer, phone, tv, ect). Software is non-tangible - instructions that hardware can follow to perform some task.

Most commonly, you can understand software as an application – something that does something on a computer. Applications can perform an infinite number of tasks, but all applications basically are built to do three things: take in data, store/transform/analyze data, spit out data.

The IT universe has its own standards for measuring the success or value of an application – mainly, how accurately and quickly those three tasks can be performed.

Any application of IT requires people with knowledge from the IT universe. Such people are what we mean when we say “IT people”. The more complex an application is, the more expert the IT person must be.

Business-Application
When a business uses IT, we call this a business-application. Business-applications have one goal – increase profitability by maximizing the cost-benefit ratio of operations. If a business-application is not achieving this goal, there is no reason for it to exist. To achieve this goal, a business-application must meet certain requirements. The requirements can be separated into two groups – business and IT.

Business requirements are set by the business people. These requirements answer questions such as: “What should this application do now and in the future?”, “Who will use this application?”, “How much value should this add?”, “How much resource can we commit upfront for this?”, ect.

IT requirements are set by the IT people, but are driven by the business requirement. They answer questions such as “What platform, framework, and methodologies will be used in development?”, “What hardware and personnel resources are required?”, ect. IT requirements ensure that the business-application will satisfy the business requirements and that it is a technically sound application.

Synergy
Synergy is used to describe the successful collaboration of business and IT people. This requires knowing what information must be shared between groups and how to share it effectively. A development environment having synergy is characterized by:
  1. Near and long-term business requirements are accurately reflected and addressed in IT requirements.
  2. The size and complexity of the business-application is accurately understood by both IT and business.
  3. Time and resource requirements are accurately understood by both IT and business.

The resulting business application is characterized by:

  1. Meets business expectations.
  2. Is technically sound.
  3. Low maintenance costs.
  4. Can be expanded with relative ease to meet future demands.
  5. Produced on budget and on time


10 Principles on IT Development

The team at datawildfire.com follow 10 high-level principles to guide in IT development.

  1. IT Purpose: IT is not an end unto itself; its purpose is to support business.
  2. IT Staff: There are IT people and business people, but the development process requires one person solid in both.
  3. Real-World Reflection: The closer an IT system reflects the real world, both in data model and work flow, the more successful that system will be.
  4. Attention-to-detail: IT systems should be built with the same amount of design and attention-to-detail as skyscrapers.
  5. Disciplined Development: Doing it right the first time is always more cost-effective.
  6. One Way: Consistency breeds flexibility.
  7. Project Planning: If the developer doesn't know exactly what they are expected to develop, the product will not be satisfactory.
  8. Lean-Mean Computing-Machine: No two parts of a system should perform identical tasks.
  9. Data Models: Good data models maker for easier application development.
  10. Integrity: A loss or absence of data is always preferred to incorrect data.