SOFTWARE – An Interdisciplinary Approach
Software is a unique, complex & evolving product, created by a skill combination of domain & technology. It is becoming impossible to factor in everything. The functionalities are falling in the crevices & security throwing up wide open cracks. Lots to learn from the interdisciplinary world for improvement.
Programming is not just about possessing technical skills, its how we think, reason, solve problems, while we work with others. It’s not just about writing codes. Making modifications to existing programs takes most effort. Understanding code counts. There is a inherent complexity of a software system. We don’t know which parts really matter? Where to put in the time & effort? It becomes worse with scale. Multiple developers working in multiple teams, add to the complexity.
Similar problems are found in Forensic Psychology . Geographical Offender Profiling is a system based on statistics & environmental psychology, able to deduce personality & motive of the offender. Overlap in time & space between an offender & a victim is of critical importance. Geographical locations are never random. Crime scenes which are closer to each other get assigned new weight. A Hot Spot . Geographical Offenders Profile gives a probability surface.
This model can have immense use in software. Large software can be narrowed down, & Hotspots can be created to work upon. Geographical visualisation of code would be of immense help. It would represent the complexity. Complexity is not a problem till we have to deal with it. When Spatial movements are added, its like third eye. Version Control provides immense information with metadata . Complicated areas of code used often provides ideal chances for having issues. Bugs are uneven. Communication paths on the code tell the real story not organisational diagram. Knowledge gaps get known & also abandoned portions of code.
AN INTERDISCIPLINARY APPROACH TO SOFTWARE MAY BE THE ANSWER.