IDEF1X
Encyclopedia
IDEF1X is a data modeling
Data modeling
Data modeling in software engineering is the process of creating a data model for an information system by applying formal data modeling techniques.- Overview :...

 language
Modeling language
A modeling language is any artificial language that can be used to express information or knowledge or systems in a structure that is defined by a consistent set of rules...

 for the developing of semantic data model
Semantic data model
A semantic data model in software engineering has various meanings:# It is a conceptual data model in which semantic information is included. This means that the model describes the meaning of its instances...

s. IDEF1X is used to produce a graphical information model
Information model
An information model in software engineering is a representation of concepts, relationships, constraints, rules, and operations to specify data semantics for a chosen domain of discourse...

 which represents the structure and semantics
Semantics
Semantics is the study of meaning. It focuses on the relation between signifiers, such as words, phrases, signs and symbols, and what they stand for, their denotata....

 of information
Information
Information in its most restricted technical sense is a message or collection of messages that consists of an ordered sequence of symbols, or it is the meaning that can be interpreted from such a message or collection of messages. Information can be recorded or transmitted. It can be recorded as...

 within an environment or system
System
System is a set of interacting or interdependent components forming an integrated whole....

.

IDEF1X permits the construction of semantic data models which may serve to support the management of data as a resource, the integration of information systems, and the building of computer database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...

s. This standard is part of the IDEF
IDEF
IDEF, an abbreviation of Integration Definition, refers to a family of modeling languages in the field of systems and software engineering. They cover a wide range of uses, from functional modeling to data, simulation, object-oriented analysis/design and knowledge acquisition. These "definition...

 family of modeling languages in the field of software engineering
Software engineering
Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...

.

Overview

A data modeling
Data modeling
Data modeling in software engineering is the process of creating a data model for an information system by applying formal data modeling techniques.- Overview :...

 technique is used to model data
Data
The term data refers to qualitative or quantitative attributes of a variable or set of variables. Data are typically the results of measurements and can be the basis of graphs, images, or observations of a set of variables. Data are often viewed as the lowest level of abstraction from which...

 in a standard, consistent and predictable manner in order to manage it as a resource. It can be used in projects requiring a standard means of defining and analyzing the data resources within an organization. Such projects include the incorporation of a data modeling
Data modeling
Data modeling in software engineering is the process of creating a data model for an information system by applying formal data modeling techniques.- Overview :...

 technique into a methodology
Methodology
Methodology is generally a guideline for solving a problem, with specificcomponents such as phases, tasks, methods, techniques and tools . It can be defined also as follows:...

, managing data as a resource, integrating information systems
Information systems
Information Systems is an academic/professional discipline bridging the business field and the well-defined computer science field that is evolving toward a new scientific area of study...

, or designing computer database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...

s. The primary objectives of the IDEF1X standard are to provide:
  • Means for completely understanding and analyzing an organization's data resources
  • Common means of representing and communicating the complexity of data
  • A technique for presenting an overall view of the data required to run an enterprise
  • Means for defining an application-independent view of data which can be validated by users and transformed into a physical database design
  • A technique for deriving an integrated data definition from existing data resources.


A principal objective of IDEF1X is to support integration
System integration
In engineering, system integration is the bringing together of the component subsystems into one system and ensuring that the subsystems function together as a system...

. The approach to integration focuses on the capture, management
Management
Management in all business and organizational activities is the act of getting people together to accomplish desired goals and objectives using available resources efficiently and effectively...

, and use of a single semantic definition of the data resource referred to as a “Conceptual schema
Conceptual schema
A conceptual schema or conceptual data model is a map of concepts and their relationships. This describes the semantics of an organization and represents a series of assertions about its nature...

.” The “conceptual schema” provides a single integrated definition of the data within an enterprise which is not biased toward any single application of data and is independent of how the data is physically stored or accessed. The primary objective of this conceptual schema is to provide a consistent definition of the meanings of and interrelationships between data that can be used to integrate, share, and manage the integrity of data. A conceptual schema must have three important characteristics:
  • Consistent with the infrastructure of the business and true across all application areas
  • Extendible, such that new data can be defined without altering previously defined data
  • Transformable to both the required user views and to a variety of data storage and access structures.

History

The need for semantic data model
Semantic data model
A semantic data model in software engineering has various meanings:# It is a conceptual data model in which semantic information is included. This means that the model describes the meaning of its instances...

s was first recognized by the U.S. Air Force in the mid-1970s as a result of the Integrated Computer Aided Manufacturing
Integrated Computer-aided manufacturing
Integrated Computer-Aided Manufacturing is a US Air Force program to develop tools, techniques, and processes to support manufacturing integration and has influenced the computer-integrated manufacturing and computer-aided manufacturing project efforts of many companies.The ICAM program was...

 (ICAM) Program. The objective of this program was to increase manufacturing productivity through the systematic application of computer technology. The ICAM Program identified a need for better analysis and communication techniques for people involved in improving manufacturing productivity. As a result, the ICAM Program developed a series of techniques known as the IDEF (ICAM Definition) Methods which included the following:
  • IDEF0
    IDEF0
    IDEF0 is a function modeling methodology for describing manufacturing functions, which offers a functional modeling language for the analysis, development, reengineering, and integration of information systems; business processes; or software engineering analysis.IDEF0 is part of the IDEF family...

     used to produce a “function model” which is a structured representation of the activities or processes within the environment or system
  • IDEF1 used to produce an “information model” which represents the structure and semantics of information within the environment or system
  • IDEF2 used to produce a “dynamics model”.


The initial approach to IDEF information modeling (IDEF1) was published by the ICAM program in 1981, based on current research and industry needs. The theoretical roots for this approach stemmed from the early work of Edgar F. Codd
Edgar F. Codd
Edgar Frank "Ted" Codd was an English computer scientist who, while working for IBM, invented the relational model for database management, the theoretical basis for relational databases...

 on relational theory
Relational theory
In physics and philosophy, a relational theory is a framework to understand reality or a physical system in such a way that the positions and other properties of objects are only meaningful relative to other objects...

 and Peter Chen
Peter Chen
Dr. Peter Pin-Shan Chen is an American computer scientist and Professor of Computer Science at Louisiana State University, who is known for the development of Entity-Relationship Modeling in 1976.- Biography :...

 on the entity-relationship model
Entity-relationship model
In software engineering, an entity-relationship model is an abstract and conceptual representation of data. Entity-relationship modeling is a database modeling method, used to produce a type of conceptual schema or semantic data model of a system, often a relational database, and its requirements...

. The initial IDEF1 technique was based on the work of Dr R. R. Brown and Mr T. L. Ramey of Hughes Aircraft
Hughes Aircraft
Hughes Aircraft Company was a major American aerospace and defense contractor founded in 1932 by Howard Hughes in Culver City, California as a division of Hughes Tool Company...

 and Mr D. S. Coleman of D. Appleton Company (DACOM), with critical review and influence by Charles Bachman
Charles Bachman
Charles William "Charlie" Bachman is an American computer scientist, who spent his entire career as an industrial researcher rather than in academia...

, Peter Chen
Peter Chen
Dr. Peter Pin-Shan Chen is an American computer scientist and Professor of Computer Science at Louisiana State University, who is known for the development of Entity-Relationship Modeling in 1976.- Biography :...

, Dr M. A. Melkanoff, and Dr G.M. Nijssen
G.M. Nijssen
Sjir Nijssen is a Dutch computer scientist, who was fulltime professor at the University of Queensland. Nijssen is considered the founder of verbalization in computer science, and one of the founders of business modeling and information analysis based on natural language.- Biography :Sjir Nijssen...

.

In 1983, the U.S. Air Force initiated the Integrated Information Support System (I2S2) project under the ICAM program. The objective of this project was to provide the enabling technology to logically and physically integrate a network of heterogeneous computer hardware and software. As a result of this project, and industry experience, the need for an enhanced technique for information modeling was recognized.

From the point of view of the contract administrators of the Air Force IDEF program, IDEF1X was a result of the ICAM IISS-6201 project and was further extended by the IISS-6202 project. To satisfy the data modeling enhancement requirements that were identified in the IISS-6202 project, a sub-contractor, DACOM, obtained a license to the Logical Database Design Technique (LDDT) and its supporting software (ADAM). From the point of view of the technical content of the modeling technique, IDEF1X is a renaming of LDDT.

Logical Database Design Technique

The Logical Database Design Technique (LDDT) had been developed in 1982 by Robert G. Brown of The Database Design Group entirely outside the IDEF program and with no knowledge of IDEF1. Nevertheless, the central goal of IDEF1 and LDDT was the same: to produce a database-neutral model of the persistent information needed by an enterprise by modeling the real-world entities involved. LDDT combined elements of the relational data model, the E-R model, and data generalization in a way specifically intended to support data modeling and the transformation of the data models into database designs.

LDDT included an environmental (namespace) hierarchy, multiple levels of model, the modeling of generalization/specialization, and the explicit representation of relationships by primary and foreign keys, supported by a well defined role naming facility. The primary keys and unambiguously role-named foreign keys expressed sometimes subtle uniqueness and referential integrity constraints that needed to be known and honored by whatever type of database was ultimately designed. Whether the database design used the integrity constraint based keys of the LDDT model as database access keys or indexes was an entirely separate decision. The precision and completeness of the LDDT models was an important factor in enabling the relatively smooth transformation of the models into database designs. Early LDDT models were transformed into database designs for IBM's hierarchical database, IMS. Later models were transformed into database designs for Cullinet's network database, IDMS, and many varieties of relational database.

The LDDT software, ADAM, supported view (model) entry, view merging, selective (subset) viewing, namespace inheritance, normalization, a quality assurance analysis of views, entity relationship graph and report generation, transformation to a relational database expressed as SQL data declaration statements, and referential integrity checking SQL. Logical models were serialized with a structural modeling language.

The graphic syntax of LDDT differed from that of IDEF1 and, more importantly, LDDT contained many interrelated modeling concepts not present in IDEF1. Therefore, instead of extending IDEF1, Mary E. Loomis of DACOM wrote a concise summary of the syntax and semantics of a substantial subset of LDDT, using terminology compatible with IDEF1 wherever possible. DACOM labeled the result IDEF1X and supplied it to the ICAM program, which published it in 1985. (IEEE 1998, p. iii) (Bruce 1992, p. xii) DACOM also converted the ADAM software to C and sold it under the name Leverage.

IDEF1X Building blocks



Entities : The representation of a class of real or abstract things (people, objects, places, events, ideas, combination of things, etc) that are recognized as instances of the same class because they share the same characteristics and can participate in the same relationships.
Domains: A named set of data values (fixed, or possibly infinite in number) all of the same data type, upon which the actual value for an attribute instance is drawn. Every attribute must be defined on exactly one underlying domain. Multiple attributes may be based on the same underlying domain.
Attributes: A property or characteristic that is common to some or all of the instances of an entity. An attribute represents the use of a domain in the context of an entity.
Keys: An attribute, or combination of attributes, of an entity whose values uniquely identify each entity instance. Each such set constitutes a candidate key.
Primary Keys: The candidate key selected as the unique identifier of an entity.
Foreign Keys: An attribute, or combination of attributes of a child or category entity instance whose values match those in the primary key of a related parent or generic entity instance. A foreign key can be viewed as the result of the "migration" of the primary key of the parent or generic entity through a specific connection or categorization relationship. An attribute or combination of attributes in the foreign key can be assigned a role name reflecting its role in the child or category entity.



Relationships: An association between the instances of two entities or between instances of the same entity.
Connection Relationships: A relationship having no semantics in addition to association. See Constraint, Cardinality.
Categorization Relationships: A relationship in which instances of both entities represent the same real or abstract thing. One entity (generic entity) represents the complete set of things, the other (category entity) represents a sub-type or sub-classification of those things. The category entity may have one or more characteristics, or a relationship with instances of another entity, not shared by all generic entity instances. Each instance of the category entity is simultaneously an instance of the generic entity.
Non-Specific Relationships: A relationship in which an instance of either entity can be related to any number of instances of the other.
View Levels: Three levels of view are defined in IDEF1X: Entity Relationship (ER), Key Based (KB), and Fully Attributed (FA). They differ in level of abstraction. The ER level is the most abstract. It models the most fundamental elements of the subject area - the entities and their relationships. It is usually broader in scope than the other levels. The KB level adds keys and the FA level adds all the attributes.

The Three Schema Approach

The three-schema approach in software engineering is an approach to building information systems and systems information management, that promotes the conceptual model
Conceptual schema
A conceptual schema or conceptual data model is a map of concepts and their relationships. This describes the semantics of an organization and represents a series of assertions about its nature...

 as the key to achieving data integration
Data integration
Data integration involves combining data residing in different sources and providing users with a unified view of these data.This process becomes significant in a variety of situations, which include both commercial and scientific domains...

.

A schema is a model
Scientific modelling
Scientific modelling is the process of generating abstract, conceptual, graphical and/or mathematical models. Science offers a growing collection of methods, techniques and theory about all kinds of specialized scientific modelling...

, usually depicted by a diagram
Diagram
A diagram is a two-dimensional geometric symbolic representation of information according to some visualization technique. Sometimes, the technique uses a three-dimensional visualization which is then projected onto the two-dimensional surface...

 and sometimes accompanied by a language description. The three schemas used in this approach are:
  • External schema for user views
  • Conceptual schema
    Conceptual schema
    A conceptual schema or conceptual data model is a map of concepts and their relationships. This describes the semantics of an organization and represents a series of assertions about its nature...

     integrates external schemata
  • Internal schema that defines physical storage structures.


At the center, the conceptual schema defines the ontology
Ontology
Ontology is the philosophical study of the nature of being, existence or reality as such, as well as the basic categories of being and their relations...

 of the concept
Concept
The word concept is used in ordinary language as well as in almost all academic disciplines. Particularly in philosophy, psychology and cognitive sciences the term is much used and much discussed. WordNet defines concept: "conception, construct ". However, the meaning of the term concept is much...

s as the user
User (computing)
A user is an agent, either a human agent or software agent, who uses a computer or network service. A user often has a user account and is identified by a username , screen name , nickname , or handle, which is derived from the identical Citizen's Band radio term.Users are...

s think of them and talk about them. The physical schema describes the internal formats of the data
Data
The term data refers to qualitative or quantitative attributes of a variable or set of variables. Data are typically the results of measurements and can be the basis of graphs, images, or observations of a set of variables. Data are often viewed as the lowest level of abstraction from which...

 stored in the database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...

, and the external schema defines the view of the data presented to the application programs. The framework attempted to permit multiple data models to be used for external schemata.

Modeling Guidelines

The modeling process can be divided into five stages of model developing.

Phase Zero – Project Initiation
The objectives of the Project Initiation phase include:
  • Project definition – a general statement of what has to be done, why, and how it will get done
  • Source material – a plan for the acquisition of source material, including indexing and filing
  • Author conventions – a fundamental declaration of the conventions (optional methods) by which the author chooses to make and manage the model.



Phase One – Entity Definition
The objective of the Entity Definition phase is to identify and define the entities that fall within the problem domain being modeled.



Phase Two – Relationship Definition
The objective of the Relationship Definition phase is to identify and define the basic relationships between entities. At this stage of modeling, some relationships may be non-specific and will require additional refinement in subsequent phases. The primary outputs from Phase Two are:
  • Relationship matrix
  • Relationship definitions
  • Entity-level diagrams.





Phase Three - Key Definitions
The objectives of the Key Definitions phase are to:
  • Refine the non-specific relationships from Phase Two
  • Define key attributes for each entity
  • Migrate primary keys to establish foreign keys
  • Validate relationships and keys.





Phase Four - Attribute Definition
The objectives of the Attribute Definition phase are to:
  • Develop an attribute pool
  • Establish attribute ownership
  • Define nonkey attributes
  • Validate and refine the data structure.



IDEF1X Meta Model

A meta model is a model of the constructs of a modeling system. Like any model, it is used to represent and reason about the subject of the model - in this case IDEF1X. The meta model is used to reason about IDEF1X, i.e., what the constructs of IDEF1X are and how they relate to one another. The model shown is an IDEF1X model of IDEF1X. Such meta model
Metamodeling
Metamodeling, or meta-modeling in software engineering and systems engineering among other disciplines, is the analysis, construction and development of the frames, rules, constraints, models and theories applicable and useful for modeling a predefined class of problems...

s can be used for various purposes, such as repository design, tool design, or in order to specify the set of valid IDEF1X models. Depending on the purpose, somewhat different models result. There is no “one right model.” For example, a model for a tool that supports building models incrementally must allow incomplete or even inconsistent models. The meta model for formalization, however, emphasizes alignment with the concepts of the formalization and hence incomplete or inconsistent models are not allowed.

Meta models have two important limitations. First, they specify syntax but not semantics. Second, a meta model must be supplemented with constraints in natural or formal language. The formal theory of IDEF1X provides both the semantics and a means to precisely express the necessary constraints.

A meta model for IDEF1X is given in the adjacent figure. The name of the view is mm. The domain hierarchy and constraints are also given. The constraints are expressed as sentences in the formal theory of the meta model. The meta model informally defines the set of valid IDEF1X models in the usual way, as the sample instance tables that correspond to a valid IDEF1X model. The meta model also formally defines the set of valid IDEF1X models in the following way. The meta model, as an IDEF1X model, has a corresponding formal theory. The semantics of the theory are defined in the standard way. That is, an interpretation of a theory consists of a domain of individuals and a set of assignments:
  • To each constant in the theory, an individual in the domain is assigned
  • To each n-ary function symbol in the theory, an n-ary function over the domain is assigned
  • To each n-ary predicate symbol in the theory, an n-ary relation over the domain is assigned.

In the intended interpretation, the domain of individuals consists of views, such as production; entities, such as part and vendor; domains, such as qty_on_hand; connection relationships; category clusters; and so on. If every axiom in the theory is true in the interpretation, then the interpretation is called a model for the theory. Every model for the IDEF1X theory corresponding to the IDEF1X meta model and its constraints is a valid IDEF1X model.

See also

  • CA ERwin Data Modeler
    CA ERwin Data Modeler
    CA ERwin Data Modeler is a software tool for data modeling of custom developed information systems, including databases of transactional systems and data marts...

  • Conceptual model (computer science)
  • Crow's foot notation
  • DeZign for Databases
    DeZign for Databases
    DeZign for Databases is a database design and data modeling tool for multiple database platforms . It can be used to create, maintain and document new or existing database systems. The tool uses Entity-relationship diagram...

  • ER/Studio
    ER/Studio
    ER/Studio is data architecture and database design software developed by Embarcadero Technologies. It works across multiple database platforms and is used by data architects, data modelers, database administrators and business analysts to create and manage database designs, document and reuse data...

  • IDEF0
    IDEF0
    IDEF0 is a function modeling methodology for describing manufacturing functions, which offers a functional modeling language for the analysis, development, reengineering, and integration of information systems; business processes; or software engineering analysis.IDEF0 is part of the IDEF family...

  • IDEF5
    IDEF5
    IDEF5 is a software engineering method to develop and maintain usable, accurate, domain ontologies...

  • ISO 10303
    ISO 10303
    ISO 10303 is an ISO standard for the computer-interpretable representation and exchange of product manufacturing information. Its official title is: Automation systems and integration — Product data representation and exchange...

  • Logic Works
    Logic Works
    Logic Works Inc. was a software company based in Princeton, New Jersey. Their flagship product was an IDEF1X modeling and database design toolcalled ERwin whose name is formed from an initialism of ER for Entity Relationship and "win", short for windows...

  • Weak entity
    Weak entity
    In a relational database, a Weak Entity is an entity that cannot be uniquely identified by its attributes alone; therefore, it must use a foreign key in conjunction with its attributes to create a primary key...


Further reading


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK