This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Is it Possible to Decorate Graphical Software Design and Architecture Models with Qualitative Information?-An Experiment
December 2002 (vol. 28 no. 12)
pp. 1181-1193

Abstract—Software systems evolve over time and it is often difficult to maintain them. One reason for this is that often it is hard to understand the previous release. Further, even if architecture and design models are available and up to date, they primarily represent the functional behavior of the system. To evaluate whether it is possible to also represent some nonfunctional aspects, an experiment has been conducted. The objective of the experiment is to evaluate the cognitive suitability of some visual representations that can be used to represent a control relation, software component size and component external and internal complexity. Ten different representations are evaluated in a controlled environment using 35 subjects. The results from the experiment show that representations with low cognitive accessibility weight can be found. In an example, these representations are used to illustrate some qualities in an SDL block diagram. It is concluded that the incorporation of these representations in architecture and design descriptions is both easy and probably worthwhile. The incorporation of the representations should enhance the understanding of previous releases and, hence, help software developers in evolving and maintaining complex software systems.

[1] S.E. Asch, Social Psychology. Prentice-Hall, 1952, reprinted, Cambridge Univ. Press, 1987.
[2] M.J. Baker and S.G. Eick, “Space-Filling Software Visualization,” J. Visual Languages and Computing, vol. 6, no. 2, pp. 119-133, June 1995.
[3] T.A. Ball and S.G. Eick, “Software Visualization in the Large,” Computer, vol. 29, no. 4, pp. 33–43, 1996.
[4] V.R. Basili and B.T. Perricone,“Software errors and complexity: An empirical investigation,” Comm. ACM, vol. 27, no. 1, pp. 42-52, Jan. 1984.
[5] L. Bass et al., Software Architecture in Practice, Addison Wesley Longman, 1997.
[6] W. Benary, “Beobachtung zu einem Experiment uber Helligkeitskontrast,” Psychologische Forschung, vol. 5, pp. 131-142, 1924.
[7] J. Bertin, Semiology of Graphics. The Univ. of Wisconsin Press, 1983, translation of J. Bertin, Sémiologie graphique, 1967.
[8] J. Bertin, Graphics and Graphic Information Processing. Berlin, Germany: Walter de Gruyter, 1981, translation of J. Bertin, La Graphique et le Traitment Graphique de l'Information, 1977.
[9] J. Bosch, Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach, Addison-Wesley, Boston, 2000.
[10] L. Bratthall, P. Runeson, K. Adelswärd, and W. Eriksson, “Lead-Time Challenges in the Development and Evolution of Distributed Real-Time Systems,” Information Systems and Technology, vol. 42, no. 13, pp. 947-958, Sept. 2000.
[11] M.C. Chuah and S.G. Eick, “Glyphs for Software Visualization,” Proc. Fifth Int'l Workshop Program Comprehension, pp. 183-191, May 1997.
[12] T.D. Cook and D.T. Campbell, Quasi-Experimentation—Design and Analysis Issues for Field Settings. Houghton Mifflin Company, 1979.
[13] M.J. Egenhofer and D.M. Mark, “Naïve Geography,” Proc. Spatial Information Theory: A Theoretical Basis for GIS COSIT '95, pp. 1-15, 1995.
[14] S.G. Eick, T.L. Graves, A.F. Karr, J.S. Marron, and A. Mockus, Does Code Decay? Assessing the Evidence from Change Management Data IEEE Trans. Software Eng., vol. 27, no. 1, pp. 1-12, Jan./Feb. 2001.
[15] E. Forman and K. Peniwati, “Aggregating Individual Judgements and Priorities with the Analytic Hierarchy Process,” European J. Operational Research, vol. 108, pp. 165-169, 1998.
[16] C. Freksa, “Spatial and Temporal Structures in Cognitive Processes,” Foundations of Computer Science: Potential—Theory—Cognition, 1997.
[17] H. Gall, M. Jazayeri, and C. Riva, “Visualizing Software Release Histories: The Use of Color and Third Dimension,” Proc. Int'l Conf. Software Maintenance, pp. 99-108, 1999.
[18] H. Gall, K. Hajek, and M. Jazayeri, “Detection of Logical Coupling Based on Product Release History,” Proc. Int'l Conf. Software Maintenance, pp. 190-198, 1998.
[19] P.G. Gertsberger and T.J. Allen, “Criteria Used by Research and Development Engineers in the Selection of Information Source,” J. Applied Psychology, vol. 52, no. 4, pp. 272-279, 1968.
[20] C. Habel and C. Eschenbach, “Abstract Structures in Spatial Cognition,” Foundations of Comp. Science. Potential—Theory—Cognition, 1997.
[21] S. Haglund and J. Persson, “A Process for Reverse Engineering of AXE 10 Software,” Proc. Sixth Reeng. Forum, Mar. 1998.
[22] M. Höst, B. Regnell, and C. Wohlin, “Using Students as Subjects—A Comparative Study of Students and Professionals in Lead-Time Impact Assessment,” Empirical Software Eng., vol. 5, pp. 201-214, 2000.
[23] IEEE, IEEE Standard 1471-2000: Recommended Practice for Architectural Description of Software-Intensive Systems, Sept. 2000.
[24] International Telecommunication Union, Sector T (ITU-T), Recommendation Z.100:1996—Specification and Description Language SDL, ITU, Geneva, Switzerland, 1996.
[25] R. Ramjee et al., "Adaptive Playout Mechanisms for Packetized Audio Applications in Wide-Area Networks," Proc. Conf. Computer Comm. (IEEE Infocom), IEEE CS Press, Los Alamitos, Calif., June 1994, pp. 680-688.
[26] E. Johansson, L. Bratthall, A. Wesslén, and M. Höst, “The Importance of Quality Requirements in Software Platform Development—A Survey,” Proc. Hawaii Int'l Conf. Systems and Science (HICS-34), Jan. 2001.
[27] J. Karlsson and K. Ryan, "A Cost-Value Approach for Prioritizing Requirements," IEEE Software, Sept./Oct. 1997, pp. 67-74.
[28] W.H. Kruskal and W.A. Wallis, “Use of Ranks on One Criterion Variance Analysis,” J. Am. Statistical Assoc., vol. 47,corrections appear in vol. 48, 1952.
[29] A. von Mayrhauser and A.M. Vans, “Comprehension Processes During Large-Scale Maintenance,” Proc. 16th Int’l Conf. Software Engineering, IEEE CS Press, Los Alamitos, Calif., Order No. 5855, 1994, pp. 39-48.
[30] A. von Mayrhauser, J. Wang, M.C. Ohlsson, and C. Wohlin, “Deriving a Fault Architecture from Defect History,” Proc. Int'l Symp. Software Reliability Eng., pp. 295-303, 1999.
[31] E. Miranda, “An Evaluation of the Paired Comparisons Method for Software Sizing,” Proc. 22nd IEEE Int'l Conf. Software Eng., 2000.
[32] D.C. Montgomery, Design and Analysis of Experiments, third ed. New York: John Wiley and Sons, 1991.
[33] M.C. Ohlsson, A. von Mayrhauser, B. McGuire, and C. Wohlin, “Code Decay Analysis of Legacy Software through Successive Releases,” Proc. IEEE Aerospace Conf., pp. 69-81, Mar. 1999.
[34] M.C. Ohlsson and C. Wohlin, “Identification of Green, Yellow and Red Legacy Components,” Proc. Int'l Conf. Software Maintenance, pp. 6-15, Nov. 1998.
[35] J. Rumbaugh, I. Jacobson, and G. Booch, The Unified Modeling Language Reference Manual. Addison-Wesley, 1999.
[36] T.L. Saaty, The Analytic Hierarchy Process. New York: McGraw-Hill, 1980.
[37] M. Shaw and D. Garlan, Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.
[38] D. Soni, R. Nord, and C. Hofmeister, “Software Architecture in Industrial Applications,” Proc. 17th Int'l Conf. Software Eng., pp. 196-207, Apr. 1995.
[39] M.D. Storey, K. Wong, and H.A. Müller, “How Do Program Understanding Tools Affect How Programmers Understand Programs?” Proc. Fourth Working Conf. Reverse Eng., pp. 12-21, Oct. 1997.
[40] W. Tichy, “Hints for Reviewing Empirical Work in Software Engineering,” Empirical Software Eng. J., vol. 5, pp. 309-312, 2001.
[41] A. Treisman, “Features and Objects in Visual Processing,” Scientific Am., Nov. 1986.
[42] E.R. Tufte, The Visual Display of Quantitative Information, Graphics Press, Cheshire, Conn., 1983, p. 111.
[43] C. Ware, “Color Sequences for Univariate Maps: Theory, Experiments, and Principles,” IEEE Computer Graphics and Applications, vol. 8, no. 5, pp. 41-49, Sept. 1988.
[44] C. Wohlin, P. Runeson, M. Höst, M.C. Ohlsson, B. Regnell, and A. Wesslén, Experimentation in Software Engineering: An Introduction. Kluwer Academic, 2000.

Index Terms:
Software evolution, software maintenance, software quality representation, software quality aspects, software architecture models, software design models.
Citation:
Lars Bratthall, Claes Wohlin, "Is it Possible to Decorate Graphical Software Design and Architecture Models with Qualitative Information?-An Experiment," IEEE Transactions on Software Engineering, vol. 28, no. 12, pp. 1181-1193, Dec. 2002, doi:10.1109/TSE.2002.1158290
Usage of this product signifies your acceptance of the Terms of Use.