In the field of software engineering, a great need was felt for a way to represent the concepts, relationships between them, rules, operations and constraints since all of these were required for the specification of the data semantics pertaining to a particular domain chosen of discourse. Thus, the information model was developed to keep up with this needs.
To say, the information model typically shows the specifications between many types of things and sometimes includes relations involving the individual elements.
What is an Information Model? What information does it provide?
– The information model basically provides the following things:
1. A structure of the information requirements which can be shared and is organized and stable.
2. Knowledge required for the context of the chose domain of discourse.
– In general, an information model can be defined as a model that shows individual things such as the buildings, facilities and so on.
– For such cases the concept of the information model is changed in to building information model, facility information model and so on.
– The model is then viewed as an integration of the facility information model with the documents and data concerning the facility.
– But in the field of data modeling and software engineering this model is considered to a formal and abstract representation of the various types of entities which includes the following things:
1. Properties of the entities
2. Relationships between the various entities and
3. Operations that are performed on them.
The entity types in an information model may of two types:
1. Kind of real world objects for e.g., occurrences, devices in a network etc.
2. Abstract type e.g., entities which are used for the billing purpose.
What is the purpose of Information Model?
– The primary purpose of the information model is to model a domain that is constrained and can be described with the above mentioned three things.
– Another purpose of the information model is to formally describe a problem domain without putting constraints on how the description is to be mapped to its actual implementation.
– A number of mappings might be available for the information model and are commonly known as the data models.
– They are so called irrespective of whether they are any one of the following:
1. Object models defined using UML.
2. XML schemas
3. Entity relationship models
Evolution of Information Modeling Languages
– The year of 1976 saw the introduction of an entity relationship graphic notation which was stressed as being a semantic modelling technique which was not dependent on any data base modeling technique.
– This marked the beginning of the evolution of the information modeling languages. Some examples of such languages are:
1. Integrated definition language 1
2. The express language
3. UML or the unified modeling language
– The first of the above mentioned 3 languages was adopted from the ICAM program of the U.S. Air force and was developed later.
– The second language express was created with the ISO standard of ISO 10303 – 11 and was developed to provide a formal specification of the information requirements of the data model of the software product.
– This language is a part of the STEP (standard for the exchange of product model data) which is a suite of standards introduced in the year of 1990.
– This language actually has got a textual representation and therefore it’s another version called the EXPRESS – G is used which is its graphical subset.
– It is largely based up on the object oriented paradigm and is based up on the programming languages.
– EXPRESS is known to have taken contributions from a number of languages such as the following:
6. Modula – 2
– In short the EXPRESS is constituted of the elements which allow the following two things:
1. Specifications of the constraints placed up on the objects.
2. Unambiguous object definition
– In order to provide support for the data properties specifications, operations, constraints and partitioning, it makes use of the schema declarations.
– The third modeling language is used for carrying out the following operations up on the software product:
4. Documentation of the artifacts