361 research outputs found

    Software Design Change Artifacts Generation through Software Architectural Change Detection and Categorisation

    Get PDF
    Software is solely designed, implemented, tested, and inspected by expert people, unlike other engineering projects where they are mostly implemented by workers (non-experts) after designing by engineers. Researchers and practitioners have linked software bugs, security holes, problematic integration of changes, complex-to-understand codebase, unwarranted mental pressure, and so on in software development and maintenance to inconsistent and complex design and a lack of ways to easily understand what is going on and what to plan in a software system. The unavailability of proper information and insights needed by the development teams to make good decisions makes these challenges worse. Therefore, software design documents and other insightful information extraction are essential to reduce the above mentioned anomalies. Moreover, architectural design artifacts extraction is required to create the developer’s profile to be available to the market for many crucial scenarios. To that end, architectural change detection, categorization, and change description generation are crucial because they are the primary artifacts to trace other software artifacts. However, it is not feasible for humans to analyze all the changes for a single release for detecting change and impact because it is time-consuming, laborious, costly, and inconsistent. In this thesis, we conduct six studies considering the mentioned challenges to automate the architectural change information extraction and document generation that could potentially assist the development and maintenance teams. In particular, (1) we detect architectural changes using lightweight techniques leveraging textual and codebase properties, (2) categorize them considering intelligent perspectives, and (3) generate design change documents by exploiting precise contexts of components’ relations and change purposes which were previously unexplored. Our experiment using 4000+ architectural change samples and 200+ design change documents suggests that our proposed approaches are promising in accuracy and scalability to deploy frequently. Our proposed change detection approach can detect up to 100% of the architectural change instances (and is very scalable). On the other hand, our proposed change classifier’s F1 score is 70%, which is promising given the challenges. Finally, our proposed system can produce descriptive design change artifacts with 75% significance. Since most of our studies are foundational, our approaches and prepared datasets can be used as baselines for advancing research in design change information extraction and documentation

    A PhD research project on safety risk assessment of complex changes to railway infrastructure and vehicles

    Get PDF
    This study investigates the risk assessment of railway changes in an interconnected environment. Systems are a collection of subsystems and parts, and this thesis develops a new method, the Combined Assessment Method (CAM), to analyse them. CAM potentially applies to many industries, including aviation, defence and nuclear, where there is a requirement to assess system safety objectively. The railway is a specific case of a closely coupled socio-technical system of critical physical interfaces between systems and a stringent example of systems in other industries. The Author has carried out: an assessment of current techniques, a review of relevant literature, a survey of risk assessment practitioners, an appraisal of current methods, and a review of accident data to identify current accident characteristics. CAM incorporates established assessment techniques to perform subsystem analysis. Subsystem results are combined using systems engineering methods in a novel way producing an overall risk assessment for a system, which incorporates emergent behaviours. The assurance of CAM is through a case study and two test cases. It uses safety performance, ease of use, and economic saving criteria to judge success. Illustrative studies include a metro system, indicating that CAM is potentially a process and is application-independent. Furthermore, test cases illustrate that CAM combines the risks from multiple parts of a whole system into overall risks. Finally, test cases measure the verification through a match between the findings of official incident reports and the CAM output. This thesis is the first step to creating CAM as a fully-fledged system safety risk analysis method. Further work is proposed to take CAM forward and address identified weaknesses. Finally, suggestions have been made for further work to “productionize” CAM to increase the likelihood that practitioners in the field will use CAM

    Responsible AI Pattern Catalogue: A Collection of Best Practices for AI Governance and Engineering

    Full text link
    Responsible AI is widely considered as one of the greatest scientific challenges of our time and is key to increase the adoption of AI. Recently, a number of AI ethics principles frameworks have been published. However, without further guidance on best practices, practitioners are left with nothing much beyond truisms. Also, significant efforts have been placed at algorithm-level rather than system-level, mainly focusing on a subset of mathematics-amenable ethical principles, such as fairness. Nevertheless, ethical issues can arise at any step of the development lifecycle, cutting across many AI and non-AI components of systems beyond AI algorithms and models. To operationalize responsible AI from a system perspective, in this paper, we present a Responsible AI Pattern Catalogue based on the results of a Multivocal Literature Review (MLR). Rather than staying at the principle or algorithm level, we focus on patterns that AI system stakeholders can undertake in practice to ensure that the developed AI systems are responsible throughout the entire governance and engineering lifecycle. The Responsible AI Pattern Catalogue classifies the patterns into three groups: multi-level governance patterns, trustworthy process patterns, and responsible-AI-by-design product patterns. These patterns provide systematic and actionable guidance for stakeholders to implement responsible AI

    Understanding, Analysis, and Handling of Software Architecture Erosion

    Get PDF
    Architecture erosion occurs when a software system's implemented architecture diverges from the intended architecture over time. Studies show erosion impacts development, maintenance, and evolution since it accumulates imperceptibly. Identifying early symptoms like architectural smells enables managing erosion through refactoring. However, research lacks comprehensive understanding of erosion, unclear which symptoms are most common, and lacks detection methods. This thesis establishes an erosion landscape, investigates symptoms, and proposes identification approaches. A mapping study covers erosion definitions, symptoms, causes, and consequences. Key findings: 1) "Architecture erosion" is the most used term, with four perspectives on definitions and respective symptom types. 2) Technical and non-technical reasons contribute to erosion, negatively impacting quality attributes. Practitioners can advocate addressing erosion to prevent failures. 3) Detection and correction approaches are categorized, with consistency and evolution-based approaches commonly mentioned.An empirical study explores practitioner perspectives through communities, surveys, and interviews. Findings reveal associated practices like code review and tools identify symptoms, while collected measures address erosion during implementation. Studying code review comments analyzes erosion in practice. One study reveals architectural violations, duplicate functionality, and cyclic dependencies are most frequent. Symptoms decreased over time, indicating increased stability. Most were addressed after review. A second study explores violation symptoms in four projects, identifying 10 categories. Refactoring and removing code address most violations, while some are disregarded.Machine learning classifiers using pre-trained word embeddings identify violation symptoms from code reviews. Key findings: 1) SVM with word2vec achieved highest performance. 2) fastText embeddings worked well. 3) 200-dimensional embeddings outperformed 100/300-dimensional. 4) Ensemble classifier improved performance. 5) Practitioners found results valuable, confirming potential.An automated recommendation system identifies qualified reviewers for violations using similarity detection on file paths and comments. Experiments show common methods perform well, outperforming a baseline approach. Sampling techniques impact recommendation performance

    Risk Analysis for Smart Cities Urban Planners: Safety and Security in Public Spaces

    Get PDF
    Christopher Alexander in his famous writings "The Timeless Way of Building" and "A pattern language" defined a formal language for the description of a city. Alexander developed a generative grammar able to formally describe complex and articulated concepts of architecture and urban planning to define a common language that would facilitate both the participation of ordinary citizens and the collaboration between professionals in architectural and urban planning. In this research, a similar approach has been applied to let two domains communicate although they are very far in terms of lexicon, methodologies and objectives. These domains are urban planning, urban design and architecture, seen as the first domain both in terms of time and in terms of completeness of vision, and the one relating to the world of engineering, made by innumerable disciplines. In practice, there is a domain that defines the requirements and the overall vision (the first) and a domain (the second) which implements them with real infrastructures and systems. To put these two worlds seamlessly into communication, allowing the concepts of the first world to be translated into those of the second, Christopher Alexander’s idea has been followed by defining a common language. By applying Essence, the software engineering formal descriptive theory, using its customization rules, to the concept of a Smart City, a common language to completely trace the requirements at all levels has been defined. Since the focus was on risk analysis for safety and security in public spaces, existing risk models have been considered, evidencing a further gap also within the engineering world itself. Depending on the area being considered, risk management models have different and siloed approaches which ignore the interactions of one type of risk with the others. To allow effective communication between the two domains and within the engineering domain, a unified risk analysis framework has been developed. Then a framework (an ontology) capable of describing all the elements of a Smart City has been developed and combined with the common language to trace the requirements. Following the philosophy of the Vienna Circle, a creative process called Aufbau has then been defined to allow the generation of a detailed description of the Smart City, at any level, using the common language and the ontology above defined. Then, the risk analysis methodology has been applied to the city model produced by Aufbau. The research developed tools to apply such results to the entire life cycle of the Smart City. With these tools, it is possible to understand how much a given architectural, urban planning or urban design requirement is operational at a given moment. In this way, the narration can accurately describe how much the initial requirements set by architects, planners and urban designers and, above all, the values required by stakeholders, are satisfied, at any time. The impact of this research on urban planning is the ability to create a single model between the two worlds, leaving everyone free to express creativity and expertise in the appropriate forms but, at the same time, allowing both to fill the communication gap existing today. This new way of planning requires adequate IT tools and takes the form, from the engineering side, of harmonization of techniques already in use and greater clarity of objectives. On the side of architecture, urban planning and urban design, it is instead a powerful decision support tool, both in the planning and operational phases. This decision support tool for Urban Planning, based on the research results, is the starting point for the development of a meta-heuristic process using an evolutionary approach. Consequently, risk management, from Architecture/Urban Planning/Urban Design up to Engineering, in any phase of the Smart City’s life cycle, is seen as an “organism” that evolves.Christopher Alexander nei suoi famosi scritti "The Timeless Way of Building" e "A pattern language" ha definito un linguaggio formale per la descrizione di una città, sviluppando una grammatica in grado di descrivere formalmente concetti complessi e articolati di architettura e urbanistica, definendo un linguaggio comune per facilitare la partecipazione dei comuni cittadini e la collaborazione tra professionisti. In questa ricerca, un approccio simile è stato applicato per far dialogare due domini sebbene siano molto distanti in termini di lessico, metodologie e obiettivi. Essi sono l'urbanistica, l'urban design e l'architettura, visti come primo dominio sia in termini di tempo che di completezza di visione, e quello del mondo dell'ingegneria, con numerose discipline. In pratica, esiste un dominio che definisce i requisiti e la visione d'insieme (il primo) e un dominio (il secondo) che li implementa con infrastrutture e sistemi reali. Per metterli in perfetta comunicazione, permettendo di tradurre i concetti del primo in quelli del secondo, si è seguita l'idea di Alexander definendo un linguaggio. Applicando Essence, la teoria descrittiva formale dell'ingegneria del software al concetto di Smart City, è stato definito un linguaggio comune per tracciarne i requisiti a tutti i livelli. Essendo il focus l'analisi dei rischi per la sicurezza negli spazi pubblici, sono stati considerati i modelli di rischio esistenti, evidenziando un'ulteriore lacuna anche all'interno del mondo dell'ingegneria stessa. A seconda dell'area considerata, i modelli di gestione del rischio hanno approcci diversi e isolati che ignorano le interazioni di un tipo di rischio con gli altri. Per consentire una comunicazione efficace tra i due domini e all'interno del dominio dell'ingegneria, è stato sviluppato un quadro di analisi del rischio unificato. Quindi è stato sviluppato un framework (un'ontologia) in grado di descrivere tutti gli elementi di una Smart City e combinato con il linguaggio comune per tracciarne i requisiti. Seguendo la filosofia del Circolo di Vienna, è stato poi definito un processo creativo chiamato Aufbau per consentire la generazione di una descrizione dettagliata della Smart City, a qualsiasi livello, utilizzando il linguaggio comune e l'ontologia sopra definita. Infine, la metodologia dell'analisi del rischio è stata applicata al modello di città prodotto da Aufbau. La ricerca ha sviluppato strumenti per applicare tali risultati all'intero ciclo di vita della Smart City. Con questi strumenti è possibile capire quanto una data esigenza architettonica, urbanistica o urbanistica sia operativa in un dato momento. In questo modo, la narrazione può descrivere con precisione quanto i requisiti iniziali posti da architetti, pianificatori e urbanisti e, soprattutto, i valori richiesti dagli stakeholder, siano soddisfatti, in ogni momento. L'impatto di questa ricerca sull'urbanistica è la capacità di creare un modello unico tra i due mondi, lasciando ognuno libero di esprimere creatività e competenza nelle forme appropriate ma, allo stesso tempo, permettendo ad entrambi di colmare il gap comunicativo oggi esistente. Questo nuovo modo di progettare richiede strumenti informatici adeguati e si concretizza, dal lato ingegneristico, in un'armonizzazione delle tecniche già in uso e in una maggiore chiarezza degli obiettivi. Sul versante dell'architettura, dell'urbanistica e del disegno urbano, è invece un potente strumento di supporto alle decisioni, sia in fase progettuale che operativa. Questo strumento di supporto alle decisioni per la pianificazione urbana, basato sui risultati della ricerca, è il punto di partenza per lo sviluppo di un processo meta-euristico utilizzando un approccio evolutivo

    Changing Priorities. 3rd VIBRArch

    Full text link
    In order to warrant a good present and future for people around the planet and to safe the care of the planet itself, research in architecture has to release all its potential. Therefore, the aims of the 3rd Valencia International Biennial of Research in Architecture are: - To focus on the most relevant needs of humanity and the planet and what architectural research can do for solving them. - To assess the evolution of architectural research in traditionally matters of interest and the current state of these popular and widespread topics. - To deepen in the current state and findings of architectural research on subjects akin to post-capitalism and frequently related to equal opportunities and the universal right to personal development and happiness. - To showcase all kinds of research related to the new and holistic concept of sustainability and to climate emergency. - To place in the spotlight those ongoing works or available proposals developed by architectural researchers in order to combat the effects of the COVID-19 pandemic. - To underline the capacity of architectural research to develop resiliency and abilities to adapt itself to changing priorities. - To highlight architecture's multidisciplinarity as a melting pot of multiple approaches, points of view and expertise. - To open new perspectives for architectural research by promoting the development of multidisciplinary and inter-university networks and research groups. For all that, the 3rd Valencia International Biennial of Research in Architecture is open not only to architects, but also for any academic, practitioner, professional or student with a determination to develop research in architecture or neighboring fields.Cabrera Fausto, I. (2023). Changing Priorities. 3rd VIBRArch. Editorial Universitat Politècnica de València. https://doi.org/10.4995/VIBRArch2022.2022.1686

    Aide-mémoire: Improving a Project’s Collective Memory via Pull Request–Issue Links

    Get PDF
    Links between pull request and the issues they address document and accelerate the development of a software project but are often omitted. We present a new tool, Aide-mémoire, to suggest such links when a developer submits a pull request or closes an issue, smoothly integrating into existing workflows. In contrast to previous state-of-the-art approaches that repair related commit histories, Aide-mémoire is designed for continuous, real-time, and long-term use, employing Mondrian forest to adapt over a project’s lifetime and continuously improve traceability. Aide-mémoire is tailored for two specific instances of the general traceability problem—namely, commit to issue and pull request to issue links, with a focus on the latter—and exploits data inherent to these two problems to outperform tools for general purpose link recovery. Our approach is online, language-agnostic, and scalable. We evaluate over a corpus of 213 projects and six programming languages, achieving a mean average precision of 0.95. Adopting Aide-mémoire is both efficient and effective: A programmer need only evaluate a single suggested link 94% of the time, and 16% of all discovered links were originally missed by developers

    Modern trends in digital transformation of marketing & management

    Get PDF
    The monograph examines the current trends in the development of digital technologies in marketing, management and business administration. The prospects for the development of digital technologies in various sectors of the economy of Ukraine and the trends of the influence of digital technologies on global shifts in the systems of marketing management and business administration are determined. The transformations of business models in the conditions of the digital economy are analyzed, the impact of blockchain technologies on the development of promising areas of the marketing management system and business administration is analyzed. Reasonable impact of digital technologies on the transformation of management systems in social, public, legal and administrative spheres and various sectors of the economy. The contours of the formation of the digital economy in the sectors of economic activity and the social sphere have been developed

    Managing Fish or Governing Fisheries? An Historical Recount of Marine Resources Governance in the Context of Latin America – The Ecuadorian Case

    Get PDF
    The narratives and images about ocean and its resources governance, their use and value have deep roots in human history. Traditionally, the contemporary images of fish and fisheries have been shaped under the cultural construction of power, wealth and exclusion, and also as one of poverty and marginalization. This perception was formed on early notions of natural (marine) resources access and use that were born within the colonial machinery that ruled the world from the Middle Ages until late XVII. This research explores the historical overview of marine resources usage and governance in Latin America, from a ‘critical approach to development’ perspective, by following a narrative description based on a ‘three acts’ format. It illustrates how and to what extent politics, power and knowledge have deeply influenced policies and practices at exploring the marine and terrestrial resources and at managing fish and seafood, historically, and how the fisheries resources’ management practices are influenced by principles of appropriation, regulation and usage, put in place already in the XV century that were imposed at the conquering and colonization of the Americas, disregarded previous governance practices. This article argues that fisheries governance cannot be improved without some appreciation for the social, historical, geopolitical, and cultural significance of the fishing resources themselves, of the perceptions of them by humans, and of the interactions Global North-Global South. The analysis also opens the dialogue about what kind of ocean and governance “science” we want, to support decisions, policies and practices regarding fisheries governance. Final thoughts highlight a reflection about whose knowledge is created and used to support decision and policy making in Ecuador
    corecore