9 research outputs found

    Test-driven conceptual modeling: a method and a tool

    Get PDF
    Conceptual Schema-Centric Development (CSCD) has been quali ed as a grand challenge for many researchers in Information Systems (IS). It reformulates the historical goal of automating IS building but emphasizing that the Conceptual Schema (CS) should be the center of the development. CSCD requires explicit, complete, executable and correct CSs. In this context, testing becomes critical in the conceptual modeling activity. Test-Driven Conceptual Modeling (TDCM) is proposed as a new development method to obtain a correct and complete CS. TDCM applies to conceptual modeling the essential ideas of Test-Driven Development(TDD), an emerging test- rst eXtreme Programming (XP) method. Our research proposal pretends to contribute to the IS research community by developing the TDCM method and a tool to put it into practice.Peer ReviewedPostprint (published version

    First steps towards conceptual schema testing

    Get PDF
    Like any software artifact, conceptual schemas of information systems can be tested. Testing conceptual schemas has some similarities with testing programs, but there are important differences. We present a list of six kinds of tests that can be applied to conceptual schemas. Some of them require complete schemas comprising both the structural and the behavioral parts, but we show that it is useful to test incomplete schema fragments. We introduce CSTL, a language for writing automated tests of executable schemas written in UML/OCL. We sketch the implementation of a test processor to automatically execute CSTL tests as many times as needed, following the style of the modern xUnit testing frameworks.Peer ReviewedPostprint (published version

    CSTL: A Conceptual Schema Testing Language

    Get PDF
    Like any software artifact, conceptual schemas of information systems can be tested. Testing conceptual schemas has some similarities with testing programs, but there are important differences. We present a list of six kinds of tests that can be applied to conceptual schemas. Some of them require schemas comprising both the structural and the behavioral parts, but we show that it is useful to test incomplete schema fragments, even if they consist of only a few entity and relationship types, integrity constraints and derivation rules. We present CSTL, a language for writing automated tests of executable schemas written in UML/OCL. CSTL follows the style of the modern xUnit testing frameworks. Tests written in CSTL can be executed as many times as needed. We describe an implementation of a test processor, which includes a test manager and a test interpreter that coordinates the execution of the tests. Finally, we apply CSTL to the conceptual schema of a real-world information system

    Testing and test-driven development of conceptual schemas

    Get PDF
    The traditional focus for Information Systems (IS) quality assurance relies on the evaluation of its implementation. However, the quality of an IS can be largely determined in the first stages of its development. Several studies reveal that more than half the errors that occur during systems development are requirements errors. A requirements error is defined as a mismatch between requirements specification and stakeholders¿ needs and expectations. Conceptual modeling is an essential activity in requirements engineering aimed at developing the conceptual schema of an IS. The conceptual schema is the general knowledge that an IS needs to know in order to perform its functions. A conceptual schema specification has semantic quality when it is valid and complete. Validity means that the schema is correct (the knowledge it defines is true for the domain) and relevant (the knowledge it defines is necessary for the system). Completeness means that the conceptual schema includes all relevant knowledge. The validation of a conceptual schema pursues the detection of requirements errors in order to improve its semantic quality. Conceptual schema validation is still a critical challenge in requirements engineering. In this work we contribute to this challenge, taking into account that, since conceptual schemas of IS can be specified in executable artifacts, they can be tested. In this context, the main contributions of this Thesis are (1) an approach to test conceptual schemas of information systems, and (2) a novel method for the incremental development of conceptual schemas supported by continuous test-driven validation. As far as we know, this is the first work that proposes and implements an environment for automated testing of UML/OCL conceptual schemas, and the first work that explores the use of test-driven approaches in conceptual modeling. The testing of conceptual schemas may be an important and practical means for their validation. It allows checking correctness and completeness according to stakeholders¿ needs and expectations. Moreover, in conjunction with the automatic check of basic test adequacy criteria, we can also analyze the relevance of the elements defined in the schema. The testing environment we propose requires a specialized language for writing tests of conceptual schemas. We defined the Conceptual Schema Testing Language (CSTL), which may be used to specify automated tests of executable schemas specified in UML/OCL. We also describe a prototype implementation of a test processor that makes feasible the approach in practice. The conceptual schema testing approach supports test-last validation of conceptual schemas, but it also makes sense to test incomplete conceptual schemas while they are developed. This fact lays the groundwork of Test-Driven Conceptual Modeling (TDCM), which is our second main contribution. TDCM is a novel conceptual modeling method based on the main principles of Test-Driven Development (TDD), an extreme programming method in which a software system is developed in short iterations driven by tests. We have applied the method in several case studies, in the context of Design Research, which is the general research framework we adopted. Finally, we also describe an integration approach of TDCM into a broad set of software development methodologies, including the Unified Process development methodology, MDD-based approaches, storytest-driven agile methods and goal and scenario-oriented requirements engineering methods.Els enfocaments per assegurar la qualitat deis sistemes d'informació s'han basal tradicional m en! en l'avaluació de la seva implementació. No obstan! aix6, la qualitat d'un sis tema d'informació pot ser ampliament determinada en les primeres fases del seu desenvolupament. Diversos estudis indiquen que més de la meitat deis errors de software són errors de requisits . Un error de requisit es defineix com una desalineació entre l'especificació deis requisits i les necessitats i expectatives de les parts im plicades (stakeholders ). La modelització conceptual és una activitat essencial en l'enginyeria de requisits , l'objectiu de la qual és desenvolupar !'esquema conceptual d'un sistema d'informació. L'esquema conceptual és el coneixement general que un sistema d'informació requereix per tal de desenvolupar les seves funcions . Un esquema conceptual té qualitat semantica quan és va lid i complet. La valides a implica que !'esquema sigui correcte (el coneixement definit és cert peral domini) i rellevant (el coneixement definit és necessari peral sistema). La completes a significa que !'esquema conceptual inclou tot el coneixement rellevant. La validació de !'esquema conceptual té coma objectiu la detecció d'errors de requisits per tal de millorar la qualitat semantica. La validació d'esquemes conceptuals és un repte crític en l'enginyeria de requisits . Aquesta te si contribueix a aquest repte i es basa en el fet que els es quemes conceptuals de sistemes d'informació poden ser especificats en artefactes executables i, per tant, poden ser provats. Les principals contribucions de la te si són (1) un enfocament pera les pro ves d'esquemes conceptuals de sistemes d'informació, i (2) una metodología innovadora pel desenvolupament incremental d'esquemes conceptuals assistit per una validació continuada basada en proves . Les pro ves d'esquemes conceptuals poden ser una im portant i practica técnica pera la se va validació, jaque permeten provar la correctesa i la completesa d'acord ambles necessitats i expectatives de les parts interessades. En conjunció amb la comprovació d'un conjunt basic de criteris d'adequació de les proves, també podem analitzar la rellevancia deis elements definits a !'esquema. L'entorn de test proposat inclou un llenguatge especialitzat per escriure proves automatitzades d'esquemes conceptuals, anomenat Conceptual Schema Testing Language (CSTL). També hem descrit i implementa! a un prototip de processador de tes tos que fa possible l'aplicació de l'enfocament proposat a la practica. D'acord amb l'estat de l'art en validació d'esquemes conceptuals , aquest és el primer treball que proposa i implementa un entorn pel testing automatitzat d'esquemes conceptuals definits en UML!OCL. L'enfocament de proves d'esquemes conceptuals permet dura terme la validació d'esquemes existents , pero també té sentit provar es quemes conceptuals incomplets m entre estant sent desenvolupats. Aquest fet és la base de la metodología Test-Driven Conceptual Modeling (TDCM), que és la segona contribució principal. El TDCM és una metodología de modelització conceptual basada en principis basics del Test-Driven Development (TDD), un métode de programació en el qual un sistema software és desenvolupat en petites iteracions guiades per proves. També hem aplicat el métode en diversos casos d'estudi en el context de la metodología de recerca Design Science Research. Finalment, hem proposat enfocaments d'integració del TDCM en diverses metodologies de desenvolupament de software

    Using structured analysis and design technique (SADT) for simulation conceptual modelling

    Get PDF
    Conceptual Modelling (CM) has received little attention in the area of Modelling and Simulation (M&S) and more specifically in Discrete Event Simulation (DES). It is widely agreed that CM is least understood despite its importance. This is however, not the case in other fields of science and engineering (especially, computer science, systems engineering and software engineering). In Computer Science (CS) alone, CM has been extensively used for requirements specification and some well-established methods are in practice. The aim of the thesis is to propose a CM framework based on the principles of software engineering and CS. The development of the framework is adapted from a well-known software engineering method called Structured Analysis and Design Technique (SADT), hence it is called SADT CM. It is argued that by adapting approaches from CS, similar benefits can be achieved in terms of formality, understanding, communication and quality. A comprehensive cross-disciplinary review of CM in CS and M&S is undertaken, which highlights the dearth of standards within M&S CM when compared to CS. Three important sub-fields of CS are considered for this purpose namely, information systems, databases and software engineering. The review identifies two potential methods that could be adopted for developing a M&S CM framework. The first method called PREView was found unsuitable for M&S CM in DES domain. Hence, the thesis concentrates on developing the framework based on SADT. The SADT CM framework is evaluated on three-in depth test cases that investigate the feasibility of the approach. The study also contributes to the literature by conducting a usability test of the CM framework in an experimental setting. A comprehensive user-guide has also been developed as part of the research for users to follow the framewor

    Supporting Automatic Interoperability in Model-Driven Development Processes

    Full text link
    By analyzing the last years of software development evolution, it is possible to observe that the involved technologies are increasingly focused on the definition of models for the specification of the intended software products. This model-centric development schema is the main ingredient for the Model-Driven Development (MDD) paradigm. In general terms, the MDD approaches propose the automatic generation of software products by means of the transformation of the defined models into the final program code. This transformation process is also known as model compilation process. Thus, MDD is oriented to reduce (or even eliminate) the hand-made programming, which is an error-prone and time-consuming task. Hence, models become the main actors of the MDD processes: the models are the new programming code. In this context, the interoperability can be considered a natural trend for the future of model-driven technologies, where different modeling approaches, tools, and standards can be integrated and coordinated to reduce the implementation and learning time of MDD solutions as well as to improve the quality of the final software products. However, there is a lack of approaches that provide a suitable solution to support the interoperability in MDD processes. Moreover, the proposals that define an interoperability framework for MDD processes are still in a theoretical space and are not aligned with current standards, interoperability approaches, and technologies. Thus, the main objective of this doctoral thesis is to develop an approach to achieve the interoperability in MDD processes. This interoperability approach is based on current metamodeling standards, modeling language customization mechanisms, and model-to-model transformation technologies. To achieve this objective, novel approaches have been defined to improve the integration of modeling languages, to obtain a suitable interchange of modeling information, and to perform automatic interoperability verification.Giachetti Herrera, GA. (2011). Supporting Automatic Interoperability in Model-Driven Development Processes [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/11108Palanci

    CSTL: A Conceptual Schema Testing Language

    Get PDF
    Like any software artifact, conceptual schemas of information systems can be tested. Testing conceptual schemas has some similarities with testing programs, but there are important differences. We present a list of six kinds of tests that can be applied to conceptual schemas. Some of them require schemas comprising both the structural and the behavioral parts, but we show that it is useful to test incomplete schema fragments, even if they consist of only a few entity and relationship types, integrity constraints and derivation rules. We present CSTL, a language for writing automated tests of executable schemas written in UML/OCL. CSTL follows the style of the modern xUnit testing frameworks. Tests written in CSTL can be executed as many times as needed. We describe an implementation of a test processor, which includes a test manager and a test interpreter that coordinates the execution of the tests. Finally, we apply CSTL to the conceptual schema of a real-world information system

    A structured approach to rapid simulation model development.

    Get PDF
    This thesis presents a new methodology to accelerate the simulation model development process. Three research strategies were adopted during the research namely; case study, questionnaire survey and literature survey. Investigations done during the research revealed that among the stages within a simulation project life cycle the model development phase is the longest. Results of the case study research and literature review revealed that two major reasons for the lengthiness are the lack of understanding of the system to be simulated between the modeller and the user, and difficulty in programming. Many researchers have tried to accelerate the process mainly by improving the programming efficiency. However it is important to develop a model which represents the actual system to be simulated. Existing approaches to accelerating the simulation model development process do not guarantee that the model developed in a shorter time is the model which represents the actual physical system. Therefore there is a need for a new methodology to develop a model at a shorter time while ensuring that it represents the actual system.A simulation model is a piece of software. Therefore, the new methodology was developed by adopting Rapid Application Development approach of software development which emphasises the active user involvement. There are three components of the proposed methodology; Joint Application Development (JAD) team, a CASE tool to develop the simulation software independent conceptual model of the system, and a translator programme to convert the developed conceptual model into the computer simulation model. The proposed mythology accelerates the model development process not only by improving the effectiveness of the process, i.e. development of the model required by the user once but also the efficiency of the process, i.e. development of the model at a shorter time by automating the model development process
    corecore