Saturday, January 28, 2012

UML vs IDEF


The process of business modelling is employed in order to create an abstraction of an otherwise complex business. This will enable business stakeholders (owners, customers, management, etc) to gain a better understanding of the business functions and also promote business improvements and/or innovation.

What is the connection between business and software modelling ?

In order to survive in today's competitive world, businesses have to continuously review their products, services, and relations with the environment (suppliers, competitors, clients, laws, etc). To assess the quality of their products and effectiveness of their services, businesses rely on the information systems. Initially only a support component, the information systems have now become an integral part of the businesses. The business itself must define the requirements for the information system.

Unfortunately, very often the software system does not properly support the business. The causes may be: lack of accurate requirements definition, deficiencies in proper business understanding by the software design team, or even the nature of the business (which may change so often that the software simply cannot follow).

Software modelling is an accepted way of designing software systems. By applying the modelling approach to the business itself, accurate requirements may be achieved for the subsequent software design activity. This concept was taken even further by the idea of using the same modelling language for both software and business modelling. 

One example of a language that could model both the business and the software system belonging to the business is the Unified Modelling Language, the UML. Many developers are already familiar with UML from modelling software systems. Using one single language across the business and software modelling would promote consistency and communication among modellers and also take advantage of a whole range of modelling tools that support the UML.

Translating the business model into a software model is not a straightforward process. Not all the classes and objects defined in a business architecture may be mapped directly to a software model

Here’s a mapping of the IDEF to the UML
IDEF
UML
· IDEF0 : Function modeling
· IDEF1 : Information Modeling 
· IDEF1X : Data Modeling
· IDEF2 : Simulation Model Design
· IDEF3 : Process Description Capture
· IDEF4 : Object-Oriented Design 
· IDEF5 : Ontology Description Capture 

· Activity Diagram
· Class Diagram
· Object Diagram
· Collaboration Diagram
· Activity/ State/ Use Case Diagram
· Class/ Object/ Activity/ State Diagram
· Meta Object Facility


UML has primarily been conceived with software design in mind, while IDEF have their origins in Computer Assisted Manufacturing. The interesting fact is that each of these methodologies is being extended to cover the other's domain. While UML is being extended now to cover business modelling, the IDEF family is added new components that enable it to address software (and information systems in general) development.

IDEF is coming from the manufacturing / information environment and aims to cover object orientation, knowledge representation and software development.

UML is still in its infancy; it comes from the domain of object-oriented software development but there are increasing efforts to extend it towards business process modelling.

Which method ? It is up to the user: the task, background, resources, patterns… will all play a role in selecting the right tool for the job.

reference: 

Business Modelling: UML vsIDEF

www.ict.griffith.edu.au/noran/Docs/UMLvsIDEF.pdf

0 comments:

Post a Comment