Metamodel of a System Development Method
نویسنده
چکیده
Introduction The term ‘method’ is so commonly used in IT community in the context of software development that hardly any effort was ever made to define its semantic. With hundreds of methods with which to develop IT systems anything that looks like some kind of a software development process or architecture framework or even notation for a system modelling is called a ‘method’ (and sold as such) no matter how close it resembles one. With no strict definition or blueprint of a software development method itself, it’s difficult to assess a particular method in a systematic way. With established and emerging open standards such as UML notation for OO modelling [9] and OMG’s Model Driven Architecture (MDA) [6, 10] the next logical step should be to define an open methodology metamodel that can provide a common framework to define any existing and new system development methodology. The benefits of such a framework will be significant and will include: • Common way of defining a methodology, which is widely understood in the IT community. • Common pattern with which vendors of methodology related products can show the value of their product to the client and the later one has a template for a particular methodology evaluation. • Easier mapping between different methodologies for the purpose of comparison, adopting or defining a new methodology or applying agile modelling approach [1]. The metamodel in question should be agile enough to accommodate the oldest, structured methods as well as object oriented development processes. The emerging breed of agile software development approaches should be able to find its way to apply the metamodel as easily, especially when it itself is aiming at becoming a kind of meta-method approach by combining various aspects and elements of the method spectrum. No matter how agile the process is meant to be, we need to define it first and having a consistent framework for that purpose will aid the task of both describing the process and maintaining it throughout an agile project life cycle. In this paper we introduce a methodology metamodel aimed to provide an open standard for defining system development methodology compliant with MDA. Defining high-level concept with the use of metamodels has been adopted by OMG and IT community and is accurately described by Metamodel Group [5]: “In this case, a metamodel allows a language designer or methodologist to better capture, analyse and understand what they are actually writing about in all those methodology books.”
منابع مشابه
Design of cybernetic metamodel of cryptographic algorithms and ranking of its supporting components using ELECTRE III method
Nowadays, achieving desirable and stable security in networks with national and organizational scope and even in sensitive information systems, should be based on a systematic and comprehensive method and should be done step by step. Cryptography is the most important mechanism for securing information. a cryptographic system consists of three main components: cryptographic algorithms, cryptogr...
متن کاملAn Improved N-dimensional NURBs-based Metamodel
Non Uniform Rational B-splines (NURBs) are proved to be very promising for metamodeling in engineering problems, because they have unique properties such as local modification scheme, strong convex hull property, and infinitely differentiability, etc. Since NURBs are defined by control points, knot vector, and weights associated with control points, the precision of NURBs is influenced by all o...
متن کاملA Booch Metamodel a Booch Metamodel
Object-oriented methods, like the Booch method, are widely used in the development of software systems nowadays, but their syntax and semantics are only de ned by natural language text and examples. This paper provides a formalized description of the syntax of the Booch method by using the EER/GRAL approach of modeling.
متن کاملA Dynamic Software Evolution by Metamodel Change
Every long-time running software system is sooner or later subject of a change. The most common reasons are different requests for a bug fixing or adding a new functionality. Software maintenance forms bigger part of software’s lifetime. Before applying a change, it is essential to correctly understand current state of affected system. Without all relevant information about both – system as who...
متن کاملAn Approach for the Metamodel of the Framework for a Partial Agile Method Adaptation
Today, such information system development methods as Extreme Programming, Scrum, Dynamic Systems Development Method, Crystal family, Agile modeling, OpenUP and others are being positioned as proven alternatives to the more traditional plan-driven approaches. However, although there are a variety of agile methods to choose from, the formal methods for their partial adaptation and customization ...
متن کامل