5 June 2014

Code Automation

Code Automation is the ultimate frontier in software development. Where developers build to models as opposed to hand coding and testing everything. Models should drive every aspect of what one creates even through metadata. Agile stresses code quality through tests. But, why do we need to code and test anyways when we can build models and automate the whole process. Just test the model logics and let computers handle the rest. Since computers are better at calculations and mathematical rigor, they may also be better at coding things out through logical abstractions. Model checking and automated reasoning are already being used as part of knowledge representation techniques in many domains. However, applying such principled approaches may provide newer ways of defining constraints of logic especially in building better concurrent systems in a distributed environments such as the web. At one point, the computer itself was a complex domain. Then came the personal computer providing more individual needs as a desktop. We are now in a phase where desktops are more and more adaptable to the distributed systems approach in connecting us to the wider world view. However, computers are still very much dumb and dull in terms of hardware instruction sets. Model logics and DNA could be the ultimate answer towards building more robust systems for business oriented applications.