Uma Metodologia de Desenvolvimento de Sistemas de Informações em Empresas de Pequeno e Médio Porte

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

Download "Uma Metodologia de Desenvolvimento de Sistemas de Informações em Empresas de Pequeno e Médio Porte"

Transcrição

1 Uma Metodologia de Desenvolvimento de Sistemas de Informações em Empresas de Pequeno e Médio Porte Autoria: Denis Silveira, Eber Schmitz Resumo: Este artigo apresenta uma Metodologia Rápida de Desenvolvimento de Software Orientado a Objetos (MRDS) para uso em empresas de pequeno e médio porte. As metodologias existentes no mercado são muito complexas envolvendo um grande número de fases e de tipos diferentes de documentos. Como conseqüência o esforço de implantação destas metodologias acaba não sendo compatível com o porte da empresa. O resultado final é que as empresas ficam sem usar metodologia alguma. A MRDS se propõe a resolver este problema, abrangendo as fases do desenvolvimento que vão desde da modelagem de processos de negócio até o projeto detalhado das classes. Com uma abordagem minimalista, a MRDS reduz ao mínimo o número de passos e, conseqüentemente, o número de documentos a serem produzidos. Todo o esforço de modelagem é concentrado na produção de modelos que sejam utilizados diretamente na geração do código fonte do sistema. Como conseqüência, a MRDS é uma metodologia com um custo muito baixo tanto para sua implantação como para sua utilização. Palavras chave: Metodologia, UML, Engenharia de Software, Orientação a Objetos, Arquitetura de Software, Modelagem de Negócio, Engenharia de Requisitos, CASE; 1 Introdução No decorrer do tempo, o papel das tecnologias de informação nas organizações vem sofrendo diversas alterações. Atualmente, as tecnologias de informação encontram-se na origem de mudanças significativas ao nível dos modelos de negócios das empresas, e constituem um elemento fundamental para a obtenção das vantagens estratégicas e competitivas (Cruz, 1998). Por isso, a respectiva implementada nas organizações devem ser cuidadosamente planejada e estruturada, de modo a garantir o alinhamento com os objetivos estratégicos do negócio. A crescente complexidade dos sistemas de informação e a dificuldade de representação da sua estrutura aos diversos interessados (gerentes, usuários, analistas, etc.), motivou durante a década de 80 e inicio da década de 90 um conjunto de esforços no sentido de formalizar e unificar a respectiva apresentação, de modo a permitir controlar e guiar o processo de construção de um sistema. Uma metodologia é um agregado de técnicas e ferramentas que tem por objetivo padronizar o processo de desenvolvimento de sistemas em uma empresa (Ghezzi, Jazayeri e Mandrioli, 1991). Uma metodologia para desenvolvimento de sistemas especifica a seqüência de passos e a serem seguidos durante o desenvolvimento de um sistema de informação. A cada um destes passos, associa-se um conjunto de atividades, seus produtos e as regras de verificação que garantem a passagem para a próxima fase (Pressman, 2001). Os produtos das diferentes fases de uma metodologia são especificações que descrevem, com um certo grau de abstração, o sistema de informação que está sendo desenvolvido. Esta especificação abstrata é chamada de modelo. Utilizamos modelos na construção de sistemas 1

2 complexos, porque em geral não conseguimos compreender o sistema em sua totalidade. Um modelo é uma descrição da realidade que ressalta alguns aspectos em detrimento de outros. Cada tipo de modelo utiliza uma notação precisa e um conjunto de regras sintáticas e semânticas (Schmitz e Silveira, 2000). Os modelos de sistema de informação podem ser classificados, de acordo com seu estilo, em: baseado em fluxo de dados, relacionais e orientado a objetos. A orientação a objeto, na década de 90 se afirmou como o estilo de projeto mais utilizado no desenvolvimento de software (Booch, 1994) (Coad e Yourdon, 1991) (Jacobson et al., 1992) (Rumbaugh et al., 1994) (Schmitz e Silveira, 2000). As grandes vantagens deste estilo de projeto são: uma melhor representação do mundo real devido ao mapeamento simples que existe entre os objetos computacionais e os do mundo real, um mecanismo simples para a modularização e a possibilidade de construção de componentes extensíveis. A adoção da UML (Unified Modeling Language) (Booch, Jacobson e Rumbaugh, 1999) pela OMG (Object Management Group) em 1997 como padrão para a descrição de modelos de sistemas orientados a objeto, trouxe como conseqüência um crescimento do uso da UML, em detrimento das outras, como linguagem de modelagem de sistemas orientados a objetos. A UML solucionou o problema da escolha da linguagem usada no modelo, mas trouxe consigo uma notação muito extensa, que cresce desde a análise até o projeto. Certos elementos da notação (por exemplo, classes, associações, agregações e herança) são introduzidos durante a análise. Outros elementos da notação (por exemplo, indicadores de restrição de implementação) são introduzidos durante o projeto (Quatrani, 1998). O uso de uma linguagem de modelagem tão complexa e extensível quanto a UML requer um suporte de ferramentas CASE (Computer Aided Software Engineering). Mesmo que os primeiros esboços de um modelo sejam feitos manualmente, a tarefa de manter, sincronizar e fornecer consistência em um certo número de diagramas torna-se bastante difícil sem o uso de uma ferramenta. 2 Problemas na Adoção de uma Metodologia A aplicação de uma metodologia de desenvolvimento de um sistema de informação orientado a objetos encontra diversos problemas, entre os quais, o mais importante é a mudança dos padrões de trabalho da equipe de desenvolvimento. Do ponto de vista mais restrito, da gerencia do processo de desenvolvimento, duas questões importantes aparecem quando uma organização resolver adotar uma metodologia de desenvolvimento de sistemas: Qual metodologia utilizar? As metodologias que cobrem a orientação a objetos ou são muito detalhadas e não podem ser usadas em empresas de pequeno porte, ou então, se apresentam de uma maneira muito didática e não tocam nos verdadeiros problemas que os profissionais vão encontrar na prática; e Qual ferramenta de suporte adotar? A complexidade do processo de desenvolvimento de um sistema exige o uso de ferramentas automatizadas. Essas ferramentas, além de serem inviáveis para uma empresa de pequeno porte, devido o seu custo, são bastante sofisticadas o que implica num tempo maior no processo de aprendizado. 2

3 2.1 Metodologias A potencialidade vista no desenvolvimento de sistemas utilizando a orientação a objetos ocasionou, no decorrer dessa década, a publicação de uma grande quantidade de metodologias (Booch, 1994) (Coad e Yourdon, 1991) (Jacobson et al., 1992) (Rumbaugh et al., 1994) (Shlaer e Mellor, 1990) (Schmitz e Silveira, 2000). Hoje a que mais se destaca é a abordagem adotada no RUP (Rational Unified Process) (Jacobson, Booch e Rumbaugh, 1999), que especifica uma forma de desenvolvimento cíclico para o sistema. O RUP é uma metodologia (ou processo) iterativa, onde cada iteração representa um ciclo completo de desenvolvimento, desde a captação de requisitos na análise até a implementação e a realização de testes, resultando numa versão executável do sistema. Por sua vez, as iterações são agrupadas em fases. Uma fase é o período de tempo entre dois marcos de progresso, onde objetivos são alcançados, artefatos são concluídos e decisões são tomadas em relação à passagem para a fase seguinte. O RUP define as seguintes fases: Concepção: estabelece os requisitos para o projeto; Elaboração: estabelece um plano de projeto e uma arquitetura sólida; Construção: desenvolve o sistema; e Transição: fornece o sistema a seus usuários finais. A passagem pelas quatro fases é chamada de ciclo de desenvolvimento e resulta na geração de um sistema. A geração segue os seguintes fluxos de trabalho: Modelagem de negócio: descreve a estrutura e a dinâmica da empresa; Requisitos: descreve o método baseado em casos de uso para identificar requisitos. Análise e projeto: descreve as várias visões da arquitetura; Implementação: fase destinada a codificação e testes de unidades; Testes: descrevem os casos de testes, procedimentos e medidas para acompanhamento dos erros; Entrega: abrange a configuração do sistema; Gerenciamento de configuração: controla as modificações e mantém a integridade dos artefatos do projeto; Gerenciamento de projeto: descreve as várias estratégias para o trabalho como um processo iterativo; e Ambiente: abrange a infra-estrutura necessária para o desenvolvimento. A adoção do RUP em um treinamento numa empresa de médio e pequeno porte de desenvolvimento de sistemas apresenta os seguintes problemas: Complexidade: o processo, que consiste de fluxos e fases, é confuso para os iniciantes; Tempo de aprendizado: num período normal de curso de treinamento (2 meses) fica difícil fazer trabalhos práticos que exercitem todos os passos desta metodologia; e Práticas das empresas: existe uma grande distância entre as práticas do RUP e as práticas de desenvolvimento de sistemas nas empresas, fazendo com que o 3

4 2.2 Ferramentas iniciante tenha dificuldades para aplicar alguma parte de seu conhecimento no seu trabalho. Um CASE é um conjunto de técnicas e ferramentas automatizadas que auxiliam os projetistas de sistemas no desenvolvimento de aplicações, com o objetivo de diminuir o respectivo esforço e complexidade, de melhorar o controle do projeto, de aplicar sistematicamente um processo uniformizado e de automatizar algumas atividades como a verificação de consistências entre os modelos (Pressman, 2001). Existe um grande número de ferramentas CASE disponíveis no mercado. Entre elas, o Rational Rose (Rational, 1998) (Quatrani, 1998) é uma ferramenta CASE muito poderosa e bastante completa e que dá suporte às atividades do RUP. Por outro lado, as ferramentas, existentes no mercado, colocam alguns problemas aos gerentes das organizações. São eles: Custo: seus preços estão fora do alcance da maioria das pequenas empresas; Língua: um grande número de ferramentas operam em inglês, colocando mais uma barreira no processo de aprendizado; e Recursos computacionais: o uso eficiente de algumas ferramentas requer uma máquina com razoável poder computacional. 2.3 Arquitetura de Software Quando o tamanho e a complexidade de um sistema aumenta, a importância relativa da estrutura global do sistema se torna mais importante do que os aspectos mais localizados, tais como, a escolha dos algoritmos e das estruturas de dados usadas no processamento. A arquitetura de software se preocupa com estes aspectos mais gerais, que no nosso caso são, os diferentes tipos de componentes de software e suas formas de interação (Garlan et al., 1997). A arquitetura de software estuda um conjunto de aspectos estruturais que envolvem: a forma de organizar o sistema como um conjunto de componentes interconectados; as estruturas de controle responsáveis pela forma de sequenciamento do programa; os protocolos para comunicação, sincronismo e acesso a dados entre estes componentes; a alocação de funcionalidade a cada um dos componentes; a distribuição física destes componentes; estudos de desempenho e escalabilidade; e formas de evolução. Embora a definição de sua arquitetura seja um aspecto crítico para qualquer sistema complexo, ainda não existe uma definição que seja aceita universalmente. A definição do que é a arquitetura de um sistema pode variar de acordo com o tamanho do projeto, o tempo disponível, os objetivos, o nível de risco e inovação, o número de pessoas envolvidas, sua proximidade, suas habilidades para comunicação e resolução de conflitos. 4

5 Na prática, a definição da arquitetura de um sistema deve cumprir dois papéis (Garlan et al., 1997): 1. fornecer um nível de abstração no qual os projetistas podem argumentar sobre o comportamento do sistema: funcionalidade, desempenho, confiabilidade, e etc; e 2. fornecer uma "consciência" para a evolução do sistema, indicando quais aspectos do sistema podem ser facilmente alterados sem comprometer a integridade do sistema. Em outras palavras, o desenvolvimento da arquitetura de um software é análogo à criação da arquitetura de um prédio. Em ambos os casos, os arquitetos estão usando uma descrição simplificada para tornar possível a discussão de assuntos mais gerais, sem se preocupar, neste momento, com os problemas de construção dos componentes do sistema. 3 A Metodologia Rápida de Desenvolvimento de Sistemas Um dos objetivos da MRDS é diminuir a quantidade de documentos produzidos na construção de um sistema de qualidade (ver figura 1). Desse modo, dividimos o processo de desenvolvimento em três fases. A primeira define o Modelo de Processos. Esta fase descreve os processos tais como eles possam ser entendidos, e otimizados dentro da organização. A segunda é a definição do Modelo de Requisitos. Essa fase tem por objetivo definir os requisitos do sistema, ou seja, responder a seguinte pergunta: qual as funcionalidades esperadas pelo sistema? Não é escopo desse artigo definir como obter um bom modelo de requisitos. Entretanto, o modelo de requisitos é fundamental para se chegar a um bom projeto. A terceira fase, chamada de Modelo de Análise e Projeto, tem como objetivo transformar o Modelo de Requisitos na definição dos módulos componentes do sistema. Nessa fase fazemos uso de uma arquitetura padrão. A arquitetura padrão utilizada não especificará uma solução particular em detrimentos de outra, mas guiará o projetista a uma forma de estruturar suas decisões que o levará a um resultado positivo. 3.1 Modelo de Processos Um sistema de informação é um conjunto integrado de recursos (humanos e tecnológico) cujo objetivo é satisfazer adequadamente a totalidade das necessidades de informação de uma organização e os respectivos processos de negócio (Stair, 1998). Um processo de negócio pretende representar uma seqüência de atividades, que processam vários inputs e produzem vários outputs e que possuem objetivos (Gonçalves, 2000). Desse modo, um processo descreve uma seqüência de passos ou atividades que podem ser expressas em ações por um indivíduo, um grupo ou um sistema de informação (isto é, algum ator ou agente). O Diagrama de Atividades, definido na UML, foi escolhido para a modelagem de processos. Ele ilustra uma seqüência de atividades, manuais ou automatizadas, necessárias à execução de um processo (Booch, Jacobson e Rumbaugh, 1999). Entre as suas características, destaca-se a possibilidade de representação de atividades paralelas, diferenciando-o de um mero fluxograma. No Modelo de Processos as atividades são passos de processamento dentro de um processo transformando objetos e requerendo recursos para sua execução. Atividades podem ser agrupadas dentro de um processo de domínio em sub-processos. Atividades possuem entradas e saídas que 5

6 devem ser descritos no formato de objetos. Após especificação detalhada das atividades, são determinados os requisitos necessários para sua execução. Os produtos dessa fase envolvem diversos elementos, dos quais destacamos os principais abaixo: processos: são coleções de atividades; atividades: são as tarefas (trabalhos) a serem realizados. Uma atividade requer recursos para realizar um script; artefatos: são produtos produzidos ou consumidos por atividades durante a sua realização; recursos: representam tudo que é necessário para a execução da atividade. Um recurso humano, especificamente, desempenha um papel na execução das atividades do processo; transição: é o encadeamento entre duas atividades; e desvio: é um condicional para a transição entre duas ou mais atividades. 3.2 Modelo de Requisitos O objetivo da fase de Modelagem de Requisitos é especificar as funcionalidades de um sistema a ser desenvolvidos (Schmitz e Silveira, 2000). Um requisito é uma especificação de uma determinada ação ou determinada condição que o sistema deverá satisfazer. Os produtos dessa fase são: Modelo de Use Cases Pacotes com use cases: modelos que mostram os atores e os use cases com as suas relações. Cada use case será acompanhado da suas descrição textual. Essa descrição segue ao modelo utilizado em (Schmitz e Silveira, 2000); Maquete Interfaces gráficas: as maquetes devem especificar todos os componentes de interface (telas, botões, campos, etc.) que são utilizados pelo sistema; Modelo de Domínio Classes de Domínio: As classes de objetos que devem ser documentadas; O roteiro a ser seguido na construção do Modelo de Requisitos segue os seguintes passos: 1. Definir o escopo do sistema: Essa definição deverá ser retirada através dos Diagramas de Atividades; 2. Criar uma versão preliminar do Modelo de Domínio, ou seja, as classes do domínio do problema, definindo quais as entidades e suas definições. Este modelo será melhorado e corrigido a medida que os Use Cases forem sendo detalhados. 3. Executar iterativamente as seguintes etapas: Listar os casos de uso e os atores que interarem com o sistema; Acrescentar a cada um dos Use Cases; uma maquete da interface; e 6

7 uma definição para o Use Case.; Estruturar os casos de uso; definir as extensões para os casos (relação extends); e definir os casos que podem ser colocados em evidência e reaproveitados (relação uses); Definir os pacotes de Use Cases; 4. Verificar o modelo para tirar os possíveis erros de consistência entre as maquetes, descrição dos use cases e a Modelagem de Processos. 3.3 Modelo de Análise e Projeto O objetivo desta fase é produzir um plano que permita a construção do sistema. Essa fase é composta pelos Modelos Estático e Dinâmico. O Modelo Estático é composto por um conjunto de diagramas de classes. O Modelo Dinâmico é composto por um conjunto de diagramas de seqüência e de estados. Esta etapa deve ser feita de forma iterativa pelo projetista, o que significa que ele não deve esperar obter o modelo final na primeira vez, mas sim, que terá de executar estes passos repetidamente até obter um modelo completo e consistente. A figura 3 mostra o esquema da interação das fases da MRDS. O roteiro para a construção deste modelo é: 1. Para cada pacote de use cases, definido no Modelo de Requisitos, deverá ser definido um diagrama de classes. Esse diagrama de classes deverá mostrar os relacionamentos entre as classes de domínio, interface e controle. Na próxima seção apresentaremos com mais detalhes essas classes. 2. Para cada pacote de use cases, definido no Modelo te Requisitos, deverá ser definido um diagrama de seqüência. Este passo pode ser tornado de rotina se lembrarmos que as interações entre o objeto de controle e os objetos de interface ou de domínio seguem alguns padrões definidos em (Schmitz e Silveira, 2000); A criação dos diagramas de seqüência é um passo fundamental para a definição da implementação dos casos de uso do sistema. Ao definir os serviços que cada um dos objetos participantes do caso deve prover para a execução do mesmo, o projetista vai refinando as definições das classes do sistema, previamente, definidos no Modelo de Domínio. 3. Criar um diagrama de transição de estados para as classes de domínio, interface e controle que tenham ciclos de vida não-triviais; 4. Examinar novamente os diagramas de classes para verificar se algumas relações de herança podem ser descobertas; e 5. Verificar os modelos para tira os eventuais erros de consistência entre os modelos definidos. 7

8 Figura 1 Visão Geral da MRDS 3.4 A Arquitetura Padronizada da MRDS Um dos grandes desafios das metodologias de desenvolvimento de software é resolver o problema de transformação do modelo de requisitos na especificação dos módulos constituintes do sistema. Esta atividade, conhecida como projeto, é intrinsecamente complexa, pois para cada modelo de requisitos temos uma infinidade de maneiras de definir os módulos que irão compor a implementação. Uma das maneiras de atacar este problema é definindo uma arquitetura de software para o sistema (Shaw e Garlan, 1996) (Garlan et al., 1997). A arquitetura padrão da MRDS define uma infraestrutura para a construção de sistemas orientados a objetos. O objetivo principal dessa arquitetura padrão é prover um ambiente confiável e de fácil manutenção, onde aplicações possam cooperar e evoluir de acordo com a necessidade da organização. A adoção dessa arquitetura padrão faz com que o projetista possa concentrar o seu esforço na solução dos problemas de projeto relevantes ao sistema em desenvolvimento que são: (1) quais as classes que comporão o sistema? (2) quais os serviços que cada uma delas deve prover? 8

9 O estilo de arquitetura de software orientado a objetos fornece outras abstrações para projetos de software. Na sua forma mais simples, os objetos permitem encapsular dados e comportamentos em componentes que apresentam uma interface explícita para outros componentes. Neste estilo é possível definir uma interação entre um grupo de objetos, que virão a formar um componente mais complexo. Sendo assim, a arquitetura utilizada pela MRDS definir três aspectos importantes para os objetos de um sistema (Schmitz e Silveira, 2000): 1. os mecanismos utilizados para o armazenamento de dados; São os objetos que persistem as informações do sistema. Estes objetos correspondem aos objetos do domínio do problema, que são identificados no modelo de Requisitos. 2. os mecanismos utilizados para a interface com o usuário; São os objetos encarregados da interação entre usuários e sistema. Transformam eventos externos em sinais internos e eventos internos em sinais para o mundo externo; 3. os mecanismos utilizados para o controle do sistema. são os objetos encarregados do sequenciamento entre os objetos de interface com os objetos de domínio. Figura 2 - Estrutura das classes da Arquitetura Padrão 4. Experiências e Conclusões A MRDS vem sendo desenvolvida desde Neste período ela vem sendo aprimorada pelo uso, tanto em turmas de graduação como em projetos de empresas de pequeno e médio porte. A adoção de uma metodologia de desenvolvimento de sistemas em empresas de pequeno e médio porte encontra como obstáculos: (1) o custo da implantação, (2) o impacto do uso da metodologia na produtividade dos profissionais da empresa. A MRDS permite atacar estes dois problemas da seguinte maneira: Custo: a MRDS reduz o tempo gasto no ensino da metodologia devido a sua simplicidade; e Impacto: o foco da MRDS é na utilização dos modelos que são diretamente empregados na geração de código-fonte. Desta maneira, o tempo de modelagem é efetivamente tempo de projeto e (indiretamente) de codificação. De acordo com as constatações em resultados práticos, verificamos que a utilização da MRDS auxiliou na construção de Sistemas de Informação, fornecendo conceitos e vocabulário comuns para o tratamento deste tipo de sistema, apresentando as vantagens esperadas, mas 9

10 não garanti, por si só, o sucesso do desenvolvimento do projeto, ficando este diretamente relacionado à existência e à qualidade do Modelo de Requisitos e à execução do projeto. Embora a arquitetura padrão tenha se mostrado útil para os desenvolvedores, explicando as entidades envolvidas na arquitetura, suas responsabilidades, e os aspectos de comunicação entre elas, encontramos um problema que é o surgimento de entidades que não se adequam a nenhum dos objetos disponíveis na arquitetura padrão, ou que apresentam características mistas, como por exemplo, objetos de interfaces que fazem parte do domínio do problema. O surgimento destas entidades, que fogem à semântica apresentada, mostra que a arquitetura padrão deverá ser acrescida de outras arquiteturas que solucionem tal problema. Exemplos de arquiteturas são mostrados em (Buschman et al., 1996). A MRDS apresentou uma solução para o desenvolvimento de Sistemas de Informação. Esta solução mostrou cumprir os objetivos desejados, e isto foi verificado pelos projetos reais para os quais esta metodologia foi aplicada. Referências Bibliográficas Booch, G. Object-Oriented Analysis and Design with Applications, 2 nd ed. Benjamin Cummings, Redwood City, Calif., Booch, G., Jacobson, I., Rumbaugh, J. The Unified Modeling Language Reference Manual, Addison Wesley Object Technology Series Buschman, F., et al., Pattern-Oriented Software Architecture, A System of Patterns, John Wiley & Sons, Coad, P., Yourdon, E., Object-Oriented Analysis 2 a Edition, Prentice Hall, Inc., Cruz, T., Sistemas de Informações Gerenciais Tecnologia da Informação e a Empresa do Século XXI, Editora Atlas, Garlan et al., Architectural Styles, Design Patterns, and Objects, IEEE Software, pp.43-52, Jan/Fev Ghezzi, C., Jazayeri, M., Mandrioli, D., Fundamentals of Software, Engineering, Prentice Hall, Inc., Gonçalves, J. E. L., As Empresas são Grandes Coleções de Processos, RAE - Revista de Administração de Empresas, Jan/Mar, V.40, n.1, 2000; Jacobson et al., Object-Oriented Software Engineering A Use Case Driven Approach, Addison Wesley, Jacobson, I., Booch, G., Rumbaugh, J, The Unified Software Development Process, 1 a Edition Addison Wesley Object Technology Series Quatrani, T., Visual Modeling with Rational Rose and UML, Addison Wesley, Pressman, R. S., Software Engineering A Practitioner's Approach, 5 a Edition, McGraw-Hill series in computer science, 2001; Rational Software Corporation, Rational Rose 98 Extensibility User Guide, Publications Department, 1998; Rumbaugh et al., Object-Oriented Modeling and Design, Prentice Hall,

11 Rational Software Corporation, Rational Rose 98 Extensibility User Guide, Publications Department, Schmitz, E., Silveira, D., Desenvolvimento de Sistemas Orientado a Objetos, BRASPORT, ISBN X Shaw, M., Garlan, D., Software Architecture, Prentice-hall, 1996; Shlaer, S., Mellor, S., Análise de Sistemas Orientada para Objetos, Makron Books, Silveira, D., FAST CASE: Uma Ferramenta para o Desenvolvimento Visual de Sistemas Orientados a Objetos, Tese de Mestrado, IM/NCE/UFRJ, Stair, R., Princípios de Sistemas de Informação Uma Abordagem Gerencial, Segunda Edição, Editora LTC, 1998; 11

build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix.

build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix. UNIP Sistemas de Informação Análise Essencial de Sistemas Prof.Marcelo Nogueira Análise Essencial de Sistemas 1 Introdução A produção de Software é uma atividade build and fix. Análise Essencial de Sistemas

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: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

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

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no 1.1 RATIONAL UNIFIED PROCESS (RUP) O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no processo que atende pelo nome de Processo Unificado (ou UP do inglês Unified

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

Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira

Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Introdução Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

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

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP RUP Rational Unified Process ( Unificado de Desenvolvimento da Rational) Conjunto de passos que tem como objetivo atingir uma meta de software na ES, processo que visa a produzir o software - de modo eficiente

Leia mais

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo?

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo? O que é a UML? Introdução a UML Linguagem Gráfica de Modelagem para: Visualizar Especificar Construir Documentar Comunicar Artefatos de sistemas complexos Linguagem: vocabulário + regras de combinação

Leia mais

do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade;

do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade; 1 ARQUITETURA E DESIGN DE SOFTWARE O que é Arquitetura? do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade; do dicionário: Arte de projetar e construir prédios,

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

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

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

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

Leia mais

Notas de Aula 04: Casos de uso de um sistema

Notas de Aula 04: Casos de uso de um sistema Notas de Aula 04: Casos de uso de um sistema Objetivos da aula: Aprender os elementos básicos da modelagem por casos de uso Utilizar as associações entre casos de uso, atores e demais artefatos Compreender

Leia mais

UML 01. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

UML 01. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Faculdade INED UML 01 Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Referências BARBIERI, Carlos. Análise e Programação

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

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas

Leia mais

Fase 1: Engenharia de Produto

Fase 1: Engenharia de Produto Fase 1: Engenharia de Produto Disciplina: Análise de Requisitos DURAÇÃO: 44 h O objetivo principal da disciplina é realizar uma análise das necessidades e produzir um escopo do produto. Representará os

Leia mais

Unidade II MODELAGEM DE PROCESSOS

Unidade II MODELAGEM DE PROCESSOS Unidade II 3 MODELAGEM DE SISTEMAS 1 20 A fase de desenvolvimento de um novo sistema de informação (Quadro 2) é um momento complexo que exige um significativo esforço no sentido de agregar recursos que

Leia mais

Planejamento da disciplina: Modelagem de processos de negócio

Planejamento da disciplina: Modelagem de processos de negócio UNIVERSIDADE FEDERAL DE MINAS GERAIS / INSTITUTO DE CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Planejamento da disciplina: Modelagem de processos de negócio Professor: Clarindo Isaías Pereira

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

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

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW Ciclo de Vida Aula 2 Revisão 1 Processo de Desenvolvimento de Software 1 O Processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto

Leia mais

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 Índice 1. Importância do ERP para as organizações...3 2. ERP como fonte de vantagem competitiva...4 3. Desenvolvimento e implantação de sistema de informação...5

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

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

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

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas.

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas. UTILIZAÇÃO DA UML NO DESENVOLVIMENTO DE SISTEMA DE CONTROLE DE VENDAS E ESTOQUE GILBERTO FRANCISCO PACHECO DOS SANTOS Discente da AEMS Faculdades Integradas de Três Lagoas JACKSON LUIZ ARROSTI Discente

Leia mais

Engenharia de Software Processo de Desenvolvimento de Software

Engenharia de Software Processo de Desenvolvimento de Software Engenharia de Software Processo de Desenvolvimento de Software Prof. Edison A. M. Morais prof@edison.eti.br http://www.edison.eti.br Objetivo (1/1) Conceituar PROCESSO E CICLO DE VIDA, identificar e conceituar

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

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

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software Ciência da Computação ENGENHARIA DE SOFTWARE Análise dos Requisitos de Software Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Roteiro Introdução Tipos de requisitos Atividades Princípios da

Leia mais

Projeto de Sistemas I

Projeto de Sistemas I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o

Leia mais

O Processo Unificado

O Processo Unificado UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA O Processo Unificado 879SCC Projeto e Desenvolvimento de Sistemas

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

Governança de TI. ITIL v.2&3. parte 1

Governança de TI. ITIL v.2&3. parte 1 Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços

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

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Engenharia de Software: Introdução Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Programa 1. O processo de engenharia de software 2. UML 3. O Processo Unificado 1. Captura de requisitos 2.

Leia mais

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1 Capítulo 2 Processos de Software slide 1 Tópicos apresentados Modelos de processo de software. Atividades de processo. Lidando com mudanças. Rational Unified Process (RUP). Um exemplo de um processo de

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

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

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Modelagem OO com UML Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Modelos Maneira

Leia mais

Ciência da Computação ENGENHARIA DE SOFTWARE. UML-Unified Modeling Language Linguagem de Modelagem Unificada

Ciência da Computação ENGENHARIA DE SOFTWARE. UML-Unified Modeling Language Linguagem de Modelagem Unificada Ciência da Computação ENGENHARIA DE SOFTWARE UML-Unified Modeling Language Linguagem de Modelagem Unificada Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Roteiro Introdução a linguagem UML

Leia mais

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004 Introdução ao RUP Rational Unified Process por Denize Terra Pimenta Outubro/2004 1 Contexto Não é suficiente apenas a presença de desenvolvedores altamente treinados: Precisamos de uma linguagem para a

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

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

Desafio Profissional PÓS-GRADUAÇÃO 2012. Gestão de Projetos - Módulo C Prof. Me. Valter Castelhano de Oliveira

Desafio Profissional PÓS-GRADUAÇÃO 2012. Gestão de Projetos - Módulo C Prof. Me. Valter Castelhano de Oliveira Desafio Profissional PÓS-GRADUAÇÃO 12 Gestão de Projetos - Módulo C Prof. Me. Valter Castelhano de Oliveira 1 DESAFIO PROFISSIONAL Disciplinas: Ferramentas de Software para Gestão de Projetos. Gestão de

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

MODELO CMM MATURIDADE DE SOFTWARE

MODELO CMM MATURIDADE DE SOFTWARE MODELO CMM MATURIDADE DE SOFTWARE O modelo CMM Capability Maturity Model foi produzido pelo SEI (Software Engineering Institute) da Universidade Carnegie Mellon (CMU), em Pittsburgh, EUA, por um grupo

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

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

1 UML (UNIFIED MODELING LANGUAGE)

1 UML (UNIFIED MODELING LANGUAGE) 1 UML (UNIFIED MODELING LANGUAGE) Segundo Tonsig (2003), para conseguir desenvolver um software capaz de satisfazer as necessidades de seus usuários, com qualidade, por intermédio de uma arquitetura sólida

Leia mais

RUP Rational Unified Process

RUP Rational Unified Process RUP Rational Unified Process Baseado em http://www.wthreex.com/rup/ e em outros materiais da IBM/Rational Visão Geral O RUP tem duas dimensões: o eixo horizontal representa o tempo e mostra os aspectos

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

! Introdução.  Motivação para Processos de Software. ! Processo Unificado (USDP)  Definições  RUP x USDP  Características do Processo Unificado Agenda! Introdução " Motivação para Processos de Software! (USDP) " Definições " RUP x USDP " Características do! Descrição detalhada do! Processos Derivados! Templates simplificados! Conclusões 2 Processo

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

Análise e Projeto de Software

Análise e Projeto de Software Análise e Projeto de Software 1 Mundo Real Modelagem Elicitação Análise Problemas Soluções Gap Semântico Mundo Computacional Elicitação de Requisitos Análise de Requisitos Modelagem dos Requisitos 2 Projeto

Leia mais

Modelagem de Processos. Prof.: Fernando Ascani

Modelagem de Processos. Prof.: Fernando Ascani Modelagem de Processos Prof.: Fernando Ascani Bibliografia UML Guia de consulta rápida Douglas Marcos da Silva Editora: Novatec UML Guia do usuário Grady Booch James Rumbaugh Ivair Jacobson Editora: Campus

Leia mais

Gerenciamento de Problemas

Gerenciamento de Problemas Gerenciamento de Problemas O processo de Gerenciamento de Problemas se concentra em encontrar os erros conhecidos da infra-estrutura de TI. Tudo que é realizado neste processo está voltado a: Encontrar

Leia mais

MASTER IN PROJECT MANAGEMENT

MASTER IN PROJECT MANAGEMENT MASTER IN PROJECT MANAGEMENT PROJETOS E COMUNICAÇÃO PROF. RICARDO SCHWACH MBA, PMP, COBIT, ITIL Atividade 1 Que modelos em gestão de projetos estão sendo adotados como referência nas organizações? Como

Leia mais

Engenharia de Software

Engenharia de Software Tema da Aula A Modelagem e os Métodos em Prof. Cristiano R R Portella portella@widesoft.com.br Modelos em Abstração Um modelo é uma abstração de um objeto ou fenômeno sob um determinado ponto de vista

Leia mais

A Linguagem de Modelagem Unificada (UML)

A Linguagem de Modelagem Unificada (UML) Aécio Costa A Linguagem de Modelagem Unificada (UML) Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente. Surge a UML (Unified Modeling Language)

Leia mais

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr Metodologia de Desenvolvimento de Software Prof. M.Sc. Sílvio Bacalá Jr Objetivos Discutir aspectos de Engenharia de Software Aplicar um método de desenvolvimento para especificação e projeto de software

Leia mais

Processos de gerenciamento de projetos em um projeto

Processos de gerenciamento de projetos em um projeto Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.

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

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva. juliocesar@tecnocracia.eti.br. Http://e-academy.com.br

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva. juliocesar@tecnocracia.eti.br. Http://e-academy.com.br Faculdade Pitágoras Engenharia de Software Prof.: Julio Cesar da Silva juliocesar@tecnocracia.eti.br Http://e-academy.com.br Evolução do Software (1950 1965) - O hardware sofreu contínuas mudanças - O

Leia mais

Desenvolvimento estruturado versus orientado a objetos.

Desenvolvimento estruturado versus orientado a objetos. Desenvolvimento estruturado versus orientado a objetos. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Objetivos Identificar diferenças entre: Desenvolvimento

Leia mais

RUP Rational Unified Process

RUP Rational Unified Process Universidade do Contestado UNC Unidade Universitária de Mafra Otávio Rodolfo Piske Curso de Sistemas de Informação 5ª Fase RUP Rational Unified Process MAFRA 2003 Otávio Rodolfo Piske 1 - Introdução O

Leia mais

A Disciplina Gerência de Projetos

A Disciplina Gerência de Projetos A Disciplina Gerência de Projetos Atividades, Artefatos e Responsabilidades hermano@cin.ufpe.br Objetivos Apresentar atividades da disciplina Gerência de Projetos Discutir os artefatos e responsáveis envolvidos

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

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

Casos de Uso O que é. Casos de Uso. Objetivos de um Caso de Uso. Atores. Atores e Casos de Uso. Diagramas de Caso de Uso

Casos de Uso O que é. Casos de Uso. Objetivos de um Caso de Uso. Atores. Atores e Casos de Uso. Diagramas de Caso de Uso Casos de Uso O que é Casos de Uso Descrições narrativas de processos do domínio da aplicação Documentam a seqüência de eventos de um ator (um agente externo) usando o sistema para completar, do início

Leia mais

Padrões de projeto 1

Padrões de projeto 1 Padrões de projeto 1 Design Orientado Objeto Encapsulamento Herança Polimorfismo Design Patterns 2 Responsabilidades Booch e Rumbaugh Responsabilidade é um contrato ou obrigação de um tipo ou classe. Dois

Leia mais

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1. Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever

Leia mais

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS PDS - DATASUS Processo de Desenvolvimento de Software do DATASUS Coordenação Geral de Arquitetura e Engenharia Tecnológica Coordenação de Padronização e Qualidade de Software Gerência de Padrões e Software

Leia mais

Análise e Projeto de Sistemas

Análise e Projeto de Sistemas Análise e Projeto de Sistemas Unified Modeling Language Benno Eduardo Albert benno@ufrj.br O que é modelagem Tripé de apoio ao desenvolvimento. Notação: UML Ferramenta: Rational Rose. 2 O que é modelagem

Leia mais

UML e a Ferramenta Astah. Profa. Reane Franco Goulart

UML e a Ferramenta Astah. Profa. Reane Franco Goulart UML e a Ferramenta Astah Profa. Reane Franco Goulart História da UML o Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente. o Alguns esforços nesse

Leia mais

Gerenciamento de Configuração de Software

Gerenciamento de Configuração de Software FACULDADE MAURÍCIO DE NASSAU Jessé de Souza da Silva, José Arnaldo de Oliveira Almeida, Gabriel Pereira da Silva Gerenciamento de Configuração de Software Uma Abordagem Conceitual João Pessoa 2015 FACULDADE

Leia mais

BPMN (Business Process. George Valença gavs@cin.ufpe.br

BPMN (Business Process. George Valença gavs@cin.ufpe.br BPMN (Business Process Modeling Notation) George Valença gavs@cin.ufpe.br 31/10/2012 Introdução Modelagem de processos No ciclo de vida BPM, a etapa de modelagem de processos consiste em um conjunto de

Leia mais

UML Visão Geral. Índice. Introdução. Diagramas. Modelos e diagramas. Elementos de modelação. Referências

UML Visão Geral. Índice. Introdução. Diagramas. Modelos e diagramas. Elementos de modelação. Referências UML Visão Geral 1 Índice Introdução O que é a UML? Valor da UML Origens da UML Parceiros da UML Modelos e diagramas Elementos de modelação Diagramas Diagrama de casos de utilização Diagrama de classes

Leia mais

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE Fabiana Gomes Marinho Faculdade Lourenço Filho Resumo: Na UML, a modelagem conceitual dos dados é descrita pelo diagrama de classes, que através

Leia mais

W Projeto. Gerenciamento. Construindo a WBS e gerando o Cronograma. Autor: Antonio Augusto Camargos, PMP 1/12

W Projeto. Gerenciamento. Construindo a WBS e gerando o Cronograma. Autor: Antonio Augusto Camargos, PMP 1/12 W Projeto BS Construindo a WBS e gerando o Cronograma. Gerenciamento Autor: Antonio Augusto Camargos, PMP 1/12 Índice Remissivo Resumo...3 1. Introdução...3 2. Conceituando a WBS (Work Breakdown Structure/Estrutura

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

Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW

Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW Baseado nos materiais dos profs: Prof.: Edilberto M. Silva http://www.edilms.eti.br Edna Canedo Marcio de Carvalho Victorino Brasília-DF,

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

Processo de Desenvolvimento de Sites

Processo de Desenvolvimento de Sites ANEXO 4 METODOLOGIA DE DESENVOLVIMENTO PROCERGS MDP Processo de Desenvolvimento de Sites O processo de desenvolvimento de sites foi definido com base nas características deste produto e na forma de trabalho

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

GereComSaber. Disciplina de Desenvolvimento de Sistemas de Software. Sistema de Gestão de Serviços em Condomínios

GereComSaber. Disciplina de Desenvolvimento de Sistemas de Software. Sistema de Gestão de Serviços em Condomínios Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática 3ºAno Disciplina de Desenvolvimento de Sistemas de Software Ano Lectivo de 2009/2010 GereComSaber Sistema de

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

REQUISITOS DE SISTEMAS

REQUISITOS DE SISTEMAS REQUISITOS DE SISTEMAS MÓDULO 2 PROCESSOS DE NEGÓCIOS CONTEÚDO 1. PROCESSOS DE NEGÓCIO IDENTIFICAÇÃO CONCEITOS MODELAGEM (BPM e UML) PROCESSOS X REQUISITOS 1. PROCESSOS DE NEGÓCIO IDENTIFICAÇÃO CONCEITOS

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

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Conteúdo Definição Questionamentos Típicos Visão Geral Ciclo de Vida dos Requisitos Síntese dos Objetivos Gerência de Mudança Identificação de Requisitos Classificação de Requisitos

Leia mais