68 research outputs found

    Mob Programming – A Promising Innovation in the Agile Toolkit

    Get PDF
    Mob programming is a new agile practice that is attracting the attention of software community. This paper presents an overview of mob programming, its benefits and risks identified by its proponents and early adopters and suggests areas for future academic research that could help establish its efficacy and theoretical rationale. The paper also presents the results of text analysis done on the extant literature on the subject

    All Together Now: A Framework for Research on Mob Programming

    Get PDF
    Mob programming (MP) is a relatively new phenomenon in software development. So far, the academic literature has not published in this domain. The goal of this paper is to develop a framework for researching the MP phenomenon. We first outline current practitioner descriptions of and justifications for MP. We then examine concepts from team theory and practices from agile development to identify the team processes and taskwork involved in MP. Based on these, we present a research framework for the academic study of MP. We conclude by considering how the framework can be used by IS researchers

    Evaluación de aspectos técnicos y humanos en el trabajo colaborativo como estrategia de enseñanza en los cursos de programación universitarios

    Get PDF
    This paper compares pair and Mob programming in university courses from students' perceptions of technical and human aspects. Wilcoxon signed rank tests were performed. Results indicated that students preferred pair programming in technical aspects (p = 0.03) and in a global evaluation they completed (p = 0.04).Este artículo compara la programación por pares y Mob en los cursos universitarios desde las percepciones de los alumnos sobre aspectos técnicos y humanos. Se realizaron pruebas de rangos con signo de Wilcoxon. Los resultados indicaron que los alumnos prefirieron la programación por pares en aspectos técnicos (p=0.03) y en una evaluación global que realizaron (p=0.04)

    Avoiding core's DUE & SDC via acoustic wave detectors and tailored error containment and recovery

    Get PDF
    The trend of downsizing transistors and operating voltage scaling has made the processor chip more sensitive against radiation phenomena making soft errors an important challenge. New reliability techniques for handling soft errors in the logic and memories that allow meeting the desired failures-in-time (FIT) target are key to keep harnessing the benefits of Moore's law. The failure to scale the soft error rate caused by particle strikes, may soon limit the total number of cores that one may have running at the same time. This paper proposes a light-weight and scalable architecture to eliminate silent data corruption errors (SDC) and detected unrecoverable errors (DUE) of a core. The architecture uses acoustic wave detectors for error detection. We propose to recover by confining the errors in the cache hierarchy, allowing us to deal with the relatively long detection latencies. Our results show that the proposed mechanism protects the whole core (logic, latches and memory arrays) incurring performance overhead as low as 0.60%. © 2014 IEEE.Peer ReviewedPostprint (author's final draft

    A Survey on Handover Management in Mobility Architectures

    Full text link
    This work presents a comprehensive and structured taxonomy of available techniques for managing the handover process in mobility architectures. Representative works from the existing literature have been divided into appropriate categories, based on their ability to support horizontal handovers, vertical handovers and multihoming. We describe approaches designed to work on the current Internet (i.e. IPv4-based networks), as well as those that have been devised for the "future" Internet (e.g. IPv6-based networks and extensions). Quantitative measures and qualitative indicators are also presented and used to evaluate and compare the examined approaches. This critical review provides some valuable guidelines and suggestions for designing and developing mobility architectures, including some practical expedients (e.g. those required in the current Internet environment), aimed to cope with the presence of NAT/firewalls and to provide support to legacy systems and several communication protocols working at the application layer

    Making tourist guidance systems more intelligent, adaptive and personalised using crowd sourced movement data

    Get PDF
    Ambient intelligence (AmI) provides adaptive, personalized, intelligent, ubiquitous and interactive services to wide range of users. AmI can have a variety of applications, including smart shops, health care, smart home, assisted living, and location-based services. Tourist guidance is one of the applications where AmI can have a great contribution to the quality of the service, as the tourists, who may not be very familiar with the visiting site, need a location-aware, ubiquitous, personalised and informative service. Such services should be able to understand the preferences of the users without requiring the users to specify them, predict their interests, and provide relevant and tailored services in the most appropriate way, including audio, visual, and haptic. This paper shows the use of crowd sourced trajectory data in the detection of points of interests and providing ambient tourist guidance based on the patterns recognised over such data

    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

    Perpetual requirements engineering

    Get PDF
    This dissertation attempts to make a contribution within the fields of distributed systems, security, and formal verification. We provide a way to formally assess the impact of a given change in three different contexts. We have developed a logic based on Lewis’s Counterfactual Logic. First we show how our approach is applied to a standard sequential programming setting. Then, we show how a modified version of the logic can be used in the context of reactive systems and sensor networks. Last but not least we show how this logic can be used in the context of security systems. Traditionally, change impact analysis has been viewed as an area in traditional software engineering. Software artifacts (source code, usually) are modified in response to a change in user requirements. Aside from making sure that the changes are inherently correct (testing and verification), programmers (software engineers) need to make sure that the introduced changes are coherent with those parts of the systems that were not affected by the artifact modification. The latter is generally achieved by establishing a dependency relation between software artifacts. In rough lines, the process of change management consists of projecting the transitive closure of the this dependency relation based on the set of artifacts that have actually changed and assessing how the related artifacts changed. The latter description of the traditional change management process generally occurs after the affected artifacts are changed. Undesired secondary effects are usually found during the testing phase after the changes have been incorporated. In cases when there is certain level of criticality, there is always a division between production and development environments. Change management (either automatic, tool driven, or completely manually done) can introduce extraneous defects into any of the changed software life-cycle artifacts. The testing phase tries to eradicate a relatively large portion of the undesired defects introduced by change. However, traditional testing techniques are limited by their coverage strength. Therefore, even when maximum coverage is guaranteed there is always the non-zero probability of having secondary effects prior to a change

    AI augmented Edge and Fog computing: trends and challenges

    Get PDF
    In recent years, the landscape of computing paradigms has witnessed a gradual yet remarkable shift from monolithic computing to distributed and decentralized paradigms such as Internet of Things (IoT), Edge, Fog, Cloud, and Serverless. The frontiers of these computing technologies have been boosted by shift from manually encoded algorithms to Artificial Intelligence (AI)-driven autonomous systems for optimum and reliable management of distributed computing resources. Prior work focuses on improving existing systems using AI across a wide range of domains, such as efficient resource provisioning, application deployment, task placement, and service management. This survey reviews the evolution of data-driven AI-augmented technologies and their impact on computing systems. We demystify new techniques and draw key insights in Edge, Fog and Cloud resource management-related uses of AI methods and also look at how AI can innovate traditional applications for enhanced Quality of Service (QoS) in the presence of a continuum of resources. We present the latest trends and impact areas such as optimizing AI models that are deployed on or for computing systems. We layout a roadmap for future research directions in areas such as resource management for QoS optimization and service reliability. Finally, we discuss blue-sky ideas and envision this work as an anchor point for future research on AI-driven computing systems

    Consortium for Robotics and Unmanned Systems Education and Research (CRUSER) 2019 Annual Report

    Get PDF
    Prepared for: Dr. Brian Bingham, CRUSER DirectorThe Naval Postgraduate School (NPS) Consortium for Robotics and Unmanned Systems Education and Research (CRUSER) provides a collaborative environment and community of interest for the advancement of unmanned systems (UxS) education and research endeavors across the Navy (USN), Marine Corps (USMC) and Department of Defense (DoD). CRUSER is a Secretary of the Navy (SECNAV) initiative to build an inclusive community of interest on the application of unmanned systems (UxS) in military and naval operations. This 2019 annual report summarizes CRUSER activities in its eighth year of operations and highlights future plans.Deputy Undersecretary of the Navy PPOIOffice of Naval Research (ONR)Approved for public release; distribution is unlimited
    • …
    corecore