28,390 research outputs found
A Longitudinal Study of Identifying and Paying Down Architectural Debt
Architectural debt is a form of technical debt that derives from the gap
between the architectural design of the system as it "should be" compared to
"as it is". We measured architecture debt in two ways: 1) in terms of
system-wide coupling measures, and 2) in terms of the number and severity of
architectural flaws. In recent work it was shown that the amount of
architectural debt has a huge impact on software maintainability and evolution.
Consequently, detecting and reducing the debt is expected to make software more
amenable to change. This paper reports on a longitudinal study of a healthcare
communications product created by Brightsquid Secure Communications Corp. This
start-up company is facing the typical trade-off problem of desiring
responsiveness to change requests, but wanting to avoid the ever-increasing
effort that the accumulation of quick-and-dirty changes eventually incurs. In
the first stage of the study, we analyzed the status of the "before" system,
which indicated the impacts of change requests. This initial study motivated a
more in-depth analysis of architectural debt. The results of this analysis were
used to motivate a comprehensive refactoring of the software system. The third
phase of the study was a follow-on architectural debt analysis which quantified
the improvements made. Using this quantitative evidence, augmented by
qualitative evidence gathered from in-depth interviews with Brightsquid's
architects, we present lessons learned about the costs and benefits of paying
down architecture debt in practice.Comment: Submitted to ICSE-SEIP 201
What to Fix? Distinguishing between design and non-design rules in automated tools
Technical debt---design shortcuts taken to optimize for delivery speed---is a
critical part of long-term software costs. Consequently, automatically
detecting technical debt is a high priority for software practitioners.
Software quality tool vendors have responded to this need by positioning their
tools to detect and manage technical debt. While these tools bundle a number of
rules, it is hard for users to understand which rules identify design issues,
as opposed to syntactic quality. This is important, since previous studies have
revealed the most significant technical debt is related to design issues. Other
research has focused on comparing these tools on open source projects, but
these comparisons have not looked at whether the rules were relevant to design.
We conducted an empirical study using a structured categorization approach, and
manually classify 466 software quality rules from three industry tools---CAST,
SonarQube, and NDepend. We found that most of these rules were easily labeled
as either not design (55%) or design (19%). The remainder (26%) resulted in
disagreements among the labelers. Our results are a first step in formalizing a
definition of a design rule, in order to support automatic detection.Comment: Long version of accepted short paper at International Conference on
Software Architecture 2017 (Gothenburg, SE
The valuation tool user guide: monetizing Cradle to Cradle®
This User Guide outlines the object, scope and expected deliverables from the Valuation Tool component of the Cradle to Cradle ® C2C BIZZ project. It describes the compendium of subtools that have been developed comprising: i) overview of funding tools; ii) C2C investment appraisal tool; and iii) C2C value indexing tool. The underpinning methodologies, as well as their inherent strengths and limitations are also described. The C2C BIZZ project as a whole aims specifically to promote and enhance the implementation of C2C methods in business site development within North Western Europe (NWE) (PAD, p.14). It is intended to infuse C2C notions into conventional site development, restructuring and management. The primary focus of the project is on planning, building and managing of business sites with C2C credentials (PAD, p.18) using sites in Lille Metropole (La Lainiere), London (London Sustainable Industries Park) and Luxemburg (Ecoparc Windhof) as experimental fields. C2C BIZZ is not concerned with the internal operations and activities of occupiers or users of the developed site. Accordingly, the scope of the valuation tool is confined to the planning, building and management of C2C sites. The deliverable from this component is a compendium of subtools (see Figure 1 below) that may be used to analyse the financial performance of C2C credentials in business sites to aid the making of a business case for such developments and evaluating the financial incentives for particular C2C site development projects. This entire work is premised on the argument that the wider adoption of C2C principles within the built environment depends on the rate of uptake by the private sector. The private sector, being profit driven, are likely to engage in C2C site development if they are convinced of its capacity to contribute to their business goals which ultimately is a return on their investment. The tool development described in this document attempts to provide a framework for collating an evidence base that can assist in articulating the business case for C2C in business site developments
A comparative review of policy for the protection of the architectural heritage of Europe
This paper investigates the use of aesthetic value as a criterion by which the significance of heritage places is assessed. It is argued that current heritage management practice has not engaged with the extensive discourse relating to aesthetics, and therefore confines aesthetics to a particular class and culture, and an inert view of only one of our sensory experiences. Historical records relating to the Great Barrier Reef are used to show how aesthetic appreciation of the area has changed over time.The data suggest that the failure to recognise an aesthetic that is primarily non-visual can lead to changes in landscape and loss of associated value. It also suggests that aesthetic values change rapidly and are influenced by social and technological factors
Sustainability Debt: A Metaphor to Support Sustainability Design Decisions
Sustainability, the capacity to endure, is fundamental for the societies on our planet. Despite its increasing recognition in software engineering, it remains difficult to assess the delayed systemic effects of decisions taken in requirements engineering and systems design. To support this difficult task, this paper introduces the concept of sustainability debt. The metaphor helps in the discovery, documentation, and communication of sustainability issues in requirements engineering. We build on the existing metaphor of technical debt and extend it to four other dimensions of sustainability to help think about sustainability-aware software systems engineering. We highlight the meaning of debt in each dimension and the relationships between those dimensions. Finally, we discuss the use of the metaphor and explore how it can help us to design sustainability-aware software intensive systems
Making Software Architecture a Continuous Practice
DevOps is an ever growing trend in software development and it conveys a mindset that all things should be continuous. Interestingly, one of the common challenges with DevOps adoption is related to software architecture and this is in large due to the fact that architecture is not part of DevOps.
This thesis looks at making software architecture a continuous practice and thus bring it into the DevOps space. A prototype solution, Architector, was implemented to solve this and the results indicate that it shows a viable approach to making software architecture a continuous practice. However, further work is necessary to expand the scope of continuous architecture and to fully validate this claim by applying Architector to a real world software development workflow
Narrative environments: how do they matter?
The significance and possible senses of the phrase 'narrative environment' are explored. It is argued that 'narrative environment' is not only polysemous but also paradoxical; not only representational but also performative; and not just performatively repetitive but also reflexive and constitutive. As such, it is useful for understanding the world of the early 21st century. Thus, while the phrase narrative environment can be used to denote highly capitalised, highly regulated corporate forms, i.e. "brandscapes", it can also be understood as a metaphor for the emerging reflexive knowledge-work-places in the ouroboric, paradoxical economies of the 21st century. Narrative environments are the media and the materialities through which we come to comprehend that world and to act in those economies. Narrative environments are therefore, sophistically, performative-representative both of the corporate dominance of life worlds and of the undoing of that dominance, through the iterative responses to the paradoxical injunction: "learn to live"
Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
Background. Architectural Technical Debt (ATD) in a software-intensive system denotes architectural design choices which, while being suitable or even optimal when adopted, lower the maintainability and evolvability of the system in the long term, hindering future development activities. Despite the growing research interest in ATD, how to gain an informative and encompassing viewpoint of the ATD present in a software-intensive system is still an open problem. Objective. In this study, we evaluate ATDx, a data-driven approach providing an overview of the ATD present in a software-intensive system. The approach, based on the analysis of a software portfolio, calculates severity levels of architectural rule violations via a clustering algorithm, and aggregates results into different ATD dimensions. Method. To evaluate ATDx, we implement an instance of the approach based on SonarQube, and run the analysis on the Apache and ONAP ecosystems. The analysis results are then shared with the portfolio contributors, who are invited to participate in an online survey designed to evaluate the representativeness and actionability of the approach. Results. The survey results confirm the representativeness of the ATDx, in terms of both the ATDx analysis results and the used architectural technical debt dimensions. Results also showed the actionability of the approach, although to a lower extent when compared to the ATDx representativeness, with usage scenarios including refactoring, code review, communication, and ATD evolution analysis. Conclusions. With ATDx, we strive for the establishment of a sound, comprehensive, and intuitive architectural view of the ATD identifiable via source code analysis. The collected results are promising, and display both the representativeness and actionability of the approach. As future work, we plan to consolidate the approach via further empirical experimentation, by considering other development contexts (e.g., proprietary portfolios and other source code analysis tools), and enhancing the ATDx report capabilities
¿Qué hay de malo con los mercados financieros internacionales?
(Disponible en idioma inglĂ©s Ăşnicamente) Las Ăşltimas crisis financieras y contagios recientes hacen cuestionar lo acertado de la apertura de la cuenta de capital. Existe el consenso de que hay algo pĂ©simamente malo con la manera en que funcionan los mercados financieros en el caso de los paĂses en desarrollo y que urge hallar una soluciĂłn. Pero, ÂżquĂ© es lo que no funciona? La mayorĂa de los puntos de vista en los paĂses desarrollados identifican los problemas con un exceso de flujos de capitales atraĂdos por el riesgo moral. Sin embargo, nuestro análisis muestra que el papel de esta distorsiĂłn se está exagerando demasiado y que, por contraste, las principales distorsiones en los marcados financieros internacionales se vinculan con flujos de capitales muy exiguos, restringidos por el riesgo soberano y excesivamente inestables debido a las fallas del mercado.
- …