On the systematic transformation of requirements to specifications

被引:13
作者
Li, Zhi [1 ,2 ]
Hall, Jon G. [3 ]
Rapanotti, Lucia [3 ]
机构
[1] Guangxi Normal Univ, Coll Comp Sci & Informat Technol, Guilin 541004, Guangxi, Peoples R China
[2] Peking Univ, Minist Educ, Key Lab High Confidence Software Technol, Beijing 100871, Peoples R China
[3] Open Univ, Ctr Res Comp, Milton Keynes MK7 6AA, Bucks, England
基金
美国国家科学基金会; 中国国家自然科学基金;
关键词
Requirements; Specifications; Problem Frames; Problem progression; Graph transformation; PROBLEM FRAMES;
D O I
10.1007/s00766-013-0173-8
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Formal approaches to development are widely acknowledged to have difficulty in the validation of real-world requirements; in contrast, non-formal approaches find it difficult to identify the formal structures in requirements that are useful in a solution. That the problems that computing treats are embedded in the real world with solutions being an essentially formal machine means this dichotomy will always exist, with some new approach to the development needed which can draw a boundary between what is formalised and what can be left informal. In this paper, we show how the natural cause-and-effect structures that can be found in non-formal requirements descriptions can be used systematically to arrive at a software specification. The theoretical contribution of the work is the formalisation of Jackson's idea of problem progression in his Problem Frames framework through the use of a graph grammar to capture problem models as graphs and their manipulation as transformations. The approach is illustrated through a substantial benchmark example-Swartout's and Balzer's package router. We also report on the results of an initial empirical evaluation of the approach based on a prototype problem progression tool we have constructed.
引用
收藏
页码:397 / 419
页数:23
相关论文
共 49 条
  • [41] Strunk E.A., 2006, P 2006 INT WORKSH AD, P81
  • [42] ON THE INEVITABLE INTERTWINING OF SPECIFICATION AND IMPLEMENTATION
    SWARTOUT, W
    BALZER, R
    [J]. COMMUNICATIONS OF THE ACM, 1982, 25 (07) : 438 - 440
  • [43] Turski W.M., 1986, INFORM PROCESSING, V86, P1077
  • [44] van Lamsweerde A., 2000, 22nd International Conference on on Software Engineering, Future of Software Engineering Track, ICSE 2000, Limerick Ireland, June 4-11, 2000, P147, DOI DOI 10.1145/336512.336546
  • [45] VANLAMSWEERDE A, 1995, P RE 95 2 INT S REQ
  • [46] Verner J, 2007, PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON RESEARCH CHALLENGES IN INFORMATION SCIENCE: RCIS 2008, P71
  • [47] Xinwei Zhang, 2010, Proceedings of The Fifth International Conference on Systems (ICONS 2010), P60, DOI 10.1109/ICONS.2010.18
  • [48] Yue T, 2009, LECT NOTES COMPUT SC, V5795, P484
  • [49] Zave P., 1997, ACM Transactions on Software Engineering and Methodology, V6, P1, DOI 10.1145/237432.237434