É crescente o número de sistemas de software complexos e críticos. As técnicas de melhoria e suporte ao processo de software tem sido reconhecidas como importantes meios de aumentar a qualidade de software, bem como de reduzir os custos e esforços de desenvolvimento. Neste contexto, um assistente inteligente pode apoiar a execução de processos de software baseado nas técnicas da inteligência artificial. Este trabalho apresenta uma aplicação das técnicas de planejamento para apoiar o processo de desenvolvimento de software baseado no método FUSION. O trabalho mostra a aplicação das técnicas de planejamento em processos práticos e de escala real em contraste aos pequenos exemplos normalmente encontrados na literatura. A abordagem proposta consiste de uma biblioteca de operadores mais dois algoritmos para reconhecer e montar planos. A maioria dos operadores foram refinados até o terceiro ou quarto nível de modo a encontrar um nível de descrição adequado para os desenvolvedores. Um protótipo de um assistente inteligente foi desenvolvido e simulado com o processo de desenvolver a aplicação clássica ATM. Os resultados enfatizam as vantagens de formalizar ações, heurísticas e regras de consistência em métodos de desenvolvimento de software. A formalização desses aspectos aumenta a produtividade de desenvolvedores inexperientes pois eles podem reutilizar conhecimentos que estão disponíveis apenas nas mentes de desenvolvedores experientes. Além disso, vantagens da utilização da abordagem declarativa na representação de processos reais são indicadas. Essas vantagens incluem a flexibilidade na definição e modificação da ordem dos processos. As dificuldades na definição da biblioteca de operadores são apontadas. / There has been an increasing number of complex and critical software systems. Techniques to improve and support the software process have been recognised as important means to enhance software quality as well as reducing costs and development efforts. An intelligent assistant can support the execution of the software process based on artificial intelligence techniques. This work presents the application of planning techniques to support the process of developing software based on the FUSION method. The work developed contributes by showing the application of planning techniques to a practical and real scale process in contrast to small examples found in the literature. The proposed approach consists of a library of operators plus two algorithms to recognise and design plans. Most of the operators were refined up to the third or forth level of abstraction in order to reach the adequate level of description for the developers. A prototype of the intelligent assistant was developed and exercised with the process of developing the classic ATM application. The results emphasise the advantages of formalising actions, heuristics and consistency rules for software development methods. In particular, the formalisation of these aspects improves the productivity of novel developers as they can reuse to knowledge that are only available in the minds of advanced developers. In addition, advantages of using a declarative approach to represent real software process are indicated. These advantages include the flexibility in def,rning and modifying the order of the process. Difficulties in defìning the library of operators are pointed out.
Identifer | oai:union.ndltd.org:usp.br/oai:teses.usp.br:tde-20032018-170120 |
Date | 23 July 1997 |
Creators | Santander, Victor Francisco Araya |
Contributors | Gimenes, Itana Maria de Souza |
Publisher | Biblioteca Digitais de Teses e Dissertações da USP |
Source Sets | Universidade de São Paulo |
Language | Portuguese |
Detected Language | English |
Type | Dissertação de Mestrado |
Format | application/pdf |
Rights | Liberar o conteúdo para acesso público. |
Page generated in 0.002 seconds