Software Stability:
Recovering General Patterns of Business
The software stability approach is required to balance the seemingly contradictory goals of stability over the software lifecycle with the need for adaptability, extensibility and interoperability. This workshop paper addresses the issue of how software stability can be achieved over time by outlining an approach to evolving General Business Patterns (GBPs) from the empirical data contained within legacy systems. GBPs are patterns of business objects that are (directionally) stable across contexts of use. The work explains, via a small worked example, how stability is achieved via a process of ‘sophistication’. The outcome of the process demonstrates how the balance that stability seeks can be achieved.
Setting the Scene:
42 Objects Business Ontology Based Software Development
An overview of 42 Objects' approach to Business Ontology Based Software Development that aims to secure a measure of agreement on:
- What philosophical ontology is,
- Whether, and how, ontology can assist in object oriented software development,
- What philosophical ontology can add to the debate on the mapping between objects in the real world and system objects,
- What the key obstacles to the deployment of ontology are
Software Stability:
Recovering General Patterns of Business
With re-engineering of software systems becoming quite pronounced amongst organisations, a software stability approach is required to balance the seemingly contradictory goals of stability over the software lifecycle with the need for adaptability, extensibility and interoperability. This paper addresses the issue of how software stability can be achieved over time by outlining an approach to evolving General Business Patterns (GBPs) from the empirical data contained within legacy systems. GBPs are patterns of business objects that are (directionally) stable across contexts of use. The approach is rooted in developing patterns by extracting the business knowledge embedded in existing software systems. The process of developing this business knowledge is done via the careful use of ontology, which provides a way to reap the benefits of clear semantic expression. A worked example is presented to show how stability is achieved via a process of ‘interpretation’ and ‘sophistication’. The outcome of the process demonstrates how the balance that stability seeks can be achieved.
Report from the ECOOP 2004 Workshop on Philosophy, Ontology, and Information Systems
The workshop aimed at providing a forum to discuss the use of philosophical ontology in object-oriented information systems. Whilst ontology is now more widely used in computing circles – knowledge representation, system integration, legacy transformation, and the semantic web for example – initial attempts have been modest in their outcomes. This is because computing ontology to-date has been used primarily for (often competing) concept definitions: Pragmatically, ontologies have either been developed in an abstract sense (based on some authorative perspective), or people have taken materials at hand (data models and the like) and tried to glue them together. A sound basis on which to properly align different views on aspects of the world in order to work towards a consistent whole is missing. With this in mind, the workshop aimed to secure a measure of agreement on:
- What philosophical ontology is,
- How ontology can assist in software development,
- Key obstacles to the deployment of ontology, and
- Possible collaborative efforts among the participants.
Selection of participants was based on short position papers and/or previously demonstrated interest in related areas of activity.
The title of this report should be referenced as “Report from the ECOOP 2004 Workshop on Philosophy, Ontology, and Information Systems”.
An Ontological Approach for Recovering Legacy Business Content
Legacy Information Systems (LIS) pose a challenge for many organizations. On one hand, LIS are viewed as aging systems needing replacement; on the other hand, years of accumulated business knowledge have made these systems mission-critical. Current approaches however are often criticized for being overtly dependent on technology and ignoring the business knowledge which resides within LIS. In this light, this paper proposes a means of capturing the business knowledge in a technology agnostic manner and transforming it in a way that reaps the benefits of clear semantic expression – this transformation is achieved via the careful use of ontology. The approach called Content Sophistication (CS) aims to provide a model of the business that more closely adheres to the semantics and relationships of objects existing in the real world. The approach is illustrated via an example taken from a case study concerning the renovation of a large financial system and the outcome of the approach results in technology agnostic models that show improvements along several dimensions.
Business Objects:
Re-Engineering for Re-Use - 2nd Edition
The aim of this book is to show you how to use business objects to re-engineer your existing information systems into models—and so systems—that are not only functionally richer but also structurally much simpler. It is a practical guide to re-engineering your systems; when you finish reading it, you will be ready to start. (Business objects can also help you to re-engineer the underlying business that is processed by these systems).
Enterprise Data Modelling:
Developing an Ontology-Based Framework for the Shell Downstream Business
This paper examines the development of a conceptual model that defines Shell’s information requirements - the Downstream Data Model (DDM). The model has its roots in a framework based on the notion of ontological commitment and the focus of the analysis seeks to provide useful insights into the metaphysical aspects relevant to the creation and deployment of the DDM – primarily that related to the extensional nature of the model. The impact of this choice and the methodology employed in the production of the model is examined through example patterns covering spatial and temporal dissectiveness and the use of powerclasses. Having been through the experience of conceptual model development, the work concludes that the separation of the implementational and epistemological ‘gloss’ from a studied understanding of ontological commitment is a necessary evolution of practice in conceptual modelling.
Data and process revisited:
ontology driving a paradigm shift in the development of business application systems
I look at a couple of inter-related points:
- That ontology is the foundation for a revolution (a paradigm shift) in the way we develop business application systems.
- That (fortuitously) this new ontological way of building systems is well adapted to the (brownfield) legacy systems environment most development projects face today.
I find a good way of explaining these points is using the Kuhnian notion of a paradigm shift – and focusing on the data-process distinction within current mainstream paradigm for systems development. I consider some of the simplifying assumptions that were made when the current paradigm was developed in the late 70s – and the way their uncritical acceptance has warped the perception of the development process. I then describe how an ontological approach helps to develop more accurate and finer-grained picture of what is actually going on.
The new picture (paradigm) reveals that current development approaches are not, as commonly assumed, based upon a pure understanding of the business domain (or what is known about the domain) but wrapped up in computational design decisions. This insight helps us to see how we need to fundamentally change the way we understand the relation between an application system and its business domain. A key element of this is being able to effectively explain epistemic divergence – the difference between the domain/ontology and applications' epistemology - and this suggests a new framework for systems development.
Finally I indicate how this new framework is well adapted to the brownfield developments of today unlike the approaches that emerged from the greenfield developments common in the last century.
An Introduction to Ontology
This tutorial should, hopefully, help you to explain what an ontology is and how it can be useful; identify several common misunderstandings when using attempting to ‘do’ ontology; see why a top ontology is useful; and appreciate its technical nature; and become acquainted with one example top ontology – BORO. It is intended to help you understand ontology, it is not intended to turn you into an ontologist.
MOD Ontology
A presentation on the MOD Ontology. Topics covered: MOD Ontology Team, Background on MOD Ontology (Why we started it – What it’s founded on – IDEAS), The BORO Method, The MOD Ontology Demonstrator.
The Challenge of Epistemic Divergence in IS Development
The organizational environment increasingly demands that computer-based information systems are responsive to change and can work with each other seamlessly (ideally from a dynamic perspective). Given the large investment that organizations have in mission-critical legacy systems, evolutionary maintenance and systems integration now form a very significant part of the cost and effort profile of systems development. In terms of the integration issue, much of the difficulty lies in the fact that different systems often contain different ‘representations’ of the world. In the development process, it is generally accepted that the ‘information’ an information system contains about its business domain(s) is an essential intellectual part of the system, and the domain of fundamental concern. This concern is generally regarded as unitary, however, requiring no further breakdown into parts and it is commonly perceived that its relation to the business information system is simple and direct.
A Forensic Approach to Information Systems Development: Part II - Ways to Fix the Problem
In the first of this two-part Executive Update series,1 I took a swipe at the currently accepted approach to systems development. My argument was that if a system is to adequately support a business, the information it handles must be rigorously derived from the business itself. By producing a process model, then an information model, then a data model, and then handing it all over to an implementation team, we can end up somewhat removed from the reality of the business. The people responsible for each of these steps in the chain usually don’t have a good understanding of each other’s specialities, and the result can be “Chinese whispers.”
I also noted there are a number of legacy systems out there that are decades old and attempts to replace them with modern technology have failed. The fact that the old systems are so useful is perhaps more of a mystery than the fact that today’s technology seems to offer nothing to beat them. Another trait of the these old systems that have stood the test of time is that they (mostly) seem to have been developed inhouse, in the days before there was a specialist IT function in the business. This is even stranger. How can a system that’s 20 to 30 years old and developed by a bunch of enthusiastic amateurs outperform the latest technology, designed and developed by highly specialized information technologists and business analysts?
An Analysis of Services
The goal of this report is to provide an in-depth common conceptual understanding of services end-to-end across the enterprise – one that encompasses business, IT and technical services and gives a picture of what, in essence, a service is.
MODEM MODAF Migration: Providing an ontological foundation
This report on the MODEM project is in three sections: 1) An executive summary that explains the motivation for the MODEM work. 2) An introduction to the real world analysis that was done as part of the MODEM work, which gives a deeper understanding of the ideas that underlie it and provides examples of their use. 3) A detailed technical IDEAS analysis explaining the IDEAS MODEM model. The detailed technical analysis focuses on the modelling of behaviour. It aims to re-engineer the UML behaviour model, which has no real world semantics, into an ontological foundation for the modelling of behaviour.
Each of the sections builds upon the previous section and is aimed at a different audience. The first section is aimed at management who need to understand the basis for the MODEM work. The second section is aimed at users who need to understand the issues that the MODEM work raises without delving into the technical details of the IDEAS model. The third and final section provides the detailed IDEAS analysis for the technical experts.
What is a service?
Presentation of the report 'An Analysis of Services' prepared for the UK MoD.
This describes a forensic approach to developing a common understanding of Service across business and IT.
The goal of this report is to provide an in-depth common conceptual understanding of services end-to-end across the enterprise – one that encompasses business, IT and technical services and gives a picture of what, in essence, a service is. Prepared for the UK MoD in 2010.