26 research outputs found

    Putting the Semantics into Semantic Versioning

    Full text link
    The long-standing aspiration for software reuse has made astonishing strides in the past few years. Many modern software development ecosystems now come with rich sets of publicly-available components contributed by the community. Downstream developers can leverage these upstream components, boosting their productivity. However, components evolve at their own pace. This imposes obligations on and yields benefits for downstream developers, especially since changes can be breaking, requiring additional downstream work to adapt to. Upgrading too late leaves downstream vulnerable to security issues and missing out on useful improvements; upgrading too early results in excess work. Semantic versioning has been proposed as an elegant mechanism to communicate levels of compatibility, enabling downstream developers to automate dependency upgrades. While it is questionable whether a version number can adequately characterize version compatibility in general, we argue that developers would greatly benefit from tools such as semantic version calculators to help them upgrade safely. The time is now for the research community to develop such tools: large component ecosystems exist and are accessible, component interactions have become observable through automated builds, and recent advances in program analysis make the development of relevant tools feasible. In particular, contracts (both traditional and lightweight) are a promising input to semantic versioning calculators, which can suggest whether an upgrade is likely to be safe.Comment: to be published as Onward! Essays 202

    Improving Software Project Health Using Machine Learning

    Get PDF
    In recent years, systems that would previously live on different platforms have been integrated under a single umbrella. The increased use of GitHub, which offers pull-requests, issue trackingand version history, and its integration with other solutions such as Gerrit, or Travis, as well as theresponse from competitors, created development environments that favour agile methodologiesby increasingly automating non-coding tasks: automated build systems, automated issue triagingetc. In essence, source-code hosting platforms shifted to continuous integration/continuousdelivery (CI/CD) as a service. This facilitated a shift in development paradigms, adherents ofagile methodology can now adopt a CI/CD infrastructure more easily. This has also created large,publicly accessible sources of source-code together with related project artefacts: GHTorrent andsimilar datasets now offer programmatic access to the whole of GitHub. Project health encompasses traceability, documentation, adherence to coding conventions,tasks that reduce maintenance costs and increase accountability, but may not directly impactfeatures. Overfocus on health can slow velocity (new feature delivery) so the Agile Manifestosuggests developers should travel light — forgo tasks focused on a project health in favourof higher feature velocity. Obviously, injudiciously following this suggestion can undermine aproject’s chances for success. Simultaneously, this shift to CI/CD has allowed the proliferation of Natural Language orNatural Language and Formal Language textual artefacts that are programmatically accessible:GitHub and their competitors allow API access to their infrastructure to enable the creation ofCI/CD bots. This suggests that approaches from Natural Language Processing and MachineLearning are now feasible and indeed desirable. This thesis aims to (semi-)automate tasks forthis new paradigm and its attendant infrastructure by bringing to the foreground the relevant NLPand ML techniques. Under this umbrella, I focus on three synergistic tasks from this domain: (1) improving theissue-pull-request traceability, which can aid existing systems to automatically curate the issuebacklog as pull-requests are merged; (2) untangling commits in a version history, which canaid the beforementioned traceability task as well as improve the usability of determining a faultintroducing commit, or cherry-picking via tools such as git bisect; (3) mixed-text parsing, to allowbetter API mining and open new avenues for project-specific code-recommendation tools

    Responding to the risk of reducing resources: development of a framework for future change programmes in English environmental health services

    Get PDF
    Environmental Health Services in the UK have been subject to significant resource reduction from 2010 to 2018. It is suggested that services risk becoming unsustainable unless efficient and effective ways of working are employed. This research explored the experience of practitioners who are developing and delivering evolving Environmental Health Services in English local authorities in the context of deep cutting budget reductions. A range of ‘non-traditional’ service delivery models has been examined including outsourcing, shared services, regional delivery models and mutualisation arrangements. The models were at various stages of development from planning through to full transformation. Interviews were carried out with the participants involved in the change process to capture their experience of change and the impact on service delivery. Fieldwork was undertaken between 2014 and 2016. Thematic analysis of interview transcripts identified six central themes of the experience of change: ‘Managing changes effectively’; ‘Understanding the reasons for change’; ‘Understanding the nature of Environmental Health’; ‘Meaningful consultation’; ‘Viability of the proposal’; And ‘Planning and timeliness’. Further analysis of the data developed seven overarching themes: ‘Ethos of public services’, ‘Getting it right’, ‘Emerging service demands’, ‘Resilience’, ‘Trust’, ‘Skills development’ and ‘Risk’. A framework for future change programmes in Environmental Health Services has been developed which takes into account the lessons learnt by organisations that have previously undergone significant change in their response to the risk of a reducing resource. Environmental Health Services undergoing transformation will benefit from using this framework to examine their own organisation when they are establishing the need for change, making decisions, planning and transition. Use of this framework can mitigate against risks of unsustainable or undeliverable Environmental Health Services

    Public service reform, the labour process and changes in labour management in the voluntary sector

    Get PDF
    This thesis analyses the New Labour government’s extension of public service reform and modernisation to the voluntary sector. It explores the changes that have taken place in the labour process and management practices in the voluntary sector and it locates this within an analysis of wider public service reform. It argues that the reforms of the voluntary sector are part of wider neo-liberal market reforms intended to extend the capitalist labour process to the voluntary and public sectors.The thesis is based on research in a diverse range of complex voluntary organisations, drawing from academic, industry and organisation documents, from interviews with voluntary organisation, trade union and industry and community representatives, and from an employee attitude questionnaire. Voluntary organisation managers were found to be under severe external pressures, through increased competition between organisations, and through contracting, auditing, monitoring and regulatory regimes. These managers responded by introducing Taylorist forms of performance management to meet external targets, to increase efficiency and to lower unit costs. They have been relatively compliant with reform compared to public sector managers. Performance management has a significant impact on employees, bringing reductions in autonomy, pay, job security and employment conditions and increases in workload and managerial control and discipline.The character of the labour process in the voluntary sector is being transformed to become more like the labour process in capitalist enterprises. In contrast to the public sector, trade union organisation and influence is weak and unable to mount effective resistance. The voluntary sector is a model for the delivery of public services through a diverse range of semi-autonomous local providers under a tight regime of government regulation. Public service trade unions will need a co-ordinated and comprehensive strategy to resist market reform and further cuts in public service and welfare provision

    Estudo do IPFS como protocolo de distribuição de conteúdos em redes veiculares

    Get PDF
    Over the last few years, vehicular ad-hoc networks (VANETs) have been the focus of great progress due to the interest in autonomous vehicles and in distributing content not only between vehicles, but also to the Cloud. Performing a download/upload to/from a vehicle typically requires the existence of a cellular connection, but the costs associated with mobile data transfers in hundreds or thousands of vehicles quickly become prohibitive. A VANET allows the costs to be several orders of magnitude lower - while keeping the same large volumes of data - because it is strongly based in the communication between vehicles (nodes of the network) and the infrastructure. The InterPlanetary File System (IPFS) is a protocol for storing and distributing content, where information is addressed by its content, instead of its location. It was created in 2014 and it seeks to connect all computing devices with the same system of files, comparable to a BitTorrent swarm exchanging Git objects. It has been tested and deployed in wired networks, but never in an environment where nodes have intermittent connectivity, such as a VANET. This work focuses on understanding IPFS, how/if it can be applied to the vehicular network context, and comparing it with other content distribution protocols. In this dissertation, IPFS has been tested in a small and controlled network to understand its working applicability to VANETs. Issues such as neighbor discoverability times and poor hashing performance have been addressed. To compare IPFS with other protocols (such as Veniam’s proprietary solution or BitTorrent) in a relevant way and in a large scale, an emulation platform was created. The tests in this emulator were performed in different times of the day, with a variable number of files and file sizes. Emulated results show that IPFS is on par with Veniam’s custom V2V protocol built specifically for V2V, and greatly outperforms BitTorrent regarding neighbor discoverability and data transfers. An analysis of IPFS’ performance in a real scenario was also conducted, using a subset of STCP’s vehicular network in Oporto, with the support of Veniam. Results from these tests show that IPFS can be used as a content dissemination protocol, showing it is up to the challenge provided by a constantly changing network topology, and achieving throughputs up to 2.8 MB/s, values similar or in some cases even better than Veniam’s proprietary solution.Nos últimos anos, as redes veiculares (VANETs) têm sido o foco de grandes avanços devido ao interesse em veículos autónomos e em distribuir conteúdos, não só entre veículos mas também para a "nuvem" (Cloud). Tipicamente, fazer um download/upload de/para um veículo exige a utilização de uma ligação celular (SIM), mas os custos associados a fazer transferências com dados móveis em centenas ou milhares de veículos rapidamente se tornam proibitivos. Uma VANET permite que estes custos sejam consideravelmente inferiores - mantendo o mesmo volume de dados - pois é fortemente baseada na comunicação entre veículos (nós da rede) e a infraestrutura. O InterPlanetary File System (IPFS - "sistema de ficheiros interplanetário") é um protocolo de armazenamento e distribuição de conteúdos, onde a informação é endereçada pelo conteúdo, em vez da sua localização. Foi criado em 2014 e tem como objetivo ligar todos os dispositivos de computação num só sistema de ficheiros, comparável a um swarm BitTorrent a trocar objetos Git. Já foi testado e usado em redes com fios, mas nunca num ambiente onde os nós têm conetividade intermitente, tal como numa VANET. Este trabalho tem como foco perceber o IPFS, como/se pode ser aplicado ao contexto de rede veicular e compará-lo a outros protocolos de distribuição de conteúdos. Numa primeira fase o IPFS foi testado numa pequena rede controlada, de forma a perceber a sua aplicabilidade às VANETs, e resolver os seus primeiros problemas como os tempos elevados de descoberta de vizinhos e o fraco desempenho de hashing. De modo a poder comparar o IPFS com outros protocolos (tais como a solução proprietária da Veniam ou o BitTorrent) de forma relevante e em grande escala, foi criada uma plataforma de emulação. Os testes neste emulador foram efetuados usando registos de mobilidade e conetividade veicular de alturas diferentes de um dia, com um número variável de ficheiros e tamanhos de ficheiros. Os resultados destes testes mostram que o IPFS está a par do protocolo V2V da Veniam (desenvolvido especificamente para V2V e VANETs), e que o IPFS é significativamente melhor que o BitTorrent no que toca ao tempo de descoberta de vizinhos e transferência de informação. Uma análise do desempenho do IPFS em cenário real também foi efetuada, usando um pequeno conjunto de nós da rede veicular da STCP no Porto, com o apoio da Veniam. Os resultados destes testes demonstram que o IPFS pode ser usado como protocolo de disseminação de conteúdos numa VANET, mostrando-se adequado a uma topologia constantemente sob alteração, e alcançando débitos até 2.8 MB/s, valores parecidos ou nalguns casos superiores aos do protocolo proprietário da Veniam.Mestrado em Engenharia de Computadores e Telemátic

    Contemporary Research on Management and Business

    Get PDF
    This book contains 74 selected papers presented at the 5th International Seminar of Contemporary Research on Business and Management (ISCRBM 2021), which was organized by the Alliance of Indonesian Master of Management Program (APMMI) and held in Jakarta, Indonesia on 18 December 2021. This online conference was hosted by the Master of Management Program of Indonesia University. This year, ISCRBM focused on research related to driving sustainable business through innovation. Business has had to deal with the Covid-19 pandemic, so a new approach towards managing business to survive competition is indispensable. Innovation is the key for all organizations in surviving in the new normal and beyond. The Seminar aimed to provide a forum for leading scholars, academics, researchers, and practitioners in the business and management area to reflect on the issues, challenges and opportunities, and to share the latest innovative research and best practices. This seminar brought together participants to exchange ideas on the future development of management disciplines: human resource, marketing, operation, finance, strategic management and entrepreneurship

    Open Source Law, Policy and Practice

    Get PDF
    This book examines various policies, including the legal and commercial aspects of the Open Source phenomenon. Here, ‘Open Source’ is adopted as convenient shorthand for a collection of diverse users and communities, whose differences can be as great as their similarities. The common thread is their reliance on, and use of, law and legal mechanisms to govern the source code they write, use, and distribute. The central fact of open source is that maintaining control over source code relies on the existence and efficacy of intellectual property (‘IP’) laws, particularly copyright law. Copyright law is the primary statutory tool that achieves the end of openness, although implemented through private law arrangements at varying points within the software supply chain. This dependent relationship is itself a cause of concern for some philosophically in favour of ‘open’, with some predicting (or hoping) that the free software movement will bring about the end of copyright as a means for protecting software
    corecore