Modelling Tools for Software Development and Engineering

Tools used for validating, analysing, recording, and eliciting requirements of the software are considered as the software requirement modeling tools. Some of the tools and techniques of classical modeling are CRC cards, DFD (data flow diagrams), FSM (finite state machines) and ERM (entity-relationship modelling). CRC cards a simple requirement elicitation tool and much of the collected information can be represented in diagrams of UML communication and the information is collected on CRC cards. In contrast to this, a system is modeled by DFD as a set of data flows and processes through which these processes are connected. In data flow design, the notation is used, whereas, the UML sequence diagram is resembled by DFDs. In contrast to this, the state transitions and states are modeled by FSM. Specific kinds of formal languages in the early days were modeled as finite state machines. The finite state machines are the factor on which the diagrams of the UML state machine are dependent. Moreover, the UML class diagrams are also based on ERM. Established by Chen in the 70s, it is also one of the techniques of data modeling.

The semantic and the logical structure of the UoD are modelled by ERM – entity-relationship modeling, whereas, in ERDs – entity-relationship diagrams, the entity-relationship models are presented. There are many factors of ERN that differentiate in their graphical extensions and notations to the original approach of Chen. Relationship, attribute, attribute value, entity type, and entity are some of the key elements of ERM. The link between two or more entities is considered a relationship. The kind of set of attribute values is referred to as attribute, whereas, the entity being described by a piece of information is considered as the attribute value. Lastly, the kind of a set of entities is referred to as an entity type and the distinguishable object of some kind is referred to as an entity. Instead of the logical structure of the UoD, modeling the logical structure of the data is the key objective of ERM.

Moreover, a set of transitions from one state to another is referred to as FSM that take place on input signals from a finite set of possible stimuli. The state where the machine initiates is designated specifically. The FSMs are also represented as STD – state transition diagrams. With a label identifying the transitions and state, the states are presented as bubbles in a state transition diagram. Along with this, the stimulus is denoted by the label through which the transition is triggered. Lastly, ‘written off’ is the label given to the final state. Moreover, for the hierarchical decomposition of FSMs, the state charts can be used. The group of states can be perceived as a single entity at one life in statecharts.