Saturday, April 21, 2018

Agile methods VS theory of software development


Agile methods VS theory of software development 

The work of the handicraftsman is based on personal experience and personal craftsmanship. The production process of the handicraftsman, as a rule, is unique. The result of the work of the handicraftsman is unique as well. Labor and the result of labor of the handicraftsman, as a rule, is hidden from prying eyes and because of this the possibility of their improvement is limited. The labor of the handicraftsman, traditionally is not divided into partial processes and therefore it can not be synthesized into effective technology.
The technological process in modern industrial production is based on physical or chemical laws, which are presented in the form of formulas or reference books. The results of the functioning of the technological process coincide almost completely within the limits of one technology. The technological process, as a rule, ensures maximum productivity at the current level of production development. The technological process, as a rule, is open for improvement.
The initiators of SEMAT have set an important goal - to find and offer a scientific theory for software engineering.
In this note we argue that work on software development methodology must undergo a profound transformation. It should renounce its current reliance on fashion and political-style propaganda, turning instead to a serious scientific endeavor based on theory and experimental validation. See more.
This is not enough; we need a strong theory of software development. See more.
At the same time, those who were at the origins of SEMAT began to promote Agile methods.
The latest wave to sweep the industry is "agile". Agile methods have made a number of significant contributions and reminded us of the central role of people in software engineering. Some of the agile lessons are likely to remain in future methods. See more.
But "Agile methods" is a craft style of production. The development and application of "Agile methods" is in opposition to the goal of "creating a theory for software engineering". It is possible that this confrontation in the minds of the initiators of SEMAT does not generate cognitive dissonance, but from the point of view of progress in software engineering, from the point of view of the development of the software engineering, it is absurd. This style of research is similar to the situation when the driver of the car at the same time presses the brake and gas pedals. The result of the existence of SEMAT from 2009 to the present time is such a theory for software engineering has not been created.

Many articles on the theory for software engineering have been published, which indicates that a lot of effort has been spent to create the theory, but the SEMAT initiative is the most ambitious. Considering the SEMAT initiative as a leader, as a marker, it can be argued that the scientific community in software engineering capitulated before the problem of "creating a theory for software engineering".

Valery Kolesnyk
21 April 2018

No comments:

Post a Comment