Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/375028056

Object Constraint Language for Modelling Computer games

Article · October 2023

CITATIONS READS

0 17

2 authors, including:

Sazan Kamal Sulaiman


Knowledge university
4 PUBLICATIONS 0 CITATIONS

SEE PROFILE

All content following this page was uploaded by Sazan Kamal Sulaiman on 27 October 2023.

The user has requested enhancement of the downloaded file.


Object Constraint Language for Modelling Computer games
Sazan kamal sulaiman Rawshan Nuree Othman
Department of Computer Science Department of Computer Science
Bayan University Bayan University
Erbil , Iraq Erbil , Iraq,
sazan.kamal@bnu.edu.iq rawshan.nuree@bnu.edu.iq

Abstract— Recent years have seen rapid gaming player's perception of a never-implemented feature, cannot
development. As development speeds up, game complexity be accounted for. It's hard to predict how the game will play
rises. Software engineers are using agile methodologies to until it's out, therefore the design may change. Developers
enhance output. In this paper, a meta-model-based computer have several tech and design options. The issue
gaming model is shown. The meta model was created for
implementation gap, a mental divide between the problem
design reusability, with the purpose of building codes that
automatically make implementations in a well-defined manner and implementation domains, makes it hard to develop
by constructing the sections individually and independently for complex software. Computer games have the same problem.
implementation. Early game makers had little industry or B. Objective
resources. Space-time game modeling aids in computer game
creation, describes related topics, and provides a game The research aims are as follows:
metamodel. Hand-coded parts and regulations make it harder
to adapt to different game areas. MDD is an innovative • To demonstrate that a single model is adequate for
software development method. Some people think drawing is all games if just space-time elements are
enough to build a model. Diagrams are also needed. Models considered.
must have a well-defined, abstract syntax-illustrative structure
consistent with met models. Building a space-time model for
games allows for model language research. Meta models and • OCL-based model-driven game development.
OCL can close the design-implementation gap. The code
structure facilitates sorting and querying models. • To give a structure for investigating the video game
industry.
Keywords— game Dama, model , MDD, Gain syntax-
illustrative structure, OCL To this goal, we develop a meta-model on top of C's original
I. INTRODUCTION space-time game model. Vaccaro. The following methods
are employed to attain this objective:
Video game creation has to be more organized. This
thesis analyzes how modeling can be used to tackle minor • Initially, by extrapolating domain concepts from
gaming concerns to promote model-driven game
the preceding model.
development. Model-driven development (MDD) promotes
design models over implementation because code is
automatically generated from them. Gamers expect yearly • Second, the implementation of these concepts as
quality updates. MDD tools can use meta-modeling invariants and meta classes in OCL.
languages and language workbenches to avoid creating a
game engine from start. Consequently, more people • Create a visual representation of the metamodel.
investigate MDD. This thesis offers an MDD-based
metamodel. Skilled developers can improve MDD's tools, II. LITERATURE REVIEW AND RELATED WORKS
domain analysis, and language design. We present the meta A. An Overview of Exiting MDGD Approaches
model and related concepts, such as abstract syntax and
concrete syntax, using a game space-time modeling example. Games have always used models. The level editor
A model is a simplified or abstract depiction of a system. produces a graphical interface for modeling the game world's
level. Engine tools can replicate only a tiny subset of game
To solve implementation issues, we propose using MDD resources, including level and presentation data. AI, control,
for space-time modeling. Complex game software design is and rules must be hand-coded in the programmer's native
difficult since the problem and solution are often far apart. A language or a scripting language. Few modern gaming
space-time game model simulates gameplay. This method is engines have script modeling tools. MDD helps software
like a state space, where player actions modify the state. companies implement. Blow says poor implementation
makes computer games difficult (2004). Blow emphasized
This thesis has five parts. In the first chapter, the topic, that we need domain-specific languages to allow game
problem, and research objectives are introduced. Chapter 2's creators to be creative and expressive. Callele (2005) says
literature review explains the study's theoretical foundations. DSL influences MDD (DSL). Games have always used
Chapter 2 discusses implementation methods and models. DSL's intricacy requires priority [1-3].
methodology; chapter 3 offers the solution. Future research is
outlined. B. Methods Provided By the MDGD Approaches
A. Problem statement explain how DSL can improve mobile RPGs (RPG).
Marques found the right RPG game engine for collecting
Computer games have a history of increasing technological textual and graphic data. Game modeling tools and language
difficulty to satisfy demanding gamers. First-generation were created. Automatic code production occurs during
video games often include unusual technologies. Creators model-to-model translation and template-based code
take risks with game technologies. Game design risks, like a

979-8-3503-9676-8/22/$31.00 ©2022 IEEE


creation. Marques et al. developed ALPiNA-based semantic Hypergraphs with Petri net semantics would be great.
validation for two-stage methods (2012)[4]. Examining what tokens in spatial hypergraphs represent and
how this Petri net relates to the transaction net is key.
The loop method with textual markup language can be
utilized to build adventure games, according to Moreno Ger According to [10], multiplayer goals can be defined, but
et al(2006). The game's plot and the document's conclusions the current architecture must be changed to facilitate player
are translated using markup. cooperation. Modeling non-player game features including
equipment, weaponry, and power-ups. Discussing testing
added functional semantic relations to the game engine environment creation. Level and game designers must build
tree so it could be shared. In 2007, Furtado et al. quantified an intuitive and practical user interface, according [11].
video game development[5].
C. MDGD for Board Games III. MODEL DRIVEN DEVELOPMENT
MDGD resembles Altunbay, Cetinkaya, and Metin's This chapter introduces MDD subsections (MDD).
method (2009). Modeling the game using UML class Section A discusses MDA. MDA apps must have platform-
diagrams. Structure composition independent models. MDA uses UML at various abstraction
layers to provide adaptive code. MDA requires platform-
independent software design (Section B). (PIM). Each
• The board game meta-model is a UML Class platform has a PDM. PDM adapts PIM to platform modeling
Diagram. language.
Using a rigorous, machine-readable platform
• Game DSL is a metamodel that helps develop game
specification, a Platform-Independent Model (PIM) is
logic.
automatically turned into a Platform-Specific Model (PSM).
• A model-to-model transformation tool converts the Each PSM automatically produces the platform PIM. The
board game model into Game DSL, followed by a Meta Object Facility expresses a UML class's name,
model-to-text translation tool. properties, and methods in Section D. (MOF). MOF defines
ERDs' base.
The board game industry can design models using UML.
The revelation came from investigating the phenomenon and Section E covers Object Constraint Language (OCL) for
creating a UML metamodel. Backgammon and Chess were UML diagrams. MDA uses class invariants, method
modeled with meta-model UML profiles. With new invariants, method pre/post conditions, and class state
technologies, models automatically generated code. The transitions in OCL techniques. Design by contract refers to
board games meta-model used XML and a meta-modeling OCL conditions.
language. XSD verified Chess's XML implementation. The In section F, the benefits of MDD for helping domain
game's story must be written. GoalThis method automates specialists keep up with the expanding requirement for better
board games like chess[6]. video game technologies are explored. This portion
The Xpand programming language has Eclipse-compatible introduces Domain Specific Language (DSL) to express
tools. Xpand was the most popular MDGD tool for UML- domain structure, behavior, and requirements. Section G
based approaches. examines how modeling languages might help create
structured games. Meta-models can be used as templates for
Board game-specific game software includes Altunbay, game design. Section H explains how abstract syntax
Cetinkaya, and Metin's 2009 model. The board game model imposes modeling limits and how concrete syntax can
includes the game engine, game element, player, event, simplify model components.
action, game state, goal, sub-goal, and regulations. "Player,"
"Goal," and "Rules" are universal, but the rest are board A. Model Driven Architecture (MDA)
game-specific[7]. MDA generates code from models to make designs portable,
MOF must provide metamodel relationships. Code can interoperable, and reusable. MDA does this by separating
be generated from models using MOF script and E core, a design, implementation, and environment. Understanding,
meta-modeling language. For board game meta models, use planning, developing, deploying, operating, maintaining,
XML schema or XSD. . A chess game model could be and modifying require models. OMG defines and organizes
transformed to Game DSL with ATL and subsequently to MDA. The programmer can then build on this skeleton.
Java source code with MOFScript[8]. There are parameters that facilitate building class models
from code. Braude says reverse engineering synchronizes
D. Methodology for Spatiotemporal Game Design
planning and execution (2010). Maintaining consistent
Natkin and Vega have created a new video game formatting from drawing to coding to redesigning can be
modeling technique using spatiotemporal associations difficult. As illustrated in Figure 1, software developers
(2003). Using hypergraphs, Petri nets model games. Petri must ensure that the skeleton code generated for them is
nets may explain game logic and event flow. Barreto and adequate and doesn't require rewriting[12].
Julia (2014) identified the game's logic structure. Depending
on the model complexity and application context, Petri nets
can be represented graphically or mathematically. Natkin et
al. created a method for integrating spatial and temporal
interactions in 2004. Hypergraphs showed the geographical
linkages[9].
D. UML Action Semantics and Meta Object Facility (MOF)
According to[18], the OMG recognizes four unique model
levels: M0, M1, M2, and M3. A description of a movie store
UML example is included in M0. The architecture of
Unified Modeling Language (UML) Level 0 (M0) is shown
by the movie rental store and other examples. A video game
is an instance of the Unified Modeling Language (UML) at
the M0 maturity level because it is a real-world application.
The M2 layer consists of meta models, the Unified
Modeling Language, and the Object Relational Diagram. In
Figures 4, a sample member model is used to show the
translation process, a required component of several M2
Figure. 1: Round trip engineering process [13]. components. Implement one method for calculating M2
components. M3 has certain models that are accurate
B. Platform Independent Model (PIM) representations of M2 components. MetaObject Facility
Model-driven architecture in a PIM provides enough design (MOF) is used to establish the structure of ERD diagrams
and environment information to build compliant code. A and the names, properties, and methods of UML classes.
UML with useful additions is used. It must have syntactic The translation from UML to MOF appears feasible using
and semantic information. Kleppe et al. (2003) assumed a the techniques indicated in figure 4.
class model featuring getFine() for the class Rental was
insufficient to deliver code. Figure 2 explains
getFine(function. )'s Model-driven development uses class
invariants, method invariants, method pre/post conditions,
and class state transitions (MDA). Contractual design relates
to set specifications. OCL defines them. Mathematicians
may be able to use classical formal languages, but business
or system modelers will find them difficult to master and
apply (OMG)[14].

Figure 4. MOF specification of UML [19].

E. Object Constraint Language (OCL)


OCL fixes problems with UML when describing system
architecture. Cobot and Gogolla invented OCL in 1995 to
Figure 2. PIM with approximate OCL [15]. expand an expressive language (2012). In 1997, OCL and
UML were combined. OCL has evolved from its original
C. Platform Specific Models (PSM) use as a UML constraint language to become a fundamental
PIM makes every MDA PSM. PSMs aim to improve code part of modern model driven engineering, where it defines
generation. Figure 3 shows a Java PSM, a translation of meta model operations and conditions. OCL can also be
figure 2's PIM. Instead of public variables, PIM designs used to explain model translation, showing how translation
utilize private variables, "getter" and "setter" functions, etc. rules are applied while migrating across languages. Boolean
Platform description must be available for PIM to create conditions can be used to determine if a context type is met.
PSM. OMG creates these system descriptions[16]. Warmer and Kleppe say model component values must be
derived (2003). Variables Everyone, including designers,
must define system acceptance criteria. Your choice of OCL
expressions for class diagrams is very important[20-22].
F. Domain Analysis of the Computer Games
MDD's higher level of abstraction simplifies and streamlines
the solution process by allowing solutions to be stated in
terms of issue domain concepts. The modeling language and
generator must be domain-specific. The larger domain
naturally suggests more complex concepts, allowing for a
more sophisticated language and generator. MDD
techniques must balance abstraction, language complexity,
Figure 3. Example of PIM/PSM code transformation [17] and domain breadth. This means MDGD requires a suitable
domain. Incorrect domain selection involves too-narrow or returns sorting and model queries. Current technology
too-broad decisions. Long-term economic failure could informs the design of syntax-based modeling languages.
offset a project's MDD success in a small domain. Due to Altunbay et al. say meta model modeling is the basis for
domain limitations, it's hard to reuse language and tools model-to-model and model-to-text conversions [30]. One of
from one project in another. The high initial cost of MDD MDD's basic notions is model-to-model transformations,
technology is rarely recovered in a single project. Too-broad which allows meta model mapping. Model instances can be
domains can cause three significant DSL problems, transformed into meta model instances after meta model
according to [23]. transformations are established. So, we'll profit from tools
that build the ideal meta model [31-37].
G. Developing Modeling Language
Zhu says developers value language because it provides an IV. IMPLEMENTATION
abstraction for development (2014). Syntax, semantics, and In implementation part the contribution of this thesis, which
representation are language pillars. Model notation must is the construction of a metamodel and OCL constraints
follow concrete syntax, the language's representation. based on a space-time model of computer games introduced
Syntax specifies a language's elements, properties, and in the preprint “A space-time model for computer games” of
interactions. Semantics is the mapping of issue domains. C. Vaccaro.
We'll examine how the studied MDGD techniques build
language components to overcome syntactic problems. In order to achieve this, I extract (Figure 5) from the above
Below are five methods for finding linguistic concepts. mentioned space-time model the domain concepts that
There's the product's physical shape, the system's external translate into class diagram and OCL constraints Figure 6.
look and feel, its variability space, domain experts' ideas, Finally Figure 7 presents the graphical representation of this
and the generation's end result. In the semantics section, we class diagram built using the tool StarUML.
study construct meanings and classify languages into two
groups: (1) those with topic-specific semantics and (2) those
with borrowed semantics. DSLs and GPLs are the two.
Syntax can be shown graphically or in writing[24].
H. The Abstract and Concrete Syntax of the Language
The static semantics and concrete syntax of a domain's
abstract syntax are in its meta model. Abstract syntax
explains domain concepts and their interconnections.
Abstract syntax defines grammatically accurate phrases in a
language model. Metamodel languages support class and
attribute systems in other programming languages. Syntax in
C++ defines every legal C++ program. This section covers
designing an abstract syntax for a modeling language with
graphical or textual modeling restrictions. The meta model
language is a simplification of the model-to-model
language, say [25].
OCL can be used to constrain metamodels even if they are
based on UML class diagrams. According to Furtado, meta
modeling entails defining the static semantics, abstract
syntax, and concrete syntax of the metamodel.
[26-29] Previously, we established the issue domain and
Figure 5. Meta model for space time modeling of games
constructed a Meta Object Facility (MOF) meta model, a
language for producing meta models. The code structure
Figure 6. Meta model for space time modeling of games
We provide two examples of games: the first one is for State: A state of the game describes: if it is the turn of black
chess board game and the second one is for Silent Hill 2 or white; whether castling (king side or queen side for all
video game. opponents) is possible or not for black and white; whether
Example for Chess game en passant is possible or not.
Example for Silent Hill 2 video game

Silent Hill2 is a survival horror video game published in


2001. A map of the game is given in figure 4.5. The player
controls an avatar (James) with unclear goals at the
beginning. To achieve his work he must discover the
environment and fight against enemies and collect objects
like keys, notes, information, etc. in order to solve puzzles.
The game starts at a parking bathroom outside town.
Figure 7. Chess board game
(https://babyawacs.files.wordpress.com/2017/02/chessboard-icechess- The main action sequence the player needs to execute to
2.png) complete the first level is explained in figure 3.4. First, get
Player: The two opposing players. the map from James car and hit the road to Silent Hill. It is
GameCharacter: Chess pieces. Alive = active = the piece necessary to win the fight against a creature in order to be
is on the board. able to continue. But, losing the fight means that the game is
GameSpace: Chess board. over. After winning the fight, James can execute the next
CharacterPosition: One single cell. four actions in arbitrary order:
Cell: Squares of the board; every cell is accessible to any
active character; a cell can be occupied by at most one 1.Recover an unclear inscription from a weird monument.
character at a time.
Edge: An edge connects two character positions 2.Look at the map in the trailer.
corresponding to the movement of that character.
GameSpaceAction: Taking an opponent piece, making 3.Find a second map in Neely‟s Bar.
check (attacking the opponent king), castling, en passant,
and pawn promotion. 4. Find the apartment key on a dead body.
Items (1), (2) and (3) are optional actions that can be of the first level. After this, James is able to enter the
repeated an infinite number of times without changing the apartment to begin the next level.
course of the game. Item (4) is mandatory and marks the end

Figure 8. Activity diagram for Silent Hill game.


Player: The human player.
CharacterType: The types of enemies, namely: Patient
Demons, Giant Roaches, Mannequins, Nurse Demons,
Underhangers, Doormen.
GameCharacter: James Sunderland, Mary Sheperd-
Sunderland, Angela Orosco, Eddie Dombrowski, Laura,
Maria, plus the enemies.
GameSpace: The space where the characters can move.
CharacterPosition: The cells occupied by the character.
Cell: The minimal portion of space occupied by a character,
for instance if the space is represented by a grid of square
then the cell is a single square.
InteractiveElement: Weapons, supplies, save points.
Edge: an edge connects two character positions
corresponding to the movement of that character.
GameSpaceAction: The actions associated with the
interactive elements, like saving the game in a save point.
Figure 9. Silent Hill 2 game map (https://www.ign.com/faqs/2004/silent-
hill-2-game-maps-ps2-474097)

V. CONCLUSION
This thesis aimed to integrate Model Driven
Development in the video game business. Model-driven
software development merges low-level developer
operations with detailed, domain-specific requirements. This
section should emphasize metamodeling due to its
importance to the process. Transformation in modeling
required a lot of work. This study used meta modeling.
• We've shown that the same technology can replicate
any computer game as long as space-time modeling is
applied (things like the movements of the characters or the [21] Moreno Ger, P., et al., 2006. Language-Driven Development of
artificial intelligence are thus not part of the model and the Videogames: The <e-Game> Experience, in Entertainment
Computing - ICEC 2006, R. Harper, M. Rauterberg, and M.
developers must integrate them in the game). Combetto, Editors. 2006, Springer Berlin Heidelberg. p. 153-164
• We also present an example of Object Constraint [22] Moreno Ger, P., et al., 2007. A documental approach to adventure
Language (OCL), a language used in Model Driven game game development. Science of Computer Programming, 2007. 67(1):
p. 3-31.
development. We examined the gaming domain and made
[23] Natkin, S. & Vega, L. 2003. “A Petri Net Model for the Analysis of
metamodel recommendations using MOF and UML's The Ordering of Actions in Computer Games”, In Proceedings of the
extension mechanism. Our research revealed that developing GAME ON, London, November
concrete syntax from scratch is difficult and that UML [24] Natkin, S., Vega, L., & Grünvogel, S., 2004. A new methodology for
concrete syntax can be used instead.. spatiotemporal game design, in Proceedings of CGAIDE 2004, 5th
Game-On International Conference on Computer Games: Artificial
REFERENCES Intelligence, Design and Education, 2004, ed. by Q. Mehdi and
N.Gough, pp. 109–113
[1] Altunbay, D., E. Cetinkaya, and Metin M.G., 2009. Model Driven
Development of Board Games, in the First Turkish Symposium on [25] OMG 2007 Uni ed Modelling Language Superstructure Speci cation,
ver-sion 2.1.1. Document formal/2007-02-05, Object Management
[2] Model-Driven Software Development (TMODELS). Available at: Group, February. Available at Available at http://www.omg.org/cgi-
[3] http://www.cs.bilkent.edu.tr/Bilsen/TMODELS- bin/doc?formal
2009/Papers/Altunbay-Metin-Cetinkaya.pdf [26] Pressman R., 2010. Software Engineering: a practitioner's approach,
[4] Barreto, F.M. & Julia, S., 2014. Modelling and analysis of video 7th ed., McGraw-Hill
games based on workflow nets and state graphs, in Proceedings of [27] Vega, L., 2004.Modélisation et analyse spatiale et temporelle des jeux
24th Annual International Conference on Computer Science and vidéo basées sur les réseaux de Pétri, Ph.D. thesis, Conservatoire
Software Engineering, Ser. CASCON „14, (IBM Corp, Riverton, NJ, National des Arts et Métiers, Paris
2014), pp. 106–119.
[28] Warmer, J. & Kleppe, A., 2003.The Object Constraint Language:
[5] Blow, J., 2004. Game Development: Harder Than You Think, ACM Getting Your Models Ready for MDA, Addison Wesley
Queue,. 1(10): p. 28-37.
[29] Zhu, M., 2014. Model-Driven Game Development Addressing
[6] Brambilla, M., Cobot, j. & Wimmer, M., 2012.Model-Driven Architectural Diversity and Game Engine-Integration, Ph.D. Thesis,
Software Engineering in Practice, Morgan & Claypool Braude, E. J. Norwegian University.
& Bernstein, M. E., 2010. Software Engineering: Modern
Approaches, Wiley, 2010. [30] S. A. G. Ali, H. R. D. AL-Fayyadh, S. H. Mohammed, and S. R.
Ahmed, “A Descriptive Statistical Analysis of Overweight and
[7] Cabot, J. & Gogolla, M., 2012. Object constraint language (OCL): a Obesity Using Big Data,” 2022 International Congress on Human-
definitive guide, Proceedings of the 12th international conference on Computer Inteaction, Optimization and Robotic Applications
Formal Methods for the Design of Computer, Communication, and (HORA), Jun. 2022, doi: 10.1109/hora55278.2022.9800098
Software Systems: formal methods for model-driven engineering,
pages 58-90, Springer-Verlag Berlin [31] S. R. Ahmed, E. Sonuc, M. R. Ahmed, and A. D. Duru, “Analysis
Survey on Deepfake detection and Recognition with Convolutional
[8] Callele, D. E., 2005. Requirements Engineering and the creative Neural Networks,” 2022 International Congress on Human-Computer
process in vedio game industry. 13th IEEE International Conference Interaction, Optimization and Robotic Applications (HORA), Jun.
on Requirements Engineering. 2022, doi: 10.1109/hora55278.2022.9799858
[9] C. Vaccaro., 2018. A space-time model for computer games, paper in [32] H. A. Jasim, S. R. Ahmed, A. A. Ibrahim, and A. D. Duru, “Classify
progress. Bird Species Audio by Augment Convolutional Neural Network,”
[10] Flynt ,J. P & Salem ,O., 2004. Software Engineering for Game 2022 International Congress on Human-Computer Interaction,
Developers, Course Technology, Optimization and Robotic Applications (HORA), Jun. 2022, doi:
[11] France, R. and Rumpe B.,2007. Model-Driven Development of 10.1109/hora55278.2022.9799968
Complex Software: A Research Roadmap. Future of Software [33] I. Shaban, M. A. Farhan, and S. R. Ahmed, “Building a Smart System
Engineering for Preservation of Government Records in Digital Form,” 2022
[12] Furtado, A.W.B. & Santos, A.L.M., 2006. Using Domain-Specific International Congress on Human-Computer Interaction,
Modelling towards Computer Games Development Industrialization, Optimization and Robotic Applications (HORA), Jun. 2022, doi:
in 6th OOPSLA Workshop on Domain-Specific Modelling 10.1109/hora55278.2022.9800034
(DSM‟06). [34] M. Waleed, A. S. Abdullah, and S. R. Ahmed, “Classification of
[13] Furtado, A.W.B. & Santos, A.L.M., 2007 Extending Visual Studio Vegetative pests for cucumber plants using artificial neural
.NET as a Software Factory for Computer Games Development in the networks,” 2020 3rd International Conference on Engineering
.NET Platform, in 2nd International Conference on Innovative Views Technology and its Applications (IICETA), Sep. 2020, doi:
of .NET Technologies (IVNET06). 10.1109/iiceta50496.2020.9318890.
[14] Furtado, A.W.B., Santos, A.L.M., and Ramalho, G.L., 2007. A [35] Abbood, Z. A., Yasen, B. T., Ahmed, M. R., & Duru, A. D. (2022).
Computer Games Software Factory and Edutainment Platform for Speaker identification model based on deep neural networks. Iraqi
Microsoft .NET, in SB Games Journal For Computer Science and Mathematics, 3(1), 108-114.
[15] Gal, V. et C. Le Prado, S. Natkin, Vega, L. 2002. Writing for video [36] S. R. Ahmed AHMED, I. Ahmed Najm, A. Talib Abdulqader, and K.
games, Proceedings VRIC, Laval France. Basem Fadhil, “Energy improvement using Massive MIMO for soft
[16] Kleppe, A., Warmer, J. & Bast, W., 2003. MDA Explained: The cell in cellular communication,” IOP Conference Series: Materials
Model Driven Architecture: Practice and Promise, Addison Wesley Science and Engineering, vol. 928, no. 3, p. 032009, Nov. 2020, doi:
10.1088/1757-899x/928/3/032009.
[17] Marques, E., et al., 2012. The RPG DSL: a case study of language
engineering using MDD for generating RPG games for mobile [37] I. Al Barazanchi et al., “Blockchain: The Next Direction of Digital
Payment in Drug Purchase,” 2022 International Congress on Human-
[18] phones, in Proceedings of the 2012 workshop on Domain-specific Computer Interaction, Optimization and Robotic Applications
modelling. 2012, ACM: Tucson, Arizona, USA. p. 13-18. (HORA), Jun. 2022, doi: 10.1109/hora55278.2022.9799993.
[19] Mellor, S. J. & Balcer, M. J., 2002. Executable UML: A Foundation
for Model-Driven Architecture, Addison Wesley
.
[20] Mellor, S. J., Scott, K., Uhl, A. & Weise, D., 2004. MDA Distilled:
Principles of Model-Driven Architecture, Addison Wesley

View publication stats

You might also like