22 research outputs found

    Elicitation and management of user requirements in market-driven software development

    Get PDF
    Market-driven software development companies experience challenges in requirements management that many traditional requirements engineering methods and techniques do not acknowledge. Large markets, limited contact with end users, and strong competition forces the market-driven software development company to constantly invent new, selling requirements, frequently release new versions with an accompanying pressure of short time-to-market, and take both the technical and financial risks of development. This thesis presents empirical results from case studies in requirements elicitation and management at a software development company. The results include techniques to explore, understand, and handle bottlenecks in the requirements process where requirements continuously arrive at a high rate from many different stakeholders. Through simulation of the requirements process, potential bottlenecks are identified at an early stage, and fruitless improvement attempts may be avoided. Several techniques are evaluated and recommended to support the market-driven organisation in order to increase software quality and avoid process overload situations. It is shown that a quick and uncomplicated in-house usability evaluation technique, an improved heuristic evaluation, may be adequate to get closer to customer satisfaction. Since needs and opportunities differ between markets, a distributed prioritisation technique is suggested that will help the organisation to pick the most cost-beneficial and customer satisfying requirements for development. Finally, a technique based on automated natural language analysis is investigated with the aim to help resolve congestion in the requirements engineering process, yet retaining ideas that may bring a competitive advantage

    An industrial case study of usability evaluation in market-driven packaged software development

    Get PDF
    In market-driven software development it is crucial to produce the best product as quickly as possible in order to reach customer satisfaction. Requirements arrive at a high rate and the main focus tends to be on the functional requirements. The functional requirements are important, but their usefulness relies on their usability, which may be a rewarding competitive means on its own. Existing methods help software development companies to improve the usability of their product. However, companies that have little experience in usability still find them to be difficult to use, unreliable, and expensive. In this study we present results and experiences on conducting two known usability evaluations, using a questionnaire and a heuristic eval-uation, at a large software development company. We have found that the two methods complement each other very well, the first giving scientific measures of usability attributes, and the second revealing actual usability deficiencies in the software. Although we did not use any usability experts, evaluations performed by company employees produced valuable results. The company, who had no prior experience in usability evaluation, found the results both useful and meaningful. We can conclude that the evaluators need a brief introduction on usability to receive even better results from the heuristic evaluation, but this may not be required in the initial stages. Much more essential is the support from every level of management. Usability engi-neering is cost effective and does not require many resources. However, without direct management support, usability engi-neering efforts will most likely be fruitless

    A Feasibility Study of Automated Support for Similarity Analysis of Natural Language Requirements in Market-Driven Development

    Get PDF
    In market-driven software development there is a strong need for support to handle congestion in the requirements engineering process, which may occur as the demand for short time-to-market is combined with a rapid arrival of new requirements from many different sources. Automated analysis of the continuous flow of incoming requirements provides an opportunity to increase the efficiency of the requirements engineering process. This paper presents empirical evaluations of the benefit of automated similarity analysis of textual requirements, where existing information retrieval techniques are used to statistically measure requirements similarity. The results show that automated analysis of similarity among textual requirements is a promising technique that may provide effective support in identifying relationships between requirements

    Managing Natural Language Requirements in Large-Scale Software Development

    No full text
    An increasing number of market- and technology-driven software development companies face the challenge of managing several thousands of requirements written in natural language. The large number of requirements causes bottlenecks in the requirements management process and calls for increased efficiency in requirements engineering. This thesis presents results from empirical investigations of using linguistic engineering techniques to alleviate three requirements management activities in large-scale software development: identification of duplicate requirements, linkage of related requirements, and consolidation of different sets of requirements. The activities rely on one common activity: finding requirements that are semantically similar, i.e., refer to the same underlying functionality. Three case studies are presented, in which three different companies, comprising three different requirements management challenges, are investigated. Simulation is used to explore process bottlenecks and two different sets of industrial requirements are used for evaluating suggested solutions. A controlled experiment is also presented, evaluating a new open source support tool for semiautomatic identification of similar requirements. The results show that, for the investigated activities, lexical similarity between requirements may be a sufficient approximation of their semantic similarity. It is also shown that automatic calculation of this similarity may support the activities and give valuable timesavings. The results from the presented research point in one direction: that simple, robust, and costefficient linguistic engineering techniques can give effective support to requirements management activities

    Lexical semantics for software requirements engineering – a corpus-based approach

    No full text
    In companies that constantly develop new software releases for large markets, there continually arrive new requirements, written in natural language that may affect the development work. Before any decision is made about the requirements, these must be analysed and understood, and related to the current set of implemented and queued requirements. This task is time-consuming owing to the high inflow of requirements, and decision-making would be facilitated by any support that would reduce the requirements analyst’s workload. One of the main tasks is finding requirement duplicates and requirements with similar content and different NLP methods have been tried for this. Simple word matching is one of the methods used for linkage between requirements. If links could be set up not only between words, but also between concepts at different semantic levels, the chances of finding content-corresponding requirements would be greater. One goal of this project is to establish a terminology for requirements as well as to establish (Wordnet-type) semantic relations between terms, in order to enable multi-level linkage. For this purpose, we use a corpus consisting of 1,932 authentic software requirements, written in English of varying grammatical and stylistic quality. First, term candidates were extracted using the WordSmith Keyword function, with BNC Sampler as reference corpus. To find out whether there is any terminology specific to the ‘requirements’ sub-domain of the ‘software’ domain, the documentation associated with the software to which the requirements relate was also used as a reference (separately). Then, lexico-semantic patterns according to Hearst (1992) were used to find hyponymy–hyperonymy relations, and to confirm manually established relations. These analyses were performed on the text both ‘as is’ and, reducing noise somewhat, after POS-tagging by means of the Brill tagger (Brown Corpus tag-set). The results so far suggest that corpus-based methods are of importance to the management or requirements analyses

    An experiment on linguistic tool support for consolidation of requirements from multiple sources in market-driven product development

    No full text
    This paper presents an experiment with a linguistic support tool for consolidation of requirements sets. The experiment is designed based on the requirements management process at a large market-driven software development company that develops generic solutions to satisfy many different customers. New requirements and requests for information are continuously issued, which must be analyzed and responded to. The new requirements should first be consolidated with the old to avoid reanalysis of previously elicited requirements and to complement existing requirements with new information. In the presented experiment, a new open-source tool is evaluated in a laboratory setting. The tool uses linguistic engineering techniques to calculate similarities between requirements and presents a ranked list of suggested similar requirements, between which links may be assigned. It is hypothesized that the proposed technique for finding and linking similar requirements makes the consolidation more efficient. The results show that subjects that are given the support provided by the tool are significantly more efficient and more correct in consolidating two requirements sets, than are subjects that do not get the support. The results suggest that the proposed techniques may give valuable support and save time in an industrial requirements consolidation process

    Evaluating Automated Support for Requirements Similarity Analysis in Market-Driven Development

    No full text
    In market-driven software development, there is a considerable risk for congestion in the requirements engineering process, as the demand of short time-to-market is combined with a rapid arrival of new requirements from many different sources. Automated analysis of the continuous flow of incoming requirements provides an opportunity to increase the efficiency of the requirements engineering process. This paper presents empirical evaluations of the benefit of automated similarity analysis of textual requirements, where existing Information Retrieval techniques are used to statistically measure requirements similarity. The results show that automated analysis of similarity among textual requirements is a promising technique that may provide effective support in both requirements duplicate identification and requirements interdependency analysis
    corecore