Anais do IHC'2001 - Departamento de Informática e Estatística - UFSC
Anais do IHC'2001 - Departamento de Informática e Estatística - UFSC
Anais do IHC'2001 - Departamento de Informática e Estatística - UFSC
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Anais</strong> <strong>do</strong> IHC’2001 - IV Workshop sobre Fatores Humanos em Sistemas Computacionais 225<br />
Código<br />
Lega<strong>do</strong><br />
leg.prg<br />
Código<br />
Segmenta<strong>do</strong><br />
seg1.prg<br />
seg2.prg<br />
segn.prg<br />
Código OO<br />
oo1.exe<br />
oo2.exe<br />
oom.exe<br />
Reengenharia <strong>de</strong> Interfaces OO usan<strong>do</strong> RV apoiada pelo GaCIV<br />
Código<br />
Lega<strong>do</strong><br />
leg.prg<br />
Interface<br />
Clipper<br />
2 ª geração<br />
Interface<br />
OO<br />
com RV<br />
para<br />
lega<strong>do</strong><br />
4 ª geração<br />
Código<br />
Segmenta<strong>do</strong><br />
seg1.prg<br />
seg2.prg<br />
segn.prg<br />
Legenda: Módulos a serem <strong>de</strong>senvolvi<strong>do</strong>s no projeto<br />
Módulos já <strong>de</strong>senvolvi<strong>do</strong>s no projeto<br />
Interface<br />
Clipper<br />
2 ª geração<br />
Interface<br />
OO<br />
com RV<br />
para<br />
segmenta<strong>do</strong><br />
4 ª geração<br />
Código OO<br />
oo1.exe<br />
oo2.exe<br />
oom.exe<br />
Figura 5 – Proposta <strong>de</strong> integração da engenharia reversa com RV<br />
Interface<br />
Java<br />
3 ª geração<br />
Interface<br />
OO<br />
com RV<br />
para<br />
sistema OO<br />
4 ª geração<br />
5. Estu<strong>do</strong> <strong>de</strong> Caso – O Sistema <strong>de</strong> Administração <strong>de</strong> Oficina Mecânica<br />
O sistema exemplo a ser utiliza<strong>do</strong> neste estu<strong>do</strong> é o mesmo apresenta<strong>do</strong> em [18], que exibiu<br />
o processo <strong>de</strong> engenharia reversa e segmentação <strong>de</strong> um sistema lega<strong>do</strong>. Ele foi<br />
originalmente <strong>de</strong>senvolvi<strong>do</strong> em Clipper 5.0, com aproximadamente 20K linhas <strong>de</strong> código,<br />
com 25 tabelas <strong>do</strong> tipo “dbf”, relacionadas por chaves estrangeiras. Trata-se <strong>de</strong> um sistema<br />
real <strong>de</strong> uma oficina mecânica que controla os serviços executa<strong>do</strong>s em veículos, bem como<br />
o controle <strong>de</strong> estoque das peças utilizadas e <strong>de</strong> sua reposição.<br />
O cliente chega à mecânica e solicita serviços para o seu veículo. Um cliente po<strong>de</strong> ter<br />
vários veículos. O mesmo veículo po<strong>de</strong> retornar à mecânica várias vezes, uma or<strong>de</strong>m <strong>de</strong><br />
serviço específica é preparada para cada visita. Ela contém da<strong>do</strong>s sobre o cliente, veículo e<br />
serviços a realizar. Quan<strong>do</strong> o serviço for completa<strong>do</strong>, a or<strong>de</strong>m <strong>de</strong> serviço <strong>do</strong> cliente é<br />
completada com relação às peças usadas e a mão-<strong>de</strong>-obra realizada. Algumas peças po<strong>de</strong>m<br />
não existir no estoque e <strong>de</strong>vem ser adquiridas fora, mas também são inseridas na or<strong>de</strong>m <strong>de</strong><br />
serviço. O mo<strong>de</strong>lo <strong>de</strong> veículo <strong>de</strong>ve ser registra<strong>do</strong> no sistema para que tabelas <strong>de</strong> preços<br />
sejam utilizadas para o pagamento <strong>do</strong>s serviços elétricos ou mecânicos, <strong>de</strong> acor<strong>do</strong> com o<br />
mo<strong>de</strong>lo <strong>do</strong> veículo.<br />
O sistema lega<strong>do</strong> apresenta uma estrutura <strong>de</strong> interface <strong>de</strong> pouca profundida<strong>de</strong>, isto é, a partir<br />
das diversas opções apresentadas na tela principal po<strong>de</strong>-se, em geral, acessar diretamente uma<br />
operação <strong>do</strong> sistema. Essa organização não permite a representação <strong>de</strong> níveis <strong>de</strong> abstração da<br />
aplicação com recursos <strong>de</strong> RV durante a reengenharia <strong>de</strong> interface.