7 research outputs found

    Early failure prediction in feature request management systems

    Full text link

    Análisis de las técnicas de aprendizaje automático aplicadas en la ingeniería de requerimientos de software: un mapeo sistemático de la literatura

    Get PDF
    En este trabajo se presenta un mapeo sistemático de la literatura, a los fines de proporcionar una revisión comprensiva de las investigaciones que deta-lan la aplicación de las técnicas de Aprendizaje Automático (AA) en el área de Ingeniería de Requerimientos (IR) para enriquecer técnicas y procedimientos tradicionales. Los resultados obtenidos destacan propuestas alentadoras orientadas principalmente, a la predicción de fallas y clasificación de los requisitos de software. Sin embargo, se detectó que los estudios que utilizan técnicas de AA en sus propuestas, aún precisan de una mayor validación empírica para ser ampliamente aceptadas y aplicadas en entornos de desarrollo de software. Consecuentemente, esta situación denota la necesidad de continuar investigando y profundizando sobre posibles aplicaciones del AA en el área de IR.Sociedad Argentina de Informática e Investigación Operativ

    Análisis de las técnicas de aprendizaje automático aplicadas en la ingeniería de requerimientos de software: un mapeo sistemático de la literatura

    Get PDF
    En este trabajo se presenta un mapeo sistemático de la literatura, a los fines de proporcionar una revisión comprensiva de las investigaciones que deta-lan la aplicación de las técnicas de Aprendizaje Automático (AA) en el área de Ingeniería de Requerimientos (IR) para enriquecer técnicas y procedimientos tradicionales. Los resultados obtenidos destacan propuestas alentadoras orientadas principalmente, a la predicción de fallas y clasificación de los requisitos de software. Sin embargo, se detectó que los estudios que utilizan técnicas de AA en sus propuestas, aún precisan de una mayor validación empírica para ser ampliamente aceptadas y aplicadas en entornos de desarrollo de software. Consecuentemente, esta situación denota la necesidad de continuar investigando y profundizando sobre posibles aplicaciones del AA en el área de IR.Sociedad Argentina de Informática e Investigación Operativ

    Forecasting the progress of a software project using automatically collected data

    Get PDF
    Avoimen lähdekoodin projekteja isännöivistä palveluista voidaan kerätä projekteihin liittyvää ohjelmistotuotantodataa automaattisella louhinnalla. Tätä dataa voidaan käyttää ohjelmistoprojektin etenemisen ennustamiseen, mikä auttaa projektipäällikköä ennakoimaan projektin resurssitarpeita. Tämän tutkimuksen tavoitteena oli selvittää voiko avoimen lähdekoodin ohjelmistoprojektin työtehtävien määrän kasvua ennustaa käyttämällä automaattisesti louhittua ohjelmistotuotantodataa. Tutkimuksessa etsittiin ennustuspotentiaalia valituista datapareista viiveellisen yhteyden avulla eli kuinka muutos yhdessä aikasarjassa vaikuttaa viiveellä toiseen tai itseensä. Tutkimuksessa käytetty kymmenen projektin aineisto kerättiin GitHub-verkkopalvelusta. Seitsemässä projektissa tuotteena on tekstinkäsittelyohjelma ja kolmessa ei. Projekteja tutkittiin visualisoinnin, ristikorrelaation, impulssivastefunktion ja autokorrelaation avulla. Visualisoinnilla tutkittiin kokonaiskuvaa ja sopivaa aikaväliä ennustuspotentiaalin etsimiseen. Matemaattisilla menetelmillä tutkittiin aikasarjojen välistä viiveellistä yhteyttä eli kuinka samanlainen viivästetty versio yhdestä aikasarjasta on toiseen verrattuna. Suurimmasta osasta projekteja löytyi alle viikon aikajänteellä näkyvä yhteys dataparien välillä. Aikasarjat oli koottu viikkotasolle eli yhteys näkyi ilman viivästystä. Eri dataa sisältävistä datapareista ei löytynyt yleisluontoista viiveellistä yhteyttä yli viikon viiveellä. Työtehtävien sisältä löytyi kuitenkin voimakasta autokorrelaatiota 90% projekteista eli työtehtävien ilmestymisessä on säännönmukaisuutta. Tätä voidaan käyttää ennustamiseen, mutta autokorrelaatiolla ei voida ennustaa yllättäviä muutoksia aikasarjoissa. Projektipäällikkö voi ennustaa alle viikon aikajänteellä näkyvän yhteyden perusteella työtehtävien ilmestymistä, jos työtahti on tiedossa. Esimerkiksi työtahdin lisääminen nopeuttaa myös työtehtävien ilmestymistä. Työtehtävien autokorrelaation avulla olisi mahdollista antaa projektin etenemisestä suuntaa antava ennuste esimerkiksi GitHubin tehtävienhallintajärjestelmän yhteydessä

    Structured Discussion and Early Failure Prediction in Feature Requests

    Get PDF
    Feature request management systems are popular tools for gathering and negotiating stakeholders' change requests during system evolution. While these frameworks encourage stakeholder participation in distributed software development, their lack of structure also raises challenges. We present a study of requirements defects and failures in large scale feature request management systems, which we build upon to propose and evaluate two distinct solutions for key challenges in feature requests. The discussion forums on which feature request management systems are based make it difficult for developers to understand stakeholders' real needs. We propose a tool-supported argumentation framework, DoArgue, that integrates into feature request management systems allowing stakeholders to annotate comments on whether a suggested feature should be implemented. DoArgue aims to help stakeholders provide input into requirements activity that is more effective and understandable to developers. A case study evaluation suggests that DoArgue encapsulates the key discussion concepts on implementing a feature, and requires little additional effort to use. Therefore it could be adopted to clarify the complexities of requirements discussions in distributed settings. Deciding how much upfront requirements analysis to perform on feature requests is another important challenge: too little may result in inadequate functionalities being developed, costly changes, and wasted development effort; too much is a waste of time and resources. We propose an automated tool-supported framework for predicting failures early in a feature request's life-cycle when a decision is made on whether to implement it. A cost-benefit model assesses the value of conducting additional requirements analysis on a body of feature requests predicted to fail. An evaluation on six large-scale projects shows that prediction models provide more value than the best baseline predictors for many failure types. This suggests that failure prediction during requirements elicitation is a promising approach for localising, guiding, and deciding how much requirements analysis to conduct

    Early stage identification of factors that affect changes in system implementation projects

    Get PDF
    Laajoilla järjestelmähankkeilla on kyseenalainen maine, sillä useat projektit ovat joko ylittäneet budjettinsa, ylittäneet aikataulunsa tai keskeytetty kokonaan. Hankkeiden monimutkaisuus kasvattaa myös epävarmuustekijöiden määrää hankkeen laajuuden arvioinnissa. Mitkä tekijät luovat epävarmuutta arviointiin eli kasvattavat muutosten todennäköisyyttä? Tässä työssä tutkittiin näiden epävarmuustekijöiden, muutosvaikut-timien, tunnistamista ennen järjestelmän käyttöönottoprojektin aloittamista. Tutkimuksen toteutettiin haastattelemalla ihmisiä kolmesta eri järjestelmäprojektista sekä luomalla kirjallisuuskatsaus järjestelmäprojekteja edeltäviin toimenpiteisiin, kuten hankkeen käynnistämiseen, esiselvitykseen, vaatimusmäärittelyyn sekä hankintavaiheeseen. Työtä varten toteutettiin 9 haastattelua, joissa kartoitettiin näitä projektia edeltäneitä vaiheita sekä projektin lopputulemaa. Yksi esimerkkiprojekti käsitteli laajaa identiteetin- ja pääsynhallintajärjestelmän käyttöönottoa eurooppalaisessa ICT-palveluyrityksessä. Kaksi muuta esimerkkiprojektia olivat julkisen organisaation järjestelmähankkeita, joissa hankittiin tuotteistettu ratkaisu tai palvelu ilman erillistä kilpailutusta. Toisessa oli kyse uuden asianhallintajär-jestelmän käyttöönotosta ja toisessa taloushallinnon ulkoistuksesta, johon sisältyi myös uusien taloushallintojärjestelmien käyttöönotto. Haastattelujen pohjalta tunnistettiin seuraavat tekijät, joilla on vaikutuksia projektin muutosmäärään, ja jotka olisi tunnistettavissa ennen projektin alkua: monitulkintaiset vaatimukset, projektiviestinnässä käytetty kieli, järjestelmätoimittajan projektipäälli-kön kokemus, asiakasorganisaation kyvykkyys tai halukkuus muuttaa prosessejaan, si-dosryhmien määrä, projektihallinnon suhteellinen osuus työmääräarviosta, järjestelmäintegraatioiden määrä, käsiteltävien järjestelmien datamallien tai käsitemallien puuttuminen sekä projektin laajuuden arvioinnissa käytetty arviointimenetelmä. Tuloksia ei voida pitää kovin yleistettävinä, sillä tutkitut projektit olivat keskenään erilaisia, eikä kahdessa tutkitussa projektissa niiden tuotteistetun luonteen vuoksi voitu hyödyntää asiakkaan omia vaatimusmäärittelyjä

    Understanding and improving requirements discovery in open source software development: an initial exploration

    Get PDF
    In proprietary or closed source software (CSS) development, there is a formal requirements engineering (RE) phase for discovering the requirements for an application. The requirements engineering process in CSS development is comprised of many formal practices (e.g., elicitation/generation). With the advent of the Internet and web-based tools and technologies, a new and different form of software development has emerged – globally distributed, typically volunteer driven, open source software (OSS) development. OSS development largely occurs in an informal, ad hoc manner and often lacks the formal developmental practices and processes of CSS development. The goal of this research is to gain a better understanding of the current state of RE in OSS, to identify potential directions for improving RE in OSS, and to empirically investigate the potential of some specific RE practices to improve OSS development. In pursuit of the research goal, in the initial phase of this research a web-based survey of practicing OSS developers was conducted to explore the current state of RE in OSS. Results supported the claims about informality of RE in OSS. as well as pointed towards potential directions for improvement. In the second phase of the research, a web-based experiment was conducted to investigate the actual benefits from a particular CSS development requirements generation practice – requirements reuse (operationalized as the availability of a library of reusable requirements within OSS development environment) – for OSS development. Analysis of the experimental data revealed that that the experimental treatment (availability of a library of reusable requirements) had a significant effect on the size of requirements message, requirements quantity and requirements completeness after controlling for covariates, indicating usefulness of the reusable library. The final phase of the research focused on OSS issue gathering approaches, a source of requirements for OSS. In this phase, a qualitative study of OSS developers explored how an OSS issue gathering approach, enforcing classification (versus free-form OSS issue gathering), may contribute to the misclassification problem (erroneous classification of OSS issues), and what can be done at the issue gathering interface level to mitigate the misclassification problem. Insights from the analysis of data from the final phase of the research shed light on the desirable characteristics that OSS issue gathering interfaces should possess for mitigating misclassification
    corecore