39 research outputs found

    An Algebra of Design Patterns

    Get PDF
    In a pattern-oriented software design process, design decisions are made by selecting and instanti- ating appropriate patterns, and composing them together. In our previous work, we enabled these decisions to be formalised by dening a set of operators on patterns with which instantiations and compositions can be represented. In this paper, we investigate the algebraic properties of these operators. We provide and prove a complete set of algebraic laws so that equivalence between pattern expressions can be proven. Furthermore, we dene an always-terminating normalisation of pattern expressions to a canonical form, which is unique modulo equivalence in rst-order logic. By a case study, the pattern-oriented design of an extensible request-handling framework, we demonstrate two practical applications of the algebraic framework. Firstly, we can prove the correctness of a nished design with respect to the design decisions made and the formal specication of the patterns. Secondly, we can even derive the design from these components

    On the Composability of Design Patterns

    Get PDF
    In real applications, design patterns are almost always to be found composed with each other. It is crucial that these compositions be validated. This paper examines the notion of validity, and develops a formal method for proving or disproving it, in a context where composition is performed with formally defined operators on formally specified patterns. In particular, for validity, we require that pattern compositions preserve the features, semantics and soundness of the composed patterns. The application of the theory is demonstrated by a formal analysis of overlap-based pattern compositions and a case study of a real pattern-oriented software design

    Functional Size Measurement and Model Verification for Software Model-Driven Developments: A COSMIC-based Approach

    Full text link
    Historically, software production methods and tools have a unique goal: to produce high quality software. Since the goal of Model-Driven Development (MDD) methods is no different, MDD methods have emerged to take advantage of the benefits of using conceptual models to produce high quality software. In such MDD contexts, conceptual models are used as input to automatically generate final applications. Thus, we advocate that there is a relation between the quality of the final software product and the quality of the models used to generate it. The quality of conceptual models can be influenced by many factors. In this thesis, we focus on the accuracy of the techniques used to predict the characteristics of the development process and the generated products. In terms of the prediction techniques for software development processes, it is widely accepted that knowing the functional size of applications in order to successfully apply effort models and budget models is essential. In order to evaluate the quality of generated applications, defect detection is considered to be the most suitable technique. The research goal of this thesis is to provide an accurate measurement procedure based on COSMIC for the automatic sizing of object-oriented OO-Method MDD applications. To achieve this research goal, it is necessary to accurately measure the conceptual models used in the generation of object-oriented applications. It is also very important for these models not to have defects so that the applications to be measured are correctly represented. In this thesis, we present the OOmCFP (OO-Method COSMIC Function Points) measurement procedure. This procedure makes a twofold contribution: the accurate measurement of objectoriented applications generated in MDD environments from the conceptual models involved, and the verification of conceptual models to allow the complete generation of correct final applications from the conceptual models involved. The OOmCFP procedure has been systematically designed, applied, and automated. This measurement procedure has been validated to conform to the ISO 14143 standard, the metrology concepts defined in the ISO VIM, and the accuracy of the measurements obtained according to ISO 5725. This procedure has also been validated by performing empirical studies. The results of the empirical studies demonstrate that OOmCFP can obtain accurate measures of the functional size of applications generated in MDD environments from the corresponding conceptual models.MarĂ­n Campusano, BM. (2011). Functional Size Measurement and Model Verification for Software Model-Driven Developments: A COSMIC-based Approach [Tesis doctoral no publicada]. Universitat PolitĂšcnica de ValĂšncia. https://doi.org/10.4995/Thesis/10251/11237Palanci

    On the formal foundation of a verification approach for system-level concurrent programs

    Get PDF
    Though program verification is known and used since decades, the verification of a complete computer system still remains a grand challenge. In essence, this challenge stems from the interaction of various programs. Different techniques have been proposed for the verification of communicating programs. Common to all, however, is that they rely on several (usually implicit) assumptions about the underlying system. Typically, such assumptions include compiler correctness, scheduler fairness, and a certain noninterference between the local program behavior and its environment. This thesis aims at discharging these assumptions for the processes of the microkernel Vamos. More specifically, this work formally justifies the abstraction from a kernel model with explicit, deterministic scheduling to a concurrent process system with non-deterministic but temporally fair scheduling. Our formal results form the foundation of a verification approach for system-level concurrent programs. We outline this approach on example properties of a user-mode operating system.Obwohl es schon jahrzehntelang Programmverifikation gibt, wird die Verifikation eines kompletten Computersystems auch heute noch als eine große Herausforderung angesehen. Im Wesentlichen ergibt sich diese Herausforderung aus der vielfĂ€ltigen Interaktion von Programmen. Verschiedene Techniken wurden fĂŒr die Verifikation kommunizierender Programme vorgeschlagen. Alle haben jedoch gemein, dass sie sich auf mehrere (meist implizite) Annahmen ĂŒber das zugrunde liegende System stĂŒtzen. In der Regel sind solche Annahmen Compiler-Korrektheit, Scheduler-Fairness und eine gewisse Störfreiheit des lokalen Programmverhaltens vom Verhalten seiner Umgebung. Die vorliegende Dissertation beschĂ€ftigt sich mit der Entlastung dieser Annahmen fĂŒr die Prozesse des Mikrokerns Vamos. Genauer gesagt, rechtfertigt diese Arbeit formal die Abstraktion von einem Kernmodell mit explizitem, deterministischem Scheduling zu einem nebenlĂ€ufigen Prozesssystem mit nicht-deterministischem, aber temporal fairem Scheduling. Die formalen Ergebnisse bilden die Grundlage eines Verifikationsansatzes fĂŒr nebenlĂ€ufige, systemnahe Programme. Dieser Ansatz wird am Beispiel von Eigenschaften eines User-Mode-Betriebssystems erlĂ€utert

    On the formal foundation of a verification approach for system-level concurrent programs

    Get PDF
    Though program verification is known and used since decades, the verification of a complete computer system still remains a grand challenge. In essence, this challenge stems from the interaction of various programs. Different techniques have been proposed for the verification of communicating programs. Common to all, however, is that they rely on several (usually implicit) assumptions about the underlying system. Typically, such assumptions include compiler correctness, scheduler fairness, and a certain noninterference between the local program behavior and its environment. This thesis aims at discharging these assumptions for the processes of the microkernel Vamos. More specifically, this work formally justifies the abstraction from a kernel model with explicit, deterministic scheduling to a concurrent process system with non-deterministic but temporally fair scheduling. Our formal results form the foundation of a verification approach for system-level concurrent programs. We outline this approach on example properties of a user-mode operating system.Obwohl es schon jahrzehntelang Programmverifikation gibt, wird die Verifikation eines kompletten Computersystems auch heute noch als eine große Herausforderung angesehen. Im Wesentlichen ergibt sich diese Herausforderung aus der vielfĂ€ltigen Interaktion von Programmen. Verschiedene Techniken wurden fĂŒr die Verifikation kommunizierender Programme vorgeschlagen. Alle haben jedoch gemein, dass sie sich auf mehrere (meist implizite) Annahmen ĂŒber das zugrunde liegende System stĂŒtzen. In der Regel sind solche Annahmen Compiler-Korrektheit, Scheduler-Fairness und eine gewisse Störfreiheit des lokalen Programmverhaltens vom Verhalten seiner Umgebung. Die vorliegende Dissertation beschĂ€ftigt sich mit der Entlastung dieser Annahmen fĂŒr die Prozesse des Mikrokerns Vamos. Genauer gesagt, rechtfertigt diese Arbeit formal die Abstraktion von einem Kernmodell mit explizitem, deterministischem Scheduling zu einem nebenlĂ€ufigen Prozesssystem mit nicht-deterministischem, aber temporal fairem Scheduling. Die formalen Ergebnisse bilden die Grundlage eines Verifikationsansatzes fĂŒr nebenlĂ€ufige, systemnahe Programme. Dieser Ansatz wird am Beispiel von Eigenschaften eines User-Mode-Betriebssystems erlĂ€utert

    An Empirical Assessment of the Software Design Pattern Concept

    Get PDF
    Context: The publication of the milestone textbook on design patterns by the ‘Gang of Four’ (GoF) in 1995, introduced a set of 23 design patterns that are largely concerned with improving the practices and products of software development. However, there has been no comprehensive assessment of the effectiveness of design patterns, nor is there any evidence about any claims and factors that are made for pattern reuse in software development. Aims: The aims of this thesis are to assess the design patterns systematically in a sequence of studies, and to identify the claims and factors to determine how well they reflect experiences of pattern reuse in practice. Method: This thesis describes four studies: a document survey to identify claims for patterns, a mapping study to identify empirical studies about patterns, an online survey, and a narrative synthesis. The mapping study and the online survey together provide quite comprehensive and thorough evidence for the narrative synthesis. In the narrative synthesis, we check whether there is any consistency or not in the evidence about specific patterns, and also to see how the claims and factors influence pattern reuse. Results: The mapping study found 20 primary studies, and the online survey had 206 usable responses. In the 20 primary study of the mapping study 17 design patterns were examined. In the online survey 175 respondents considered patterns were useful, and 155 respondents reported on patterns that they considered not to be useful. Conclusion: From the synthesis results, the specific patterns Composite and Observer are evaluated as being generally useful, but the Visitor and Singleton patterns, while useful, have possible negative aspects. And also four of the claims and the effect of one factor are demonstrated to be generally true. But the others are either unsupported or have no effect

    Staging Governance

    Get PDF
    Between 1770 and 1800, transformations in the relationship between metropolitan British society and its colonial holdings, and in the concept of the nation itself, left Britons with a new sense of themselves. Over the same period, the consolidation of the middle classes was accompanied by growing social constraints on sexuality and family life. Staging Governance locates the intersection of these two trends in the representation of British India on the London stage. Theatrical productions, especially those representing colonial life, pushed the limits of public discourse on sexuality and colonialism even as the government made efforts to shape and narrow them. At the same time, official discourse on colonial practices, such as the public trials of Clive and Hastings, became theatrical events themselves. Exploring this rapidly shifting world through a series of original readings of dramatic texts and important moments of oratory, Staging Governance demonstrates how the perceived crises of imperial and domestic Britain joined these spheres in the popular imagination. The economics of political and sexual exchange not only became entwined but functioned as mutual supports during a period of social, cultural, and political readjustment

    Eksaptatsioon: ĂŒhe bioloogilise mĂ”iste semiootilise kirjelduse poole

    Get PDF
    VĂ€itekirja elektrooniline versioon ei sisalda publikatsioone.KĂ€esolev doktoritöö modelleerib eksaptatsiooni kui evolutsioonilist nĂ€htust, lĂ€htudes C.S. Peirce’i mĂ€rgi- ja tuletusteooriast. Selle teostamiseks keskendub esimene osa “Enne eksaptatsiooni: eel-adapteerumine ja Chauncey Wright” mĂ”iste tĂ€hendusele ning toob vĂ€lja selle ulatusliku ajaloolise tausta. Erilist tĂ€helepanu pööratakse C. Wrighti vanade jĂ”udude uue kasutuse printsiibile ning tema intellektuaalsele seosele Darwiniga. Töö teine osa “Wright ja Peirce pragmatismist ja evolutsioonist” uurib Wright’i ja Peirce’i vahelisi sarnasusi ja erinevusi, pidades silmas Darwini teooria epistemoloogilist staatust, nende erinevat lĂ€henemist Lamarck’i teooriatele ning evolutsionismi ĂŒldistamist bioloogiast teistesse valdkondadesse. Kolmas osa “Peirce’i evolutsionism: pidevuse ja ikoonilise abduktsiooni roll” kĂ€sitleb lĂ€hemalt evolutsiooni ning sĂŒvendab Peirce’i lamarkismi interpretatsiooni, rĂ”hutades tema fĂŒsioloogilist tuletusteooria tĂ”lgendust. Lisaks sellele nĂ€idatakse, et taju ning sarnasus on kesksed sÀÀrase raamistiku toimimiseks. Neljas osa (“Abduktsioon ja eksaptatsioon”) kasutab mitmeid mĂ”isteid—asendatatvus, viga, kategooriate taju—,et teostada modelleerimist: eksaptatiivsed nĂ€htused vĂ”ivad jĂ€rgida tajuliselt tingitud kĂ€itumismuutusi, pĂ”hinedes sarnasustel maailma ĂŒksuste vahel, mida tĂ”lgendatakse ikooniliselt. Viies osa (“Tehnoloogilise arengu ikooniline ja eksaptatiivne loogika”) rakendab eeltoodut tehnoloogilise arengu valdkonnale ja tĂ”estab, et kooptsioon on peamine mehhanism, millel baseeruvad nii abduktsioon kui eksaptatsioon. Kuues osa (“Vereimemise pĂ€ritolu: evolutsioonilise abduktsiooni juhtum?”) on juhtumianalĂŒĂŒs ning siin pakutakse vĂ€lja hĂŒpotees, et hematofaagia vĂ”is tegelikult vĂ€lja kujuneda abduktsiooni ja eksaptatsiooni integratsiooni lĂ€bi. Seitsmes (“LĂ”pumĂ€rkused juhtumianalĂŒĂŒsi kohta”) ja kaheksas (“Üldised jĂ€reldused”) osa selgitavad vastavalt spetsiifilisemaid ning ĂŒldisemaid doktoritöö tulemusi.The present dissertation attempts a modeling of the evolutionary phenomenon of exaptation according to C. S. Peirce’s theory of signs and inference. To accomplish this, the first section (“Before exaptation: preadaptation and Chauncey Wright”) focuses on the meaning of the concept and reveals its vast historical background. Special attention is paid to C. Wright’s principle of new uses of old powers and his intellectual relationship with Darwin. The second section (“Wright and Peirce on pragmatism and evolution”) investigates then similarities and differences between Wright and Peirce, especially insofar the epistemological status of Darwin’s theory, their different approach to Lamarck’s account and the issue of evolutionism as a generalization from biology to other fields are concerned. The third section (“Peirce’s evolutionism: the role of continuity and iconic abduction”) further elaborates on evolution and deepens Peirce’s interpretation of Lamarckism by emphasizing his physiological translation of the theory of inference; besides, the role played by perception and similarity is considered central to the working of such framework. The fourth section (“Abduction and exaptation”) exploits several concepts — substitutability, mistake, categorical perception — to set up properly the modeling: exaptive phenomena can follow sensory-driven changes of behavior, based on similarities among world entities that are interpreted iconically. The fifth section (“The iconic and exaptive logic of technological development”) applies what previously achieved to the issue of technological development and corroborates the idea of cooption as the basic mechanism underlying both abduction and exaptation. The sixth section (“The origin of bloodsucking: a case of evolutionary abduction?”) is a case study and puts forward the hypothesis that hematophagy might actually have originated through a process integrating abduction and exaptation. The seventh (“Concluding remarks on the case study”) and eight sections (“General conclusions”) explain accordingly specific and general findings of the thesis

    The development of metaphoric competence in French and Japanese learners of English

    Get PDF
    The study of metaphor has enjoyed a great deal of interest in recent years. Far from being considered a mere rhetorical or poetic device, metaphor has now been shown to play a fundamental role in human language and cognition. However, despite its prominence and utility in discourse, learners of English have been shown to struggle with both the production and comprehension of metaphor. The concept of ‘metaphoric competence’ should thus be considered an important aspect of language teaching and learning, but its definition and measurement remain problematic. This thesis uses an investigation of metaphor use in the written examinations of French and Japanese learners of English to address four main areas. The first investigates the development of metaphor use across different levels of written language. The second seeks to exemplify the way in which metaphor use is related to other aspects of language in this context, particularly lexis and phraseology, while the third explores the functions learners use metaphor to perform. The fourth area draws together these insights to explore what ‘metaphoric competence’ might mean in the context of learners’ exam-based written language, and how it might be measured
    corecore