Wednesday, September 19, 2007

No Evolution on SE?

Two weeks ago I have participated in the EUROMICRO CONFERENCE on Software Engineering and Advanced Applications (SEAA) which was held on August 27-31, in Lübeck, Germany. Since 2005 I have participated in this Conference (2005 was held in Porto/Portugal and 2006 was held in Dubronick/Croatia).

This conference has a very interesting public from a set of software companies, such as Philips, Nokia, Sony/Ericsson, HP, among others and a set of recognizable institutes like Fraunhofer Institute, Finland Research, C.E.S.A.R., among others. In this way, interesting discussions and partnerships (with the industry and academia) usually takes place.

I have presented two papers there: (1) a paper about software component maturity model, in which I described the component quality model and the evaluation techniques proposed by our group in order to achieve a quality degree in software components; (2) a paper about an experimental study on domain engineering, which was an interesting work accomplished by our group together with the university in order to evaluate a domain engineering process at a post-graduate course. Some researchers that watched those presentations believe the component certification is the future of software components and like the work that we have been developing because this area is vague, sometimes. On the other hand, the researchers liked the experimental study report and commented that this is an interesting area that could be improved in order to increase the number of proved and validated works (in academia or industry) in software engineering area. The experimental engineering area has received a special attention in the last years by the software engineering community due to the lack of works and the difficulty to evaluate the software researches.

A very interesting keynote speech was given by Ralf Reussner who started his presentation with the question presented on the title of this post (No Evolution on SE?). He told that since NATO Conference (the first Software Engineering Conference) we have seen the same questions/problems in the Software Engineering Conferences around the world like software project management problems, requirements changes, software project risks/mitigation, software reuse aspects, among others. Thus, the problems continue to be presented and discussed until nowadays.
Additionally, an interesting topic pointed out by Ralf Reussner is why we don’t have any books from other areas like “Heart Transplantation in 21 Days” or “Nuclear Weapons for Dummies”. So, in our area the science/engineering is not considered like other sciences/engineering. Perhaps this is the reason why we have been discussing since 1968 until now the same problems and questions about software engineering. And the question remains… “No evolution on SE?”

2 comments:

Eduardo Almeida said...

About the papers, I believe that each more we need safety software, especially, because the systems are increasing their critical aspects and thinking in software reuse where the motivation for reuse is assets well tested it is crucial. Moreover, if we think in the future in approaches as the Open Market, it is still more important. On the other hand, I believe that experimental studies are necessary before introducing new techniques in the industry. However, it is very expensive, mainly, in industrial environment. Thus, as we do not have resources to do it, we have to move it for the university where we do not have the same quality of the industrial staff, a big problem, etc. I need to investigate more this area, particularly, the works by Vic Basili which has made important effort involving university and industry. In Brazil, this area is just starting and if we move it to reuse area the maturity is almost nothing.

Considering the speech, I like polemic one. I remembered when I was starting in the software engineering field and Jim Coplien said during the Brazilian Symposium (2001) that we are not software engineers because we do not make engineering besides work on toy problems. For part of the research community it is true, but, we have serious research being made in conjunction with the industry. Moreover, if we observed the current applications increasing in complexity (google and other web one), embedded software, I believe that we are having evolution in software engineering in some fields. However, I agree with the opinion that sometimes we work around all the time.

Anonymous said...

In our area we accumulate problem over problem in an attempt to solve the initial problem. It seems to be a joke, but is true.
One example of this is to change from procedural to OO paradigm; the legacy problems with the first remains while new problems comes to the second, and the challenges for both go ahead in parallel. Perhaps, the reason because things like this occurs is the incredible velocity how hardware has evolute; we just change the programming paradigm because hardware now support it.
However, in medical area, for example, they does not change some machinery because now our bodies supports more radiation, or things like this. In most of the cases, they just improve the actual technic. The focused object still the same.