I Congresso Brasileiro de Software: Teoria e Pr�tica

SBES - Palestras

Does Software Engineering Research have Impact on Software Engineering Practice?
Alexander Wolf (Imperial College London, England)
Desenvolvimento, manuten��o e co-evolu��o fortemente apoiados por computador
Arndt von Staa (DI, PUC-Rio)


Does Software Engineering Research have Impact on Software Engineering Practice?
Alexander Wolf (Imperial College London, England)

Resumo

Incontrovertible is the enormous change in software engineering practice that has occurred over the past decades. The worldwide software industry now generates hundreds of billions of US dollars in revenue annually and continues to expand in scope and revenue volume. Indeed, the software industry is increasingly acknowledged as a key driver of both social and economic growth.

In view of this, it seems important to consider to what extent industrial and academic software engineering research has had impact on the practice of software engineering. A group has formed to consider this question, taking a scholarly and methodical look into the origins of several critical elements of the practice, including high-level programming languages, configuration management tools, distributed middleware, testing, and architecture.

Who cares about the answer to this question? Obviously software engineering researchers, but also practitioners who are looking for help to do what they do better, and those in government and industry trying to decide how best to spend their precious little research budget.


Desenvolvimento, manuten��o e co-evolu��o fortemente apoiados por computador
Arndt von Staa (DI, PUC-Rio)

Uma das principais atividades relacionadas com software em si � a sua manuten��o, tanto corretiva, como evolutiva ou outra. H� autores que afirmam que mais de 70% dos recursos envolvendo software � gasto em manuten��o. No entanto, pouco se discute manuten��o sistem�tica de software na literatura. Pouco tamb�m � mencionado a respeito da engenharia reversa de sistemas legados. Quando se observa o panorama a partir da �tica do desenvolvimento dirigido por modelos, esta falta de preocupa��o com manuten��o torna-se mais exacerbada, a ponto de existirem autores propondo que modelos servem para pouco e que se deveria descart�-los quando o software for posto em opera��o. Evidentemente � muito mais charmoso ser autor de um sistema novo do que manter um existente. Esta pode ser talvez a raz�o para se discutir muito pouco manuten��o no contexto acad�mico. Um dos grandes entraves para a manuten��o e a engenharia reversa � a co-evolu��o. Sempre que alguma coisa for modificada, seja para corrigir ou para adicionar alguma caracter�stica, torna-se necess�rio alterar v�rios artefatos, como por exemplo: especifica��es, modelos, c�digo, scripts de teste e scripts de reconstru��o. � necess�rio assegurar que todos estes artefatos sejam consistentes entre si. Evidentemente a co-evolu��o feita manualmente da forma desej�vel tende a ser tediosa e cara. Neste semin�rio discutirei a organiza��o de um meta-ambiente de software que serve tanto para criar, transformar e verificar, como para manter e apoiar a engenharia reversa de software. O meta-ambiente apoia a co-evolu��o de uma variedade de artefatos, entre eles: especifica��es, modelos, c�digo, scripts de teste, documenta��o e outros. O meta- ambiente visa desenvolvimento, manuten��o e controle da qualidade (inclusive teste) dirigido por modelos.