% vim:tw=74:
\section{Introdução}

\subsection{Contextualização}

A Internet é, hoje em dia, um meio de comunicação por excelência. A     
quantidade de informação existente nela atingiu níveis nunca antes   
possíveis. Infelizmente toda esta informação encontra-se espalhada e nem   
sempre é de fácil consulta. Este problema é comum a todas as áreas pelo    
que têm sido esforços para criar maneiras de uniformizar o acesso a toda   
esta informação. Neste projecto visa criar uma maneira de escrever e    
distribuir cronologias assim como desenvolver ferramentas que permitam     
manipulá-las.

\subsection{Apresentação do Caso de Estudo}
Retirado do dicionário da Língua Portuguesa On-Line\footnote{Referência
web disponível na página \pageref{www}}:

\begin{description}
\item Cronologia \\
do Gr. \emph{chróno(s)}, tempo + \emph{lógos}, tratado

s. f., disciplina que estuda o tempo e as suas divisões e determina a ordem pela qual os acontecimentos se sucederam;
    lista ou livro onde estão registados acontecimentos pela ordem de sucessão no tempo, pelas datas.
\end{description}

O caso de estudo deste projecto são cronologias. Como é dito no dicionário
da língua portuguesa, uma cronologia não é mais do que uma lista onde são
registados acontecimentos. De facto, foi esta a grande motivação que levou
os autores do projecto a aceitá-lo. Ou seja, a possibilidade de criar mecanismos
que auxiliem o registo de acontecimentos passados de forma a que eles
sejam facilmente recordados no futuro. Porque a riqueza de um povo
passa, em grande parte, pela forma como são recordadas e transmitidas as
suas façanhas.

Apesar de ser curta, considerou-se interessante a \textbf{História da
Computação Moderna} pelo que se decidiu incluir a sua cronologia nos casos
de estudo apresentados.

\subsection{Motivação e Objectivos}
No início do projecto, pensou-se em criar um módulo para suporte a
cronologias que apresentasse as seguintes funcionalidades:

\begin{itemize}
\item Possibilidade de gerar um documento \emph{HTML} a partir de uma dada cronologia 
inteira ou apenas de uma parte desta

\item Possibilidade de fazer pesquisas sobre uma dada cronologia com base num 
intervalo de datas ou em palavras-chave

\item Existência de uma \ac{DSL} para descrição dos eventos

\item Possibilidade de criar referências dentro de um evento

\item Existência de um interface WEB para visualização das cronologias
\end{itemize}

Ficou também planeado fazer um levantamento de todo o trabalho que já foi
feito neste âmbito.

À medida que o trabalho foi desenvolvido, percebeu-se que sería muito útil
desenvolver uma ferramenta para auxiliar a criação de cronologias pelo que foi
acrescentado este objectivo aos demais existentes.

\subsection{Estrutura do Relatório}

O relatório começou por apresentar alguns dos conceitos teóricos mais
importantes para a realização deste projecto. Estes conceitos abrangem
áreas tão diversificadas como o Processamento de Linguagens ou a
Programação Orientada a Objectos. Depois dessas noções é explicado
como foi implementado o módulo. Essa explicação inclui as opções tomadas
ao longo do desenvolvimento do módulo e a estrutura usada no módulo. É
ainda descrita a \ac{API} do módulo. Segue-se uma secção onde é analisada
uma ferramenta desenvolvida no âmbito deste projecto e que foi bastante
útil, especialmente para o tratamento do Casos de Estudo que são
apresentados em seguida. Para terminar é feita uma análise crítica ao
trabalho desenvolvido de onde são tiradas algumas conclusões e
apresentados possíveis melhoramentos futuros.
