18 research outputs found

    Desarrollo de la competencia “Pensamiento Analítico” mediante tácticas de arquitecturas software

    Get PDF
    La competencia “Pensamiento Analítico” se define como el comportamiento mental que permite distinguir y separar las partes de un todo hasta llegar a conocer sus principios o elementos. La inferencia de una arquitectura software a partir de la documentación (normalmente escasa) de un sistema real y de su código fuente es una actividad intelectual compleja que requiere un entrenamiento avanzado de esta competencia en el alumno (niveles superiores en la escala propuesta por los profesores Villa y Poblete de la Universidad de Deusto). Este artículo analiza el empleo de un catálogo de tácticas arquitectónicas como guía para los alumnos en dicha tarea y señala las ventajas e inconvenientes de esta aproximación. El uso de catálogos de tácticas puede generalizarse al contexto de otras asignaturas.Peer Reviewe

    Folding by Similarity

    Get PDF
    A formal specification can describe software models which are di±cult to program. Transformational methods based on fold/unfold strategies have been proposed to palliate this problem. The objective of applying transfor- mations is to filter out a new version of the specification where recursion may be introduced by a folding step. Among many problems, the "eureka" about when and how to define a new predicate is di±cult to find automatically. We propose a new version of the folding rule which decides automatically how to introduce new predicates in a specification. Our method is based on finding similarities between formulas represented as parsing trees and it constitutes an assistance to the complex problem of deriving recursive specifications from non recursive ones

    Una Experiencia en el diseño y la impartición de una asignatura en torno a la metodología del aprendizaje basado en proyectos

    Get PDF
    En este artículo presentamos nuestra experiencia en la creación e impartición de una asignatura sobre Arquitecturas Software que aplica la metodología del aprendizaje basado en proyectos. La asignatura pertenece a una joven titulación de Máster Oficial creada bajo los principios del Espacio Europeo de Educación Superior (EEES) y actualmente ofrecida por la Universidad de Sevilla como parte de su oferta de estudios de postgrado. Las decisiones tomadas en el diseño de la asignatura en torno a una metodología activa y las conclusiones extraídas de su impartición pueden ser de ayuda a otros profesores durante el proceso de adaptación de las diferentes titulaciones al EEES.Peer Reviewe

    Executing Assertions via Synthesized Logic Programs

    Get PDF
    Programming with assertions constitutes an effective tool to detect and correct programming errors. The ability of executing for- mal specifications is essential in order to test automatically an imple mentation against its assertions. However, formal assertions may de scribe recursive models which are di±cult to identify so current assertion checkers limit, in a considerable way, the expressivity of the assertion language. In this paper, we are interested in showing how transforma- tional synthesis can help to execute \expressive" assertions r of the form 8¹x(r(¹x) , Q¹yR(¹x; ¹y)) where Q is either an existential or universal quan- tifier and R a quantifier free formula in the language of a formal theory C we call assertion context. This sort of theories is interesting because it presents a balance between expressiveness for writing assertions and existence of effective methods for compiling and executing them

    Synthesis of positive logic programs for checking a class of definitions with infinite quantification

    Get PDF
    We describe a method based on unfold/fold transformations that synthesizes positive logicprograms P(r)with the purpose of checking mechanically definitions of the form D(r) =∀X(r(X) ⇔QYR(X, Y))where ris the relation defined by the formula QYR(X, Y), Xis a set of variables to be instantiated at runtime by ground terms, QYis a set of quantifiedvariables on infinite domains (Qis the quantifier) and R(X, Y)a quantifier-free formulain the language of a first-order logic theory. This work constitutes a first step towards theconstruction of a new type of assertion checkers with the ability of handling restrictedforms of infinite quantification

    Towards a Theory on the Role of Ontologies in Software Engineering Problem Solving: Conclusions from a Theoretical Model of Methodological Works

    Get PDF
    We present and validate a theoretical model of methodological works in Software Engineering that, without claiming for completeness, allows us to investigate the role of ontologies in the problem solving process related with the development of software. Our main conclusion is the potential of ontologies as resources for an individual to think during problem solving. We argument that suitable ontologies can support solving strategies as well as motivate their invention. We also conclude the importance of accompany an ontology with knowledge that guides the engineer in reasoning with its concepts. The model regards a methodological work as an heterogeneous theory about a class of problems and about a number of conceptual elements. Some of the elements are ontologies, which play the role of identifying and relating aspects of the knowledge about the class of problems, making up novel perspectives on the problems that may promote solving strategies. For illustration purposes, we take Jackson’s “Problem Frames” as a case study. We analyse this work through the former model, identifying the ontologies, guides, and promoted strategies. Then we propose an alternative ontology, based on that used in the KAOS approach; we reformulate some parts of Jackson’s work through this ontology and propose a strategy as well as some guides.Comisión Interministerial de Ciencia y Tecnología TIC 2003-02737-C02-0

    The intentional relationship of representation between the constructs of a language and reality

    Get PDF
    Specifications of conceptualisations (ontologies) are often employed for represent- ing reality, both in knowledge representation and software engineering. While lan- guages o®er sophisticated constructs and rigorous semantics for building concep- tual entities, no attention is paid to the relationship between such entities and the world they intend to represent. This paper studies such a relationship and provides empirical evidences in favour of two main hypotheses: (1) conceptualisations are insuficient to fully represent the specifics of reality; (2) languages (both represen- tation and design-oriented) are general representations of (classes of) systems in the world, and they can be characterised as scientific theories. The first hypoth- esis establishes a problem for which we propose a solution based on the explicit elaboration of statements claiming the similarity (in some respects and to certain degrees of accuracy) between conceptual entities and real-world systems of interest. The second hypothesis constitutes a new perspective for understanding languages, whose advantages to representation and design are discussed in detail.Ministerio de Educación y Ciencia HUM2007-66607-C04-0

    Some Problems of Current Modelling Languages that Obstruct to Obtain Models as Instruments

    Get PDF
    In this paper we reflect on the usefulness of current modelling languages. We defend that objects elaborated with such languages are instruments that pursue one or several typi ed purposes, which include: (1) to represent knowledge about some subject, whether real or imaginary; (2) to help in understanding and in answering questions about the properties of some subject; and (3) to stimulate the engineer's creativity in solving some problem. We reason that achieving this instrumental role in modelling languages is a necessary condition for a Model-Driven Software Engineering. However, studying several languages of common use in practice, we claim that there are at least four problem categories that obstruct that useful models as instruments can be elaborated with current modelling languages

    Defeasible Argumentation of Software Architectures

    Get PDF
    Defeasible argumentation is typical of legal and scientific reasoning. A defeasible argument is one in which the conclusion can be accepted tentatively in relation with the evidence known so far, but may need to be retracted as new evidence comes in. This paper analyses the role of defeasible argumentation in the explanation and evaluation of architectural decisions. We analyse technical explanations offered by engineers at Twitter and eBay about several architectural decisions adopted in those systems. We generalize these examples in four argumentation schemes. We also study the typical case of reasoning with a formal model of an architecture, and we infer a fifth argumentation scheme. Finally, we apply Hastings’ method of attaching a set of critical questions to each scheme. We show that the existence of critical questions reveals that the inferred schemes are defeasible: in argumentation theory, if a respondent asks one of the critical questions matching a scheme and the proponent of an argument fails to offer an adequate answer, the argument defaults and the conclusion is retracted. This dialogical structure is the basis of typical architectural evaluations. We conclude that the provided evidence supports the hypothesis that defeasible argumentation is employed in architectural evaluation. In this context, a rich catalogue of argumentation schemes is a useful tool for the architect to organize his or her reasoning; critical questions assist the architect in identifying the weak points of his or her explanations, and provide the evaluation team with a checklist of issues to be raised.Universidad de Sevilla VPPI-U

    Una experiencia en el diseño y la impartición de una asignatura en torno a la metodología del aprendizaje basado en proyectos

    Get PDF
    En este artículo presentamos nuestra experiencia en la creación e impartición de una asignatura sobre Arquitecturas Software que aplica la metodología del aprendizaje basado en proyectos. La asignatura pertenece a una joven titulación de Máster Oficial creada bajo los principios del Espacio Europeo de Educación Superior (EEES) y actualmente ofrecida por la Universidad de Sevilla como parte de su oferta de estudios de postgrado. Las decisiones tomadas en el diseño de la asignatura en torno a una metodología activa y las conclusiones extraídas de su impartición pueden ser de ayuda a otros profesores durante el proceso de adaptación de las diferentes titulaciones al EEES
    corecore