Desenvolvimento de software para gestão de documentos
1. XX Seminário Institucional de Iniciação Científica
XVII Seminário de Integração de Pesquisa e Pós-Graduação
II Colóquio Tecnológico da URI (COLTURIS)
XII Seminario Extensão
PESQUISA E ESTUDO SOBRE TÉCNICAS
E MÉTODOS RELACIONADOS A
ENGENHARIA DE SOFTWARE
Jonas Mayer Ferreira, Luciéli Tolfo Beque Guerra
[jonas.mayer.developer@gmail.com, lucieli@urisantiago.br]
Grupo de pesquisa: Engenharia e Garantia de Qualidade de
Software
Linha de Pesquisa: Engenharia de Software
Área do Conhecimento: Engenharias e Ciência da Computação
Bolsa: PIIC/URI
Universidade Regional Integrada do Alto Uruguai
e das Missões – Campus Santiago
2. Introdução
Índice de sucesso em projetos de Desenvolvimento de Software
em 2012, segundo o CHAOS Manifesto[1]
3. Introdução
O almoxarifado da Universidade Regional
Integrada do Alto Uruguai e das Missões
Campus Santiago (URI) entre outras funções
armazena documentos e gerência seu fluxo. No
entanto o gerenciamento destes documentos
era feito de forma manual, atráves de planilhas
eletrônicas e da impressão das mesmas.
4. Objetivos
O projeto de desenvolvimento de um
software para gestão de documentos para o
Almoxarifado da URI objetivava desenvolver
um software com qualidade que atendesse as
necessidades do almoxarifado e otimiza-se os
seus processos, enquanto pesquisava, estudava
e aplicava sólidos princípios da Engenharia de
Software.
5. Software de Qualidade
Segundo MCLAUGHLIN [2] um software de
qualidade
● deve satisfazer as necessidades do cliente
● possuir uma boa arquitetura e código
conciso de modo que tenha
○ bons índices de manutenibilidade
○ facilite a reutilização de código
○ siga princípios que facilitem a extensão das
funcionalidades
6. Dominio
Almoxarifado da URI Santiago:
● grande quantidade e variedade de
documentos
● possui um alto índice de instabilidade em
relação a estrutura organizacional e
legislação de processos
8. Resultados e Discussão (metodologia)
baseado em Waterfall natureza
incremental
Vantagens
- entrega de um software
sólido
- diminuição dos riscos
relacionados a prazos
- foco nas etapas do processo
de desenvolvimento
- entrega em períodos
menores
- melhor resposta a
mudança
Desvantagens
- entrega apenas após
conclusão do projeto
- adequação tardia a
mudanças
- feedback tardio
- menor controle de
prazos
- estimativa menos
apurada sobre progresso
do projeto
- possibilidade de
diminuição da qualidade
do código
9. Resultados e Discussão
Linguagem: Java
● Portabilidade
● Desempenho
SGBD (Sistema Gerenciador de Banco de
Dados): PostgreSQL
● Open Source
● Funcionalidades de alto-nível
10. Resultados e Discussão (levantamento de requisitos)
Técnicas de levantamento de requisitos:
● observação
● questionários
● entrevista
11. Resultados e Discussão (requisitos)
● armazenamento do registro de documentos e
de sua estrutura
12. Resultados e Discussão (requisitos)
● gerenciar e administrar os processos de
retiradas e solicitações de documentos
SAlmox
13. Resultados e Discussão (requisitos)
● manter um histórico das solicitações e das
retiradas dos documentos
25. Resultados e Discussão (teste)
A etapa de testes consistiu de testes manuais,
estes que se provaram, quando usados
desacompanhadas de outras modalidades de
testes, lentos e desgastantes.
Como proposta de melhoria, estaria a
automação de testes com o uso de unit testing e
acceptance testing. Bem como o uso de TDD
(Test-driven development).
26. Resultados e Discussão (manutenção)
Realizadas manutenções para:
● adição e adaptação de relatórios
● refatorações
● adaptção a portaria Nº 1.224 de 18 de
dezembro de 2013 (em andamento)
27. Resultados e Discussão (implantação)
Inicialmente a implantação ocorreu em
pequena escala (em um único terminal), devido a
problemas de indisponibilidade de um servidor
para o gerenciamento do banco de dados.
Ocorrendo posteriormente, em uma maior
escala, através da migração do banco de dados
para um servidor no NI da Instituição.
28. Software
Linguagem: Java (versão minima 1.7)
Sistemas Operacionais compatíveis:
Linux e Windows
SGBD: PostgreSQL (< 9.0)
Versão atual: 1.04
Versão em produção: 1.1
Licença: GPL v.2 (Open Source)
32. Cronograma
Pesquisa e estudo sobre conceitos de Engenharia de Software.
Escolha de uma Linguagem de Programação e Banco de Dados.
Levantamento dos requisitos através do uso de técnicas de Engenharia de Software.
Modelagem do sistema utilizando os principais diagramas da UML.
Implementação do sistema.
Realização de testes no software desenvolvido.
Validação do sistema junto aos usuários.4
Implantação do sistema no setor do almoxarifado da URI Campus de Santiago.
Elaboração de manual de utilização do software.
Treinamento no uso do software.
33. Conclusões
Segundo os parâmetros do CHAOS
Manifesto [1], o projeto pode ser considerado
um sucesso, pois:
1. entrega do projeto no prazo determinado
2. contendo funcionalidades inicialmente
requisitadas
34. Conclusões
No entanto conforme citado a aplicação de
certas técnicas e tecnologias acompanhada do
uso de uma metodologia baseada em modelo
incremental poderiam reduzir o tempo e
esforço empregados durante a realização do
projeto.
35. Conclusões
As medidas empregadas para aumentar os
indicies de manutenibilidade, como o uso do
padrão composto MVC, realmente facilitaram
as manutenções.
36. Referências
[1] STANDISH GROUP – Manifesto Chaos 2013. Disponível em: <http://www.
versionone.com/assets/img/files/CHAOSManifesto2013.pdf> Acessado em: 15 de Maio de
2014>
[2] MCLAUGHLIN B., et. al. ; Head First Object-Oriented Analysis & Design;primeira
edição; O’Reilly Media, EUA. 2007
[3] PRESSMAN R.; Software Engineering: Apractioner's Approach, 7ª edição, 2010.