264,892 research outputs found

    From Network Interface to Multithreaded Web Applications: A Case Study in Modular Program Verification

    Get PDF
    Many verifications of realistic software systems are monolithic, in the sense that they define single global invariants over complete system state. More modular proof techniques promise to support reuse of component proofs and even reduce the effort required to verify one concrete system, just as modularity simplifies standard software development. This paper reports on one case study applying modular proof techniques in the Coq proof assistant. To our knowledge, it is the first modular verification certifying a system that combines infrastructure with an application of interest to end users. We assume a nonblocking API for managing TCP networking streams, and on top of that we work our way up to certifying multithreaded, database-backed Web applications. Key verified components include a cooperative threading library and an implementation of a domain-specific language for XML processing. We have deployed our case-study system on mobile robots, where it interfaces with off-the-shelf components for sensing, actuation, and control.National Science Foundation (U.S.) (Grant CCF-1253229)United States. Defense Advanced Research Projects Agency (Agreement FA8750-12-2-0293

    From Network Interface to Multithreaded Web Applications: A Case Study in Modular Program Verification

    Get PDF
    Many verifications of realistic software systems are monolithic, in the sense that they define single global invariants over complete system state. More modular proof techniques promise to support reuse of component proofs and even reduce the effort required to verify one concrete system, just as modularity simplifies standard software development. This paper reports on one case study applying modular proof techniques in the Coq proof assistant. To our knowledge, it is the first modular verification certifying a system that combines infrastructure with an application of interest to end users. We assume a nonblocking API for managing TCP networking streams, and on top of that we work our way up to certifying multithreaded, database-backed Web applications. Key verified components include a cooperative threading library and an implementation of a domain-specific language for XML processing. We have deployed our case-study system on mobile robots, where it interfaces with off-the-shelf components for sensing, actuation, and control.National Science Foundation (U.S.) (NSF grant CCF-1253229)United States. Defense Advanced Research Projects Agency (DARPA, agreement number FA8750-12-2-0293

    Promocijas darbs

    Get PDF
    Elektroniskā versija nesatur pielikumusGlobalizācijas ietekme uz programmatūras izstrādi ir atzīta par ievērojamu vairāku pētījumu rezultātā. Unikālie faktori, kuri padara globāli sadalītu programmatūras izstrādes vidi par īpašu, palielina programminženierijas procesu sarežģītību un noved pie dažādām līdz šim nezināmām problēmām, ar kurām projektu pārvaldniekiem ir jācīnās par projekta veiksmīgu iznākumu. Šī disertācija ir veltīta globāli sadalīto projektu uzlabošanai, ar mēŗki novērtēt globālo projektu draudu bīstamību un nodrošināt pieeju projektu iznākuma izvērtēšanai. Risku Barometrs ir izstrādāts uz empīrisku datu bāzes no industrijas projektiem kā viens no centrāliem disertācijas rezultātiem. Tas aprēķina negatīvo seku varbūtību dažādiem globāliem draudiem, pamatojoties uz vēsturiskiem datiem. Šī pētījuma rezultāti nodrošina praktiķiem, kuriem trūkst zināšanu un pieredzes, metožu un rīku kopu efektīvai risku pārvaldībai, kā arī izmaksu un darbietilpības novērtēšanai globālajos projektos.The influence of globalization on software development has been recognized as significant by many studies. Existence of unique factors that distinguish globally distributed software development (GSD) environment increases the complexity of software development processes and brings challenges to project managers in achieving project success. This thesis describes research devoted to GSD project improvement, which aims to determine the severity of global threats and provide an approach for sustainable support in managing project outcome predictions. The author developed a Risk Barometer based on empirical data from industrial projects. It calculates the probability of negative outcome for global threats upon historical data. The results of this research provide practitioners that lack knowledge and experience a set of methods and tools for more effective risk management, as well as cost and effort estimation for a globally distributed project

    Promocijas darbs

    Get PDF
    Elektroniskā versija nesatur pielikumusGlobalizācijas ietekme uz programmatūras izstrādi ir atzīta par ievērojamu vairāku pētījumu rezultātā. Unikālie faktori, kuri padara globāli sadalītu programmatūras izstrādes vidi par īpašu, palielina programminženierijas procesu sarežģītību un noved pie dažādām līdz šim nezināmām problēmām, ar kurām projektu pārvaldniekiem ir jācīnās par projekta veiksmīgu iznākumu. Šī disertācija ir veltīta globāli sadalīto projektu uzlabošanai, ar mēŗki novērtēt globālo projektu draudu bīstamību un nodrošināt pieeju projektu iznākuma izvērtēšanai. Risku Barometrs ir izstrādāts uz empīrisku datu bāzes no industrijas projektiem kā viens no centrāliem disertācijas rezultātiem. Tas aprēķina negatīvo seku varbūtību dažādiem globāliem draudiem, pamatojoties uz vēsturiskiem datiem. Šī pētījuma rezultāti nodrošina praktiķiem, kuriem trūkst zināšanu un pieredzes, metožu un rīku kopu efektīvai risku pārvaldībai, kā arī izmaksu un darbietilpības novērtēšanai globālajos projektos.The influence of globalization on software development has been recognized as significant by many studies. Existence of unique factors that distinguish globally distributed software development (GSD) environment increases the complexity of software development processes and brings challenges to project managers in achieving project success. This thesis describes research devoted to GSD project improvement, which aims to determine the severity of global threats and provide an approach for sustainable support in managing project outcome predictions. The author developed a Risk Barometer based on empirical data from industrial projects. It calculates the probability of negative outcome for global threats upon historical data. The results of this research provide practitioners that lack knowledge and experience a set of methods and tools for more effective risk management, as well as cost and effort estimation for a globally distributed project

    Using Software Quality Evaluation Standard Model for Managing Software Development Projects in Solar Sector

    Get PDF
    This paper proposes a framework for managing Project Quality Management (PQM) processes of software development projects related to photovoltaic (PV) system design. The International Organization for Standardization (ISO) quality evaluation model, Software Product Quality Requirements and Evaluation (SQuaRE) standard, is used to determine quality characteristics and quality metrics of the software. This work presents the following contributions: I) defining quality characteristics associated with a PV design software using the SQuaRE standard model, II) adding the proposed framework as a tool and technique which is used by practitioners following the global standard book for project managers, A Guide to the Project Management Body of Knowledge (PMBOK), and III) Identifying quality measures and sub-characteristics of a PV design software. The presented model can be employed for simulation-based and/or model-based software products in various technical fields and engineering

    Customising software products in distributed software development a model for allocating customisation requirements across organisational boundaries

    Get PDF
    Requirements engineering plays a vital role in the software development process. While it is difficult to manage those requirements locally, it is even more difficult to communicate those requirements over organisational boundaries and to convey them to multiple distribution customers. This paper discusses the requirements of multiple distribution customers empirically in the context of customised software products. The main purpose is to understand the challenges of communicating and allocating customisation requirements across distributed organisational boundaries. We conducted an empirical survey with 19 practitioners, which confirmed that communicating customisation requirements in a DSD context is a significant challenge. We therefore propose a model for allocating customisation requirements between a local, customer-based agile team and a distributed development team that uses a traditional development approach. Our conjecture is that the model would reduce the challenge of communicating requirements across organisational boundaries, address customers’ requirements and provide a focus for future empirical studies

    Rationale Management Challenges in Requirements Engineering

    Get PDF
    Rationale and rationale management have been playing an increasingly prominent role in software system development mainly due to the knowledge demand during system evaluation, maintenance, and evolution, especially for large and complex systems. The rationale management for requirements engineering, as a commencing and critical phase in software development life cycle, is still under-exploited. In this paper, we first survey briefly the state-of-the-art on rationale employment and applications in requirements engineering. Secondly, we identify the challenges in integrating rationale management in requirements engineering activities in order to promote further investigations and define a research agenda on rationale management in requirements engineering.

    Managing globally distributed software development using virtual teams: A Middle East case study

    Get PDF
    Software project development is increasingly becoming geographically distributed especially in today’s global business environment. In order to build quality software faster andat a lower cost, companies in industrialised countries are turning to globally distributed software development projects. Emerging countries such as India and Israel are known to have large pools of highly trained software engineers at relatively low cost. However, recent trends have shown that new locations are emerging as developmental sites. Examples of those locations in the Middle East include Oman, Dubai, Abu Dhabi and Qatar. The main attraction of those countries is that they are close to the Arab market. However, distributed development also entails a number of risks and problems, for instance in terms of communication and knowledge transfer between sites, resulting in project failures. Being the project manager of a team that includes remote members has additional challenges compared to managing co-located team members. These projects face particular challenges that need careful managerial attention.This research aims to examine how globally distributed software development projects are managed in the Middle East. The main question to be answered was “How do companies in the Middle East successfully manage and organise software development in a globally distributed environment?”. We outline the factors that were perceived as important by project managers. We also look at how culture affects the operation of virtual teams in a globally distributed software development environment in the Middle East taking religion into consideration. To understand how these factors influence the success of globally distributed software development projects in the Middle East, we conducted a qualitative case study research involving three different companies operating in Dubai, Oman, Abu Dhabi, India and Pakistan. We used semi-structured interviews as the primary sources of information as these allow highly personalised data. This research outlines the following specific project management-related areas that need to be addressed to facilitate successful virtual team operation: Cross-cultural collaboration • Tools and technology used to facilitate GSD • An infrastructure that facilitates communication between virtual teams • Effective project managementComputingM. Sc. (Computing

    Is project management the new management 2.0?

    Get PDF
    This paper considers the evolving nature of project management (PM) and offers a comparison with the evolving nature of management generally. Specifically, we identify a number of management trends that are drawn from a paper that documents a proposed ‘Management 2.0’ model, and we compare those trends to the way in which PM is maturing to embrace the challenges of modern organizational progress.Some theoretical frameworks are offered that assist in explaining the shift from the historically accepted ‘tools and techniques’ model to a more nuanced and behaviorally driven paradigm that is arguably more appropriate to manage change in today’s flexible and progressive organizations, and which provide a more coherent response, both in PM and traditional management, to McDonald’s forces. In addition, we offer a number of examples to robustly support our assertions, based around the development of innovative products from Apple Inc. In using this metaphor to demonstrate the evolution of project-based work, we link PM with innovation and new product development.

    Criteria for the Diploma qualifications in information technology at levels 1, 2 and 3

    Get PDF
    corecore