@ -0,0 +1,95 @@ |
|||||
|
% $Id$ |
||||
|
% --------------------------------------------------------------------------- |
||||
|
% |
||||
|
% This is part of the SIGI. |
||||
|
% Copyright (C) 2008 Interlegis |
||||
|
% See the file relatorio.tex for copying conditions. |
||||
|
% |
||||
|
|
||||
|
\section{Visão Geral} |
||||
|
\label{sec:visaogeral} |
||||
|
O atual Sistema de Informações Gerenciais do Interlegis, ou SIGI, |
||||
|
fornece um conjunto limitado de informações sobre as Casas |
||||
|
Legislativas e não contempla a atual realidade do \emph{Programa |
||||
|
Interlegis}. |
||||
|
|
||||
|
O sistema é executado em ambiente \emph{Microsoft Windows} utilizando |
||||
|
a plataforma \emph{Microsoft Access}, o qual possui uma série de |
||||
|
limitações tecnológicas, de manutenibilidade, e de acesso às |
||||
|
informações pelos usuários, bem como também o acesso através de outros |
||||
|
\textit{softwares}, gerando, neste caso, redundância e disparidade de |
||||
|
dados. |
||||
|
|
||||
|
Foi observado por parte dos usuários a necessidade de um sistema com |
||||
|
interface \textit{web} e com uma \emph{base de dados} única e |
||||
|
centralizada, tornando o acesso flexível e as informações atualizadas |
||||
|
refletindo diretamente nos outros sistemas do Interlegis. |
||||
|
|
||||
|
O novo sistema será desenvolvido utilizando a plataforma \emph{Python} |
||||
|
com o framework de desenvolvimento \emph{Django}, o qual cumpre os |
||||
|
requisitos necessários para a implementação do sistema. Além do mais, |
||||
|
o Django permitirá uma evolução natural do sistema e grande facilidade |
||||
|
na manutenção do mesmo. |
||||
|
|
||||
|
O sistema, inicialmente, será dividido em 7 aplicações (ou |
||||
|
componentes) Django: |
||||
|
|
||||
|
\begin{enumerate} |
||||
|
\item \verb|sigi.apps.casas| (Casas Legislativas) |
||||
|
\item \verb|sigi.apps.contatos| (Contatos) |
||||
|
\item \verb|sigi.apps.convenios| (Convênios) |
||||
|
\item \verb|sigi.apps.inventario| (Inventário) |
||||
|
\item \verb|sigi.apps.mesas| (Mesas Diretoras) |
||||
|
\item \verb|sigi.apps.parlamentares| (Parlamentares) |
||||
|
\item \verb|sigi.apps.servicos| (Serviços) |
||||
|
\end{enumerate} |
||||
|
|
||||
|
Esta ``componentização'' permitirá o reaproveitamento dessas mesmas |
||||
|
aplicações para outros projetos futuros do Interlegis baseado em |
||||
|
Django. |
||||
|
|
||||
|
\subsection{Descrição das Atividades} |
||||
|
Esta seção descreve as principais etapas de desenvolvimento do sistema |
||||
|
a serem cumpridas. Desde o planejamento e levantamento de requisitos |
||||
|
até a implantação do sistema e transferência de tecnologia à equipe do |
||||
|
Interlegis. |
||||
|
|
||||
|
\subsubsection{Primeira Etapa} |
||||
|
\begin{enumerate} |
||||
|
\item Levantamento de requisitos (Seção \ref{sec:requisitos}); |
||||
|
\item Identificação dos \emph{Casos de Uso} (Seção \ref{sec:casos}); |
||||
|
\item Definição do \emph{Modelo de Dados} (Seção \ref{sec:modelo}); |
||||
|
\item Esquema da Base de Dados (Seção \ref{sec:esquema}); |
||||
|
\item Protótipo de interface gráfica (Seção \ref{sec:prototipo}). |
||||
|
\end{enumerate} |
||||
|
|
||||
|
\subsubsection{Segunda Etapa} |
||||
|
\begin{enumerate} |
||||
|
\item Codificação do sistema; |
||||
|
\item Transformação do protótipo em interface para o sistema; |
||||
|
\item Implantação de sistema \textit{alpha} em um servidor de testes; |
||||
|
\item Avaliação final do sistema. |
||||
|
\end{enumerate} |
||||
|
|
||||
|
\subsubsection{Terceira Etapa} |
||||
|
\begin{enumerate} |
||||
|
\item Documentação do sistema desenvolvido; |
||||
|
\item Documentação dos parâmetros de configuração do sistema; |
||||
|
\item Manual de implantação (\textit{deployment}). |
||||
|
\end{enumerate} |
||||
|
|
||||
|
\subsubsection{Quarta Etapa} |
||||
|
\begin{enumerate} |
||||
|
\item Manual de usuário; |
||||
|
\item Treinamento; |
||||
|
\item Implantação do sistema em servidor em produção; |
||||
|
\item Transferência de tecnologia para equipe do Interlegis; |
||||
|
\item Entrega final do produto. |
||||
|
\end{enumerate} |
||||
|
|
||||
|
% |
||||
|
% Local variables: |
||||
|
% mode: flyspell |
||||
|
% TeX-master: "relatorio.tex" |
||||
|
% End: |
||||
|
% |
@ -0,0 +1,124 @@ |
|||||
|
% $Id$ |
||||
|
% --------------------------------------------------------------------------- |
||||
|
% |
||||
|
% This is part of the SIGI. |
||||
|
% Copyright (C) 2008 Interlegis |
||||
|
% See the file relatorio.tex for copying conditions. |
||||
|
% |
||||
|
|
||||
|
\section{Requisitos} |
||||
|
\label{sec:requisitos} |
||||
|
|
||||
|
\subsection{Detalhamento do Produto} |
||||
|
O produto a ser desenvolvido deverá contemplar as seguintes |
||||
|
funcionalidades: |
||||
|
|
||||
|
\begin{itemize} |
||||
|
\item Gerenciamento das informações das Casas Legislativas; |
||||
|
\item Gerenciamento de partidos políticos, parlamentares e seus |
||||
|
mandatos e de legislaturas; |
||||
|
\item Gerenciamento de sessões legislativas, mesas diretora e de sua |
||||
|
composição partidária; |
||||
|
\item Gerenciamento de convênios das Casas Legislativas junto ao |
||||
|
Interlegis; |
||||
|
\item Gerenciamento dos equipamentos fornecidos e serviços prestados |
||||
|
às Casas Legislativas; |
||||
|
\item Conjunto de autorização e configuração de perfis de acesso ao |
||||
|
sistema; |
||||
|
\item Permitir que o usuário efetue pesquisas no banco de dados |
||||
|
utilizando filtros de seleção; |
||||
|
\item Permitir o ``rollback'' (recuo) das alterações em tempo de |
||||
|
edição dos dados; |
||||
|
\item Permitir a geração de relatórios em PDF dos dados estratégicos e |
||||
|
de pesquisas; |
||||
|
\item Manter o histórico das atividades com as Casas Legislativas. |
||||
|
\end{itemize} |
||||
|
|
||||
|
Deverá também ser considerado as seguintes características: |
||||
|
|
||||
|
\begin{itemize} |
||||
|
\item Interface web compatível com os padrões e recomendações da World |
||||
|
Wide Web Consortium (W3C); |
||||
|
\item Uso de \emph{AJAX} para validação de dados e para otimização e |
||||
|
facilidade de uso do sistema; |
||||
|
\item Uso de um \emph{Sistema de Controle de Versões} para gerenciamento e |
||||
|
acompanhamento da codificação; |
||||
|
\item Ajuda \textit{online} e contextual do sistema; |
||||
|
\item Instalação simplificada; |
||||
|
\item Sistema multi-usuário em rede concebido para a operacionalização |
||||
|
em três camadas distintas: apresentação (navegador web), aplicação e |
||||
|
dados. |
||||
|
\end{itemize} |
||||
|
|
||||
|
\subsection{Requisitos de Hardware} |
||||
|
Requisitos de \textit{hardware}necessários para que a aplicação |
||||
|
funcione corretamente: |
||||
|
|
||||
|
\begin{itemize} |
||||
|
\item Aproximadamente 100 MB de espaço em disco; |
||||
|
\item Mínimo de 256 MB de memória RAM; |
||||
|
\item Processador compatível ao Pentium III ou superior; |
||||
|
\end{itemize} |
||||
|
|
||||
|
\subsection{Requisitos de Software} |
||||
|
Requisitos de \textit{software} necessários para que a aplicação |
||||
|
funcione corretamente: |
||||
|
|
||||
|
\begin{itemize} |
||||
|
\item Sistemas operacionais GNU/Linux ou de família Unix BSD; |
||||
|
\item Apache 2 ou superior; |
||||
|
\item PostgreSQL 8.3 ou superior; |
||||
|
\item Python 2.5 ou superior (< 3.0); |
||||
|
\item Django 0.97-pre (trunk) ou 1.0. |
||||
|
\end{itemize} |
||||
|
|
||||
|
\subsection{Requisitos de performance} |
||||
|
Requisitos necessários para tirar o melhor proveito da aplicação: |
||||
|
|
||||
|
\begin{itemize} |
||||
|
\item Considerar o uso do sistema operacional GNU/Linux ou FreeBSD; |
||||
|
\item Uso do servidor web Apache para a aplicação; |
||||
|
\item Uso do servidor Lighttpd para os arquivos estáticos; |
||||
|
\item Cache das transações com o Banco de Dados e da saída |
||||
|
(\textit{output}) das requisições HTTP. |
||||
|
\end{itemize} |
||||
|
|
||||
|
\subsection{Requisitos de documentação} |
||||
|
Documentação necessária que deverá vir a ser elaborada para servir de |
||||
|
suporte ao produto: |
||||
|
|
||||
|
\begin{itemize} |
||||
|
\item Documentação da \textit{Application Programming Interface} (API) |
||||
|
do software; |
||||
|
\item Manual de configuração e implantação do sistema; |
||||
|
\item Manual do usuário; |
||||
|
\item Ajuda \textit{online} e contextual do sistema; |
||||
|
\item Arquivos LEIA-ME e de licenciamento. |
||||
|
\end{itemize} |
||||
|
|
||||
|
\subsection{Licenças} |
||||
|
O novo SIGI se baseia apenas em aplicações \emph{livres}, as quais |
||||
|
possuem um licenciamento sem nenhuma restrição de uso. A obtenção das |
||||
|
mesmas também são gratuitas. |
||||
|
|
||||
|
Segue abaixo uma lista dos principais \emph{softwares} necessários |
||||
|
para o desenvolvimento do SIGI e suas respectivas licenças: |
||||
|
|
||||
|
\begin{description} |
||||
|
\item[Apache:] Apache License 2.0 |
||||
|
\item[PostgreSQL:] BSD License |
||||
|
\item[Python:] Python License |
||||
|
\item[Django:] BSD License |
||||
|
\end{description} |
||||
|
|
||||
|
O SIGI será publicado como \emph{software livre} utilizando a licença |
||||
|
\textit{GNU General Public License (GNU GPL)} em sua versão 3, assim |
||||
|
como os outros produtos do Interlegis, e estará disponível no |
||||
|
repositório de \emph{software livre} Colab\footnote{Endereço web do |
||||
|
Colab: http://colab.interlegis.gov.br} do Interlegis. |
||||
|
% |
||||
|
% Local variables: |
||||
|
% mode: flyspell |
||||
|
% TeX-master: "relatorio.tex" |
||||
|
% End: |
||||
|
% |
@ -0,0 +1,71 @@ |
|||||
|
% $Id$ |
||||
|
% --------------------------------------------------------------------------- |
||||
|
% |
||||
|
% This is part of the SIGI. |
||||
|
% Copyright (C) 2008 Interlegis |
||||
|
% See the file relatorio.tex for copying conditions. |
||||
|
% |
||||
|
|
||||
|
\section{Casos de Uso} |
||||
|
\label{sec:casos} |
||||
|
|
||||
|
Esta seção descreve a utilização do sistema através de \emph{Casos de |
||||
|
Uso}, representando os principais atores e suas interações com o |
||||
|
sistema. |
||||
|
|
||||
|
Os Casos de Uso serve de auxílio à compreensão, por parte dos |
||||
|
usuários, de como o sistema tende a ser implementado e como é |
||||
|
pretendido que o mesmo venha a ser utilizado. |
||||
|
|
||||
|
\subsection{Casos de Uso do SIGI} |
||||
|
Na Figura \ref{fig:casos} temos os Casos de Uso do SIGI de maneira |
||||
|
simplificada. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=120mm]{../imagens/casosdeuso.png} |
||||
|
\caption{Casos de uso} |
||||
|
\label{fig:casos} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Descrição dos Atores} |
||||
|
\begin{description} |
||||
|
\item[Funcionário Interlegis:] usuário apenas com atribuições de |
||||
|
leitura no sistema. |
||||
|
\item[Responsável pela Comunicação:] usuário da Subsecretaria de |
||||
|
Formação e Atendimento à Comunidade do Legislativo (SSFAC). |
||||
|
\item[Responsável pelo Convênio:] usuário do Serviço de Contratos e |
||||
|
Convênios (SCCO). |
||||
|
\item[Responsável pela Infra-estrutura:] usuário do Serviço de |
||||
|
Infra-estrutura Tecnológica (SEIT). |
||||
|
\end{description} |
||||
|
|
||||
|
\subsubsection{Descrição das Atividades} |
||||
|
\begin{description} |
||||
|
\item[Emitir Relatórios:] consiste em obter informações e emitir |
||||
|
relatórios de diversas partes do sistema. |
||||
|
\item[Emitir Etiquetas:] consiste em obter informações e emitir |
||||
|
etiquetas de algumas partes do sistema. |
||||
|
\item[Gerenciar Mesas Diretoras:] consiste em inserir, atualizar e |
||||
|
remover \emph{Mesas Diretoras}, \emph{Sessões Legislativas} e |
||||
|
modificar a \emph{Composição das Mesas Diretoras}. |
||||
|
\item[Gerenciar Parlamentares:] consiste em inserir, atualizar e |
||||
|
remover \emph{Parlamentares} e \emph{Partidos}. |
||||
|
\item[Gerenciar Equipamentos:] consiste em inserir, atualizar e |
||||
|
remover \emph{Equipamentos} e \emph{Fornecedores}. |
||||
|
\item[Gerenciar Casas Legislativas:] consiste em inserir, atualizar e |
||||
|
remover \emph{Casas Legislativas}. |
||||
|
\item[Gerenciar Convênios:] consiste em inserir, atualizar e remover |
||||
|
\emph{Convênios}. |
||||
|
\item[Gerenciar Inventário:] consiste em atualizar o \emph{Inventário} |
||||
|
das Casas Legislativas. |
||||
|
\item[Gerenciar Serviços:] consiste em inserir, atualizar e remover |
||||
|
\emph{Serviços} prestados às Casas Legislativas. |
||||
|
\end{description} |
||||
|
|
||||
|
% |
||||
|
% Local variables: |
||||
|
% mode: flyspell |
||||
|
% TeX-master: "relatorio.tex" |
||||
|
% End: |
||||
|
% |
@ -0,0 +1,112 @@ |
|||||
|
% $Id$ |
||||
|
% --------------------------------------------------------------------------- |
||||
|
% |
||||
|
% This is part of the SIGI. |
||||
|
% Copyright (C) 2008 Interlegis |
||||
|
% See the file relatorio.tex for copying conditions. |
||||
|
% |
||||
|
|
||||
|
\section{Modelo de dados} |
||||
|
\label{sec:modelo} |
||||
|
|
||||
|
\subsection{Diagrama de Entidade e Relacionamento} |
||||
|
O \emph{Diagrama de Entidade e Relacionamento} é um modelo |
||||
|
diagramático que descreve o modelo de dados de um sistema com alto |
||||
|
nível de abstração. |
||||
|
|
||||
|
Na Figura \ref{fig:er} o diagrama do SIGI é apresentado. |
||||
|
|
||||
|
\begin{figure}[p] |
||||
|
\centering |
||||
|
\includegraphics[width=120mm]{../imagens/er.png} |
||||
|
\caption{Diagrama de Entidade e Relacionamento do SIGI} |
||||
|
\label{fig:er} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsection{Diagrama de Classes} |
||||
|
Em programação, um \emph{diagrama de classes} é uma representação da |
||||
|
estrutura e relações das classes que servem de modelo para objetos. |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.casas} |
||||
|
Na Figura \ref{fig:casas} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.casas|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=60mm]{../imagens/casas.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.casas} |
||||
|
\label{fig:casas} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.contatos} |
||||
|
Na Figura \ref{fig:contatos} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.contatos|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=120mm]{../imagens/contatos.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.contatos} |
||||
|
\label{fig:contatos} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.convenios} |
||||
|
Na Figura \ref{fig:convenios} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.convenios|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=100mm]{../imagens/convenios.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.convenios} |
||||
|
\label{fig:convenios} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.inventario} |
||||
|
Na Figura \ref{fig:inventario} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.inventario|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=120mm]{../imagens/inventario.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.inventario} |
||||
|
\label{fig:inventario} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.mesas} |
||||
|
Na Figura \ref{fig:mesas} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.mesas|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=145mm]{../imagens/mesas.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.mesas} |
||||
|
\label{fig:mesas} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.parlamentares} |
||||
|
Na Figura \ref{fig:parlamentares} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.parlamentares|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=100mm]{../imagens/parlamentares.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.parlamentares} |
||||
|
\label{fig:parlamentares} |
||||
|
\end{figure} |
||||
|
|
||||
|
\subsubsection{Aplicação sigi.apps.servicos} |
||||
|
Na Figura \ref{fig:servicos} é apresentado o digrama de classes da |
||||
|
aplicação Django \verb|sigi.apps.servicos|. |
||||
|
|
||||
|
\begin{figure}[h] |
||||
|
\centering |
||||
|
\includegraphics[width=60mm]{../imagens/servicos.png} |
||||
|
\caption{Diagrama de Classes da aplicação sigi.apps.servicos} |
||||
|
\label{fig:servicos} |
||||
|
\end{figure} |
||||
|
|
||||
|
% |
||||
|
% Local variables: |
||||
|
% mode: flyspell |
||||
|
% TeX-master: "relatorio.tex" |
||||
|
% End: |
||||
|
% |
@ -0,0 +1,38 @@ |
|||||
|
% $Id$ |
||||
|
% --------------------------------------------------------------------------- |
||||
|
% |
||||
|
% This is part of the SIGI. |
||||
|
% Copyright (C) 2008 Interlegis |
||||
|
% See the file relatorio.tex for copying conditions. |
||||
|
% |
||||
|
|
||||
|
\section{Esquema de dados} |
||||
|
\label{sec:esquema} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.casas} |
||||
|
\verbatiminput{../arquivos/casas.sql} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.contatos} |
||||
|
\verbatiminput{../arquivos/contatos.sql} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.convenios} |
||||
|
\verbatiminput{../arquivos/convenios.sql} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.inventario} |
||||
|
\verbatiminput{../arquivos/inventario.sql} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.mesas} |
||||
|
\verbatiminput{../arquivos/mesas.sql} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.parlamentares} |
||||
|
\verbatiminput{../arquivos/parlamentares.sql} |
||||
|
|
||||
|
\subsection{Aplicação sigi.apps.servicos} |
||||
|
\verbatiminput{../arquivos/servicos.sql} |
||||
|
|
||||
|
% |
||||
|
% Local variables: |
||||
|
% mode: flyspell |
||||
|
% TeX-master: "relatorio.tex" |
||||
|
% End: |
||||
|
% |
@ -0,0 +1,17 @@ |
|||||
|
% $Id$ |
||||
|
% --------------------------------------------------------------------------- |
||||
|
% |
||||
|
% This is part of the SIGI. |
||||
|
% Copyright (C) 2008 Interlegis |
||||
|
% See the file relatorio.tex for copying conditions. |
||||
|
% |
||||
|
|
||||
|
\section{Protótipo de Interface Gráfica} |
||||
|
\label{sec:prototipo} |
||||
|
|
||||
|
% |
||||
|
% Local variables: |
||||
|
% mode: flyspell |
||||
|
% TeX-master: "relatorio.tex" |
||||
|
% End: |
||||
|
% |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 53 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 132 KiB |
After Width: | Height: | Size: 47 KiB |
After Width: | Height: | Size: 60 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 12 KiB |