Introduction to Analysis Modeling
Models represent the information that software transform, the function that enables this transformation, the features that the user’s desired, and the behavior of the system as transformation is taking place. Analysis modeling represents the user’s requirements by depicting the software in three different domains: information domain, functional domain, and behavioral domain. The analysis model is designed by a software engineer or modeler or system analysts, or project manager. To describe the requirement, it uses diagrammatic form and text.
Principles of Analysis Model
Principles are necessary to build an effective analysis model.
- Represent Information Domain: The information domain represents the data flow into the system from an end-user or external system and devices, the data flow out of the system through the user interface or network interface and the data stores that collect and organize the permanently required data objects.
- Represent Software Functions: Software functions are responsible for the data flow in the system. It also provides support for those features that are user-visible and they are beneficial to the end-users. They also affect internal and external system elements.
- Represent Software Behavior: Software behavior represents the way the software interacts with the external environment. Input provided by the users, control data provided by the external system it was monitoring data collected over a network cause the software to behave indefinite way.
- Partition of Above Three Representations: The model that depicts information, behavior, and function should be partitioned in a layered manner to get a detailed view of the system. And this’s very much helpful in the complex problems which are difficult to solve. A large complex problem is divided into subproblems until each subproblem is relatively easy to understand. This concept is called partitioning and is the key task of analysis modeling.
- Move From Essence Towards Implementation: Analysis modeling describes the problem from the user’s perspective. The essence of the problem is described without any consideration of how a solution will be implemented, and implementation detail indicates how the essence will be implemented.
Rule of Thumb for Analysis Model
Arlow and Neustadt create rules of thumbs for analysis modeling.
These rules are as follows:
- The model should focus on requirements visible in a business domain.
- Each element of the analysis model should add to all requirements and provide insight into the system’s information domain function and behavior.
- Some functions and not functional models are required to more time they need to design after the design process of the software.
- It gives assurance that the analysis model provides value to all stock holders.
- Minimizing coupling through out the system. It is important to represent a relationship between classes and functions. Functions are interconnected to each other very tightly then efforts are put to reduce this interconnectedness.
- It keeps the model as simple as it can be.
Analysis Modeling Approaches
Given below are the approaches mentioned:
- Context Analysis: It is an external viewpoint that shows the context or environment of the system.
- Structured Analysis: It is a structural viewpoint that shows the architecture of the system or data. It involves the data model like the entity-relationship diagram. It considers data and the processes that transform the data into separate entities called as data objects. Data objects define the attributes and relationships. This process tells us how we can manipulate and transform the data. It also represents the flow of data objects.
- Behavioral Analysis: It is behavioral viewpoint that shows the behavior of the system. Software engineers choose one approach: the best of software requirements and the most effective bridge to software design. The analysis model derives modeling elements. The specification of each element may differ from project to project.
- Object-Oriented Analysis: It focus on the definition of classes. It provides object-oriented design methodology such as UML and Unified process analysis. It performs collaboration of classes to fulfill the user’s requirements.
Elements of Analysis Modeling
Given below are the elements mentioned:
- Data Dictionary: Data dictionaries are lists of all the names used in the system models; description of the entities, their attributes and relationships are included.
- Data Flow Diagram: Data flow diagram model the data processing of the system.
- State Transition Diagram: It represents the dynamic model, which shows changes in the state that an object goes through during its lifetime in response to an event.
- Entity Relationship Diagram: It consists of information required for each entity or data objects and shows a relationship between objects. It shows the structure of the data in table format.
- Data Object Description: It represents the composite information of one entities such that the software understands it.
Importance of Analysis Modeling
Given below are the importance mentioned:
- The analysis model is multidimensional.
- The design modelling phase completely depends upon the analysis model.
- If any deficiency remains in the analysis model, then errors will be found in the ultimate product to be built.
Given below are the features of analysis modeling:
- Easy to understand.
- Provides 3C, i.e. correctness, completeness and consistency.
- Straightforward to review.
This is a guide to Analysis Modeling. Here we discuss the introduction, principles, rule of thumb, approaches, elements, importance and features. You may also have a look at the following articles to learn more –