Skip to main content

Prioritising Security Tests on Large-Scale and Distributed Software Development Projects by Using Self-organised Maps

  • Conference paper
  • First Online:
Neural Information Processing (ICONIP 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9950))

Included in the following conference series:

Abstract

Large-scale and distributed software development initiatives demand a systematic testing process in order to prevent failures. Significant amount of resources are usually allocated on testing. Like any development and designing task, testing activities have to be prioritised in order to efficiently validate the produced code. By using source code complexity measurement, Computational Intelligence and Image Processing techniques, this research presents a new approach to prioritise testing efforts on large-scale and distributed software projects. The proposed technique was validated by automatically highlighting sensitive code within the Linux device drivers source code base. Our algorithm was able to classify 3, 077 from 35, 091 procedures as critical code to be tested. We argue that the approach is general enough to prioritise test tasks of most critical large-scale and distributed developed software such as: Operating Systems, Enterprise Resource Planning and Content Management systems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Such as: Git, Subversion, Mercurial and CVS.

  2. 2.

    Such as: Redmine, Bugzilla, Atlassian Jira and Github.

  3. 3.

    https://www.kernel.org/doc/linux/MAINTAINERS.

  4. 4.

    https://bugzilla.kernel.org/.

  5. 5.

    Teams that contains other teams, like: Network Drivers or DRM Drivers.

  6. 6.

    http://www.asus.com/About_ASUS/Corporate_Social_Responsibility/.

References

  1. Basili, V., Briand, L., Melo, W.: A validation of object-oriented design metrics as quality indicators. IEEE Trans. Softw. Eng. 22(10), 751–761 (1996)

    Article  Google Scholar 

  2. Bollobás, B.: Modern Graph Theory. Graduate Texts in Mathematics, vol. 184. Springer, Heidelberg (1998)

    MATH  Google Scholar 

  3. Cataldo, M., de Souza, C.: Exploring the impact of API complexity on failure-proneness. In: 9th International Conference on Global Software Engineering (2014)

    Google Scholar 

  4. Dibble, C., Gestwicki, P.: Refactoring code to increase readability and maintainability: a case study. J. Comput. Sci. Coll. 30(1), 41–51 (2014)

    Google Scholar 

  5. Hammami, I., Mercier, G., Hamouda, A.: The Kohonen map for credal classification of large multispectral images. In: 2014 IEEE Geoscience and Remote Sensing Symposium, pp. 3706–3709. IEEE, July 2014

    Google Scholar 

  6. Henderson-Sellers, B., Tegarden, D.: A critical re-examination of cyclomatic complexity measures. In: Lee, M., Barta, B.-Z., Juliff, P. (eds.) Software Quality and Productivity. IFIP Advances in Information and Communication Technology, pp. 328–335. Springer, Heidelberg (1994)

    Google Scholar 

  7. Kohonen, T.: Self-organized formation of topologically correct feature maps. Biol. Cybern. 43, 59–69 (1982)

    Article  MathSciNet  MATH  Google Scholar 

  8. Kohonen, T.: The self-organizing map. Proc. IEEE 78(9), 1464–1480 (1990)

    Article  Google Scholar 

  9. Lihong, M., Mingguang, W., Jun, J.: Joint investigation of cases using self-organized map network. In: 2011 International Conference on Electronics, Communications and Control (ICECC), pp. 1520–1523. IEEE, September 2011

    Google Scholar 

  10. Mccabe, T.: Cyclomatic complexity and the year 2000. IEEE Softw. 13(3), 115–117 (1996)

    Article  Google Scholar 

  11. McCabe, T.: A complexity measure. IEEE Trans. Softw. Eng. 4, 308–320 (1976)

    Article  MathSciNet  MATH  Google Scholar 

  12. Mota, R.L.M., Shiguemori, E.H., Ramos, A.C.B.: Application of self-organizing maps at change detection in Amazon forest. In: 11th International Conference on Information Technology: New Generations, pp. 371–376. IEEE, April 2014

    Google Scholar 

  13. Nagappan, N., Ball, T., Zeller, A.: Mining metrics to predict component failures. In: 28th International Conference on Software Engineering, pp. 452–461 (2006)

    Google Scholar 

  14. Sarwar, S., Muhammd, M.: Cyclomatic complexity: the nesting problem. In: 2013 Eighth International Conference on Digital Information Management (ICDIM) (2013)

    Google Scholar 

  15. Shepperd, M.: A critique of cyclomatic complexity as a software metric. Softw. Eng. J. 3(2), 30 (1988)

    Article  Google Scholar 

  16. Viega, J., McGraw, G.: Building Secure Software: How to Avoid Security Problems the Right Way. Addison-Wesley Press, Melbourne (2001)

    Google Scholar 

  17. Watson, A., McCabe, T., Wallace, D.: Structured testing: a testing methodology using the cyclomatic complexity metric. NIST Spec. Publ. 500(235), 1–114 (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marcos Alvares .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Alvares, M., de Lima Neto, F.B., Marwala, T. (2016). Prioritising Security Tests on Large-Scale and Distributed Software Development Projects by Using Self-organised Maps. In: Hirose, A., Ozawa, S., Doya, K., Ikeda, K., Lee, M., Liu, D. (eds) Neural Information Processing. ICONIP 2016. Lecture Notes in Computer Science(), vol 9950. Springer, Cham. https://doi.org/10.1007/978-3-319-46681-1_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-46681-1_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-46680-4

  • Online ISBN: 978-3-319-46681-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics