Abstract
Nowadays, the most popular programming languages are so-called third generation languages, such as Java, C# and C++, but higher level languages are also widely used for application development. Our work was motivated by the need for a quality assurance solution for a fourth generation language (4GL) called Magic. We realized that these very high level languages lie outside the main scope of recent static analysis techniques and researches, even though there is an increasing need for solutions in 4GL environment.
During the development of our quality assurance framework we faced many challenges in adapting metrics from popular 3GLs and defining new ones in 4GL context. Here we present our results and experiments focusing on the complexity of a 4GL system. We found that popular 3GL metrics can be easily adapted based on syntactic structure of a language, however it requires more complex solutions to define complexity metrics that are closer to developers’ opinion. The research was conducted in co-operation with a company where developers have been programming in Magic for more than a decade. As an outcome, the resulting metrics are used in a novel quality assurance framework based on the Columbus methodology.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
IEEE Standard Glossary of Software Engineering Terminology. Tech. rep. (1990)
Albrecht, A.J., Gaffney, J.E.: Software function, source lines of code, and development effort prediction: A software science validation. IEEE Transaction on Software Engineering 9, 639–648 (1983)
Bakota, T., Beszédes, Á., Ferenc, R., Gyimóthy, T.: Continuous software quality supervision using SourceInventory and Columbus. In: ICSE Companion, pp. 931–932 (2008)
Basili, V.R., Briand, L.C., Melo, W.L.: A validation of object-oriented design metrics as quality indicators. IEEE Transaction on Software Engineering 22, 751–761 (1996)
Boehm, B.W.: Software Engineering Economics, 1st edn. Prentice Hall PTR, Upper Saddle River (1981)
Burgin, M., Debnath, N.: Complexity measures for software engineering. J. Comp. Methods in Sci. and Eng. 5, 127–143 (2005)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Transaction on Software Engineering 20, 476–493 (1994)
Ferenc, R., Beszédes, Á., Tarkiainen, M., Gyimóthy, T.: Columbus – Reverse Engineering Tool and Schema for C++. In: Proceedings of the 18th International Conference on Software Maintenance (ICSM 2002), pp. 172–181. IEEE Computer Society, Los Alamitos (2002)
Halstead, M.H.: Elements of Software Science (Operating and programming systems series). Elsevier Science Inc., New York (1977)
MacDonell, S.: Metrics for database systems: An empirical study. In: Proceedings of the 4th International Symposium on Software Metrics, pp. 99–107. IEEE Computer Society, Los Alamitos (1997)
McCabe, T.J.: A complexity measure. IEEE Transaction on Software Engineering SE-2(4) (December 1976)
van der Meulen, M.J.P., Revilla, M.A.: Correlations between internal software metrics and software dependability in a large population of small C/C++ programs. In: Proceedings of ISSRE 2007, The 18th IEEE International Symposium on Software Reliability, pp. 203–208 (November 2007)
Nagy, C.: MAGISTER: Quality assurance of magic applications for software developers and end users. In: Proceedings of ICSM 2010, 26th IEEE International Conference on Software Maintenance, pp. 1–6. IEEE Computer Society, Los Alamitos (2010)
Nagy, C.: Solutions for reverse engineering 4GL applications, recovering the design of a logistical wholesale system. In: Proceedings of CSMR 2011, 15th European Conference on Software Maintenance and Reengineering. IEEE Computer Society, Los Alamitos (2011)
Navlakha, J.K.: A survey of system complexity metrics. The Computer Journal 30, 233–238 (1987)
Verner, J., Tate, G.: Estimating size and effort in fourth-generation development. IEEE Software 5, 15–22 (1988)
Witting, G.E., Finnie, G.R.: Using artificial neural networks and function points to estimate 4GL software development effort. Australasian Journal of Information Systems 1(2) (1994)
Yu, S., Zhou, S.: A survey on metric of software complexity. In: Proceedings of ICIME 2010, The 2nd IEEE International Conference on Information Management and Engineering, pp. 352–356 (April 2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nagy, C., Vidács, L., Ferenc, R., Gyimóthy, T., Kocsis, F., Kovács, I. (2011). Complexity Measures in 4GL Environment. In: Murgante, B., Gervasi, O., Iglesias, A., Taniar, D., Apduhan, B.O. (eds) Computational Science and Its Applications - ICCSA 2011. ICCSA 2011. Lecture Notes in Computer Science, vol 6786. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21934-4_25
Download citation
DOI: https://doi.org/10.1007/978-3-642-21934-4_25
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21933-7
Online ISBN: 978-3-642-21934-4
eBook Packages: Computer ScienceComputer Science (R0)