Proposta de uma ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído

Tamanho: px
Começar a partir da página:

Download "Proposta de uma ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído"

Transcrição

1 Proposta de uma ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído Ana Paula Chaves, Jocimara Segantini Ferranti, Alexadre L Erário, Rogério Santos Pozza 1 Universidade Tecnológica Federal do Paraná - UTFPR Coordenação de Informática Avenida Alberto Carazzai, Cornélio Procópio PR Brazil {chavesana85,joccyferranti}@yahoo.com.br,{lerario,pozza}@cp.cefetpr.br Abstract. This issue presents a proposal of a tool that helps the software project management based on an architecture that makes possible the specification and enaction of process. The tool uses Petri network formalism in process modelling and allows that its activities are distributed among distant geographically development teams. The projects management allows the following of the process execution flow giving to project manager a project course overview. Resumo. Este artigo apresenta a proposta de uma ferramenta de apoio ao gerenciamento de projetos de software baseada em uma arquitetura que possibilita a especificação e execução de processos. A ferramenta utiliza o formalismo de redes de Petri na modelagem do processo e ainda permite que suas atividades sejam distribuídas entre equipes de desenvolvimento geograficamente distantes. O gerenciamento dos projetos permite o acompanhamento do fluxo de execução do processo fornecendo ao gerente de projeto uma visão geral do andamento do mesmo. 1. Introdução O progresso tecnológico é basicamente representado por constantes avanços nas áreas de hardware e software. O resultante crescimento da conectividade desse aparato computacional é evidenciado por melhoras na tecnologia de redes de computadores, que não se restringe apenas à velocidade de transmissão dos dados, mas também à confiabilidade e alcance geográfico, por meio físico ou aplicações de redes sem fio. Essa expansão transformou o computador em uma poderosa ferramenta de comunicação e colaboração. A distribuição geográfica do processo de desenvolvimento de software tem se tornado cada vez mais significativa, buscando obter vantagens competitivas em termos de ganho de produtividade, melhoria de qualidade, flexibilidade de desenvolvimento, redução de custos e diluição de riscos [Prikiladnick 2004]. Gerenciar um projeto consiste na tomada de decisões sobre o uso de recursos, humanos ou materiais, na realização de atividades que visam atingir um objetivo. Sua essência está no planejamento e na execução das atividades que compõem seu ciclo de

2 vida. Dessa forma, no gerenciamento de projetos de software, planejar e executar atividades de um processo de desenvolvimento são tarefas importantes para que um resultado de qualidade seja obtido [Huzita 2006]. Automatizar processos de software facilita a gerência do desenvolvimento, controlando o comportamento do processo definido, coletando métricas e reforçando as regras para garantir a integridade do processo. Além de melhorar a comunicação entre as pessoas envolvidas e a consistência do que está sendo feito, provê informações que orientam o desenvolvedor a realizar o trabalho com mais eficiência, possibilita a reutilização das definições de processo e a medição do progresso do trabalho, resultando na economia de recursos. Este artigo propõe uma ferramenta de apoio ao Desenvolvimento Distribuído de Software que possibilita a especificação, modelagem e execução de processos de desenvolvimento. A Seção 2 apresenta conceitos importantes para a contextualização da ferramenta. A Seção 3 descreve os fundamentos da modelagem e execução de processos de software. A Seção 4 traz alguns trabalhos relacionados. A Seção 5 propõe uma arquitetura para apoiar o gerenciamento de processos de desenvolvimento distribuído. As seções 6 e 7 trazem a descrição da ferramenta proposta e a tecnologia utilizada no desenvolvimento, respectivamente. A Seção 8 apresenta a conclusão deste artigo. 2. Conceitos Empregados Esta seção descreve brevemente alguns dos conceitos que fazem parte do contexto de aplicação da ferramenta proposta. As seções 2.1 e 2.2 apresentam, respectivamente, as definições de processo de software e Desenvolvimento Distribuído de Software Processo de software [Pressman 2005] define processo de software como uma série de passos previsíveis que auxilia na obtenção de resultados de qualidade e em tempo. Informalmente, o processo de software pode ser compreendido como o conjunto de passos parcialmente ordenados, relacionados com conjuntos de artefatos, recursos e restrições, tendo como objetivo transformar os requisitos do usuário em software. Os processos de software, em sua maioria, são bem estruturados e possuem fases bem definidas, que compreendem uma série de atividades executadas para que um objetivo seja atingido. As atividades têm como objetivo a construção de um conjunto de artefatos que poderão ser usados por outras atividades para completar suas tarefas. Qualquer fator necessário à execução de uma atividade, mas que não seja insumo para a mesma, é chamado de recurso, podendo ser hardware, software ou pessoa. Um papel descreve um conjunto de responsabilidades, direitos e habilidades necessários para uma pessoa realizar uma atividade no processo. Gerente, projetista e programador são exemplos de papéis. Uma restrição afeta a realização de um processo, impondo condições que devem ser satisfeitas antes ou depois da execução de uma atividade.

3 2.2. Desenvolvimento Distribuído de Software As equipes de projeto de software vêm se distribuindo geograficamente, em escala mundial, inseridas no conceito de globalização que a sociedade tem vivenciado. Diante disso, o Desenvolvimento Distribuído de Software (DDS) possibilita a interação entre equipes de desenvolvimento geograficamente distantes, que podem estar em organizações, cidades, estados e, até mesmo, em países diferentes, e a disposição dos recursos em âmbito global. O DDS fornece suporte computacional que ataca as dificuldades características da implantação, execução e do monitoramento de projetos em ambientes distribuídos, como gerência de projeto, processo de desenvolvimento de software, complexidade e tamanho de projetos, tecnologia e infra-estrutura de comunicação disponível, dispersão geográfica e diferenças culturais [Prikiladnick 2004]. 3. Modelagem e Execução de Processos de Software Desenvolver software utilizando um processo de desenvolvimento bem definido não é uma tarefa simples, já que envolve atividades complexas realizadas por pessoas com capacidades diversas. A descrição formal de um processo de software é uma atividade que permite que o mesmo seja analisado, compreendido e executado. Neste contexto, a modelagem e execução de processos de software estão diretamente relacionadas ao aumento de qualidade dos produtos de software [Reis 1998]. As seções 3.1 e 3.2 apresentam os conceitos de modelagem e execução de processos Modelagem de Processos Um modelo de processo é uma representação abstrata do processo de software que busca descrever a ordem de execução das fases e como elas interagem entre si [Reis 1998]. O modelo de processo especifica quais atividades serão executadas, por quem, quando, como, onde e por que serão realizadas e as dependências existentes entre elas. Os diversos modelos encontrados na literatura descrevem o processo sob perspectivas particulares de abstração e são propostos para atender a diversos tipos de sistemas com as mais variadas necessidades. Tais modelos - Cascata [Royce 1970]; Espiral [Bohem 1986]; Caótico [Racoon 1995] e Processo Unificado [Jacobson 1999], entre outros - sugerem a realização de uma determinada seqüência de atividades para que o desenvolvimento do software seja bem sucedido. Os modelos de processo de software representam os elementos do processo e seu comportamento utilizando técnicas como diagramas de transição de estados, diagramas de fluxos de dados, linguagens de programação de processos, entre outras. Dessa forma, a modelagem do processo de software permite que a representação do modelo seja compartilhada pela equipe de desenvolvimento, possibilita analisar o processo e descobrir pontos que podem ser melhorados, proporciona reutilização da definição, suporta a gerência de processo e provê orientação e execução automatizada do processo [Curtis 1992].

4 3.2. Execução de Processos Na execução de processos de software, as atividades modeladas são realizadas levando em consideração a coordenação entre múltiplos usuários e a interação entre ferramentas e desenvolvedores [Reis 1998]. Um projeto é uma instância do processo, com objetivos e restrições específicas [Conradi 1994], que possui características como alocação de recursos, atribuição das atividades aos desenvolvedores e prazos. O mecanismo de execução interpreta o processo modelado e manipula informações especificas do projeto, como as atividades em execução e o estado do processo. Além disso, esse mecanismo deve ativar automaticamente atividades que dispensam intervenção humana, suportar a coordenação e cooperação das equipes envolvidas no projeto, assegurar que dependências, restrições de tempo e recursos sejam satisfeitas, prover diferentes visões do estado de execução e coletar dados da evolução do processo. É importante salientar que existe uma distinção entre a definição de um processo e sua execução. Mesmo apoiada por um ambiente automatizado, a realização do processo pode não estar de acordo com sua especificação. 4. Trabalhos Relacionados Esta seção traz alguns trabalhos que utilizam conceitos de Desenvolvimento Distribuído de Software e modelagem e execução de processos, abordados na construção da ferramenta proposta. As seções 4.1 e 4.2 apresentam dois ambientes de desenvolvimento de software, a estação TABA e o ambiente PROSOFT, respectivamente, dando enfoque, principalmente, às soluções empregadas na definição e execução de processos. A Seção 4.3 descreve brevemente a ferramenta DIMANAGER, que apóia o gerenciamento de projetos de software em ambientes de desenvolvimento distribuído Estação TABA A Estação TABA [Taba 2006] é um ambiente de desenvolvimento de software que apóia a execução das atividades que compõem um processo de software por meio de um conjunto de ferramentas integradas e repositórios contendo informações adquiridas durante a execução do processo do projeto. Desenvolvida no contexto de um projeto acadêmico, o modelo para controle de execução de processos nos ambientes TABA possui algumas características que auxiliam um efetivo controle e execução de processos: associação de pessoas às atividades, suporte à modificação do processo durante sua execução, registro de informações sobre o processo em execução e simulação do processo utilizado. Possui uma máquina de processos que executa as especificações do processo de maneira independente do ambiente PROSOFT O PROSOFT é um ambiente de desenvolvimento de software com o objetivo de apoiar o desenvolvimento formal de software desde a especificação dos requisitos até a implementação do sistema, fornecendo integração de dados, controle e de apresentação entre suas ferramentas. As ferramentas do PROSOFT são chamadas Ambientes de Tratamento

5 de Objetos (ATO), que interagem por um mecanismo de comunicação chamado Interface de Comunicação do Sistema (ICS). A atual arquitetura do ambiente provê mecanismos que permitem sua utilização por vários usuários simultaneamente, permitindo compartilhamento de informações e auxílio inteligente ao desenvolvimento. O Gerenciador de Processos (GP) faz o papel de máquina de execução ou interpretador de modelos de processo, permitindo a execução de processos, de acordo com um modelo de processo software [Reis 1998] DIMANAGER O objetivo da ferramenta DIMANAGER [Pedras 2003] consiste em colaborar com o gerenciamento de projetos de software em ambientes de desenvolvimento distribuído. Para a definição do planejamento do projeto na ferramenta DIMANAGER são consideradas funcionalidades como a identificação das atividades dentro de um projeto, identificação das métricas que deverão ser analisadas para o acompanhamento do projeto, definição dos participantes com atribuição de funções e habilidades e elaboração do cronograma de atividades. O registro da execução das atividades realizado pelos participantes no decorrer do trabalho gera as informações utilizadas no acompanhamento do projeto. Esse acompanhamento é a parte mais importante da ferramenta, já que possibilita ao gerente de projeto visualizar os resultados referentes às atividades desenvolvidas por cada participante, analisar o desempenho de cada um e verificar se o projeto está evoluindo dentro do prazo estabelecido. 5. Arquitetura Proposta Esta seção descreve a arquitetura proposta para apoiar o gerenciamento de processos no desenvolvimento distribuído de software que possibilita desde a especificação e modelagem de um processo de software até a sua execução. A arquitetura é dividida em três camadas - Modelagem, Engine e Execução - que são apresentadas nas seções 5.1, 5.2 e Camada de Modelagem O objetivo da camada de Modelagem é gerar uma especificação de um processo de software capaz de ser interpretada pela Engine e executada pela camada de Execução. Essa especificação é gerada a partir da definição e modelagem do processo. A definição do processo consiste em descrever suas atividades e os artefatos que deverão ser produzidos e/ou consumidos em cada uma delas. Depois de definido, o processo é modelado e os artefatos gerados dentro de cada atividade são agrupados, possibilitando a distribuição desses grupos entre as diversas unidades de desenvolvimento. Esse agrupamento define o fluxo de execução do processo Engine A Engine interpreta a especificação do processo e a transforma em um processo distribuído. Essa camada cria uma instância do processo especificado e adiciona a ela informações específicas do projeto, como metas e prazos. Além disso, distribui os grupos de artefatos modelados entre as diversas equipes de desenvolvimento. Depois disso, o processo está pronto para ser executado.

6 5.3. Camada de Execução A camada de Execução realiza o gerenciamento do processo instanciado. O gerenciamento automatizado da execução do processo manipula as informações referentes ao andamento do projeto, como datas de início e término das atividades, e permite o acompanhamento do estado de execução das atividades e dos artefatos. O estado corresponde à situação do andamento de um processo, atividade ou artefato. A Figura 1(a) mostra os estados que um processo pode assumir, sendo eles: Instanciado: um processo foi criado, distribuído entre as equipes de desenvolvimento e está pronto para ser executado; Executando: o gerente de projeto iniciou a execução de um projeto "instanciado" ou retomou um projeto "suspenso"; Suspenso: um projeto teve sua execução suspensa pelo gerente de projeto, podendo ser retomado, voltando ao estado "executando", ou "cancelado"; Cancelado: o gerente de projeto encerrou um projeto "instanciado", "executando" ou "suspenso", não podendo ser retomado posteriormente; Concluído: a execução de um projeto foi concluída. A Figura 1(b) representa os estados de um artefato ou atividade. As atividades e os artefatos podem assumir os mesmos estados de um processo, exceto o estado "cancelado", já que, por serem parte integrante do processo, precisam ser executados completamente para que o processo possa ser concluído. Figura 1. Diagramas de estados de (a) um processo, (b) atividade e artefato. Algumas atividades podem assumir o estado "executando" automaticamente, quando da conclusão da atividade anterior. Por outro lado, outras atividades precisam ser iniciadas explicitamente pelo gerente do projeto. Essa característica é definida pelo gerente de processo durante a especificação. Já os artefatos têm seus estados alterados pelo desenvolvedor responsável pela sua produção. Esse acompanhamento oferece ao gerente de projeto uma visão geral do andamento do mesmo, possibilitando a tomada de decisões quanto a mudanças no fluxo de execução durante o desenvolvimento.

7 6. Ferramenta Proposta Este artigo propõe uma ferramenta de apoio ao DDS que possibilita a especificação, modelagem e execução do processo de desenvolvimento de software. O objetivo é permitir que, embora os processos modelados sejam executados por equipes de desenvolvimento geograficamente distantes, essa característica seja transparente aos usuários e o gerenciamento de cada projeto ocorra de forma virtualmente centralizada. A ferramenta consiste em três módulos - Edição, Gerenciamento e Monitoramento - baseados nas camadas da arquitetura descrita na seção anterior. O módulo Edição equivale à camada de Modelagem. A Engine está incluída no módulo Gerenciamento, que combinada com o módulo Monitoramento, forma a camada de Execução. A Figura 2 apresenta a arquitetura proposta na Seção 5 e a correspondência de suas camadas com os módulos da ferramenta descrita nessa seção. Figura 2. (a) Arquitetura e (b) ferramenta propostas. Além das funcionalidades referentes à modelagem e execução dos processos, a ferramenta proposta também realiza o controle de usuários e sites que interagem com o sistema, descrito na Seção 6.1. Um site é um conjunto de usuários que representam uma equipe de desenvolvimento, em um mesmo local geográfico, responsável pelo desenvolvimento de um ou mais grupos de artefatos definidos na modelagem do processo. Os módulos Edição, Gerenciamento e Monitoramento são apresentados nas seções 6.2, 6.3 e 6.4, respectivamente Controle de Usuários e Sites O controle de usuários e sites consiste no cadastro, alteração e exclusão de usuários e sites. Para ter acesso ao sistema, o usuário deve ser cadastrado, possuir uma senha de acesso, ser relacionado a um único site e assumir um ou mais papéis dentro do sistema. A ferramenta proposta define quatro papéis, descritos a seguir: Gerente de processo: O gerente de processo é o responsável pela especificação e modelagem de um processo de desenvolvimento. Ao modelar o processo, o gerente de processo define a arquitetura de distribuição dos artefatos, a forma de execução e as dependências entre eles. Gerente de projeto: O gerente de projeto é o responsável pela instanciação e controle da execução de um projeto que contém um processo já definido e modelado. Ao instanciar um projeto, o gerente de projeto distribui os grupos de artefatos das

8 atividades entre os sites envolvidos e define as regras de transição entre os grupos de artefatos e atividades. O módulo Monitoramento permite ao gerente o acompanhamento do projeto, consultando o estado de desenvolvimento das atividades e grupos de artefatos. Gerente de site: O gerente de site responde pela equipe de desenvolvimento que gerencia. Além de manipular membros do site, distribui entre eles os artefatos do grupo atribuído ao site pelo gerente de projeto. Desenvolvedor: O desenvolvedor é o responsável pela construção do artefato atribuído a ele pelo gerente do site a que pertence. O administrador pode assumir qualquer um dos papéis suportados pela ferramenta. Além disso, é responsável por classificar os demais usuários definindo suas permissões e/ou restrições de acesso. A autenticação de um usuário no sistema permite/restringe o acesso do mesmo no ambiente. Seus papéis são consultados e as funcionalidades da ferramenta são disponibilizadas de acordo com seu perfil. Todo site cadastrado deve ter, além de sua descrição e local, um gerente de site, responsável pela equipe de desenvolvimento, e diversos membros que podem assumir quaisquer papéis definidos anteriormente Módulo Edição O módulo Edição é responsável por gerar a especificação de um processo a partir da definição de suas características e modelagem do seu fluxo de execução, de acordo com a camada de Modelagem da arquitetura proposta na Seção 5.1. Quando um processo é criado, é necessário definir suas atividades e os artefatos produzidos em cada uma delas. Um processo deve possuir ao menos uma atividade, e cada atividade, ao menos um artefato. Após a definição, a modelagem do processo é fundamental para representar as partes que o compõe e os relacionamentos existentes entre elas. Para isso, os artefatos de cada atividade são reunidos em um ou mais grupos e modelados utilizando o formalismo das Redes de Petri (PN - Petri Network) [Petri 1962]. A modelagem baseada em PN apresenta um grande potencial para a modelagem de softwares desenvolvidos de forma distribuída por possuir uma representação gráfica, ser de fácil aprendizado e permitir a descrição dos aspectos estáticos e dinâmicos do sistema, possibilitando simulações e verificações [Pádua 2004]. Segundo [Raposo 2000], uma PN é uma ferramenta de modelagem aplicável a uma série de sistemas, especialmente àqueles com eventos concorrentes. Seu objetivo principal é modelar o comportamento de um sistema a partir de seus estados e mudanças, sendo formada por lugares, transições e arcos. Os estados são associados aos lugares e suas marcações (tokens), representados graficamente por círculos e pontos, respectivamente. As transições correspondem às regras de disparo de uma ação e modelam o comportamento dinâmico do sistema. São representadas por barras e se associam aos estados com arcos. Os arcos, representados por setas com pesos, indicam as seqüências de possíveis transições entre os estados. As transições podem ser disparadas a partir do momento em que estão habilitadas, quando o evento associado a ela ocorrer.

9 A Figura 3 mostra um exemplo simples de uma rede de Petri e seus componentes. P1, P2, P3 e P4 representam os lugares da rede, dos quais P1, P2 e P3 possuem tokens que indicam que eles já concluíram suas atividades e podem disparar eventos nas transições T1 e T2. Dos arcos que ligam os lugares às transições, apenas P1-T1 possui peso 2, o que indica que ele necessita de dois tokens para habilitar a transição T1. Figura 3. Exemplo de uma rede de Petri. No módulo Edição, cada lugar da PN representa um grupo de artefatos pertencentes a uma mesma atividade. As transições são habilitadas quando cada um de seus lugares de entrada conclui a produção de seus artefatos. Os pesos dos arcos estão relacionados à quantidade de artefatos de entrada de uma transição ou lugar. Essa especificação é armazenada em um banco de dados que servirá de entrada para o módulo Gerenciamento. Apenas os gerentes de processo têm permissão de acesso a este módulo da ferramenta Módulo Gerenciamento O módulo Gerenciamento corresponde à Engine e à camada de Execução da arquitetura proposta. Dessa forma, instancia um processo modelado e o executa. A instância de um processo é criada pelo gerente de projeto. Ao criar um novo projeto, o gerente fornece suas informações específicas, como a descrição do projeto e as metas a cumprir, e determina qual dos processos modelados é mais adequado ao projeto em questão. A especificação do processo escolhido é então relacionada ao projeto e todas as suas atividades e seus artefatos são instanciados. Depois disso, o gerente de projeto determina os prazos que deverão ser cumpridos para o início e término dos artefatos e atividades do processo e distribui os grupos de artefatos modelados entre os sites. Um site pode receber um ou mais grupos de artefatos, cabendo ao gerente do site distribuir os artefatos desses grupos entre seus membros. Instanciado o processo, o projeto criado está pronto para ser executado. O gerente de projeto inicia o fluxo de execução do processo e habilita o primeiro grupo de artefatos

10 para que também seja executado. A partir de então, o fluxo é controlado de acordo com as regras de transição modeladas na especificação e o processo pode ser suspenso, retomado, cancelado e concluído, conforme descrito na Seção 5.3. A execução das atividades e dos artefatos ocorre de forma semelhante à do processo, possibilitando a suspensão, retomada e conclusão, sendo de responsabilidade do desenvolvedor manipular a execução dos artefatos delegados a ele. O fluxo de execução do processo pode ser encerrado pelo cancelamento ou conclusão do mesmo, de acordo com a Seção 5.3. Caso cancelado, o gerente de projeto deve informar as causas que justifiquem seu cancelamento. Por outro lado, se concluído, as informações fornecidas pelo gerente de projeto são acerca dos resultados obtidos durante a execução do projeto. Essas informações são armazenadas como histórico para auxiliar a execução futura de projetos similares. A Figura 4 descreve graficamente o fluxo principal de execução de um processo por meio de um diagrama de atividades. Figura 4. Diagrama de atividades do módulo Gerenciamento Módulo Monitoramento O módulo Monitoramento permite ao gerente de projeto realizar o acompanhamento da execução do processo.

11 Esse módulo recupera as informações referentes a uma instância do processo e utiliza PN para representar graficamente os estados de cada grupo de artefatos, que correspondem aos estados descritos na Seção 5.3 para artefatos e atividades. 7. Tecnologia A ferramenta proposta está sendo desenvolvida baseada no paradigma de orientação a objetos utilizando tecnologia Java e banco de dados relacional PostgreSQL 8. A camada de persistência, responsável pela comunicação da aplicação com a base de dados utiliza Hibernate. O Hibernate é um framework de mapeamento objeto relacional para aplicações Java [Hibernate 2006]. É uma ferramenta para mapear classes Java em tabelas do banco de dados e vice-versa e oferece suporte ao mapeamento de associações entre objetos, herança, polimorfismo, composição e coleções, disponibilizando também um mecanismo de consulta de dados. O módulo Edição é uma aplicação stand-alone e sua interface com o usuário é implementada com componentes Swing da Java API. O módulo Gerenciamento é uma aplicação Web que utiliza tecnologia JavaServer Faces (JSF). A tecnologia JSF é um framework para construção de aplicações Web que executa em um servidor Java e renderiza a interface gráfica UI como resposta para o cliente [JSF 2006]. API. O módulo Monitoramento é uma aplicação Web e utiliza uma JApplet da Java Os módulos Edição e Monitoramento são inicializados a partir do módulo Gerenciamento utilizando Java WebStart 8. Conclusão Este artigo apresenta um estudo sobre processos de desenvolvimento e Desenvolvimento Distribuído de Software, visando propor uma ferramenta de apoio ao gerenciamento de projetos que possibilita a especificação, modelagem e execução de processos de software. Após a descrição dos fundamentos de modelagem e execução de processos de software, foi proposta uma arquitetura que possibilita desde a especificação e modelagem de um processo até a sua execução. Propôs-se, ainda, uma ferramenta baseada nessa arquitetura com o objetivo de auxiliar no gerenciamento de projetos de desenvolvimento distribuído de software. Uma das contribuições da ferramenta proposta é a possibilidade de instanciar um processo de software especificado resultando em uma maior flexibilidade de desenvolvimento. Além disso, a utilização de redes de Petri na modelagem possibilita uma visualização de fácil entendimento, descrevendo os aspectos estáticos e dinâmicos do processo. Embora a ferramenta permita que os processos modelados sejam executados por equipes de desenvolvimento geograficamente distribuídas, a distribuição do processo é transparente ao usuário e o gerenciamento dos projetos ocorre de forma virtualmente centralizada. Entretanto, diversos aspectos acerca da distribuição do processo podem ser melhorados. São propostos como trabalhos futuros o suporte a colaboração e cooperação

12 dos sites envolvidos nos projetos, a coleta de métricas durante a evolução do processo e o gerenciamento dos recursos necessários aos projetos. Referências Bohem, B. W. (1986). A spiral model of software development and enhancement. ACM Software Engineering Notes. Conradi, R. e. a. (1994). EPOS: Object-Oriented Cooperative Process Modelling, pages Software Process Modelling and Technology, taunton: research studies press edition. Curtis, B. (1992). Process modelling. Communications of the ACM, 35(9). Hibernate (2006). Relational persistence for java and.net. Huzita, E. H. M; Tait, T. F. C. (2006). Gerencia de projetos de software. XII Escola Regional de Informática da SBC. Jacobson, I. e. a. (1999). Unified software development process. Addison-Wesley. JSF (2006). Javaserver faces technology. Pádua, S. I. D.; Silva, A. R. Y. P. A. J. V. I. R. Y. (2004). The potencial of petri nets in modeling and analysis of workflow. Gestão e Produção, 11(1): Pedras, M. E. V. (2003). Uma ferramenta de apoio ao gerenciamento de desenvolvimento de software distribuído. Master s thesis, Universidade Estadual de Maringá/Universidade Federal do Paraná, Maringá - PR. Petri, C. A. (1962). Kommunikation mit Automaten. PhD thesis, University of Bonn, Bonn, West Germany. Pressman, R. S. (2005). Software Engineering: A Practitioner s Approach. McGraw-Hill, USA, 6 edition. Prikiladnick, R.; Audy, J. L. N. (2004). Munddos - um modelo de referência para desenvolvimento distribuído de software. XVIII Simpósio Brasileiro de Engenharia de Software. Racoon, L. (1995). The chaos model and the chaos life cycle. ACM SIGSOFT Software Engineering Notes. Raposo, A. B. (2000). Coordenação em Ambientes Colaborativos Usando Redes de Petri. PhD thesis, Universidade Estadual de Campinas, Campinas - SP, Brasil. Reis, C. A. L. (1998). Gerenciador de processos de software para o ambiente prosoft. Master s thesis, Universidade Federal do Rio Grande do Sul, Instituto de Informática - Programa de Pós-Graduação em Ciência da Computação. Royce, W. W. (1970). Managing the development of large software systems. Proceedings of IEEE WESCON. Taba (2006). Estação taba - ambiente de desenvolvimento de software.

Ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído

Ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído Ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído Ana Paula Chaves 1, Jocimara Segantini Ferranti 1, Alexandre L Erário 1, Rogério

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

HIBERNATE EM APLICAÇÃO JAVA WEB

HIBERNATE EM APLICAÇÃO JAVA WEB HIBERNATE EM APLICAÇÃO JAVA WEB Raul Victtor Barbosa Claudino¹, Ricardo Ribeiro Rufino¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil victtor.claudino@gmail.com, ricardo@unipar.br Resumo: Este

Leia mais

Metodologia de Gerenciamento de Projetos da Justiça Federal

Metodologia de Gerenciamento de Projetos da Justiça Federal Metodologia de Gerenciamento de Projetos da Justiça Federal Histórico de Revisões Data Versão Descrição 30/04/2010 1.0 Versão Inicial 2 Sumário 1. Introdução... 5 2. Público-alvo... 5 3. Conceitos básicos...

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial 1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1. ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página

Leia mais

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti. TI Aplicada Aula 02 Áreas e Profissionais de TI Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Profissões de TI Prof. MSc. Edilberto Silva edilms@yahoo.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos respectivos

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade

Leia mais

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE A proposta para o ambiente apresentada neste trabalho é baseada no conjunto de requisitos levantados no capítulo anterior. Este levantamento, sugere uma

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA

APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA Autores: Claudiléia Gaio BANDT; Tiago HEINECK; Patrick KOCHAN; Leila Lisiane ROSSI; Angela Maria Crotti da ROSA Identificação autores: Aluna do Curso

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Engenharia de Software I: Análise e Projeto de Software Usando UML

Engenharia de Software I: Análise e Projeto de Software Usando UML Engenharia de Software I: Análise e Projeto de Software Usando UML Capítulo 1 Processo de Desenvolvimento de Software Metodologia de Desenvolvimento de Software Uma metodologia é um conjunto de métodos,

Leia mais

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet)

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet) UML Felipe Denis M. de Oliveira Fonte: Alice e Carlos Rodrigo (Internet) 1 Programação O que é UML? Por quê UML? Benefícios Diagramas Use Case Class State Interaction Sequence Collaboration Activity Physical

Leia mais

3 SCS: Sistema de Componentes de Software

3 SCS: Sistema de Componentes de Software 3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário

Leia mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes:

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes: SGBD Características do Emprego de Bancos de Dados As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes: Natureza autodescritiva

Leia mais

Dicionário da EAP - Software FarmaInfor

Dicionário da EAP - Software FarmaInfor Software FarmaInfor 1.Gerenciamento 2.Iniciação 3.Elaboração 4. Desenvolvimento 5.Trenferência 6. Finalização 6.1 Assinatura 1.1 Montar Equipe 2.1 Levantar Requisitos 3.1 Definir Módulos 4.1 Codificar

Leia mais

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert: BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma

Leia mais

MBA Inteligência Competitiva Com ênfase em BI/CPM. Metadados

MBA Inteligência Competitiva Com ênfase em BI/CPM. Metadados MBA Inteligência Competitiva BI/CPM 1 Data Warehousing PÓS-GRADUAÇÃO MBA Inteligência Competitiva Com ênfase em BI/CPM Metadados Andréa Cristina Montefusco (36927) Hermes Abreu Mattos (36768) Robson Pereira

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão DCC / ICEx / UFMG Definição de Padrões Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Um padrão é uma descrição do problema e a essência da sua solução Documenta boas soluções para problemas recorrentes

Leia mais

**Docentes do Centro Universitário Filadélfia- Unifil. computação@unifil.br

**Docentes do Centro Universitário Filadélfia- Unifil. computação@unifil.br COMPARATIVO DE PRODUTIVIDADE ENTRE UM PROCESSO DE DESENVOLVIMENTO DE SOFTWARE COM A ABORDAGEM DE LINHA DE PRODUTO DE SOFTWARE COM O PROCESSO DE DESENVOLVIMENTO DE SOFTWARE TRADICIONAL.(2011) **Docentes

Leia mais

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC CURSO: Bacharelado em Ciência da Computação DISCIPLINA: ANPS Análise e Projeto de Sistemas AULA NÚMERO: 3 DATA: PROFESSOR: Murakami Sumário 1 APRESENTAÇÃO...1 2 DESENVOLVIMENTO...1 2.1 Revisão...1 2.1.1

Leia mais

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma: 1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias

Leia mais

PROJETO DE FÁBRICA DE SOFTWARE

PROJETO DE FÁBRICA DE SOFTWARE FACULDADE SETE DE SETEMBRO FASETE Departamento de Sistemas de Informação PROJETO DE FÁBRICA DE SOFTWARE Denise Xavier Fortes Paulo Afonso BA Agosto/2015 Sumário 1. INTRODUÇÃO... 3 2. PERFIS FUNCIONAIS...

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática Disciplina: INF5008 Prof.: (monalessa@inf.ufes.br) Conteúdo 3. Gerência de

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

Gerenciamento de Níveis de Serviço

Gerenciamento de Níveis de Serviço Gerenciamento de Níveis de Serviço O processo de Gerenciamento de Níveis de Serviço fornece o contato entre a organização de TI e o cliente, para garantir que a organização de TI conhece os serviços que

Leia mais

Universidade Paulista

Universidade Paulista Universidade Paulista Ciência da Computação Sistemas de Informação Gestão da Qualidade Principais pontos da NBR ISO/IEC 12207 - Tecnologia da Informação Processos de ciclo de vida de software Sergio Petersen

Leia mais

Porque estudar Gestão de Projetos?

Porque estudar Gestão de Projetos? Versão 2000 - Última Revisão 07/08/2006 Porque estudar Gestão de Projetos? Segundo o Standish Group, entidade americana de consultoria empresarial, através de um estudo chamado "Chaos Report", para projetos

Leia mais

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS Quando falamos em arquitetura, normalmente utilizamos esse termo para referenciar a forma como os aplicativos computacionais são estruturados e os hardwares

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

SAV Sistema de Aluguel de Veículos I - DOCUMENTO DE REQUISITOS Versão 1.00

SAV Sistema de Aluguel de Veículos I - DOCUMENTO DE REQUISITOS Versão 1.00 SAV Sistema de Aluguel de Veículos I - DOCUMENTO DE REQUISITOS Versão 1.00 Conteúdo 1. INTRODUÇÃO...3 1.1 CONVENÇÕES, TERMOS E ABREVIAÇÕES... 3 1.1.1 Identificação dos Requisitos... 3 1.1.2 Prioridades

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

Documento de Arquitetura

Documento de Arquitetura Documento de Arquitetura A2MEPonto - SISTEMA DE PONTO ELETRÔNICO A2MEPonto - SISTEMA DE PONTO ELETRÔNICO #1 Pág. 1 de 11 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 28/10/2010 1 Elaboração do documento

Leia mais

Gerenciamento de Projetos Modulo III Grupo de Processos

Gerenciamento de Projetos Modulo III Grupo de Processos Gerenciamento de Projetos Modulo III Grupo de Processos Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Processos de Gerenciamento de Projetos Para que um projeto seja bem-sucedido,

Leia mais

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

Planejamento e Gerenciamento de Software. Tema 3. Gerência de Projetos Profa. Susana M. Iglesias

Planejamento e Gerenciamento de Software. Tema 3. Gerência de Projetos Profa. Susana M. Iglesias Planejamento e Gerenciamento de Software Tema 3. Gerência de Projetos Profa. Susana M. Iglesias Planejamento A primeira atividade do gerenciamento de projeto é Planejamento Depende de estimativas (Grado

Leia mais

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0 O que é BABok? O BABok 2.0, Corpo de Conhecimento de Análise de Negócios, é considerado como um Guia Referência de Práticas de Análise de Negócio. Este guia é publicado e mantido pelo IIBA. O guia BABok

Leia mais

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. Visão Geral do Sistema Prof. Raul Sidnei Wazlawick UFSC-CTC-INE 2010 Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. A fase de concepção do UP consiste

Leia mais

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS Elicitação Ciclo de Vida Clássico ou Convencional O Modelo Cascata Análise Ana Paula Terra Bacelo Blois Implementação Material Adaptado do Prof. Marcelo Yamaguti

Leia mais

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem

Leia mais

Como conduzir com sucesso um projeto de melhoria da qualidade

Como conduzir com sucesso um projeto de melhoria da qualidade Como conduzir com sucesso um projeto de melhoria da qualidade Maria Luiza Guerra de Toledo Coordenar e conduzir um projeto de melhoria da qualidade, seja ele baseado no Seis Sigma, Lean, ou outra metodologia

Leia mais

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana

Leia mais

Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso

Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso Lourival dos Santos Pires Júnior, Tony Carlos Bignardi dos Santos, Amaury Antônio de Castro Junior, Carlos Alberto da Silva, Leila Lisiane Rossi

Leia mais

ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com ANÁLISE E PROJETO ORIENTADO A OBJETOS Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Análise Descrição do problema a ser implementado Descrição dos objetos e classes que fazem parte do problema, Descrição

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES Implementação MPS.BR 26 de maio de 2008 4 horas de duração e-mail: (DEIXAR EM BRANCO) RESULTADO: Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Nota INSTRUÇÕES Para a maioria das questões você tem mais de uma opção e

Leia mais

GERÊNCIA DE INTEGRAÇÃO DO PROJETO

GERÊNCIA DE INTEGRAÇÃO DO PROJETO GERÊNCIA DE INTEGRAÇÃO DO PROJETO Estevanir Sausen¹, Patricia Mozzaquatro² ¹Acadêmico do Curso de Ciência da Computação ²Professor(a) do Curso de Ciência da Computação Universidade de Cruz Alta (UNICRUZ)

Leia mais

MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC GOVERNO FEDERAL SOFTWARE PÚBLICO

MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC GOVERNO FEDERAL SOFTWARE PÚBLICO MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC Configurador Automático e Coletor de Informações Computacionais GOVERNO FEDERAL SOFTWARE PÚBLICO software livre desenvolvido pela Dataprev Sistema de Administração

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

UNIVERSIDADE FEDERAL DE SERGIPE CAMPUS PROF. ALBERTO CARVALHO DEPARTAMENTO DE SISTEMAS DE INFORMAÇÃO ENGENHARIA DE SOFTWARE I

UNIVERSIDADE FEDERAL DE SERGIPE CAMPUS PROF. ALBERTO CARVALHO DEPARTAMENTO DE SISTEMAS DE INFORMAÇÃO ENGENHARIA DE SOFTWARE I UNIVERSIDADE FEDERAL DE SERGIPE CAMPUS PROF. ALBERTO CARVALHO DEPARTAMENTO DE SISTEMAS DE INFORMAÇÃO ENGENHARIA DE SOFTWARE I PROF. MSC. MARCOS BARBOSA DÓSEA BRUNO PAIXÃO FABRÍCIO BARRETO LEONALDO ANDRADE

Leia mais

Introdução a UML. Hélder Antero Amaral Nunes haanunes@gmail.com

Introdução a UML. Hélder Antero Amaral Nunes haanunes@gmail.com Introdução a UML Hélder Antero Amaral Nunes haanunes@gmail.com Introdução a UML UML (Unified Modeling Language Linguagem de Modelagem Unificada) é uma linguagem-padrão para a elaboração da estrutura de

Leia mais

LINGUAGEM DE BANCO DE DADOS

LINGUAGEM DE BANCO DE DADOS LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados

Leia mais

Análise de Sistemas. Visão Geral: Orientação a Objetos. Prof. José Honorato Ferreira Nunes honorato.nunes@bonfim.ifbaiano.edu.br

Análise de Sistemas. Visão Geral: Orientação a Objetos. Prof. José Honorato Ferreira Nunes honorato.nunes@bonfim.ifbaiano.edu.br Análise de Sistemas Visão Geral: Orientação a Objetos Prof. José Honorato Ferreira Nunes Prof. José Honorato Ferreira Nunes honorato.nunes@bonfim.ifbaiano.edu.br Resumo: VISÃO GERAL: Modelagem de sistemas

Leia mais

Figura 1 - Arquitetura multi-camadas do SIE

Figura 1 - Arquitetura multi-camadas do SIE Um estudo sobre os aspectos de desenvolvimento e distribuição do SIE Fernando Pires Barbosa¹, Equipe Técnica do SIE¹ ¹Centro de Processamento de Dados, Universidade Federal de Santa Maria fernando.barbosa@cpd.ufsm.br

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

O modelo unificado de processo. O Rational Unified Process, RUP.

O modelo unificado de processo. O Rational Unified Process, RUP. Cursos: Sistemas de Informação Disciplina: Administração ADM Prof. Jarbas Avaliação: Prova B1, 5º/6º semestres Data: 27/09/2010 Nome: Gabarito RA: Assinatura: Turma: 1) Segundo as afirmações a seguir,

Leia mais

Processo de Desenvolvimento Unificado

Processo de Desenvolvimento Unificado Processo de Desenvolvimento Unificado Processo de Desenvolvimento de Software? Conjunto de atividades bem definidas; com responsáveis; com artefatos de entrada e saída; com dependências entre as mesmas

Leia mais

Plano de Gerenciamento do Projeto

Plano de Gerenciamento do Projeto Projeto para Soluções Contábeis 2015 Plano de Gerenciamento do Projeto Baseado na 5ª edição do Guia PMBOK Brendon Genssinger o e Elcimar Silva Higor Muniz Juliermes Henrique 23/11/2015 1 Histórico de alterações

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais

Leia mais

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS Emanuel M. Godoy 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil godoymanel@gmail.com,

Leia mais

Manual Geral do OASIS

Manual Geral do OASIS Manual Geral do OASIS SISTEMA DE GESTÃO DE DEMANDA, PROJETO E SERVIÇO DE TECNOLOGIA DA INFORMAÇÃO OASIS Introdução Esse manual tem como objetivo auxiliar aos usuários nos procedimentos de execução do sistema

Leia mais

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br Gerenciamento de projetos cynaracarvalho@yahoo.com.br Projeto 3URMHWR é um empreendimento não repetitivo, caracterizado por uma seqüência clara e lógica de eventos, com início, meio e fim, que se destina

Leia mais

O Processo Unificado: Captura de requisitos

O Processo Unificado: Captura de requisitos O Processo Unificado: Captura de requisitos Itana Gimenes Graduação em Informática 2008 Captura de Requisitos Modelagem do negócio: Visão de negócios Modelo de objetos de negócio de negócio Especificação

Leia mais

Análise e projeto de sistemas PROF. REGILAN SILVA

Análise e projeto de sistemas PROF. REGILAN SILVA Análise e projeto de sistemas PROF. REGILAN SILVA Apresentação da disciplina Ver ementa... Solução Técnicas para identificação e detalhamento de requisitos Técnicas para modelagem de sistemas Definir

Leia mais

Sistemas de Informação

Sistemas de Informação Sistemas de Informação Informação no contexto administrativo Graduação em Redes de Computadores Prof. Rodrigo W. Fonseca SENAC FACULDADEDETECNOLOGIA PELOTAS >SistemasdeInformação SENAC FACULDADEDETECNOLOGIA

Leia mais

Fundamentos de Sistemas de Informação Sistemas de Informação

Fundamentos de Sistemas de Informação Sistemas de Informação Objetivo da Aula Tecnologia e as Organizações, importância dos sistemas de informação e níveis de atuação dos sistemas de informação Organizações & Tecnologia TECNOLOGIA A razão e a capacidade do homem

Leia mais

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software Análise e Projeto de Sistemas Análise e Projeto de Sistemas Contextualização ENGENHARIA DE SOFTWARE ANÁLISE E PROJETO DE SISTEMAS ENGENHARIA DA INFORMAÇÃO Perspectiva Histórica Engenharia de Software 1940:

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP Banco de Dados Introdução João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP Importância dos Bancos de Dados A competitividade das empresas depende de dados precisos e atualizados. Conforme

Leia mais

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas

Leia mais

SISTEMA GERENCIADOR DE BANCO DE DADOS

SISTEMA GERENCIADOR DE BANCO DE DADOS BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR

Leia mais

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância 5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância O capítulo anterior apresentou uma discussão sobre a inclusão dos chamados learning services no processo

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

Leia mais