Theory of Computing, Computing Methodologies and Software Engineering
Creating Hybrid Software Engineering Methods by Means of Metamodels
Darko Androcec, Zeljko Dobrovic
Abstract
Two dominant techniques for software development used nowadays are the classical software development methods (e.g. RUP, waterfall) and the agile approaches (e.g. Scrum, XP). One can also use hybrid methods, because both approaches have some benefits. In this paper we show how to build new hybrid software engineering methods by means of metamodels. We describe metamodels of the classical waterfall method and extreme programming and create their common metamodel. This common metamodel is then used as a foundation for new hybrid method development and development of workflow of its implementation.
Keywords
Metamodel, extreme programming, waterfall method, hybrid software engineering
Full text is available at IEEE Xplore digital library.
XML Schema Domain Identification
Maja Pusnik, Bostjan Sumak, Marjan Hericko
Abstract
Using XML data was initially applied in electronic data interchange and e-business, however the application of XML has been moved to several other fields. We nominate those fields of use as XML domains and presume that subsets of their characteristics significantly differ from one another. In this paper, we present the list of identified XML domains with high degree of XML Schema appearances, and for the XML domains, we identify common and distinctive characteristics. Additionally, we propose a function for transforming identified XML domains into known XML Schema patterns.
Keywords
XML Schema, XML domains, XML structure
Full text is available at IEEE Xplore digital library.
Mixnets: Implementation and Performance Evaluation of Decryption and Re-encryption Types
Pance Ribarski, Ljupcho Antovski
Abstract
The anonymous channels have been the essence of numerous protocols that include anonymous message passing between peers. The mixnet structure is one way to accomplish the anonymity . Since the publication of the Chaumian mixnet, there have been many practical implementations. There are two main approaches to implement mixnets: the decryption (Chaumian) and the re-encryption mixnets. In this paper we analyze four types of mixnets, from which one decryption and three re-encryption types. They were implemented in the Java programing language and evaluated on several criterias as: the number of messages, the total number of nodes, the number of threshold nodes, and the key length of underlying crypto system. In the results section we compare the results from the practical tests to answer the research question, which type of mixnets has better features.
Keywords
mixnets, decryption, re-encryption, e-voting, algorithms, performance, Elgamal, threshold, dealer
Full text is available at IEEE Xplore digital library.
Superlinear Speedup for Matrix Multiplication
Sasko Ristov, Marjan Gusev
Abstract
Amdahl has shown that multiprocessor execution performance is not proportional to the number of processors. Gustafson has found a way to show that there are algorithms which can have almost linear speedup. In this article we have found algorithms which can achieve a superlinear speedup. The idea is not based on changing the algorithm or executing smaller number of operations like in the parallel search. It is based on characteristics of using a structure persistent algorithm which efficiently exploits the cache in a shared multiprocessor and avoids cache misses as much as possible. Our experimental research shows results of superlinear speedup for algorithms which run on modern multi-core and multi-chip architectures and perform beyond expectations of maximum linear speedup.
Keywords
superlinear speedup, matrix multiplication, Gustafson's law, Amdahl's law, shared memory multiprocessor, L2 cache, high performance computing
Full text is available at IEEE Xplore digital library.
Rethinking Model Driven Development: Analysis and Opportunities
Nikola Tanković, Dražen Vukotić, Mario Žagar
Abstract
Application modeling is gaining its share as the next generation software development methodology. Model Driven Development (MDD) uses abstract models of software systems to yield concrete implementations. This process can be achieved in two fundamentally different ways: by generating end artifacts, or by applying model interpretation.
Regardless of approach used, MDD still needs to surpass certain challenges to gain further appreciation among community. This paper classifies those challenges and proposes use of different methodologies which could enable simpler modeling solutions. Object Process Methodology (OPM) as software modeling tool is an adequate candidate yielding results in that direction.
Keywords
Generative MDD, Interpretive MDD, Object Process Methodology
Full text is available at IEEE Xplore digital library.