921,021 research outputs found

    Software Architecture Risk Containers

    Get PDF
    Our motivation is to determine whether risks such as im- plementation error-proneness can be isolated into three types of con- tainers at design time. This paper identifies several container candidates in other research that fit the risk container concept. Two industrial case studies were used to determine which of three container types tested is most effective at isolating and predicting at design time the risk of im- plementation error-proneness. We found that Design Rule Containers were more effective than Use Case and Resource Containers

    Software, architecture, and participatory design

    Get PDF
    Much work in software architecture has been inspired by work in physical architecture, in particular Alexander's work on `design patterns'. By contrast, Alexander's work is little-used in town planning and architecture. In this paper, we examine some of the reasons that this is so, describe some parallels and differences between the fields of physical and software architecture, and identify areas in which future collaboration may be fruitful. The notion of `participatory design' is important in software engineering and in urban regeneration, but the participatory mechanisms in each field are quite different

    Pattern-based software architecture for service-oriented software systems

    Get PDF
    Service-oriented architecture is a recent conceptual framework for service-oriented software platforms. Architectures are of great importance for the evolution of software systems. We present a modelling and transformation technique for service-centric distributed software systems. Architectural configurations, expressed through hierarchical architectural patterns, form the core of a specification and transformation technique. Patterns on different levels of abstraction form transformation invariants that structure and constrain the transformation process. We explore the role that patterns can play in architecture transformations in terms of functional properties, but also non-functional quality aspects

    Software-Architecture Recovery from Machine Code

    Get PDF
    In this paper, we present a tool, called Lego, which recovers object-oriented software architecture from stripped binaries. Lego takes a stripped binary as input, and uses information obtained from dynamic analysis to (i) group the functions in the binary into classes, and (ii) identify inheritance and composition relationships between the inferred classes. The information obtained by Lego can be used for reengineering legacy software, and for understanding the architecture of software systems that lack documentation and source code. Our experiments show that the class hierarchies recovered by Lego have a high degree of agreement---measured in terms of precision and recall---with the hierarchy defined in the source code
    corecore