7 research outputs found

    Software Evolution for Industrial Automation Systems. Literature Overview

    Get PDF

    Techniques and Practices for Software Architecture Work in Agile Software Development

    Get PDF
    Since the publishing of Agile Manifesto in 2001, the agile software development has taken the world by storm. Agile software development does not emphasize the importance of software architecture, even though software architecture is often seen as a key factor for achieving the quality goals set for the software system. It has been even said that agile software development and software architecture are a clash of two cultures.In many software projects there is no need to consider software architecture anymore. For example, when designing a mobile application, the ecosystem forces the developer to use certain architecture style provided by the platform. In web development ready-made frameworks and project templates are available offering complete software architecture designs for the application developer.There are still domains and systems where careful architecture design is needed. When developing complex systems or systems with a long lifecycle, diligent software architecture design is a key to avoid massive rework during the development. It cannot be a coincidence that companies developing these kinds of systems struggle with agile software development the most.On the one hand, the goal of this thesis was to study software architecture practices used in agile software development in the industry. On the other hand, the goal was to develop new methods and techniques to support incremental software architecture working practices which can be aligned with agile methods such as Scrum. The study applied case study, interviews and design science as the main research methods.The results show that there are four main ways to carry out software architecture work while using agile methods. Basing on this result, models for aligning software architec-ture knowledge management were developed. These models can be used as guidelines for selecting the appropriate software architecture practices in an organization.As a part of the research work, an architecture knowledge repository was developed for sharing the knowledge in agile projects and for automatic software architecture document generation. Additionally, the results of this study show that by taking a decision-centric approach to software architecture evaluation, the evaluation method can be lightweight enough to make incremental evaluation a viable option. Similarly, existing software architecture evaluation methods can be boosted to fit agile software development by utilizing domain knowledge

    A Quality Framework for Software Development (QFSD)

    Get PDF
    INTRODUCTION. This research delivers a new complete and prescriptive software development framework, known as the Quality Framework for Software Development (QFSD) for immediate use by software development practitioners. Whilst there are a number of existing methodologies available, and many software development standards they fail to address the complete development lifecycle. A review of current literature supports this assertion. AIMS AND OBJECTIVES. The overall aim of the research is to create a new software development framework, applying it to a substantial number of real-world software projects in two different industrial software development environments and thereby demonstrating its effectiveness. METHODS. Based on a review of the available research approaches and strategies, the researcher selected 'pragmatism' as the most suitable for this research. This selection was driven by two contributory factors. The first was that in order to conduct the research the researcher would have active participation in the majority of the research activities. The second was that the deliverables from the research should be immediately useable for the benefit of software practitioners and hence not be regarded as a theoretical framework. The approach was further refined by adopting Action Research and Case Study strategies. The research was divided in to stages each of which was executed within separate companies. The companies were very different in terms of their business areas, culture and views on quality and specifically quality of software deliverables. RESULTS. The research findings provided a strong indication that a holistic software development framework does provide an improvement in software project deliverables quality and repeatability in terms of schedules and quality. In the case of Fisher–Rosemount it enabled them to attain ISO 9000/Ticket accreditation. In addition, by providing all processes and tools in a single web based environment the adoption by software developers, project managers and senior management was very high

    Reconciling agility and architecture: a theory of agile architecture

    No full text
    The purpose of agile software development is to enable the software development team to respond to change and learn from change so that it can better deliver value to its customer. If an agile software development team spends too much time planning and designing architecture up-front then the delivery of value to the customer is delayed or otherwise compromised, and responding to change can become extremely difficult. Not doing enough architecture design increases exposure to risk and increases the chance of failure. The balance between architecture and agility is not well understood by agile practitioners or researchers. This thesis is based on grounded theory research involving 44 participants from 36 organisations, all working in agile software development and who are either experienced in architecture design or are closely involved with architecture. The thesis presents a theory that describes how agile software teams design an agile architecture with reduced up-front design and which is able to respond to change, helping teams find a balance between architecture and agility. The theory describes six forces that affect the agility of the architecture and up-front design, and five strategies that teams use in response to those forces to determine how much effort they put into up-front design. Understanding these forces and strategies helps agile teams to determine how much up-front design is appropriate in their contexts

    Long-distance travels routes and mappings

    Get PDF
    Tal como a experiência do amor, a experiência de se tornar e ser viajante dispensa guias e bordões. Vai-se, está-se e volta-se na esperança de que o tempo de espera até à próxima partida nos traga a redenção de que aquilo que nos move mora dentro de nós e coincide com uma realidade que é ao mesmo tempo interior e exterior. Somos largados mundo fora, tantas vezes mundo dentro, com uma força e um arrebatamento tais que, ao desapossarmo-nos da segurança de um viver linear e rotineiro, recebemos o consolo libertador de que estar com outros em lugares próximos ou distantes, tantas vezes em lugar nenhum, porque ele é a nossa construção, descobrimos um prazer que atravessa todos os nossos órgãos até ao arrepio extáctico. A obra Viagens de Longo Curso – Roteiros e Mapeações faz o cruzamento de histórias contadas por pessoas que se conhecem e estimam há muito tempo, e que se foram destinando a muitos lugares. Antes de viajarem pelo discurso e pela imagem estes testemunhos foram iniciação da vida em nós.info:eu-repo/semantics/publishedVersio

    Inside a secret software lab: an ethnographic study of a global software package producer

    Get PDF
    This is an ethnographic study of the creation of a particular type of standard enterprise software package: Enterprise Resource Planning (ERP) systems, which support wide-ranging organisational functions within large and medium sized enterprises. Drawing upon the Social Shaping of Technology perspective and recent related attempts to theorise the Biography of Artefacts, this thesis addresses the under-researched area of ERP system development and ERP system support. In providing a system vendor’s viewpoint, it seeks to overcome current shortcomings in social research, notably from Information Systems and Organisational Studies, which focus almost exclusively on a user organisation perspective. Mostly concentrating on the moment of implementation, existing studies do not help us to better understand the software producer’s viewpoint or to find explanations as to how ERP systems are produced and supported in such a way that they can meet the specific requirements of their highly diverse users (the current market leader SAP had over 12 million users (2008)). Overall, we have very limited understanding of what happens within software package laboratories and how such organisations organise their relationship with their wide and diverse user base throughout the different phases of the product life cycle. Addressing this gap in the social study of software packages, this research offers an ethnographical insider’s perspective of the day-to-day working practices within one of the world’s leading ERP system providers, encompassing both its development and support functions. Based on rich ethnographic data, the study demonstrates first, how a supplier manages its relationship with its diverse user base during the moment when the system re-enters the vendor’s circle of responsibility through the software packages support channel. The sophisticated and mature mechanisms and policies are highlighted, which allow the vendor - not without challenges – to accommodate competing exigencies of its user base at this moment of product life cycle. Second, this research highlights how the software development phase is organised, by empirically describing and analysing from a social viewpoint, the software development process during a period of organisational change, in which the vendor reorganises itself in search for a new way to respond to the expectations of the market. Third, the account reveals unexpected communitarian behaviour amongst software developers at all levels, demonstrating the social character of programming, a feature which has not been adequately recognised by current studies in this area. Fourth, overall, this study highlights the need for a change of the current research agenda in social software package research towards a vendor organisation’s perspective, if we aim for a more complete understanding of the social aspects such type of technology

    CULTURAL ROOTS OF TECHNOLOGY: AN INTERDISCIPLINARY STUDY OF AUTOMATED SYSTEMS FROM THE ANTIQUITY TO THE RENAISSANCE

    Get PDF
    The aim of this research work is to outline the history of proto-cybernetic systems throughout antiquity, Middle Ages and Renaissance. After identifying what are considered the main characteristics of an automaton, we examine all technical, literary, historical available sources, in order to get the descriptions not only of the actually built or designed automata, but also of the ones that were imagined in literary texts. From the work of historical reconstruction it has also been possible to make a classification of ancient automata, thanks to a UML representation of their operation. This classification of the types of automata and of the actions they could perform (or attributed to them) made it possible to build a matrix of distances of more than 200 automata (and of their features) with the Minkowski algorithm and consequently to get a philomemetic tree (with the software MEGA 4.0), which describes automata evolution over the period
    corecore