36,851 research outputs found

    Agile values and their implementation in practice

    Get PDF
    Today agile approaches are often used for the development of digital products. Since their development in the 90s, Agile Methodologies, such as Scrum and Extreme Programming, have evolved. Team collaboration is strongly influenced by the values and principles of the Agile Manifesto. The values and principles described in the Agile Manifesto support the optimization of the development process. In this article, the current operation is analyzed in Agile Product Development Processes. Both, the cooperation in the project team and the understanding of the roles and tasks will be analyzed. The results are set in relation to the best practices of Agile Methodologies. A quantitative questionnaire related to best practices in Agile Product Development was developed. The study was carried out with 175 interdisciplinary participants from the IT industry. For the evaluation of the results, 93 participants were included who have expertise in the subject area Agile Methodologies. On one hand, it is shown that the collaborative development of product-related ideas brings benefits. On the other hand, it is investigated which effect a good understanding of the product has on decisions made during the implementation. Furthermore, the skillset of product managers, the use of pair programming, and the advantages of cross-functional teams are analyzed.Ministerio de Ciencia e Innovación TIN2013-46928-C3-3-

    Integrating mobile robotics and vision with undergraduate computer science

    Get PDF
    This paper describes the integration of robotics education into an undergraduate Computer Science curriculum. The proposed approach delivers mobile robotics as well as covering the closely related field of Computer Vision, and is directly linked to the research conducted at the authors’ institution. The paper describes the most relevant details of the module content and assessment strategy, paying particular attention to the practical sessions using Rovio mobile robots. The specific choices are discussed that were made with regard to the mobile platform, software libraries and lab environment. The paper also presents a detailed qualitative and quantitative analysis of student results, including the correlation between student engagement and performance, and discusses the outcomes of this experience

    Soft Concurrent Constraint Programming

    Full text link
    Soft constraints extend classical constraints to represent multiple consistency levels, and thus provide a way to express preferences, fuzziness, and uncertainty. While there are many soft constraint solving formalisms, even distributed ones, by now there seems to be no concurrent programming framework where soft constraints can be handled. In this paper we show how the classical concurrent constraint (cc) programming framework can work with soft constraints, and we also propose an extension of cc languages which can use soft constraints to prune and direct the search for a solution. We believe that this new programming paradigm, called soft cc (scc), can be also very useful in many web-related scenarios. In fact, the language level allows web agents to express their interaction and negotiation protocols, and also to post their requests in terms of preferences, and the underlying soft constraint solver can find an agreement among the agents even if their requests are incompatible.Comment: 25 pages, 4 figures, submitted to the ACM Transactions on Computational Logic (TOCL), zipped file

    Non-polynomial Worst-Case Analysis of Recursive Programs

    Full text link
    We study the problem of developing efficient approaches for proving worst-case bounds of non-deterministic recursive programs. Ranking functions are sound and complete for proving termination and worst-case bounds of nonrecursive programs. First, we apply ranking functions to recursion, resulting in measure functions. We show that measure functions provide a sound and complete approach to prove worst-case bounds of non-deterministic recursive programs. Our second contribution is the synthesis of measure functions in nonpolynomial forms. We show that non-polynomial measure functions with logarithm and exponentiation can be synthesized through abstraction of logarithmic or exponentiation terms, Farkas' Lemma, and Handelman's Theorem using linear programming. While previous methods obtain worst-case polynomial bounds, our approach can synthesize bounds of the form O(nlogn)\mathcal{O}(n\log n) as well as O(nr)\mathcal{O}(n^r) where rr is not an integer. We present experimental results to demonstrate that our approach can obtain efficiently worst-case bounds of classical recursive algorithms such as (i) Merge-Sort, the divide-and-conquer algorithm for the Closest-Pair problem, where we obtain O(nlogn)\mathcal{O}(n \log n) worst-case bound, and (ii) Karatsuba's algorithm for polynomial multiplication and Strassen's algorithm for matrix multiplication, where we obtain O(nr)\mathcal{O}(n^r) bound such that rr is not an integer and close to the best-known bounds for the respective algorithms.Comment: 54 Pages, Full Version to CAV 201

    A genetic algorithm for the partial binary constraint satisfaction problem: an application to a frequency assignment problem

    Get PDF
    We describe a genetic algorithm for the partial constraint satisfaction problem. The typical elements of a genetic algorithm, selection, mutation and cross-over, are filled in with combinatorial ideas. For instance, cross-over of two solutions is performed by taking the one or two domain elements in the solutions of each of the variables as the complete domain of the variable. Then a branch-and-bound method is used for solving this small instance. When tested on a class of frequency assignment problems this genetic algorithm produced the best known solutions for all test problems. This feeds the idea that combinatorial ideas may well be useful in genetic algorithms.Economics ;

    A Game-Theoretic Approach to Energy-Efficient Resource Allocation in Device-to-Device Underlay Communications

    Full text link
    Despite the numerous benefits brought by Device-to-Device (D2D) communications, the introduction of D2D into cellular networks poses many new challenges in the resource allocation design due to the co-channel interference caused by spectrum reuse and limited battery life of User Equipments (UEs). Most of the previous studies mainly focus on how to maximize the Spectral Efficiency (SE) and ignore the energy consumption of UEs. In this paper, we study how to maximize each UE's Energy Efficiency (EE) in an interference-limited environment subject to its specific Quality of Service (QoS) and maximum transmission power constraints. We model the resource allocation problem as a noncooperative game, in which each player is self-interested and wants to maximize its own EE. A distributed interference-aware energy-efficient resource allocation algorithm is proposed by exploiting the properties of the nonlinear fractional programming. We prove that the optimum solution obtained by the proposed algorithm is the Nash equilibrium of the noncooperative game. We also analyze the tradeoff between EE and SE and derive closed-form expressions for EE and SE gaps.Comment: submitted to IET Communications. arXiv admin note: substantial text overlap with arXiv:1405.1963, arXiv:1407.155

    Inferring Concise Specifications of APIs

    Get PDF
    Modern software relies on libraries and uses them via application programming interfaces (APIs). Correct API usage as well as many software engineering tasks are enabled when APIs have formal specifications. In this work, we analyze the implementation of each method in an API to infer a formal postcondition. Conventional wisdom is that, if one has preconditions, then one can use the strongest postcondition predicate transformer (SP) to infer postconditions. However, SP yields postconditions that are exponentially large, which makes them difficult to use, either by humans or by tools. Our key idea is an algorithm that converts such exponentially large specifications into a form that is more concise and thus more usable. This is done by leveraging the structure of the specifications that result from the use of SP. We applied our technique to infer postconditions for over 2,300 methods in seven popular Java libraries. Our technique was able to infer specifications for 75.7% of these methods, each of which was verified using an Extended Static Checker. We also found that 84.6% of resulting specifications were less than 1/4 page (20 lines) in length. Our technique was able to reduce the length of SMT proofs needed for verifying implementations by 76.7% and reduced prover execution time by 26.7%

    Magic Sets for Disjunctive Datalog Programs

    Get PDF
    In this paper, a new technique for the optimization of (partially) bound queries over disjunctive Datalog programs with stratified negation is presented. The technique exploits the propagation of query bindings and extends the Magic Set (MS) optimization technique. An important feature of disjunctive Datalog is nonmonotonicity, which calls for nondeterministic implementations, such as backtracking search. A distinguishing characteristic of the new method is that the optimization can be exploited also during the nondeterministic phase. In particular, after some assumptions have been made during the computation, parts of the program may become irrelevant to a query under these assumptions. This allows for dynamic pruning of the search space. In contrast, the effect of the previously defined MS methods for disjunctive Datalog is limited to the deterministic portion of the process. In this way, the potential performance gain by using the proposed method can be exponential, as could be observed empirically. The correctness of MS is established thanks to a strong relationship between MS and unfounded sets that has not been studied in the literature before. This knowledge allows for extending the method also to programs with stratified negation in a natural way. The proposed method has been implemented in DLV and various experiments have been conducted. Experimental results on synthetic data confirm the utility of MS for disjunctive Datalog, and they highlight the computational gain that may be obtained by the new method w.r.t. the previously proposed MS methods for disjunctive Datalog programs. Further experiments on real-world data show the benefits of MS within an application scenario that has received considerable attention in recent years, the problem of answering user queries over possibly inconsistent databases originating from integration of autonomous sources of information.Comment: 67 pages, 19 figures, preprint submitted to Artificial Intelligenc
    corecore