The Unified Modeling Language (UML) is a modeling language standardized by the Object Management Group (OMG) used to manage requirements in software development projects. IDEF, the acronym for Integration DEFinition, refers to a family of modeling languages in the field of systems and software engineering.
In this article, Ovidiu Noranto provides a short primer for the Unified Modeling Language (UML) and the Integration DEFinition (IDEF) family of languages where he identifies the potential similarities and connections between IDEF and the UML. He also investigates the suitability of the UML (and it extensions) for business modelling. To achieve this goal, he tries to model a business process using both IDEF and UML and document the issues discovered during this activity.
His conclusion is that both the UML and IDEF approaches could be used to model almost any useful view of a business, but that the UML can only be effectively used when complemented by design patterns that allow design knowledge propagation and specific extensions that allow to effectively capture the business processes.
Modern software development approaches like Agile and Scrum support a strong collaboration between all member of the software development team, software testers and business analysts included. Even if you don’t use a method like Behavior-Driven Development (BDD) or Specification by Example, checking the fact that you will be able to actually test your requirements is […]
User stories are a technique taken from the agile development playbook that can easily be applied in traditional systems development and maintenance. User stories help you document needs in a structured way, from the users’ perspective. They’re a good basis for test cases, so as to support integrated requirements management and testing. In this article, […]
This article is an extract of the “Complete Systems Analysis” written by James and Suzanne Robertson. It explains the basics of analysis models and emphasize that the important thing to remember is that modeling tools are complementary. Each shows one aspect of the system. Together, they make a complete working model of the system.