Este diagrama representa o fluxo de actividades inerentes `a interac¸c˜ao do utilizador com o Wiki4PGest.
Este diagrama ajuda a perceber a sequˆencia e op¸c˜oes de escolha de ac¸c˜oes envolvidas na interac¸c˜ao do utilizador alvo com o Wiki4PGest.
1
Cap´ıtulo 3. Projecto - Wiki4PGest 15
3.2.4
Ferramentas Utilizadas
Nesta sec¸c˜ao s˜ao apresentadas todas as ferramentas envolvidas e utilizadas na ex- ecu¸c˜ao de todas as tarefas do desenvolvimento de todo o projecto.
Eclipse SDK vers˜ao 3.3.0
Ferramenta de desenvolvimento de software utilizada para implementar todo o c´odigo Java.
SQL Explorer vers˜ao 3.5.0
Plug-in do Eclipse para acesso, interroga¸c˜ao e manipula¸c˜ao da Base de Dados do PGest.
SVN Repository Exploring
Plug-in do Eclipse que permite efectuar um rastreio de vers˜oes e controlo de al- tera¸c˜oes dos v´arios ficheiros do projecto.
Apache Ant
Ferramenta que permite gerir as dependˆencias e automatizar a constru¸c˜ao de soft- ware, e efectuar um conjunto de tarefas associadas ao build do projecto.
MediaWiki
Software de edi¸c˜ao e partilha de conte´udos, onde s˜ao publicadas as p´aginas com os dados dos v´arios projectos, p´aginas estas que ficam dispon´ıveis via Web.
Python Wikipedia Bot Framework
Biblioteca de fun¸c˜oes do MediaWiki. Disponibiliza um conjunto de m´odulos em Python que permitem realizar tarefas rotineiras em qualquer sistema MediaWiki. IDLE - Python’s Integrated Development Environment
Ambiente de desenvolvimento de c´odigo Python. WinShell
Editor de texto utilizado para a elabora¸c˜ao dos relat´orios usando tecnologia ”Latex”. Microsoft Visio
Ferramenta de elabora¸c˜ao de modelos e diagramas; Powerdesigner
Cap´ıtulo 3. Projecto - Wiki4PGest 16
de dados do PGest;
3.3
Planeamento
De modo a garantir a qualidade do produto desenvolvido e de alcan¸car uma boa produtividade durante o seu desenvolvimento, a execu¸c˜ao deste projecto seguiu or- denadamente as etapas mais relevantes que integram um qualquer processo de de- senvolvimento de software.
Embora o m´etodo de desenvolvimento inicialmente escolhido para este projecto tenha sido o m´etodo em cascata, o desenvolvimento acabou por seguir um fluxo iterativo e incremental pelas v´arias etapas, pelo facto de que `a medida a que se ia evoluindo iam surgindo alguns incrementos e revis˜oes a serem realizadas nas etapas anteriores.
Figura 3.6: Etapas Processo de Desenvolvimento
3.3.1
Etapas
An´alise - Fase de arranque do projecto. Nesta etapa ´e exposto em detalhe o projecto a desenvolver e o que se pretende com ele. E feito um modelo geral e´ um levantamento de requisitos no qual se define concretamente todos os aspectos funcionais e caracter´ısticas que a aplica¸c˜ao a desenvolver dever´a de possuir. S˜ao feitas algumas reuni˜oes com a coordenadora do projecto onde se define algumas guidelines que o desenvolvimento do projecto dever´a seguir, n˜ao s´o relativamente a requisitos funcionais e n˜ao funcionais do Wiki4PGest, como tamb´em a quest˜oes do seu pr´oprio planeamento. O modelo de an´alise foi rectificado nas diversas itera¸c˜oes do projecto.
Nesta fase tenta-se tamb´em modelar e encontrar solu¸c˜oes que melhor se adequam `
as inten¸c˜oes do projecto e aos requisitos previamente analisados.
Foi durante esta processo que ocorreu a mudan¸ca de abordagem do projecto para o MediaWiki, por se chegar `a conclus˜ao que a integra¸c˜ao com o Google Desktop n˜ao seria vi´avel.
Cap´ıtulo 3. Projecto - Wiki4PGest 17
Desenho - Nesta fase foram realizados diagramas de Casos de Uso e de Ac- tividades, de forma a adquirir uma melhor perspectiva do problema. Foi tamb´em executada toda a modela¸c˜ao da arquitectura da aplica¸c˜ao e de Modelo de Classes para com isto dar in´ıcio ao processo de implementa¸c˜ao.
Implementa¸c˜ao - Esta ´e sem d´uvida a etapa mais prolongada do projecto. ´E nesta etapa que se constr´oi aquilo que se modelou, respeitando sempre as regras funcionais e de dom´ınio anteriormente estabelecidas. Antes de se proceder `a imple- menta¸c˜ao foram tomadas algumas decis˜oes de forma a respeitar as caracter´ısticas e inten¸c˜oes da aplica¸c˜ao. `A medida que se foi avan¸cando nesta etapa foram surgindo novos requisitos a novas op¸c˜oes de implementa¸c˜ao a serem revistos.
Testes - Nesta etapa foram realizados testes que visam garantir que todos os requisitos da aplica¸c˜ao sejam respeitados. Esta etapa foi iterada durante a etapa de implementa¸c˜ao com a execu¸c˜ao de alguns testes unit´arios sobre os m´etodos im- plementados no m´odulo Java da aplica¸c˜ao. No final da implementa¸c˜ao foi ent˜ao realizado um processo de testes mais exaustivo de maneira a garantir a qualidade de execu¸c˜ao da aplica¸c˜ao.
Finaliza¸c˜ao - ´Ultima fase destinada a packaging e distribui¸c˜ao da aplica¸c˜ao. Foi necess´ario construir documenta¸c˜ao informativa que apresenta o fundamento do Wiki4PGest, o seu funcionamento, op¸c˜oes funcionais da interface com o utilizador, op¸c˜oes de implementa¸c˜ao, e o seu modo de instala¸c˜ao e configura¸c˜ao, de maneira a fornecer uma base de suporte a qualquer colaborador que no futuro pretenda insta- lar e/ou configurar o Wiki4PGest.
Cap´ıtulo 3. Projecto - Wiki4PGest 18
3.3.2
Mapa de Gantt
A seguir ´e apresentado o mapa de Gantt correspondente ao planeamento do est´agio, com a distribui¸c˜ao temporal de cada etapa de desenvolvimento do projecto. A cal- endariza¸c˜ao de todas as tarefas realizadas no ˆambito do projecto ´e apresentada na sec¸c˜ao apˆendices no final do documento.
Cap´ıtulo 3. Projecto - Wiki4PGest 19
3.4
Implementa¸c˜ao
Nesta sec¸c˜ao ´e apresentado todo o modelo de implementa¸c˜ao do Wiki4PGest. A figura 3.8 apresenta o modelo de desenho da solu¸c˜ao implementada.
Interessa salientar que nesta solu¸c˜ao existem dois m´odulos nucleares, o m´odulo Java e o m´odulo Python Wikipedia Robots Framework, cada um com objectivos e tarefas bem definidos.
Vamos agora estudar aprofundadamente cada um.
Cap´ıtulo 3. Projecto - Wiki4PGest 20