45 Hits in 7.7 sec

Umple: Model-driven development for open source and education

Timothy C. Lethbridge, Andrew Forward, Omar Badreddin, Dusan Brestovansky, Miguel Garzon, Hamoud Aljamaan, Sultan Eid, Ahmed Husseini Orabi, Mahmoud Husseini Orabi, Vahdat Abdelzad, Opeyemi Adesina, Aliaa Alghamdi (+2 others)
2021 Science of Computer Programming  
It provides comprehensive analysis of models and generates many kinds of diagrams, some of which can be edited to update the Umple code.  ...  Umple is an open-source software modeling tool and compiler. It incorporates textual language constructs for UML modeling, including associations and state machines.  ...  of the undergraduate students was provided by Google and Facebook through the UCOSP and Facebook Open Academy programs.  ... 
doi:10.1016/j.scico.2021.102665 fatcat:o3stzjni5bg57ftf7ww5vo4sl4

Combining experiments and grounded theory to evaluate a research prototype: Lessons from the umple model-oriented programming technology

Omar Badreddin, Timothy C. Lethbridge
2012 2012 First International Workshop on User Evaluation for Software Engineering Researchers (USER)  
This paper presents two empirical studies conducted to evaluate a model-oriented programming language called Umple; a grounded theory study and a controlled experiment of comprehension.  ...  Second, the scarcity of experienced users poses additional challenges.  ...  Its key element is a set of language extensions that enhance existing languages like Java, PHP, and Ruby with modeling constructs.  ... 
doi:10.1109/user.2012.6226575 dblp:conf/icse/BadreddinL12 fatcat:opweurpqmbbv3h2emgtgq2hkq4

Modeling Practices in Open Source Software [chapter]

Omar Badreddin, Timothy C. Lethbridge, Maged Elassar
2013 IFIP Advances in Information and Communication Technology  
We also report on the Umple compiler itself as a case study of an open source project where contributors, using the above approach, have and continue to routinely commit code and model over a number of  ...  The open source community, in particular, remains almost entirely code centric. In this paper, we explore the reasons behind such limited adoption of modeling practices among open source developers.  ...  We have presented Umple as a case study of an open source project that has been successfully developed using a model-based programming language (Umple itself).  ... 
doi:10.1007/978-3-642-38928-3_9 fatcat:htp6aeocvzfhbkt4wwzqoxguuq

Exploring a Model-Oriented and Executable Syntax for UML Attributes [chapter]

Omar Badreddin, Andrew Forward, Timothy C. Lethbridge
2014 Studies in Computational Intelligence  
We look code-generation of attributes by various UML tools. Finally, we present our own Umple language along with its code generation patterns for attributes, using Java as the target language.  ...  Implementing UML attributes directly in an object-oriented language may not appear to be complex, since such languages already support member variables.  ...  Experimentation with Umple [18] users reveals evidence that software developer comprehension of the code is enhanced when compared to traditional object oriented code [19] [20] [21] .  ... 
doi:10.1007/978-3-319-00948-3_3 fatcat:hiiudk7cazgoxogp7qbhpasydu

Tool Use in Software Modelling Education

Seiko Akayama, Birgit Demuth, Timothy C. Lethbridge, Marion Scholz, Perdita Stevens, Dave R. Stikkolorum
2013 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems  
An important decision that must be taken by anyone designing a course involving (object oriented software) modelling is what tool support, if any, to use.  ...  Moreover, decisions on tools have an impact on other aspects of course design.  ...  Acknowledgements We thank the other participants in the Educators' Symposium, especially Kenji Hisazumi, for their participation and their comments before the writing of this paper.  ... 
dblp:conf/models/AkayamaDLSSS13 fatcat:orhfktcscrf57ldoxqmus7gj74

Execution of UML models: a systematic review of research and practice

Federico Ciccozzi, Ivano Malavolta, Bran Selic
2018 Journal of Software and Systems Modeling  
limitation deals with coverage of the UML language.  ...  Behavioral descriptions of the software components are defined in terms of UML state machines, for defining the overall behavior by means of states and transitions, and Alf, for specifying fine-grained  ...  Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecomm, which permits unrestricted use, distribution  ... 
doi:10.1007/s10270-018-0675-4 fatcat:ayrdh7bdejfj5hpkt5p5iv6hz4

Rapid Requirements Elicitation of Enterprise Applications Based on Executable Mockups

Milorad Filipović, Željko Vuković, Igor Dejanović, Gordana Milosavljević
2021 Applied Sciences  
Although there has been a lot of research in the field in recent years, we find that there is still a need to improve model-driven tool design in order to enable customer participation from the initial  ...  To meet the goal, we have been developing an open-source solution called Kroki that enables rapid collaborative development.  ...  Conflicts of Interest: The authors declare no conflict of interest.  ... 
doi:10.3390/app11167684 fatcat:3abbuouz4vh63lx6qbxcn7qkza

Linguistic Patterns and Linguistic Styles for Requirements Specification: Focus on Data Entities

Alberto Rodrigues da Silva, Dušan Savić
2021 Applied Sciences  
We analyzed how other languages cope with the representation of these data entity elements and complemented that analysis and comparison based on the PENS classification scheme.  ...  This paper shows concrete examples and supports the discussion with three linguistic styles, represented by a rigorous requirements specification language and two informal controlled natural languages,  ...  We argue that improving the awareness and knowledge of linguistic patterns, like the ones discussed in this paper, may contribute to enhance this current situation.  ... 
doi:10.3390/app11094119 fatcat:lbi7ncuw3nhybfp4s2mbcrkq4m

The Convergence of Modeling and Programming: Facilitating the Representation of Attributes and Associations in the Umple Model-Oriented Programming Language

Andrew Forward, Université D'Ottawa / University Of Ottawa, Université D'Ottawa / University Of Ottawa
To explore the capabilities of modeling in code, we developed a model-oriented programming language called Umple.  ...  By providing modeling abstractions in a programming language, the complexity and size of the resulting systems, we argue, is reduced and more developers, particularly those who are used to writing code  ...  Next, we analyzed the qualities of an Umple system to demonstrate the potential for improved program comprehension based on the conciseness of the language.  ... 
doi:10.20381/ruor-13300 fatcat:2gurt67uvbaozjz3fzypfusk24

A Manifestation of Model-Code Duality: Facilitating the Representation of State Machines in the Umple Model-Oriented Programming Language

Omar Badreldin, Université D'Ottawa / University Of Ottawa, Université D'Ottawa / University Of Ottawa
We have also developed a syntax-directed editor for Umple, similar to those available to other high-level programming languages.  ...  By enhancing the code to be almost as expressive as the model, we further support model-code duality; the notion that both model and code are two faces for the same coin.  ...  Looking at Umple as an action language, Umple raises the abstraction level of programming languages by availing the following language refinements (LRs): L.R-1.  ... 
doi:10.20381/ruor-5632 fatcat:sh7qiwax4rf3ho2wldmkp3lee4

Reverse Engineering Object-Oriented Systems into Umple: An Incremental and Rule-Based Approach

Miguel Alejandro Garzón, Université D'Ottawa / University Of Ottawa, Université D'Ottawa / University Of Ottawa
Umple is a textual representation that blends modeling in UML with programming language code.  ...  The approach, called umplification, produces a program with behavior identical to the original one, but written in Umple and enhanced with model-level abstractions.  ...  We run a custom-made code analyzer on the Umple system generated (umplified) to obtain the statistics of the detected (extracted) Umple constructs (attributes, associations).  ... 
doi:10.20381/ruor-4206 fatcat:ntx3ffolqzfidi3ztzviavb46m

A Granular Hierarchical Multiview Metrics Suite for Statecharts Quality

Mokhtar Beldjehem
2013 Advances in Software Engineering  
The higher level corresponds to a flat process view diagram (depth = 0), the adequate upper depth limit is determined by the modelers according to the inherent complexity of the problem under study and  ...  the level of detail required for the situation at hand (it corresponds to the all states view).  ...  A modeldriven programming environment (such as Umple) has been touted as a promising emerging technique for achieving these software development goals, due to the possibility of code generation and reusability  ... 
doi:10.1155/2013/952178 fatcat:jjmke4iicngbjl6knbdwlklgzi

Model-Oriented Tracing Language: Producing Execution Traces from Tracepoints Injected into Code Generated from UML Models

Hamoud Aljamaan, Université D'Ottawa / University Of Ottawa, Université D'Ottawa / University Of Ottawa
MOTL was used in the development in two of Umple subprojects. An empirical evalu [...]  ...  In this thesis, we present a textual model-level tracing language, implemented as part of Umple, that overcomes some of the limitations of existing tracing methods.  ...  Hence, Umple will parse programming languages code as part of Umple code. • Umple uses base language code as an action language to handle algorithmic operations.  ... 
doi:10.20381/ruor-4011 fatcat:6hly2kwdebeoxjo6kfpv4ozf64

Mixsets: Combining Annotative and Compositional Approaches to Variability and Product Lines [article]

Abdulaziz Algablan, University, My
There are three key contributions of our research: introducing mixsets to represent software variability, extending mixsets to construct feature models, and improving software composition to achieve fine-grained  ...  The concept of mixsets is introduced in Umple as a conditional unit and a first-class entity to allow smoothly transitioning software to compositional SPLs.  ...  In such a case, the input language would need to consist of a blend of textual modeling constructs and code written in one or more programming language.  ... 
doi:10.20381/ruor-27225 fatcat:huhnlxsnvzge7pkkgr3atrgrsu

Umple C++ Code Generator

Almaghthawi Sultan, Université D'Ottawa / University Of Ottawa, Université D'Ottawa / University Of Ottawa
We discuss the design and analysis of a code generator for C++, implemented in the Umple model-oriented programming technology.  ...  Umple adds UML constructs and patterns to various base programming languages such as Java and PhP.  ...  These are: Umple Metamodel: The core metamodel of the Umple language that describes the construction of Umple models. The Umple metamodel itself was defined in Umple.  ... 
doi:10.20381/ruor-3231 fatcat:cd33rdsubzeetat2u5y32trwbq
« Previous Showing results 1 — 15 out of 45 results