Username   Password       Forgot your password?  Forgot your username? 

 

Coding Standards and Human Nature

Volume 14, Number 6, June 2018, pp. 1308-1313
DOI: 10.23940/ijpe.18.06.p22.13081313

Michael Dorin and Sergio Montenegro

Universitat Wurzburg, Wurzburg, 97070, Germany

(Submitted on March 13, 2018; Revised on April 26, 2018; Accepted on May 12, 2018)

Abstract:

Intuition tells us that code that is difficult to review is likely complicated and faulty. Many organizations will create a coding standard to encourage higher quality software development. Coding standards are not always followed, and even when they are, complicated code continues to be written. Human nature demonstrates that people do not put effort into activities that they believe to be unproductive. It is also true that people have limited capacity for remembering and following directions, so extra requirements from a coding standard may even inhibit creativity. Because of human behavior, this paper recommends that organizations have two layers of a coding standard. The first layer should be easy to remember items. The second layer should be the long-established coding standard an organization wishes to comply with.

 

References: 20

        1. Dorin, Michael A. (2018). Coding for Reviews and Inspections. XP 2018. Porto, Portugal.
        2. Drew, Michael A. (2018). Personal Communication
        3. Drew, Michael L. (1999, October 22). A Coding Standard for the C Programming Language. Retrieved from http://www.drewtech.info/pdf/code_std.pdf
        4. Eaton, David (2014). Answer to: Do all programmers follow coding standards. Retrieved from https://www.quora.com/Do-all-programmers-follow-coding-standards
        5. Halstead, Maurice H. (1977). Elements of Software Science. Amsterdam: Elsevier North-Holland, Inc. ISBN 0-444-00205-7.
        6. Jean-Pierre Rosen. 2011. Designing and checking coding standards for ada. In Proceedings of the 2011 ACM annual international conference on Special interest group on the ada programming language (SIGAda '11), Michael Feldman, Dan Eilers, Jean-Pierre Rosen, Frank Singhoff, Julien DeLange, Mark Gardinier, and Karl Nyberg (Eds.). ACM, New York, NY, USA, 13-14. DOI=http://dx.doi.org/10.1145/2070337.2070345
        7. Jet Propulsion Laboratory California Institue of Technology. (2009). JPL Institutional Coding Standard for the C Programming Language. Retrieved from https://lars-lab.jpl.nasa.gov/JPL_Coding_Standard_C.pdf
        8. Miller, G. A. (1956). The magical number seven, plus or minus two: Some limits on our capacity for processing information. Psychological Review.
        9. McCabe Software, More Complex = Less Secure, Miss a Test Path and You Could Get Hacked. http://www.mccabe.com/pdf/More%20Complex%20Equals%20Less%20Secure-McCabe.pdf
        10. T. J. McCabe. 1976. A Complexity Measure. IEEE Trans. Softw. Eng. 2, 4 (July 1976), 308-320. DOI=http://dx.doi.org/10.1109/TSE.1976.233837
        11. Morgan, Lewis. (2018, January). List of data breaches and cyber attacks in January 2018. Retrieved from https://www.itgovernance.co.uk/blog/list-of-data-breaches-and-cyber-attacks-in-january-201-2
        12. Oregon OSHA. (Retrieved April 2018). Safety and the Supervisor.   Retrieved from   http://osha.oregon.gov/OSHAEdu/safety-and-the-supervisor/1-160i.pdf
        13. Reason, J., Parker, D., & Lawton, R. (1998). Organizational controls and safety: The varieties of rule related behaviour. Journal of occupational and organizational psychology, 71(4), 289-304.
        14. Rodger, Richard. (2012). Why I Have Given Up on Coding Standards. Retrieved from   http://www.richardrodger.com/2012/11/03/why-i-have-given-up-on-coding-standards
        15. Srikant Sharma. 2015. The Importance of Software Metrics https://www.linkedin.com/pulse/importance-software-metrics-srikant-sharma-tqm/
        16. Dir. Sturges, John. Perf. Yul Brynner, Eli Wallach, Steve McQueen, Charles Bronson, Horst Buchholz, Brad Dexter, James Coburn. The Magnificent Seven. (1960). The Magnificent Seven. MGM/UA.
        17. Stephen R. Schach. (2001). Object-Oriented and Classical Software Engineering (5th ed.). McGraw-Hill Pub. Co.
        18. Torvalds, Linus B. (2001). Linux kernel coding style. Retrieved from https://github.com/torvalds/linux/blob/master/Documentation/process/coding-style.rst
        19. Wulf, William. (1972, August). "A Case Against the GOTO," Proceedings of the 25th National ACM Conference
        20. Zeitlin, Lawrence R. "Failure to follow safety instructions: Faulty communication or risky decisions?." Human Factors36.1 (1994): 172-181.

               

              Please note : You will need Adobe Acrobat viewer to view the full articles.Get Free Adobe Reader

              Attachments:
              Download this file (IJPE-2018-06-22.pdf)IJPE-2018-06-22.pdf[Coding Standards and Human Nature]247 Kb
               
              This site uses encryption for transmitting your passwords. ratmilwebsolutions.com