Abstract
Computer-aided prototyping evaluates and refines software requirements by defining requirements specifications, designing underlying compositional architecture, doing restricted real-time scheduling, and constructing a prototype by using reusable executable software components. This paper presents a case study of the Computer Assisted Resuscitation Algorithm (CARA) software for a casualty intravenous fluid infusion pump and explores the effectiveness of performing rapid prototyping with parallel conceptualization to expose requirements issues. Using a suite of prototyping tools, five different design model alternatives are generated based on the analysis of customer requirements documents. Further comparison is conducted with specific focus on a sample of comparative criteria: simplicity of design, safety aspects, requirements coverage, and enabling architecture. The case study demonstrates the usefulness of comparative rapid prototyping for revealing the omissions and discrepancies in the requirements document. The study also illustrates the efficiency of creating/modifying parallel models and reason for their complexity by using the tool suite. Additional enhancements for the prototyping suite are highlighted.
Similar content being viewed by others
References
Alur R, Arney D, Gunter E, Lee I, Nam W, Zhou J (2002) Formal specifications and analysis of the computer assisted resuscitation algorithm (CARA) infusion pump control system. In: Proceedings of Integrated Design and Process Technology (IDPT), Pasadena, CA, 23–28 June 2002
Avizienis A (1985) The N-version approach to fault-tolerant software. IEEE Trans Softw Eng 11(12):1491–1501
Bastani FB, I-Yen L, Linn J, Rao K, Winter VL (2001) Design for independent composition and evaluation of high-confidence embedded software systems. In: Proceedings of the Monterey workshop on engineering automation for software intensive system, Monterey, CA, 18–20 June 2001, pp 198–207
Boehm B (1987) Industrial software metrics top 10 list. IEEE Softw 4(5):84–85
Bernstein L (1996) Forward: importance of software prototyping. J Sys Integ (Special Issue on Computer Aided Prototyping) 6(1):9–14
Eugene SW (2002) CARA infusion pump project. SUNY at Stony Brook. Available at: http://bsd7.starkhome.cs.sunysb.edu/∼cara/
Guan Z, Luqi (2003) A software prototyping framework and methods for supporting human’s software development activities. In: Proceedings of the workshop on bridging the gaps between software engineering and human computer interaction. International conference on software engineering, Portland, OR, May 2003, pp 114–121
Guan Z, Luqi et al (2002) Computer aided prototyping for dependable interactive system development In: Proceedings of the 5th Asia-Pacific conference on computer human interaction, Beijing, China, 1–4 November 2002. Science Press, China, pp 480–490
Guler M, Kejriwal N, Wills L, Clements S, Heck B, Vachtsevanos G (2002) Rapid prototyping of transition management code for reconfigurable control systems. In: Proceedings of the 13th IEEE international workshop on rapid system prototyping, Darmstadt, Germany, July 2002, pp 76–83
Janka RS, Wills LM (2000) Combining virtual benchmarking with rapid system prototyping for real-time embedded multiprocessor signal processing system codesign. In: Proceedings of the 11th international workshop on rapid system prototyping – shortening the path from specification to prototype, Paris, 21–23 June 2000, pp 20–25
Kantorowitz E, Guttman A, Arzi L (1997) The performance of the N-Fold requirement inspection method. Require Eng J 2(3):152–164
Kordon F, Luqi (2002) An introduction to rapid system prototyping. IEEE Trans Softw Eng 28(9):817–821
Kraemer B, Luqi, Berzins V (1993) Compositional semantics of a real-time prototyping language. IEEE Trans Softw Eng 19(5):453–477
Kuhl M, Spitzer B, Muller-Glaser KD, Dambacher U (2001) Universal object-oriented modeling for rapid prototyping of embedded electronic systems. In: Proceedings of the 12th international workshop on rapid system prototyping, Monterey, CA, 25–27 June 2001, pp 149–154
Lee, I (2003) Advanced tool integration for embedded system assurance (HASTEN). University of Pennsylvania. Available at: http://www-2.cs.cmu.edu/∼weigand/aro/presentations/upenn_lee_1.pdf
Luqi (1989) Handling timing constraints in rapid prototyping. In: Proceedings of the 22nd annual Hawaii international conference on system sciences. Kailua-Kona, HI, January 1989, pp 417–424
Luqi (1993) Real-time constraints in a rapid prototyping language. Comput Lang 18:77–103
Luqi (1996) System engineering and computer-aided prototyping. J Sys Integ (Special Issuse on Computer Aided Prototyping) 6(1):15–17
Luqi, Berzins V, Yeh R (1988) A prototyping language for real time software. IEEE Trans Softw Eng 14(10):1409–1423
Luqi, Chang C, Zhu H (1998) Specifications in software prototyping. J Sys Softw 42(2):150–177
Luqi, Berzins V, Shing M, Puett J, Guan Z, et al (2002) Infusion pump. Technical Report No. NPS-SW-02-004, Naval Postgraduate School, Monterey, CA, September 2002
Luqi, Qiao Y, Zhang L (2002) Computational model for high-confidence embedded system development. In: Proceedings of the Monterey workshop on radical innovations of software and systems engineering in the future, Venice, Italy, October 2002, pp 7–11
Luqi, Shing M, Berzins V, Puett J, Guan Z, et al (2003) Comparative rapid prototyping: a case study. In: Proceedings of the 13th international workshop on rapid system prototyping, San Diego, 9–11 June 2003, pp 210–217
Martin J, Tsai WT (1990) N-Fold inspection: a requirements analysis technique. Commun ACM 33(2):225–232
Ramamoorthy CV et al (1981) Application of a methodology for the development and validation of reliable process control software. IEEE Trans Softw Eng 7(6):537–555
Schneider GM, Martin J, Tsai WT (1992) An experimental study of fault detection in user requirements documents. ACM Trans Softw Eng Methodol 1(2):188–204
Siewiorek DP, Smailagic A, Salber D (2001) Rapid prototyping of computer systems: experiences and lessons. In: Proceedings of the 12th international workshop on rapid system prototyping, Monterey, CA, 25–27 June 2001, pp 2–8
Spitzer B, Kuhl M, Muller-Glaser K (2001) A methodology for architecture-oriented rapid prototyping. In: Proceedings of the 12th IEEE international workshop on rapid system prototyping, Monterey, CA, 25–27 June 2001, pp 200–205
WRAIR Department of Resuscitative Medicine (2001) Narrative description of the CARA software. Proprietary Document, WRAIR, Silver Spring, MD, January 2001
WRAIR Department of Resuscitative Medicine (2001) CARA pump control software questions, version 6.1. Proprietary Document, WRAIR, Silver Spring, MD, January 2001
WRAIR Department of Resuscitative Medicine (2001 CARA tagged requirements, increment 3, version 1.2. Proprietary Document, WRAIR, Silver Spring, MD, March 2001
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Luqi, Guan, Z., Berzins, V. et al. Requirements-document-based prototyping of CARA software. STTT 5, 370–390 (2004). https://doi.org/10.1007/s10009-003-0116-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-003-0116-7