Challenges and Opportunities for System Modelling


I.      Overview


System modeling is a technique that is use in order to express, visualize, analyze as well as transform the architecture of a given system. A system may compose of software components, hardware components or combination of both as well as the relationship and connection between the said two components.  On the other hand, a system model is a skeletal of model of a system (SINTEF & Kresken 1996, p. 2).


            The main aim of the system modeling is to support and help in developing as well as maintaining the large systems with the focus on the construction components using a well-defined interfaces that indicates the interaction of the different components in its environment. The complete system will be developed by arranging and ordering the said components (SINTEF & Kresken 1996, p. 2).


            System modeling can help to increase the level of reliability and eventually reduce the development cost by making the process of developing and building a system a lot easier.       It can also help to lessen effort, time and money by enabling to use the previous built components that are inside the new system; to change the systems in order to suit in the changing requirements like the different functional requirements and different platform changes; and to understand the system as a whole. Due to the said reasons or abilities of the system modeling, a system model can help to satisfy and cater to the different requirements of the system like documenting the system, offering a notation for tools like the consistency checkers as well as it can be use useful in designing the physical and logical aspect of the system throughout the process of system development (SINTEF & Kresken 1996, p. 2).


            In general, system modeling is use in order to ensure the each and every developing piece of a software evolves in a consistent, constant and steady manner and that the different task in integrating the different software components are all simplified (SINTEF & Kresken 1996, p. 2).  


II.    Evolution of Modelling Framework and Language (SINTEF & Kresken 1996, p. 1)


A conceptual framework and a system modeling language, in textual and/or diagrammatic form are both important in system modeling.  Textual notations pertain to the tools like tables and prose, while the diagrammatic notations are those graphs and the likes. Both of the said notations are used in most of the system modeling nowadays. In a diagram there are many symbols that are used in order to represents different parts or aspect of a system like an object and the different groups of objects as well as the different symbol that visualize the different connection between the said objects. The number of the different symbols for each purpose differs obviously and clearly between each notation (SINTEF & Kresken 1996, p. 2.).


There are four main conceptual frameworks that have been evolved during the past decades:


a.            Design Methods – first implemented during the early seventies. It was consist of a concept, a language and a design process. The concept is the main idea about the parts of the program that are needed to be represented by the different components of the system model. The language, on the other hand is the one that is responsible in describing the system model. The design process is a planned or implemented step-by-step guideline that can help the designer to carry out the design of the system with accordance to the software lifecycle or one of its parts (SINTEF & Kresken 1996, p. 2).


MD++ is a design method that has been used as an edge for the object-oriented design. Aside from that, there are also other methods that have been used like the HOOD or the Hierarchical Object-Oriented Design, which was used during the implementation of the ADA language (SINTEF & Kresken 1996).


Nowadays, there are also some methods that uses the design methods such as the Ooram or Object-Oriented role modeling by Reenskaug; OODLE or Object-Oriented Design Language by Shlaer; OODA or Object-Oriented Design and Analysis by Booch; and OMT or Object Modelling Technique by Rumbaugh (SINTEF & Kresken 1996).


b.            Module Interconnection Languages or MILs – it is a process of creating the different program modules and connecting them in order to form a large system using different design efforts. MILs focus on supporting the connection between the different efforts of a large system. It is also use in order to formally express the system designer’s intent with regards to the system structure. MILs have a separate language to describe the system as a whole; it also uses a static intermodule type of checking; it does its designing and construction of information using only a single description and has its own version control (SINTEF & Kresken 1996, p. 2).  


There have been vast numbers of other component-based languages that have been proposed recently. These languages are describing a system as a configuration of different modules that are related in more specific and predetermined ways or even enforce in specialized pattern of the organization or business that is surrounding its large system. More often than not, all of the said languages are dependent around a tiny, permanent set of communication paradigms as well as implementation-level descriptions, or enforcing a particular, single-purpose organization. As a result, it will create a way inappropriate for stating a extensive and wide variety of system architectures (SINTEF & Kresken 1996).


There are well known MILs that are used and applied nowadays: the Tichy’s InterCol that introduces the management version to the MILs (SINTEF & Kresken 1996).


Another example is the SySL or Thomson’s System Structure Language and the PCL or Proteus Configuration Language, which is considered as the modern generation of the MIL that was developed in the Proteus research project (SINTEF & Kresken 1996).


c.            Software Architectures – software architectures are developed in order to prevent the disadvantage of the design methods and MILs. Both the design methods and the MILs force their system designer to use a somewhat low level of abstraction because its system decomposition are all illustrate and express using the term of its modules, object or its procedures, in the perspective of the implementation-language items. However, with the ever-increasing size as well as complexity, the specification and the design of the overall system structure had become more significant than the selection or preference of the algorithm and the data structures that are why software architectures had been used (SINTEF & Kresken 1996, p. 2).


d.            Design Patterns – introduced by an architect named Christopher Alexander. It was first used for the designing of the buildings and cities during the end of the seventies. But it was just during the nineties when the software engineers and researchers have become extremely interested in the design patterns. It is also known as a reusable solution for a particular problem in a given context (SINTEF & Kresken 1996, p. 2).  


Design patterns are like software system architectures tjat are autonomous of a precise or exact accomplishment and execution of a language or a language concept like the modular or object-oriented programming. On the other hand, the most significant and vital value of patterns nowadays is that they are used to balance and set off the existing design methods in solving problems that are afar from the reach of those said methods, especially the object-oriented design methods. An object-oriented design pattern recognizes and classifies the participating classes and different instances as well as the way that they interact. Each design pattern focuses on a given or specific object-oriented design problem using a description that is similar to object that was mentioned above. The selection of the implementation language is essential, because it has the ability to determine what can and cannot be implemented in easy manner (SINTEF & Kresken 1996, p. 2).


e.             



 


 


 


 


 


 


 


Figure 1 Modelling Frameworks and Language


Source: (SINTEF & Kresken 1996)


III.   Different System Modelling Technique


a.    Mathematical Programming Language Modelling System or MPL –  this type of system modeling focuses on the mathematical parts or aspect of the programming language.


b.    General Algebraic Modelling System or GAMS– this type of modeling technique has been widely accepted due to its capability to use a relational algebra that can help to provide a partial derivatives about the multidimensional, very huge and complex as well as meager and bare structure (Kallrath p. 137). GAMS was developed in a close cooperation of the mathematical economists as a help for the different department of economics, computer science as well as operation research that are considered as the most important factors for the success of a system (Kallrath 2004, p. 138).  It had been used as a modelling technique for those large financial companies or establishments like banks and other large lending agencies.


c.    Petri Nets – Petri Nets or PN is used for modeling real system and also know as the Condition/Events nets. It can be done by identifying the different places that will identify classify the different conditions of different parts of the system as well as the different transitions describing the passage from one condition to another. An event occurs when all of the conditions are all satisfied that will later on give the event a concession. Marking on the other hand is the occurrence of the different event that has been modified as a whole or partially as the status of the conditions. To identify the different numbers of the different resources that are lying the an specific condition that are denoted in one given place, the numbers of token in a place are used (Bobbio n.d.)


IV.  Opportunities of System Modelling


System modeling is very important in developing a large and complex system. There have been many techniques and tools that are used in doing the said process. It has been stated in the previous part of the paper the evolution of the different types of the system modelling. System modelling will continue to improve due to the development and enhancement of the different technologies that are now used in different organizations and businesses.


a.    Increasing Demand for a Large System – this is one of the opportunity for the development of the system modeling. The fact that the world of businesses is growing due to the globalization, innovation and technologies more specifically the Information Technology or IT. All of the establishments or association that is planning to improve or develop their current system will need the help of different system modelling technique. It can help to improve also the different tools and techniques that are used in different situations or aspects of a system.  It can help to spread the use of the different modelling techniques and therefore can help to practice it more for the better.


b.    Technological Enhancement – the use of different technologies and innovations can help to enhance more the process of system modeling. There are many newly developed information system and other tools that can help to organize and improve as well as develop the current usage and condition of different methods and techniques that are used in system modeling.


V.   Challenges for System Modelling


Like any other techniques and methods, system modeling also has its different challenges that must be faced as in the current time in order to maintain its efficiency and reliability. Challenges is not a negative thing or factor, as a matter of fact it will serve as a motivation or drive for the development of the different techniques in system modeling. System modeling technique can be affected by different factors but the main key or challenge for the system modeling is the change.


a.    Growing System – although the growing demand or the growing size of the different system is a big opportunity for the system modeling, it can also be considered as a challenge for the development of the system modeling technique as a whole. This is due to the fact that a more complex and huge system can require a much higher level of system modeling. Another thing is that a huge system will be able to ask for more in-depth investigation as well as more time in order to get to the point where in the different subsystems or other aspects get the chance to meet.


b.    The need for speed – Time is always an important aspect or resource in any company, organization or even individual. Time cannot be wasted because it will be equivalent to the waste of money as well as effort. This is one of the challenges that the system modeling is facing, the ability to create or build a system modeling is short period of time. System modeling is a great help in order to see a huge system in its each and every important aspect. If the system modeling can be done in shorter period of time, it will also be easy for the designer or the developer to locate all of the serious problems or areas of the overall system and therefore start to implement it.


c.    Fast Changing of Demand and Needs of Systems – different systems have its own needs, preferences and demands for a specific technique, tool and method. However, this needs and preferences changes as times go by. Although, there are already some modeling languages and techniques that are already reusable, it cannot be applied in some areas. That is why, it is a challenge for the system modeling to have a more space for future enhancements or the likes.


d.    Change in Technology – technology has always been a key driver for change. It will be a challenge for the different system modeling technique to follow or jump to the bandwagon of technology. It only means that it must focus and give priority to the different technologies that are now used and can be used in order to maintain the effectiveness of a system.


e.    Model and Designer Interaction – the easy understanding of system modeling techniques is important because it is the primary factor that connects the designer or the user of the system modeling technique. It will be a challenge for the system modeling technique to enhance its readability or understandability level so that it can connect to the user or designer in an easier way. By doing this, it will be easy to create, implement as well as maintain different large system.


f.     Difficulty in Choosing the Right System Modelling Technique or Method – like any other method that are used in developing, implementing, planning as well as maintaining a system, it is also difficult for the designer to evaluate the suited methodology or model that can be used in order to implement a system. Wrong use of model or technique can lead to a larger dilemma or problem that may cause failure of the system.


Larger system is harder to analyze than that of the single or small systems. It can cause time, effort and money in order to evaluate one single subsystem or aspect of a larger system, that is why it must choosing the right model must be properly planned and analyze in order to maintain ensure smooth flow of process.


That is why, it will be a challenge for the system modeling techniques and methods to make each and every model more transparent so that it will be easy to understand if it is suitable for a given situation or type of large system.


Conclusion:


            A system modeling is the process of showing and representing the in-depth analysis of different aspects and function of different part of a given large system. It is important because it will serve as a map of the overall flow of the system as a whole and how those aspects relate with other and how it can affect the performance of the overall large system.


            There are many factors that are affecting the continuous improvement of the system modeling. This are the factors that can help the system modeling to become better in order to cater to the needs of the future large systems.


 


 


Reference:


 


Bobbio, A, System Modelling With Petri Nets, draft, Istituto Elettrotecnico Nazionale Galileo Ferraris, viewed 28 January 2008, < http://www.mfn.unipmn.it/~bobbio/BIBLIO/PAPERS/ANNO90/kluwerpetrinet.pdf>


 


Kallrath, J 2004, Modelling Languages in Mathematical Optimazation, Springer


 


SINTEF & Kresken, T 1996, Technology Briefing Report: System Modelling, draft, RENAISSANCE Esprit Project 22010, viewed 18 January 2008, <http://www.comp.lancs.ac.uk/computing/research/cseg/projects/renaissance/RenaissanceWeb/project/Acrobat/System_Modelling.pdf>



Credit:ivythesis.typepad.com


0 comments:

Post a Comment

 
Top