Specifying features of an evolving software system

被引:9
|
作者
Tun, Thein Than [1 ]
Trew, Tim [2 ]
Jackson, Michael [1 ]
Laney, Robin [1 ]
Nuseibeh, Bashar [1 ]
机构
[1] Open Univ, Dept Comp, Milton Keynes MK7 6AA, Bucks, England
[2] NXP Semicond, NL-5656 AE Eindhoven, Netherlands
来源
SOFTWARE-PRACTICE & EXPERIENCE | 2009年 / 39卷 / 11期
基金
英国工程与自然科学研究理事会;
关键词
software features; evolution; specifications; feature composition; problem frames; REQUIREMENTS;
D O I
10.1002/spe.923
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software development is increasingly concerned with maintaining and extending existing software systems to meet the evolving user requirements. Many of these systems are feature-rich and are developed incrementally. As structures of existing software systems-in addition to the user requirements-influence the specifications, specifying these systems poses unique challenges. This paper reports on our experience of applying an engineering approach to specifying an evolving feature-rich television software system. In this approach, features are specified modularly by first fitting their problems to known problem patterns, and then analyzing typical concerns-meaning the potential causes of errors-associated with those patterns. In cases where the existing design poses difficulties when fitting problems to patterns, we transform its structure using known design mechanisms so that the problems fit the patterns. After deriving specifications of individual features, possible interactions between features are detected, before declaratively specifying resolutions to undesired interactions. As the concerns of features and their composition are addressed separately, the specifications derived are modular, thus, providing rich treaceability to their requirements. As well as discussing how features may be specified using natural language, we also show how their descriptions may be formalized using a form of temporal logic called the Event Calculus, and prove their correctness using an off-the-shelf tool. Copyright (C) 2009 John Wiley & Sons, Ltd.
引用
收藏
页码:973 / 1002
页数:30
相关论文
共 50 条
  • [1] Specifying dynamic software system architectures
    Selic, Bran
    SOFTWARE AND SYSTEMS MODELING, 2021, 20 (03): : 595 - 605
  • [2] Specifying dynamic software system architectures
    Bran Selić
    Software and Systems Modeling, 2021, 20 : 595 - 605
  • [3] A software system for specifying design procedures
    Anuar, A
    Atkinson, J
    JOURNAL OF ENGINEERING DESIGN, 2000, 11 (03) : 191 - 210
  • [4] Specifying software features for composition: A tool-supported approach
    Thein Than Tun
    Laney, Robin
    Yu, Yijun
    Nuseibeh, Bashar
    COMPUTER NETWORKS, 2013, 57 (12) : 2454 - 2464
  • [5] THE SOFTWARE MARKET AS A COMPLEX EVOLVING SYSTEM
    GOERTZEL, B
    JOURNAL OF SOCIAL AND EVOLUTIONARY SYSTEMS, 1994, 17 (01) : 9 - 20
  • [6] SPECIFYING CONTROL SOFTWARE
    LANGE, ST
    HYDROCARBON PROCESSING, 1989, 68 (12): : 53 - 55
  • [7] ON SPECIFYING SOFTWARE QUALITY
    DROMEY, RG
    MCGETTRICK, AD
    SOFTWARE QUALITY JOURNAL, 1992, 1 (01) : 45 - 74
  • [8] Specifying software connectors
    Barbosa, MA
    Barbosa, LS
    THEORETICAL ASPECTS OF COMPUTING - ICTAC 2004, 2005, 3407 : 52 - 67
  • [9] SPECIFYING SOFTWARE REQUIREMENTS
    YEH, RT
    ZAVE, P
    PROCEEDINGS OF THE IEEE, 1980, 68 (09) : 1077 - 1085
  • [10] Specifying Evolving Requirements Models with TimedURN
    Aprajita
    Luthra, Sahil
    Mussbacher, Gunter
    2017 IEEE/ACM 9TH INTERNATIONAL WORKSHOP ON MODELLING IN SOFTWARE ENGINEERING (MISE), 2017, : 26 - 32