(STUDY OF AGILITY IN SOFTWARE DEVELOPMENT PROCESS WITH TEAMS AT DIFFERENT WORK UNITS USING A ON-LINE MANAGEMENT TOOL) - PDF
Download "(STUDY OF AGILITY IN SOFTWARE DEVELOPMENT PROCESS WITH TEAMS AT DIFFERENT WORK UNITS USING A ON-LINE MANAGEMENT TOOL)"
Rita Oliveira Canela
1 ESTUDO DE AGILIDADE NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE COM EQUIPES EM DIFERENTES UNIDADES DE TRABALHO UTILIZANDO UMA FERRAMENTA DE GERENCIAMENTO ON-LINE (STUDY OF AGILITY IN SOFTWARE DEVELOPMENT PROCESS WITH TEAMS AT DIFFERENT WORK UNITS USING A ON-LINE MANAGEMENT TOOL) José Rodolfo Beluzo 1 (PG); Reginaldo Gotardo 2 (O); 1 Curso de Pós-Graduação em Desenvolvimento de Sistemas para WEB, Faculdades Integradas FAFIBE Bebedouro-SP 2 Professor da Pós-Graduação em Desenvolvimento de Sistemas para WEB, Faculdades Integradas FAFIBE Bebedouro-SP Abstract. The current scenario of software development is a worldwide collaborative development between people and companies in different locations. This paper shows the advantages of software development teams with development, quality testing and project management in environments where face communication between teams is not easily accessible. Therefore, it was developed a management tool to control the processes ONLINE deadlines and the development flow system in order to increase the ease and agility of the organization, increasing product quality and reduces the efforts developed to produce them and keep them (Harjumaa et al, 2004). Keywords. organization, processes, development, testing, management. Resumo. O cenário atual de desenvolvimento de software em todo mundo é de desenvolvimento colaborativo entre pessoas e empresas de diferentes localidades. Este trabalho visa mostrar as vantagens do desenvolvimento de software com equipes de desenvolvimento, teste de qualidade e gerência de projetos em ambientes em que a comunicação presencial entre as equipes não é de fácil acesso. Sendo assim, foi desenvolvida uma ferramenta de gerenciamento de processos ONLINE para controlar os prazos e o fluxo do desenvolvimento de um sistema (software), a fim de aumentar a facilidade de organização e agilidade, o que aumenta a qualidade do produto desenvolvido e diminui os esforços para produzi-los e mantê-los(harjumaa, 2005). Palavras chave: organização; processos; desenvolvimento; teste; gerenciamento. 1. Informações Gerais. Este trabalho relata o desenvolvimento de uma ferramenta de gerenciamento de processos de desenvolvimento de um software por equipes de trabalho que se situam em diferentes localidades. Para desenvolver a aplicação foram utilizados recursos de ferramentas e tecnologias open-source, 86
2 visando uma redução do custo de desenvolvimento com licenças de softwares e a facilidade de se encontrar soluções prontas nos fóruns de discussão em todo o mundo. 2. Recursos de linguagem de programação, banco de dados, segurança, interface e usabilidade Por ser um sistema colaborativo onde será acessado por equipes onde se desconhece qual é o sistema operacional de cada equipe e as informações não serão acessadas de um servidor local da empresa, o sistema foi desenvolvido na plataforma WEB para que todos possam ter fácil acesso sem complicações de configuração e recursos de sistema. Sobre as descrições técnicas do desenvolvimento, foi utilizado um servidor APACHE que roda em um servidor localizado em empresas especializadas a oferecer este tipo de serviço. A linguagem de programação do lado servidor foi o PHP 5.3.0, que já oferece recursos de orientação a objetos, que facilita a reutilização do código e o trabalho em equipe, alem de acelerar o processo de desenvolvimento (Dall'Oglio, 2009). A IDE de desenvolvimento foi o editplus V3.21, uma ferramenta que possui ótimos recursos de codificação. O Sistema Gerenciador de Banco de Dados utilizado foi o MySQL ; para gerenciar a criação das tabelas e rotinas, foi utilizado o PHPMyAdmin 2.5.5, e para a modelagem de dados do sistema foi utilizado o brmodelo. (Figura 1) Figura 1: Modelo Relacional do banco de dados do Sistema 87
3 Para a segurança dos dados trafegados na WEB, foram utilizados dois tipos de criptografia: chave simétrica e chave assimétrica. Foi aplicada uma chave assimétrica para a tela de login, do lado cliente, onde uma função MD5 desenvolvida na linguagem Javascript faz a codificação do que será enviado para o servidor, no qual estão localizados as configurações de login e senha, também já criptografadas com a mesma codificação. Já para o tráfego das informações que ficam no sistema, a criptografia precisa ser simétrica, onde o usuário precisa da informação para a leitura. Neste caso usamos uma criptografia de codificação com uma chave de 64 bits na hora do envio (lado cliente) e uma de descodificação na hora do recebimento (lado servidor). Em relação à interface (lado do cliente), utilizaram-se os recursos de folha de estilo CSS, que facilita o desenvolvimento e organização do layout de todas as páginas do site, mantendo um padrão de layout para todas as subpáginas, além de permitir compatibilidade com a maioria dos browsers utilizados no mercado (Internet Explorer 7 ou superior, Mozilla Firefox 3.0 ou superior e Opera 10). Para uma boa usabilidade, foram utilizados os recursos do Javascript e a metodologia AJAX, que combina Javascript e XML para tornar as páginas WEB mais interativas e rápidas, realizando mudanças assíncronas dentro da página WEB, sem precisar recarregá-la por um todo. 3. Utilização do Sistema Por ser um sistema Online, o mesmo deve ser multiusuário, e, por ser um sistema que será usado por equipes cada qual com sua função no desenvolvimento, deve possuir também múltiplas permissões de acesso. Os acessos serão: Gerente de Requisitos, Gerente de Processos, Desenvolvimento, Teste de Qualidade. (Figura 02) Figura 2 Tela de login dos usuários O Primeiro acesso será da equipe de gerência de requisitos. Estes realizam o cadastro do projeto no sistema, criam os usuários no sistema (caso os mesmos ainda não estejam cadastrados). Após este passo, os mesmos irão criar as atividades a serem desenvolvidas no sistema. Em seguida, a equipe de gerência de processos irá estimar os prazos e as prioridades das tarefas a serem desenvolvidas pela equipe de desenvolvimento e lançá-las no sistema. 88
4 Os próximos a utilizar o sistema é a equipe de desenvolvimento. Estes irão dar as tarefas como abertas (ou rejeitadas, com a respectiva descrição de rejeição, caso discordem ou não tenham entendido o requisito da tarefa, voltando novamente Figura 3: formulário de cadastro de atividades a atividade para a equipe de requisitos para redefinir a tarefa), e a equipe de gerenciamento de processos irá criar a tarefa de testes da atividade que a equipe de desenvolvimento está em aberto. (figura 3 e 4) Após a mudança do status para finalizado, a equipe de desenvolvimento envia uma versão do módulo terminado para que a equipe de testes possa iniciar os testes. Caso esta ultima encontre erros, a Figura 4 Área do desenvolvedor atividade é aberta novamente para a equipe de desenvolvimento, seguindo um ciclo até todas as atividades serem dadas como finalizadas. (Figura 06) 89
5 Figura 5: Área de controle de teste qualidade 4. Considerações Finais Terminado o desenvolvimento do sistema utilizando os recursos da ferramenta de gerenciamento de processos ONLINE, podemos concluir que para este tipo de situação (desenvolver software com equipes de trabalho situadas em diferentes localidades físicas) a utilização de um software de gerenciamento de processos ONLINE é muito útil para a facilidade de organização e agilidade, o que aumenta a qualidade do produto desenvolvido e diminui os esforços para produzi-los e mantê-los, de acordo com alguns autores (HARJUMAA, 2005). 5. Referências HARJUMAA, Lasse. Software Process: Improvement And Practice. Volume 10. Editor-in-Chief, DALL'OGLIO, Pablo. PHP: Programando com Orientação a Objetos. 2.ed. São Paulo: Novatec Editora,
Faculdade de Tecnologia Senac (Pelotas) Análise e desenvolvimento de Sistemas Sistemas de Informação Investigando Sistemas de Informação PHP-Nuke Maxwell Rodrigues Laner Sumário 1. Introdução...3 2. 1
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNÓLOGO EM ANALISE E DESENVOLVIMENTO DE SISTEMAS
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNÓLOGO EM ANALISE E DESENVOLVIMENTO DE SISTEMAS Sistema de Controle de Viaturas por Pablo Wasculewsky de Matos Orientador: Prof. Me. André Vinicius
ANEXO I - Proposta. 1. Apresentação. 2. Tecnologia. 3. Metodologia
ANEXO I - Proposta 1. Apresentação A empresa Join desenvolve projetos que oferecem soluções através da tecnologia, oferecendo aos clientes e usuários ferramentas para a realização de tarefas, de maneira
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO Curso Superior de Graduação em ANÁLISE E DESENVOLVIMENTO DE SISTEMAS Sistema de Ordens de Serviço HDA Soluções em Informática Por AUGUSTO CARRICONDE
MANUAL DO ACADÊMICO. de Utilização do Sistema de Requerimentos Online CEAD. Débora Soares Silva Thiago Mendes Borges
MANUAL DO ACADÊMICO de Utilização do Sistema de Requerimentos Online CEAD Débora Soares Silva Thiago Mendes Borges Débora Soares Silva Thiago Mendes Borges Manual do Acadêmico de Utilização do Sistema
Apresentação 3 Agenda Apresentação SIAGRI Objetivo Situação Atual Modelo Proposto de SI o Tecnologias o Layout o Funcionalidades o Vantagens Benefícios Esperados Esclarecimentos de Dúvidas 4 Apresentação