Semantics and Ontologies

  • Fractal Data Modeling
    Looking at data modeling as a fractal process.
  • Role, the Overloaded Workhorse of the Modeling World
    In semantic modeling, there are three distinct types of roles that aren’t even variations of each other. In fact, they are disjoint at the semantic level.
  • The Seven Facets of Dr. Class
    We look at the sum total of concepts that might be implemented under the banner of “class,” a heavily overloaded term in computer science.
  • Semantic Profiling
    An approach to understanding the data in an existing system by using a process called semantic profiling.
  • Autistic Systems
    The main reason we are frustrated with most of the application systems we have implemented in the last several decades is because they are autistic.
  • Categories and Classes
    Getting the category/class distinction right is one of the key drivers of the cost of traditional systems.
  • Shirky, Syllogism and the Semantic Web
    Revisiting Clay Shirky’s piece on the Semantic Web
  • The Distinctionary
    Semantics is predicated on the idea of good definitions. However, most definitions are not very good. In this essay we’re going to explore why well-intentioned definitions miss the mark and propose an alternate way to construct definitions. We call this alternate way the “distinctionary.”
  • The Enterprise Ontology
    We believe that within a few years the enterprise ontology will become one of the foundational pieces to most information system work within major enterprises. What is it? Why is it useful? How do we build one? Read on…
  • Zen Mind, Part 2
    The semantics of inheritance might not be what you expect.
  • Zen Mind, Part 1
    Getting rid of some preconceived ideas will help you grasp the basics of semantics.


  • The Problem with Default Values
    Virtually all information systems have “default values.” There are many hidden problems with default values, and these problems infest all of our systems.
  • Three Value Logic
    Relational databases, relational theory, relational calculus, and predicate logic all rely on a two-value truth. However, there are many situations where we have to find subtle workarounds to the limitations of the two-truth values. In this paper, we will discuss three-value logic and just a few of the implications for systems building.
  • White Paper: Application Scope: A Fractal View
    If you’re having trouble estimating the size of an application, try taking a page from fractal geometry.
  • Silos of Babel
    The biggest problem with integrating disparate applications in a large organization is that each has its data encoded in its own schema, essentially its own language. In my opinion it is these “silos of Babel” that create most of the difficulty, cost and expense in integrating.
  • The Case for the Shared Service Lite
    Start simple, and implement the more complex solution later.
  • Response Time Quanta
    We’ve always held that response times should always be reduced whenever possible. This article says that some reductions do no good, and only when certain boundaries get crossed do we see any benefit
  • The Heuristics of Risk
    System project failures are a well-known part of systems development; however. all the potential risks of planning and executing a project effort are not. This article offers heuristic guidelines to help IS managers assess these inherent risk factors before initiating and while executing a project. Case examples illus­trate how a particular risk factor can result in a failed systems development effort.

Software Architecture

  • Deplorable Software
    Why can’t we do as well we did fifty years ago?
  • How to Run a Project Over Budget by 300-500%
    A playbook you don’t want to follow.
  • Strategy and Your Stronger Hand
    Regardless of industry, age or size, companies have a dominant business model.
  • The Return on Investment for Architecture
    I don’t completely agree with the assessment that ROI analysis on EA projects is not possible.
  • Event-Driven Architectures
    Event-driven architecture is the latest buzzword in the enterprise architecture space. This is exactly what we have been espousing for years.
  • A Semantic Enterprise Architecture
    A first look at what a semantic enterprise architecture (SEA) might look like.
  • It Isn’t Architecture Until It’s Built
    We’ve been dealing a lot lately with questions about architecture, but somewhere along the line we failed to emphasize perhaps one of the most important points in this business.
  • Architecture and Planning
    Are architecture and planning the same thing? Can we have one without the other?
  • Human Scale Software Architecture
    Software Architecture can benefit as much as physical architecture from paying attention to human scale concerns.
  • How to Select a Software Architect
    Selecting a Software Architect is an important decision, as the resulting architecture will impact your information systems for a long time. We present a few thoughts to keep in mind as you consider your decision.
  • White Paper: Business Vocabularies
    Most companies of any size have created an internal Tower of Babel that frustrates all attempts to integrate their disparate systems. The Tower of Babel is the difference in language and data names that spring up from the development of dozens or hundreds of separate but highly interdependent systems.
  • Who Needs Software Architecture?
    Most firms don’t need a new architecture. They have an architecture and it works fine. If you live in a Tudor house, most of the time you don’t think about architecture, only when you want to make some pretty major changes.
  • The Zachman Framework
    Shortly after you start your inquiry about software architecture, or enterprise architecture as it is often called, you will come across the Zachman Framework. As with so many things in this domain, we have an opinion on the Zachman Framework and are more than willing to share it.
  • What Does a Software Architect Do?
    The Software Architect’s primary job is to help a client understand deeply the architecture they have built, understand clearly what they desire from their information systems, and help them construct a plan to get there.
  • Schools of Enterprise Application Architecture
    An Enterprise Application Architecture is the coordinating paradigm through which an organization’s IT assets inter-relate to form the computing infrastructure and support the business goals. The choice of architecture impacts a range of issues including the cost of maintenance, the cost of development, security, and the availability of timely information.
  • Role-Based Security
    Role-based security is a means of implementing an authorization mechanism which has the potential to substantially reduce administrative cost and reduce vulnerability. Enterprise Role-based security addresses the problem of maintaining authorizations within large IT environments; it is perhaps more accurately described as ‘Role-Based Access Control,’ or RBAC.
  • What is Software Architecture?
    Software Architecture is the design of the major components of complex information systems, and how they interact to form a coherent whole. The identification of what constitutes the “major” components is primarily a matter of scale and scope, but generally starts at the enterprise level and works down through subsidiary levels.