720 research outputs found

    Personal recommendations in requirements engineering : the OpenReq approach

    Get PDF
    [Context & motivation] Requirements Engineering (RE) is considered as one of the most critical phases in software development but still many challenges remain open. [Problem] There is a growing trend of applying recommender systems to solve open RE challenges like requirements and stakeholder discovery; however, the existent proposals focus on specific RE tasks and do not give a general coverage for the RE process. [Principal ideas/results] In this research preview, we present the OpenReq approach to the development of intelligent recommendation and decision technologies that support different phases of RE in software projects. Specifically, we present the OpenReq part for personal recommendations for stakeholders. [Contribution] OpenReq aim is to improve and speed up RE processes, especially in large and distributed systemsPeer ReviewedPostprint (author's final draft

    State of the art of a multi-agent based recommender system for active software engineering ontology

    Get PDF
    Software engineering ontology was first developed to provide efficient collaboration and coordination among distributed teams working on related software development projects across the sites. It helped to clarify the software engineering concepts and project information as well as enable knowledge sharing. However, a major challenge of the software engineering ontology users is that they need the competence to access and translate what they are looking for into the concepts and relations described in the ontology; otherwise, they may not be able to obtain required information. In this paper, we propose a conceptual framework of a multi-agent based recommender system to provide active support to access and utilize knowledge and project information in the software engineering ontology. Multi-agent system and semantic-based recommendation approach will be integrated to create collaborative working environment to access and manipulate data from the ontology and perform reasoning as well as generate expert recommendation facilities for dispersed software teams across the sites

    A Method for Recommending Computer-Security Training for Software Developers

    Get PDF
    Vulnerable code may cause security breaches in software systems resulting in financial and reputation losses for the organizations in addition to loss of their customers’ confidential data. Delivering proper software security training to software developers is key to prevent such breaches. Conventional training methods do not take the code written by the developers over time into account, which makes these training sessions less effective. We propose a method for recommending computer–security training to help identify focused and narrow areas in which developers need training. The proposed method leverages the power of static analysis techniques, by using the flagged vulnerabilities in the source code as basis, to suggest the most appropriate training topics to different software developers. Moreover, it utilizes public vulnerability repositories as its knowledgebase to suggest community accepted solutions to different security problems. Such mitigation strategies are platform independent, giving further strength to the utility of the system. This research discussed the proposed architecture of the recommender system, case studies to validate the system architecture, tailored algorithms to improve the performance of the system, and human subject evaluation conducted to determine the usefulness of the system. Our evaluation suggests that the proposed system successfully retrieves relevant training articles from the public vulnerability repository. The human subjects found these articles to be suitable for training. The human subjects also found the proposed recommender system as effective as a commercial tool

    A Method for Recommending Computer-Security Training for Software Developers

    Get PDF
    Vulnerable code may cause security breaches in software systems resulting in financial and reputation losses for the organizations in addition to loss of their customers’ confidential data. Delivering proper software security training to software developers is key to prevent such breaches. Conventional training methods do not take the code written by the developers over time into account, which makes these training sessions less effective. We propose a method for recommending computer–security training to help identify focused and narrow areas in which developers need training. The proposed method leverages the power of static analysis techniques, by using the flagged vulnerabilities in the source code as basis, to suggest the most appropriate training topics to different software developers. Moreover, it utilizes public vulnerability repositories as its knowledgebase to suggest community accepted solutions to different security problems. Such mitigation strategies are platform independent, giving further strength to the utility of the system. This research discussed the proposed architecture of the recommender system, case studies to validate the system architecture, tailored algorithms to improve the performance of the system, and human subject evaluation conducted to determine the usefulness of the system. Our evaluation suggests that the proposed system successfully retrieves relevant training articles from the public vulnerability repository. The human subjects found these articles to be suitable for training. The human subjects also found the proposed recommender system as effective as a commercial tool

    Automating Software Customization via Crowdsourcing using Association Rule Mining and Markov Decision Processes

    Get PDF
    As systems grow in size and complexity so do their configuration possibilities. Users of modern systems are easy to be confused and overwhelmed by the amount of choices they need to make in order to fit their systems to their exact needs. In this thesis, we propose a technique to select what information to elicit from the user so that the system can recommend the maximum number of personalized configuration items. Our method is based on constructing configuration elicitation dialogs through utilizing crowd wisdom. A set of configuration preferences in form of association rules is first mined from a crowd configuration data set. Possible configuration elicitation dialogs are then modeled through a Markov Decision Processes (MDPs). Within the model, association rules are used to automatically infer configuration decisions based on knowledge already elicited earlier in the dialog. This way, an MDP solver can search for elicitation strategies which maximize the expected amount of automated decisions, reducing thereby elicitation effort and increasing user confidence of the result. We conclude by reporting results of a case study in which this method is applied to the privacy configuration of Facebook

    Functional Requirements Identification Using Item-to-Item Collaborative Filtering

    Get PDF
    One of the most difficult tasks in the development of software is the identification of the functional requirements. A well-defined functional requirement will eventually map the success of a software project. A support tool that can recommend candidate functional requirements for a software project being developed will help software engineers to deliver the right software to the clients.The purpose of this study is to determine whether a collection of previously developed software applications can serve as basis for the development of a model to identify functional requirements of a project to be developed. Completed software project documentations of Master in Information Technology graduates from Higher Education Institutions in northern Luzon were collected and categorized, and projects on Faculty Evaluation Systems were analyzed in order to extract the vectors of functional requirements for the target software domain. Item-to-item collaborative filtering is then applied to these vectors to form the recommender model. Finally, the model was validated using the leave-one-out cross-validation technique. The resulting high accuracy rate indicates that the model built using the item-to-item collaborative filter may be used to build a tool that can automatically recommend important related functional requirements given one or more requirements identified by any of the project stakeholders

    Personalisation and recommender systems in digital libraries

    Get PDF
    Widespread use of the Internet has resulted in digital libraries that are increasingly used by diverse communities of users for diverse purposes and in which sharing and collaboration have become important social elements. As such libraries become commonplace, as their contents and services become more varied, and as their patrons become more experienced with computer technology, users will expect more sophisticated services from these libraries. A simple search function, normally an integral part of any digital library, increasingly leads to user frustration as user needs become more complex and as the volume of managed information increases. Proactive digital libraries, where the library evolves from being passive and untailored, are seen as offering great potential for addressing and overcoming these issues and include techniques such as personalisation and recommender systems. In this paper, following on from the DELOS/NSF Working Group on Personalisation and Recommender Systems for Digital Libraries, which met and reported during 2003, we present some background material on the scope of personalisation and recommender systems in digital libraries. We then outline the working group’s vision for the evolution of digital libraries and the role that personalisation and recommender systems will play, and we present a series of research challenges and specific recommendations and research priorities for the field

    Domain Orientation by Feature Modeling and Recommendation for Product Classification

    Get PDF
    Domain Analysis says that activity occurring before system analysis provides domain model. Domain model is input to the system analysis to the designer‘s tasks. Domain analysis is the procedure of identifying, organizing, analyzing, and modeling features common to a specific domain. The complete process is very time consuming and more man power is required for it. There are various projects which require extensive domain analysis activities. In proposed method, recommended system is used to reduce human efforts of performing domain analysis. It is not easy to discover relationship between items in a large database of sales transactions but there are some algorithms for solving this problem. Data mining techniques are used to discover common features across products as well as relationships among those features .Incremental diffusive algorithm is used to extract features. Bi-Partity Distribution technique is used for feature recommendations during the domain analysis process DOI: 10.17762/ijritcc2321-8169.150512
    corecore