9 research outputs found

    Modeling and Analysis of Software Product Line Variability in Clafer

    Get PDF
    Both feature and class modeling are used in Software Product Line (SPL) engineering to model variability. Feature models are used primarily to represent user-visible characteristics (i.e., features) of products; whereas class models are often used to model types of components and connectors in a product-line architecture. Previous works have explored the approach of using a single language to express both configurations of features and components. Their goal was to simplify the definition and analysis of feature-to-component mappings and to allow modeling component options as features. A prominent example of this approach is cardinality-based feature modeling, which extends feature models with multiple instantiation and references to express component-like, replicated features. Another example is to support feature modeling in a class modeling language, such as UML or MOF, using their profiling mechanisms and a stylized use of composition. Both examples have notable drawbacks: cardinality-based feature modeling lacks a constraint language and a well-defined semantics; encoding feature models as class models and their evolution bring extra complexity. This dissertation presents Clafer (class, feature, reference), a class modeling language with first-class support for feature modeling. Clafer can express rich structural models augmented with complex constraints, i.e., domain, variability, component models, and meta-models. Clafer supports: (i) class-based meta-models, (ii) object models (with uncertainty, if needed), (iii) feature models with attributes and multiple instantiation, (iv) configurations of feature models, (v) mixtures of meta- and feature models and model templates, and (vi) first-order logic constraints. Clafer also makes it possible to arrange models into multiple specialization and extension layers via constraints and inheritance. On the other hand, in designing Clafer we wanted to create a language that builds upon as few concepts as possible, and is easy to learn. The language is supported by tools for SPL verification and optimization. We propose to unify basic modeling constructs into a single concept, called clafer. In other words, Clafer is not a hybrid language. We identify several key mechanisms allowing a class modeling language to express feature models concisely. We provide Clafer with a formal semantics built in a novel, structurally explicit way. As Clafer subsumes cardinality-based feature modeling with attributes, references, and constraints, we are the first to precisely define semantics of such models. We also explore the notion of partial instantiation that allows for modeling with uncertainty and variability. We show that Object-Oriented Modeling (OOM) languages with no direct support for partial instances can support them via class modeling, using subclassing and strengthening multiplicity constraints. We make the encoding of partial instances via subclassing precise and general. Clafer uses this encoding and pushes the idea even further: it provides a syntactic unification of types and (partial) instances via subclassing and redefinition. We evaluate Clafer analytically and experimentally. The analytical evaluation shows that Clafer can concisely express feature and meta-models via a uniform syntax and unified semantics. The experimental evaluation shows that: 1) Clafer can express a variety of realistic rich structural models with complex constraints, such as variability models, meta-models, model templates, and domain models; and 2) that useful analyses can be performed within seconds

    Independent verification of specification models for large software systems at the early phases of development lifecycle

    Get PDF
    One of the major challenges facing the software industry, in general and IV&V (Independent Verification and Validation) analysts in particular, is to find ways for analyzing dynamic behavior of requirement specifications of large software systems early in the development lifecycle. Such analysis can significantly improve the performance and reliability of the developed systems. This dissertation addresses the problem of developing an IV&V framework for extracting semantics of dynamic behavior from requirement specifications based on: (1) SART (Structured Analysis with Realtime) models, and (2) UML (Unified Modeling Language) models.;For SART, the framework presented here shows a direct mapping from SART specification models to CPN (Colored Petrinets) models. The semantics of the SART hierarchy at the individual levels are preserved in the mapping. This makes it easy for the analyst to perform the analysis and trace back to the corresponding SART model. CPN was selected because it supports rigorous dynamic analysis. A large scale case study based on a component of NASA EOS system was performed for a proof of the concept.;For UML specifications, an approach based on metamodels is presented. A special type of metamodel, called dynamic metamodel (DMM), is introduced. This approach holds several advantages over the direct mapping of UML to CPN. The mapping rules for generating DMM are not CPN specific, hence they would not change if a language other than CPN is used. Also it makes it more flexible to develop DMM because other types of models can be added to the existing UML models. A simple example of a pacemaker is used to illustrate the concepts of DMM

    Simulation product fidelity: a qualitative & quantitative system engineering approach

    Get PDF
    La modélisation informatique et la simulation sont des activités de plus en plus répandues lors de la conception de systèmes complexes et critiques tels que ceux embarqués dans les avions. Une proposition pour la conception et réalisation d'abstractions compatibles avec les objectifs de simulation est présentée basés sur la théorie de l'informatique, le contrôle et le système des concepts d'ingénierie. Il adresse deux problèmes fondamentaux de fidélité dans la simulation, c'est-à-dire, pour une spécification du système et quelques propriétés d'intérêt, comment extraire des abstractions pour définir une architecture de produit de simulation et jusqu'où quel point le comportement du modèle de simulation représente la spécification du système. Une notion générale de cette fidélité de la simulation, tant architecturale et comportementale, est expliquée dans les notions du cadre expérimental et discuté dans le contexte des abstractions de modélisation et des relations d'inclusion. Une approche semi-formelle basée sur l'ontologie pour construire et définir l'architecture de produit de simulation est proposée et démontrée sur une étude d'échelle industrielle. Une approche formelle basée sur le jeu théorique et méthode formelle est proposée pour différentes classes de modèles des systèmes et des simulations avec un développement d'outils de prototype et cas des études. Les problèmes dans la recherche et implémentation de ce cadre de fidélité sont discutées particulièrement dans un contexte industriel.In using Modeling and Simulation for the system Verification & Validation activities, often the difficulty is finding and implementing consistent abstractions to model the system being simulated with respect to the simulation requirements. A proposition for the unified design and implementation of modeling abstractions consistent with the simulation objectives based on the computer science, control and system engineering concepts is presented. It addresses two fundamental problems of fidelity in simulation, namely, for a given system specification and some properties of interest, how to extract modeling abstractions to define a simulation product architecture and how far does the behaviour of the simulation model represents the system specification. A general notion of this simulation fidelity, both architectural and behavioural, in system verification and validation is explained in the established notions of the experimental frame and discussed in the context of modeling abstractions and inclusion relations. A semi-formal ontology based domain model approach to build and define the simulation product architecture is proposed with a real industrial scale study. A formal approach based on game theoretic quantitative system refinement notions is proposed for different class of system and simulation models with a prototype tool development and case studies. Challenges in research and implementation of this formal and semi-formal fidelity framework especially in an industrial context are discussed

    Semantic derivation of enterprise information architecture from riva-based business process architecture

    Get PDF
    Contemporary Enterprise Information Architecture (EIA) design practice in the industry still suffers from issues that hamper the investment in the EIA design. First and foremost of these issues is the shortcoming of EIA design research to bridge the gap between business and systems (or information) architectures. Secondly, contemporary developed business process architecture methods, and in particular object-based ones have not been fully exploited for EIA design and thus widening the gap between business processes and systems. In practice, knowledge-driven approaches have been thoroughly influencing EIA design. Thirdly, the lack of using knowledge representation methods adversely affected the automation (or semi-automation) of the EIA design process. Software Engineering (SE) technologies and Knowledge Representation using ontologies continue to prove instrumental in the design of domain knowledge. Finally, current EIA development methods have often resulted in complex designs that hampered both adopting and exploiting EIA in medium to large scale organisations.This research is aimed at investigating the derivation of the EIA from a given semantic representation of object-based Business Process Architecture (BPA), and in particular Riva-based BPA using the design science research-based methodology. The key design artefact of this research is the development of the BPAOntoEIA framework that semantically derives EIA from a semantic representation of Riva-based BPA of an enterprise. In this framework, EIA elements were derived from the semantic Riva BPA elements and associated business process models, with forward and backward traceability from/to the derived EIA to/from the original BPA. The BPAOntoEIA framework has been evaluated using the semantic Cancer Care and Registration BPA in Jordan. This framework has been validated using an authentic concern-based evaluation framework employing both static and dynamic validation approaches.The BPAOntoEIA framework contributes to bridging the gap between the business and systems world by providing a business/IT alignment through the EIA derivation process, and using the semantic knowledge of business processes within the resultant EIA. A major novel contribution is the introduction of new evaluation metrics for EIA design, which are quantitative, and are not only indicative of the quality of the semantic EIA derivation from the associated BPA but also the extent of utilisingbusiness process knowledge and traceability amongst EIA elements.Amongst other novel contributions is the semantic EIA derivation process that comprises a suite of the Semantic Web Rules Language (SWRL) rules applied on the semantic BPA elements. The derivation scheme utilises the generic EIA (gEIAOnt) ontology that was developed in this research and represents a semantic meta-model of EIA elements of a generic enterprise. The resultant EIA provides a highly coherent semantic information model that is in-line with the theory of EIA design, semantically enriched, and fully utilises the semantic knowledge of business processes.Benefits of this research to industry include the semantic EIA derivation process and a resultant information model that utilises the semantic information of business processes in the enterprise. Therefore, this enables the enterprise strategic management to plan for a single, secure and accessible information resource that is business process driven, and enabled in an agile environment. The semantic enrichment of the EIA is a starting point for a simplistic design of a domain-independent semantic enterprise architecture for the development of systems of systems in loosely coupled enterprises

    Introduction to clarithmetic I

    Get PDF
    "Clarithmetic" is a generic name for formal number theories similar to Peano arithmetic, but based on computability logic (see http://www.cis.upenn.edu/~giorgi/cl.html) instead of the more traditional classical or intuitionistic logics. Formulas of clarithmetical theories represent interactive computational problems, and their "truth" is understood as existence of an algorithmic solution. Imposing various complexity constraints on such solutions yields various versions of clarithmetic. The present paper introduces a system of clarithmetic for polynomial time computability, which is shown to be sound and complete. Sound in the sense that every theorem T of the system represents an interactive number-theoretic computational problem with a polynomial time solution and, furthermore, such a solution can be efficiently extracted from a proof of T. And complete in the sense that every interactive number-theoretic problem with a polynomial time solution is represented by some theorem T of the system. The paper is written in a semitutorial style and targets readers with no prior familiarity with computability logic

    User Interaction in Deductive Interactive Program Verification

    Get PDF
    corecore