@ -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 |