2,409 research outputs found

    Teaching How to Select an Optimal Agile, Plan-Driven, or Hybrid Software Development Approach: Lessons from Enterprise Software Development Leaders

    Get PDF
    Over 20 years after introducing and popularizing agile software development methods, those methods have proven effective in delivering projects that meet agile assumptions. Those assumptions require that projects be small and simple in scope and utilize small, colocated teams. Given this success, many agile advocates argue that agile should replace plan-driven methods in most or all project contexts, including those projects that deviate significantly from agile assumptions. However, today’s reality is that a diversity of agile, plan-driven, and hybrid approaches continue to be widely used, with many individual organizations using multiple approaches across different projects. Furthermore, while agile advocates argue that the primary barrier to agile adoption is the inertia of traditional organizational cultures, there are, in fact, many rational motivations for utilizing plan-driven and hybrid methods based on individual project characteristics. For information systems students, this creates confusion in two ways: 1) understanding that there is no single best way to develop software in all circumstances but, rather, teams should choose an optimal project approach based on project characteristics, and 2) unpacking and analyzing the wide range of project characteristics – including multiple dimensions in functional requirements, non-functional requirements (NFRs), and team characteristics – that impact that choice. This paper addresses both sources of confusion by utilizing case studies from 22 interviews of enterprise software development leaders. The paper analyzes each case utilizing a “home grounds” model that graphically portrays key project characteristics and their impact on the optimal choice of software development project approach

    COTS Evaluation

    Get PDF
    This article presents an extensive literature review of the empirical studies carried out in past for evaluation and selection of components during the design phase of Component Based Software Systems (CBSS). In CBSS approach the software systems can be developed by selecting appropriate components which then are assembled to form a complete software system. These Components can be either of the two (a) COTS (Commercial-off-the-Shelf) components or (b) Inhouse built components. These components are selected based on different parameters of cost, reliability, delivery time etc. Therefore, optimal selection of the components plays a vital role in development of CBSS as it saves time and effort. Related articles appearing in the International Journals from 1992 to 2014 are gathered and are critically analyzed. Based on the review it is seen that some of the important issues have not been explored fully. Hence there is scope of improvement which paves the path for future work

    Invited Paper: A Generalized, Enterprise-Level Systems Development Process Framework for Systems Analysis and Design Education

    Get PDF
    Current academic and industry discussions regarding systems development project approaches increasingly focus on agile development and/or DevOps, as these approaches are seen as more modern, streamlined, flexible, and, therefore, effective as compared to traditional plan-driven approaches. This extends to the current pedagogy for teaching systems analysis and design (SA&D). However, overemphasizing agile and DevOps neglects broader dimensions that are essential for planning and executing enterprise-level systems projects. Thus, a dilemma may arise: do we teach agile and DevOps techniques that may be inadequate for enterprise-level projects or do we teach the wider range of plan-driven skills and techniques that may conflict with the tenets and benefits of agile and DevOps? In this paper, we advocate for resolving this dilemma by adopting a generalized process framework that both fully supports enterprise-level projects but can also be selectively scaled back toward increased agility for smaller, less complex projects. In its full realization, this framework combines extensive project planning and up-front requirements with iterative delivery – an increasingly popular approach today for enterprise projects. In scaling back toward agile, the framework carefully accounts for system, environment, and team characteristics. Further, the model emphasizes issues frequently underemphasized by agile approaches, including the use of external software such as commercial-off-the-shelf (COTS), Software- as-a-Service (SaaS), and open source products and components; the need for business-oriented project planning and justification; and support for change management to ensure successful system adoption. The framework thereby flexibly accommodates the full range of activities that software projects must support to be successful

    A framework for cots software evaluation and selection for COTS mismatches handling and non-functional requirements

    Get PDF
    The decision to purchase Commercial Off-The-Shelf (COTS) software needs systematic guidelines so that the appropriate COTS software can be selected in order to provide a viable and effective solution to the organizations. However, the existing COTS software evaluation and selection frameworks focus more on functional aspects and do not give adequate attention to accommodate the mismatch between user requirements and COTS software specification, and also integration with non functional requirements of COTS software. Studies have identified that these two criteria are important in COTS software evaluation and selection. Therefore, this study aims to develop a new framework of COTS software evaluation and selection that focuses on handling COTS software mismatches and integrating the nonfunctional requirements. The study is conducted using mixed-mode methodology which involves survey and interview. The study is conducted in four main phases: a survey and interview of 63 organizations to identify COTS software evaluation criteria, development of COTS software evaluation and selection framework using Evaluation Theory, development of a new decision making technique by integrating Analytical Hierarchy Process and Gap Analysis to handle COTS software mismatches, and validation of the practicality and reliability of the proposed COTS software Evaluation and Selection Framework (COTS-ESF) using experts’ review, case studies and yardstick validation. This study has developed the COTS-ESF which consists of five categories of evaluation criteria: Quality, Domain, Architecture, Operational Environment and Vendor Reputation. It also provides a decision making technique and a complete process for performing the evaluation and selection of COTS software. The result of this study shows that the evaluated aspects of the framework are feasible and demonstrate their potential and practicality to be applied in the real environment. The contribution of this study straddles both the research and practical perspectives of software evaluation by improving decision making and providing a systematic guidelines for handling issue in purchasing viable COTS software

    Coded Computation Against Processing Delays for Virtualized Cloud-Based Channel Decoding

    Get PDF
    The uplink of a cloud radio access network architecture is studied in which decoding at the cloud takes place via network function virtualization on commercial off-the-shelf servers. In order to mitigate the impact of straggling decoders in this platform, a novel coding strategy is proposed, whereby the cloud re-encodes the received frames via a linear code before distributing them to the decoding processors. Transmission of a single frame is considered first, and upper bounds on the resulting frame unavailability probability as a function of the decoding latency are derived by assuming a binary symmetric channel for uplink communications. Then, the analysis is extended to account for random frame arrival times. In this case, the trade-off between average decoding latency and the frame error rate is studied for two different queuing policies, whereby the servers carry out per-frame decoding or continuous decoding, respectively. Numerical examples demonstrate that the bounds are useful tools for code design and that coding is instrumental in obtaining a desirable compromise between decoding latency and reliability.Comment: 11 pages and 12 figures, Submitte

    A 64mW DNN-based Visual Navigation Engine for Autonomous Nano-Drones

    Full text link
    Fully-autonomous miniaturized robots (e.g., drones), with artificial intelligence (AI) based visual navigation capabilities are extremely challenging drivers of Internet-of-Things edge intelligence capabilities. Visual navigation based on AI approaches, such as deep neural networks (DNNs) are becoming pervasive for standard-size drones, but are considered out of reach for nanodrones with size of a few cm2{}^\mathrm{2}. In this work, we present the first (to the best of our knowledge) demonstration of a navigation engine for autonomous nano-drones capable of closed-loop end-to-end DNN-based visual navigation. To achieve this goal we developed a complete methodology for parallel execution of complex DNNs directly on-bard of resource-constrained milliwatt-scale nodes. Our system is based on GAP8, a novel parallel ultra-low-power computing platform, and a 27 g commercial, open-source CrazyFlie 2.0 nano-quadrotor. As part of our general methodology we discuss the software mapping techniques that enable the state-of-the-art deep convolutional neural network presented in [1] to be fully executed on-board within a strict 6 fps real-time constraint with no compromise in terms of flight results, while all processing is done with only 64 mW on average. Our navigation engine is flexible and can be used to span a wide performance range: at its peak performance corner it achieves 18 fps while still consuming on average just 3.5% of the power envelope of the deployed nano-aircraft.Comment: 15 pages, 13 figures, 5 tables, 2 listings, accepted for publication in the IEEE Internet of Things Journal (IEEE IOTJ

    COMMERCIAL-OFF-THE SHELF VENDOR SELECTION: A MULTI-CRITERIA DECISION-MAKING APPROACH USING INTUITIONISTIC FUZZY SETS AND TOPSIS

    Get PDF
    Commercial-off-the-shelf (COTS) component selection is considered a critical task in effectively developing a component-based software system (CBSS). COTS vendor selection involves selecting the right vendors who can provide reliable COTS components at a suitable price and on time. However, COTS vendor selection is commonly a multi-criteria decision-making (MCDM) issue” associated with many paradoxical criteria for which the decision maker’s knowledge may be uncertain and ambiguous. This paper attempts to present “Intuitionistic Fuzzy Sets (IFS) combined with the technique for order preference by similarity to an ideal solution (TOPSIS) method” to appraise and choose the best COTS vendor under the environment of group decision-making while considering reliability, delivery time, compatibility, vendor support and functionality as benefit criteria. In contrast, price and maintenance are the cost criteria. The considered case study demonstrated the presented case effectively

    Multi-Criteria Decision Making in software development:a systematic literature review

    Get PDF
    Abstract. Multiple Criteria Decision Making is a formal approach to assist decision makers to select the best solutions among multiple alternatives by assessing criteria which are relatively precise but generally conflicting. The utilization of MCDM are quite popular and common in software development process. In this study, a systematic literature review which includes creating review protocol, selecting primary study, making classification schema, extracting data and other relevant steps was conducted. The objective of this study are making a summary about the state-of-the-art of MCDM in software development process and identifying the MCDM methods and MCDM problems in software development by systematically structuring and analyzing the literature on those issues. A total of 56 primary studies were identified after the review, and 33 types of MCDM methods were extracted from those primary studies. Among them, AHP was defined as the most frequent used MCDM methods in software development process by ranking the number of primary studies which applied it in their studies, and Pareto optimization was ranked in the second place. Meanwhile, 33 types of software development problems were identified. Components selection, design concepts selection and performance evaluation became the three most frequent occurred problems which need to be resolved by MCDM methods. Most of those MCDM problems were found in software design phase. There were many limitations to affect the quality of this study; however, the strictly-followed procedures of SLR and mass data from thousands of literature can still ensure the validity of this study, and this study is also able to provide the references when decision makers want to select the appropriate technique to cope with the MCDM problems
    • …
    corecore