Requisitos para Integração de Ferramentas de Engenharia de Software
|
|
- Otávio Quintão
- 4 Há anos
- Visualizações:
Transcrição
1 Requisitos para Integração de Ferramentas de Engenharia de Software Rodrigo Eduardo Silva 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Belo Horizonte, MG Brasil rodes@dcc.ufmg.br Resumo. Um grande número de esforços tem sido realizado dentro da comunidade de engenharia de software para fornecer suporte automatizado para as áreas de processo de desenvolvimento de software. O desenvolivmento de grandes sistemas é uma tarefa importante e complexa. Um assunto chave no fornecimento de suporte automatizado para o desenvolvimento de software é a integração de ferramentas em um ambiente de desenvolvimento de software. Muitas ferramentas foram produzidas, mas são aplicadas de forma independente e isolada nos projetos, além de suportarem somente uma fase em particular do ciclo de desenvolvimento. Torna-se então, desejável a construção de ambientes de suporte através da integração das ferramentas existentes. O presente trabalho tem como objetivo apresentar um catálogo de requisitos necessários para a integração de ferramentas de engenharia de software, contribuindo no desenvolvimento de novas ferramentas, assim como servir como uma fonte de referência para que os usuários possam escolher melhor quais ferramentas farão parte de seu ambiente de desenvolvimento de software integrado. 1. Introdução Atualmente há um grande número de esforços dentro da comunidade de engenharia de software para fornecer suporte automatizado para as áreas de processo de desenvolvimento de software. As diversas ferramentas, sistemas, e ambientes resultantes de tais esforços, têm como objetivo dar suporte ou automatizar uma parte do processo de desenvolvimento de software com a expectativa de que o processo se torne mais predizível, menos dispendioso, mais fácil de gerenciar e que produza produtos de maior qualidade [Brown 1992]. O desenvolvimento de grandes sistemas é uma tarefa importante que consiste de um número complexo de tarefas multifacetadas. Este processo é visto sob várias perspectivas, incluindo as do usuário, dos analistas e desenvolvedores, dos gerentes, dentre outros. Um assunto chave quando se trata de fornecer suporte automatizado para o desenvolvimento de software de grande escala é a integração de ferramentas em um ambiente de desenvolvimento de software, que enderecem os diferentes aspectos do processo de desenvolvimento [Bosua and Brinkkemper 1995] [Wasserman 1990]. Muitas ferramentas de desenvolvimento de sistemas foram desenvolvidas, mas estas ferramentas são produzidas por diferentes fornecedores, fornecem suporte a métodos específicos e são aplicadas de forma isolada no desenvolvimento de sistemas, além de que muitas dessas ferramentas, suportam apenas uma fase em particular do ciclo de desenvolvimento do software
2 [Bosua and Brinkkemper 1995]. À medida que mais ferramentas de suporte ao desenvolvimento de software tornam-se disponíveis, a construção de ambientes de suporte através da integração das ferramentas existentes torna-se mais desejável [Gautier et al. 1995]. O trabalho de [Thomas and Nejmeh 1992] define integração como a medida na qual ferramentas concordam entre si, isto é, a concordância entre as ferramentas inclui formato de dados, padrões de interface de usuários, uso de funções comuns, ou outros aspectos de construção de ferramentas. Integração é uma propriedade de interrelacionamentos de ferramentas e através de seu entendimento, melhores ferramentas e mecanismos de integração podem ser projetados. A integração de ferramentas relaciona as técnicas utilizadas para formar uniões de ferramentas que fornecem um ambiente de suporte para algumas ou todas as atividades dentro do processo de engenharia de software [Wicks 2004]. Wasserman [Wasserman 1990] propõe em seu trabalho um método para medir a associação entre ambientes, definindo cinco tipos ou dimensões de integração que podem fornecer uma escala contra a qual comparações podem ser feitas. Estas dimensões são: plataforma, que se preocupa com serviços de framework; apresentação, que se preocupa com a interação do usuário; dados, que se preocupa com o uso de dados pelas ferramentas; controle, que se preocupa com a comunicação e interoperação; e processo, que se preocupa com o papel das ferramentas no processo de desenvolvimento de software. Em [Thomas and Nejmeh 1992] é feita uma extensão do trabalho de Wasserman, enfatizando os relacionamentos entre as ferramentas que estão sendo integradas, através de um melhor detalhamento das dimensões de integração de apresentação, dados, controle e processo. Inserido neste contexto, o presente trabalho tem como objetivo apresentar um catálogo de requisitos necessários para a integração de ferramentas de engenharia de software, contribuindo para que os desenvolvedores possam definir melhor as características de integração que farão parte de suas ferramentas, baseando-se nos requisitos apresentados e também direcionando futuros trabalhos. Os usuários de ferramentas também poderão se beneficiar deste catálogo como uma fonte de referência para melhor escolher quais ferramentas farão parte de seu ambiente de desenvolvimento de software integrado. Este trabalho não cobre todos os aspectos apresentados na literatura relacionados a integração de ferramentas. A base da qual os requisitos foram extraídos vem de [Wasserman 1990] e [Thomas and Nejmeh 1992], focando-se nas dimensões de integração apresentadas nesses trabalhos, bem como de outros trabalhos relacionados a estes. De forma similar ao trabalho de Hoffmann [Hoffmann et al. 2004], alguns requisitos foram extraídos de forma empírica, ou seja, através de opiniões e conceitos já estabelecidos na indústria de desenvolvimento de software. Como forma de estrutura para apresentação dos requisitos, foi tomado como exemplo o trabalho de [Hoffmann et al. 2004], listando-se cada um dos requisitos levantados, seguidos de uma breve explicação. 2. Modelos e Características de Integração de Ferramentas de Engenharia de Software Os requisitos apresentados no presente trabalho foram extraídos principalmente do trabalho pioneiro apresentado por Wasserman [Wasserman 1990]. Muitos outros trabalhos
3 tais como [Thomas and Nejmeh 1992], [Pohl and Weidenhaupt 1997], [Brown 1992], [Wicks 2004], [Gautier et al. 1995] e [Bosua and Brinkkemper 1995] fazem referência ao trabalho de Wasserman, seja através de críticas e/ou de mehorias, extensões e aprofundamentos dos conceitos apresentados pelo autor. Nesta seção serão apresentados alguns conceitos relacionados ao presente trabalho, extraídos das referências apresentadas, que são importantes para o entendimento dos requisitos levantados e para uma compreensão em mais alto nível do assunto tratado. Tipos (dimensões) de integração de ferramentas: - Integração de plataforma: está relacionada com o grau de uso de frameworks de serviços comuns entre ferramentas de software. Esta dimensão de integração mede o grau no qual as ferramentas usam o mesmo framework de serviços ou similar. - Integração de apresentação: está relacionada com o grau no qual as metáforas e estilos de interface de usuário são compartilhadas. Esta dimensão de integração mede o grau no qual estilos de apresentação comuns são compartilhados. - Integração de dados: está relacionada com o grau de troca de dados entre as ferramentas. Esta dimensão de integração mede o grau no qual dados podem ser trocados e entendidos entre ferramentas diferentes. - Integração de controle: está relacionada como grau de interoperabilidade das ferramentas de software. Esta dimensão de integração mede o grau no qual as ferramentas podem se intercomunicar de forma bem sucedida. - Integração de processo: está relacionada com o grau no qual as ferramentas são utilizadas dentro de um processo ou ciclo de vida completo e bem definido. Esta dimensão de integração mede o grau no qual as ferramentas participam de um processo de desenvolvimento comum e abrangente. Ferramenta CASE: Computer-Aided Software Engineering. É uma forma de classificação para as ferramentas baseadas em computadores que têm como objetivo fornecer suporte às atividades de Engenharia de Software. Ambientes de suporte a programação: Programming Support Environments (PSE) são uniões de ferramentas de software que, quando combinadas, fornecem suporte ao processo de escrita de código de software. Ambientes de Engenharia de Software: Software Engineering Environments (SEE) são uniões de ferramentas de software que, quando combinadas, fornecem suporte a um ciclo de vida em particular, incluindo tipicamente um meio de gravação temporário, assim como um repositório para os artefatos relevantes. Ambientes de Engenharia de Software Centrados em Processos: Process-centered Software Engineering Environments (PSEE) é um SEE que tenta fornecer um suporte de ferramentas integrado para todo ciclo de vida do projeto. Um processo de software completo é concretizado através da ativação de ferramentas apropriadas aos passos relevantes no processo, com a passagem de artefatos de forma similar entre ferramentas e passos.
4 3. Requisitos Esta seção contém o catálogo de requisitos para integração de ferramentas de engenharia de software. Os requisitos aqui apresentados foram extraídos dos trabalhos referenciados e também através de conceitos estabelecidos na indústria de desenvolvimento de software, além de ter como escopo os domínios de integração apresentados por Wasserman [Wasserman 1990]. Manter integridade entre artefatos do processo: As ferramentas do ambiente integrado devem garantir que todos os artefatos por elas manipulados e controlados, estejam consistentes entre si. Isto pode ser feito em tempo de execução, impedindo a criação de artefatos inconsistentes e/ou através de relatórios [Thomas and Nejmeh 1992] [Wasserman 1990]. Manter rastreabilidade entre artefatos do processo: As ferramentas do ambiente integrado devem permitir a criação, manutenção e consulta de ligações de rastreabilidade entre elementos dos artefatos, mostrando quando um elemento de um artefato e fundamentado por outro elemento de outro artefato. Manutenção do projeto: As ferramentas do ambiente integrado devem permitir a manutenção do projeto através da criação, busca, alteração e remoção (CRUD) de seus artefatos, relação de recursos e outros. O ambiente integrado deve permitir que o usuário trabalhe nos módulos (ferramentas que compõem o ambiente integrado) num mesmo projeto. Permitir o trabalho colaborativo: As ferramentas do ambiente integrado devem permitir o trabalho em equipe de forma colaborativa, respeitando as questões de não-redundância, controle, consistência e sincronização dos dados [Biuk-Aghai 1998]. Integração de apresentação: Tanto ferramentas individuais, conjuntos de ferramentas e o ambiente como um todo devem reduzir a carga cognitiva do usuário. Os requisitos que podem ser extraídos a partir deste são: [Wicks 2004] [Thomas and Nejmeh 1992] [Wasserman 1990] Aparência e comportamento: trata da similaridade das ferramentas com relação à aparência de telas e comportamento de interação. Este requisito leva em consideração tanto os aspectos léxicos (número de cliques de mouse, formato de menus, dentre outros), quanto os aspectos sintáticos (ordem sequencial dos comandos e parâmetros). Paradigma de interação: é a medida na qual as ferramentas utilizam metáforas e modelos mentais similares para minimizar interferências no aprendizado e utilização. As ferramentas de um ambiente integrado devem utilizar as mesmas metáforas e modelos mentais. Integração de dados: As ferramentas devem manter a consistência da informação (tanto os dados persistentes quantos os dados não persistentes), independentemente do número de partes em que ela é operada ou transformada
5 pelas ferramentas. Este requisito relaciona-se com o requisito de Manter a rastreabilidade dos artefatos do processo. Os requisitos que podem ser extraídos a partir deste são: [Wicks 2004] [Thomas and Nejmeh 1992] [Wasserman 1990] Interoperabilidade: é tudo aquilo que deve ser feito para que as ferramentas vejam os dados como um conjunto consistente. Do ponto de vista do usuário, as ferramentas estão bem integradas quando elas apresentam um esquema comum de interface de usuário, mesmo se cada ferramenta individualmente possuir diferentes modelos de dados. Já do ponto de vista do desenvolvedor estas ferramentas não estarão bem integradas pois será necessário muito trabalho para fazer com que os dados de uma ferramenta seja manipulável por outra. A integração de interoperabilidade está relacionada com a quantidade de trabalho que uma ferramenta deverá exercer para fazer com que os dados vindos de outra ferramenta sejam manipuláveis por ela. As ferramentas devem possuir também uma mesma visão dos dados, por exemplo através de uma estrutura interna comum da informação que é manipulada. Não redundância: trata da redundância dos dados que as ferramentas do ambiente integrado armazenam e manipulam de forma independente. Ferramentas bem integradas deve reduzir a redundância de dados, ou seja, as ferramentas devem possuir poucos dados duplicados ou dados que podem ser automaticamente derivados de outros dados. Consistência dos dados: trata da cooperação entre as ferramentas para manter as restrições semânticas nos dados que elas manipulam. Cada ferramenta deve indicar suas ações e os efeitos em seus dados, que são os sujeitos das restrições semânticas que também se referem aos dados gerenciados por outra ferramenta. Troca de dados: trata das ações que devem ser feitas para que os dados (não persistentes) gerados por uma execução de uma ferramenta sejam manipuláveis por outras ferramentas. Os dados podem estar na forma de valores iniciais comunicados de uma ferramenta a outra quando a primeira começa a sua execução; ou pode ser através de valores passados para uma ferramenta enquanto ela está sendo executada. Um fator determinante é que as ferramentas devem concordar com o formato e a semântica dos dados. A integração na troca de dados deve se preocupar com a quantidade de trabalho requerido nos formatos e semânticas dos dados para que as ferramentas sejam capazes de trocá-los entre si. Sincronização: uma ferramenta deve comunicar as outras ferramentas as mudanças realizadas por ela nos dados não-persistentes comuns a elas, para que as outras ferramentas sincronizem seus valores de dados. Um mecanismo de renovação de tempo (refresh time) pode ser utilizado para comunicar mudanças entre as ferramentas.
6 4. Aspectos Práticos e Operacionais 5. Conclusão Referências Biuk-Aghai, R. (1998). Customizable software engineering environments for flexible distributed software teams. In Software Engineering Conference, Proceedings Asia Pacific, pages Bosua, R. and Brinkkemper, S. (1995). Realisation of an integrated software engineering environment through heterogeneous CASE-tool integration. In Proceedings of the Software Engineering Environments Conference, 1995, pages , Noordwijkerhout, Netherlands. Brown, A. W. (1992). An annotated bibliography on integration in software engineering environments. Technical report, Software Engineering Institute - Carniege Mellon University, Pittsburgh, Pennsylvania. Gautier, B., Loftus, C., Sherratt, E., and Thomas, L. (1995). Tool integration: experiences and directions. In ICSE 95: Proceedings of the 17th international conference on Software engineering, pages , New York, NY, USA. ACM. Hoffmann, M., Kuhn, N., Weber, M., and Bittner, M. (2004). Requirements for requirements management tools. In Proceedings of the 12th IEEE International Requirements Engineering Conference, 2004, pages Pohl, K. and Weidenhaupt, K. (1997). A contextual approach for process-integrated tools. In ESEC 97/FSE-5: Proceedings of the 6th European conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering, pages , New York, NY, USA. Springer-Verlag New York, Inc. Thomas, I. and Nejmeh, B. A. (1992). Definitions of tool integration for environments. IEEE Software, 9(2): Wasserman, A. I. (1990). Tool integration in software engineering environments. In Proceedings of the international workshop on environments on Software engineering environments, pages , New York, NY, USA. Springer-Verlag New York, Inc. Wicks, M. (2004). Tool integration in software engineering: The state of the art in Disponível em Último acesso em 15/11/2007.
Requisitos para Integração de Ferramentas de Engenharia de Software
Requisitos para Integração de Ferramentas de Engenharia de Software Rodrigo Eduardo Silva 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Belo Horizonte, MG Brasil
Leia maisRequisitos para integração de ferramentas de engenharia de software. Pollyanna Miranda de Abreu 1
Requisitos para integração de ferramentas de engenharia de software Pollyanna Miranda de Abreu 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Caixa Postal 702 30123-970
Leia maisRequisitos para Ferramentas de Gestão de Projetos de Software
Requisitos para Ferramentas de Gestão de Projetos de Software Thiago S. F. Silva 1, Rodolfo F. Resende 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Av. Antônio
Leia maisFUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001
FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS Projeto de Programas PPR0001 2 Introdução Antes de desenvolver ou construir qualquer produto ou sistema em engenharia é necessário um... o PROJETO O que é um
Leia maisCiclo de vida: fases x atividades
Ciclo de vida Fase de definição Análise e Especificação Estudo de Viabilidade Estimativas Planejamento Fase de desenvolvimento Design Implementação e integração Verificação e Validação Fase de operação
Leia maisPrincípios da Engenharia de Software aula 03
Princípios da Engenharia de Software aula 03 Prof.: José Honorato Ferreira Nunes Material cedido por: Prof.: Franklin M. Correia Na aula anterior... Modelos de processos de software: Evolucionário Tipos
Leia maisUma Ferramenta de Apoio à Gerência de Requisitos Integrada a um Ambiente de Desenvolvimento de Software Centrado em Processos
Uma Ferramenta de Apoio à Gerência de Requisitos Integrada a um Ambiente de Desenvolvimento de Software Centrado em Processos Murilo F. Sales, Ernani de O. Sales, Carla A. Lima Reis, Rodrigo Q. Reis Laboratório
Leia maisApresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:
Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: 8429016 Definição de MDA OMG (Object Management Group) propôs uma aplicação abrangente das práticas
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
Leia maisANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA º PERÍODO - 7º MÓDULO AVALIAÇÃO A1 DATA 10/09/2009 ENGENHARIA DE USABILIDADE
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 4º PERÍODO - 7º MÓDULO AVALIAÇÃO A1 DATA 10/09/2009 ENGENHARIA DE USABILIDADE 2009/2 GABARITO COMENTADO QUESTÃO 1: 1. Considere as afirmações a seguir:
Leia maisÁreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave
Primeiro Módulo: Parte 3 Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave AN V 3.0 [60] Rildo F Santos (@rildosan) rildo.santos@etecnologia.com.br www.etecnologia.com.br http://etecnologia.ning.com
Leia maisIntegração de Dados. Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri
Integração de Dados Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Integração de Dados Problema: dados armazenados nos provedores são
Leia maisJADEX: A BDI REASONING ENGINE. Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp.
JADEX: A BDI REASONING ENGINE Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp. 149-174 Volume 15 Motivação Existem muitas plataformas para desenvolvimento
Leia maisEngenharia de Software
Introdução Engenharia de Software O principal objetivo da Engenharia de Software (ES) é ajudar a produzir software de qualidade; QUALIDADE DE SOFTWARE Empresas que desenvolvem software de qualidade são
Leia maisMineração de Textos na Web
Mineração de Textos na Web Luciano Antonio Digiampietri Escola de Artes Ciências e Humanidades da Universidade de São Paulo digiampietri@usp.br Resumo: Com o crescimento das informações disponíveis na
Leia maisPROCESSO DE DESENVOLVIMENTO DE SOFTWARE
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Processo Por quê um processo Padronizar a geração de produtos e serviços Garantir a repetitividade da geração de produtos e serviços Reter o conhecimento Oferecer
Leia maisISO/IEC Roteiro IEC ISO. Histórico ISO/IEC ISO
Roteiro Processos do Ciclo de Vida de Software Diego Martins dmvb@cin.ufpe.br Histórico Objetivos Organização Processos Fundamentais Processos Organizacionais de Processo IEC ISO International Electrotechnical
Leia maisDesenvolvimento Ágil de Software
DCC / ICEx / UFMG Desenvolvimento Ágil de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Agenda Métodos ágeis Histórico e Motivação Manifesto ágil Desenvolvimento dirigido a planos e ágil
Leia mais5º Congresso de Pós-Graduação
5º Congresso de Pós-Graduação UMA FERRAMENTA PARA GERAÇÃO AUTOMÁTICA DE DIAGRAMA DE CLASSES A PARTIR DA ESPECIFICAÇÃO DE REQUISITOS EM LINGUAGEM NATURAL Autor(es) Orientador(es) LUIZ EDUARDO GALVÃO MARTINS
Leia maisUma ontologia para modelagem de conteúdo para Ensino a Distância. An ontology for modeling distance learning contents
SEMINÁRIO DE PESQUISA EM ONTOLOGIA NO BRASIL 11 E 12 de Agosto Universidade Federal Fluminense Departamento de Ciência da Informação Niterói Rio de Janeiro Brasil Esta comunicação está sendo submetida
Leia maisENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE
ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE CMP1280/CMP1250 Prof. Me. Fábio Assunção Introdução à Engenharia de Requisitos REQUISITOS Descrições do que o sistema deve fazer, os serviços oferecidos pelo
Leia maisTutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto
Tutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto Versão 1.0.0 1 ÍNDICE Sumário INTRODUÇÃO... 3 PRINCIPAIS CARACTERÍSTICA DA ASTAH... 3 COMO BAIXAR... 4 PRINCIPAIS FUNCIONALIDADES...
Leia maisARCHITECTURAL DESIGN. Ian Sommerville, 8º edição Capítulo 11 Aula de Luiz Eduardo Guarino de Vasconcelos
ARCHITECTURAL DESIGN Ian Sommerville, 8º edição Capítulo 11 Aula de Luiz Eduardo Guarino de Vasconcelos Objetivos Tópicos abordados Arquitetura de Software Projeto de arquitetura Vantagens de arquitetura
Leia maisProjeto de Interface Homem- Máquina
Projeto de Interface Homem- Máquina PCS 013 Profa. Lúcia V. L. Filgueiras Profa. Selma S. S. Melnikoff Projeto de Interface- Homem- Máquina Em geral, esta atividade é realizada na fase de análise ou de
Leia mais5º Congresso de Pós-Graduação
5º Congresso de Pós-Graduação UMA FERRAMENTA PARA GERAÇÃO AUTOMÁTICA DE DIAGRAMA DE CLASSES A PARTIR DA ESPECIFICAÇÃO DE REQUISITOS EM LINGUAGEM NATURAL Autor(es) WILSON CARLOS DA SILVA Orientador(es)
Leia maisIntrodução a Engenharia de Software. Professor Joerllys Sérgio
Introdução a Engenharia de Software Professor Joerllys Sérgio Objetos Introduzir Engenharia de Software e mostrar sua importância. Apresentar respostas para questões chave em engenharia de software. Introduzir
Leia maisSOCIEDADE PARANAENSE DE ENSINO E TECNOLOGIA SPET PROGRAMA DE EVOLUÇÃO CONTÍNUA DE QUALIDADE. ES 60 DISCIPLINA: Engenharia de Software II
ES 60 DISCIPLINA: Engenharia de Software II AULA NÚMERO: 6 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar, discutir e exercitar a visão de um sistema a ser projetado. Os principais
Leia maisLIVRO ENGENHARIA DE SOFTWARE FUNDAMENTOS, MÉTODOS E PADRÕES
LIVRO ENGENHARIA FUNDAMENTOS, MÉTODOS E PADRÕES WILSON PADUA PAULA FILHO CAPÍTULO REQUISITOS 1 REQUISITOS TECNICO E GERENCIAL ESCOPO (RASCUNHO) CARACTERISTICAS 2 O que são Requisitos? São objetivos ou
Leia maisEspecialização em Tecnologias de Software para Ambiente Web. Guidelines. Prof. Dr. Sandro Ronaldo Bezerra Oliveira
Especialização em Tecnologias de Software para Ambiente Web Guidelines Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br www.ufpa.br/srbo Projeto e Avaliação de Interfaces: Ambiente Web Instituto
Leia maisIHC Interação Homem- Computador. Profa.Denise Neves
IHC Interação Homem- Computador Profa.Denise Neves 2017 Introdução IHC é a abreviação para INTERAÇÃO HOMEM-COMPUTADOR, que no inglês é encontrado sob a sigla HCI Human- Computer Interface. IHC também pode
Leia mais15/03/2018. Professor Ariel da Silva Dias Modelos de Processo de Software
Professor Ariel da Silva Dias Modelos de Processo de Software Conjunto de atividades que leva à produção de um produto de Software [Sommerville,2011]; Podemos contar com ferramentas de apoio com o objetivo
Leia maisProf. Fábio Lúcio Meira
Prof. Fábio Lúcio Meira Objetivo Transformar os requisitos no design do futuro sistema Evoluir uma arquitetura robusta do sistema Adaptar o design para adequá-lo ao ambiente de implementação O principal
Leia maisAnálise de sistemas. Engenharia de Requisitos
Análise de sistemas Engenharia de Requisitos Análise de Requisitos Processo de descobrir, analisar, documentar e verificar serviços requeridos para um sistema e suas restrições operacionais. 2 O que é
Leia maisVisões Arquiteturais. Visões Arquiteturais
Visões Arquiteturais Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da Engenharia. Visões permitem reduzir a quantidade
Leia maisConstruindo Jogos Digitais para apoiar o Ensino de Matemática e Ensinar a Construir e Testar Sistemas Concorrentes
Construindo Jogos Digitais para apoiar o Ensino de Matemática e Ensinar a Construir e Testar Sistemas Concorrentes Fagner Silva Martins (Bolsista), Marcelo de Melo Fernandes (Bolsista), Ayla Débora Dantas
Leia maisUtilização de técnicas de Process Mining em Sistemas de Middleware Adaptativos Proposta de Trabalho de Graduação
UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA 2017.1 Utilização de técnicas de Process Mining em Sistemas de Middleware Adaptativos Proposta de Trabalho de
Leia maisEscopo: PROCESSOS FUNDAMENTAIS
Escopo: PROCESSOS FUNDAMENTAIS Etapa:Desenvolvimento de software Disciplina: Auditoria & Qualidade em Sistemas de Informação Professor: Lucas Topofalo Integrantes: Joel Soares de Jesus Luiz R. Bandeira
Leia maisTítulo da Apresentação
Título da Apresentação Processo Demoiselle para Modelagem de Negócio Palestrantes: Alisson Wilker alisson-wilker.silva@serpro.gov.br http://www.frameworkdemoiselle.gov.br/projetos/process 00/00/0000 Agenda
Leia maisParadigmas de Linguagens
Paradigmas de Linguagens Aula 1: Introdução e Conceitos Básicos Professora Sheila Cáceres O que é um paradigma??? Paradigmas de Linguagens - Sheila Cáceres 2 O que é um paradigma??? Paradigmas de Linguagens
Leia maisMetodologia da Pesquisa em Sistemas de Informação. Aula 3. Projeto de Pesquisa. Revisão Sistemática. Profa. Fátima L. S. Nunes
Metodologia da Pesquisa em Sistemas de Informação Aula 3 Projeto de Pesquisa Revisão Sistemática Profa. Fátima L. S. Nunes Metodologia Pesquisa SI- 1 Como elaborar um projeto? Roteiro 1) Escolha do tema
Leia maisFerramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos
Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos Eduardo Santana de Almeida Daniel Lucrédio Calebe de Paula Bianchini Antonio Francisco do
Leia maisEngenharia de Software
Engenharia de Software Requisitos de Software Professor: Charles Leite Engenharia de requisitos Os requisitos de um sistema são as descrições do que o sistema deve fazer, os serviços que oferece e as restrições
Leia maisProjeto e Desenvolvimento de SAD (2)
Universidade do Contestado Campus Concórdia Curso de Sistemas de Informação Prof.: Maico Petry Projeto e Desenvolvimento de SAD (2) DISCIPLINA: Sistemas de Apoio a Decisão Metodologias de projeto e desenvolvimento:
Leia maisProfessor Emiliano S. Monteiro
Professor Emiliano S. Monteiro To-Do Doing Done Conhecer os processos de desenvolvimento habilita o aluno a realizar uma melhor escolha de processo para uso em projetos futuros. A vantagem de conhecer
Leia maisRequisitos de Software
Engenharia de requisitos Requisitos de Software Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições
Leia maisCiência da Computação ENGENHARIA DE SOFTWARE. Capítulo 1 Introdução
Ciência da Computação ENGENHARIA DE SOFTWARE Capítulo 1 Introdução Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Plano de Ensino 1. Introdução à Engenharia de Software Importância da Engenharia
Leia maisDisciplina que reúne metodologias, métodos e ferramentas a serem utilizados, desde a percepção do problema até o momento em que o sistema
Disciplina que reúne metodologias, métodos e ferramentas a serem utilizados, desde a percepção do problema até o momento em que o sistema desenvolvido deixa de ser operacional (existir), visando resolver
Leia maisBanco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 1. Prof. Leonardo Vasconcelos
Banco de Dados SGBD - Sistema de Gerenciamento de Banco de Dados Parte 1 Prof. Leonardo Vasconcelos - O que é um banco de dados (BD)? Um Banco de Dados (ou Base de Dados) é uma coleção de dados relacionados,
Leia maisHistórico: Linha de Produção
Escola Regional de Informática ERI-MG Linha de Produtos de Software: Conceitos Histórico: Linha de Produção Produtos em geral eram feitos manualmente Com o crescimento do consumo, foi necessário automatizar
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ - UFPR Bacharelado em Ciência da Computação
SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 16 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar, discutir o conceito de métricas de software. DESENVOLVIMENTO Métricas
Leia maisArquitetura de Software: Documentação
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Arquitetura de Software: Documentação SSC-0527 Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa Tiago Volpato Introdução
Leia mais6.1. Teste Baseado em Gramática e Outras Abordagens de Teste
6 Discussão Além das técnicas de teste usando modelos gramaticais, existem outras abordagens de teste funcional de sistemas que estão sendo estudadas pela comunidade científica. Algumas delas se dedicam
Leia maisSistemas de Computação e de Informação
Sistemas de Computação e de Informação SLIDE 9 Professor Júlio Cesar da Silva juliocesar@eloquium.com.br site: http://eloquium.com.br/ twitter: @profjuliocsilva Linguagens de Programação Os computadores
Leia maisPadrão para Especificação de Requisitos de Produto de Multimídia
Padrão para Especificação de Requisitos de Produto de Multimídia 1 Introdução 1.1 Escopo do documento Sugere-se aqui uma estrutura para a Especificação de Requisitos de Produto de Multimídia (ERPM). Esta
Leia maisPlano de pesquisa de mestrado em ciência da computação. Márcio G. Morais
Plano de pesquisa de mestrado em ciência da computação. Márcio G. Morais Introdução Falhas em Robótica Sistema de múltiplos robôs Software em robótica Estado da Arte Situação dos Frameworks c/ tolerância
Leia maisUniversidade Federal de Goiás Estilos Arquiteturais
Universidade Federal de Goiás Estilos Arquiteturais Prof. Helder Brito Nascimento Instituto de Informática helderbn@gmail.com O que é um estilo de arquitetura Como você diferencia uma construção da outra?
Leia mais3. Engenharia dos requisitos de software
Renato Cardoso Mesquita Departamento de Eng. Elétrica da UFMG renato@cpdee.ufmg.br Engenharia de Software 3. Engenharia dos requisitos de software.......... 3.1. Visão Geral O fluxo de Requisitos reúne
Leia maisO conceito de casos de uso foi criado em 1986 por Ivar Jacobson, metodologista e um dos pais do Processo Unificado.
Modelagem de casos de uso Casos de uso O conceito de casos de uso foi criado em 1986 por Ivar Jacobson, metodologista e um dos pais do Processo Unificado. O que é Segundo Ivar Jacobson, um caso de uso
Leia maisVersão 3.1br. Foundation Level Model Based Tester
GLOSSÁRIO DE TERMOS Versão 3.1br Foundation Level Model Based Tester Os termos deste documento são complementares ao Glossário de Termos Núcleo Base para o exame de certificação CTFL-MBT Model Based Tester.
Leia maisespecificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje
1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria
Leia maisAULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA
Leia maisINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Introdução 2 Antes de qualquer
Leia mais02/10/2012 Clarindo Pádua. Avaliação de maturidade em usabilidade de organizações Produtividade do usuário.
Modelos de avaliação de maturidade em usabilidade Prof.: Clarindo Isaías Pereira da Silva e Pádua Departamento de Ciência da Computação UFMG Synergia / Gestus Usabilidade Capacidade que um sistema interativo
Leia maisIntrodução aos Testes de Software
Introdução aos Testes de Software 1 Objetivos do curso Apresentar e discutir os conceitos básicos sobre o processo de testes Entender como criar e utilizar os documentos (artefatos) gerados ao longo deste
Leia mais06/02/2014. Engenharia de requisitos. Requisitos de Software. Capítulo 6. O que é um requisito? Objetivos. Abstração de requisitos (Davis)
Engenharia de requisitos Requisitos de Software O processo de estabelecer os serviços que o cliente requer a partir de um sistema e as restrições sob as quais ele opera e é desenvolvido. Os próprios requisitos
Leia maisRequisitos de Software
Requisitos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 6 Slide 1 Objetivos Apresentar os conceitos de requisitos de usuário e de sistema Descrever requisitos funcionais
Leia maisIntroduçã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 maisAnálise de Sistemas Aula 4
Análise de Sistemas Aula 4 Prof. Emerson Klisiewicz Contextualização Aula 4 Gerenciamento de Requisitos Refinamento de Requisitos Aprovação de Requisitos Matriz de Rastreabilidade O Sucesso Clientes satisfeitos
Leia maisUMA FERRAMENTA DE APOIO À EDIÇÃO E VALIDAÇÃO DE OVMS TEXTUAIS PARA DAR SUPORTE AO PROCESSO DE ANÁLISE AUTOMÁTICA 1
UMA FERRAMENTA DE APOIO À EDIÇÃO E VALIDAÇÃO DE OVMS TEXTUAIS PARA DAR SUPORTE AO PROCESSO DE ANÁLISE AUTOMÁTICA 1 Cristiano Politowski 2, Fabrícia Roos-Frantz 3, Rafael Z. Frantz 4, Sandro Sawiki 5. 1
Leia maisO Fluxo de Requisitos
O Fluxo de 1 Finalidade do fluxo de requisitos A finalidade deste fluxo é: Chegar a um acordo com o cliente e o usuário sobre o que o sistema deve fazer. Oferecer ao desenvolvedor um melhor entendimento
Leia maisSistemas Multimídia Aula 2. Autoria Multimídia
Sistemas Multimídia Aula 2 Autoria Multimídia Diogo Pinheiro Fernandes Pedrosa Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais Curso de Ciência da Computação Introdução
Leia maisUniversidade Federal da Paraíba CCEN Departamento de Informática Disciplina: Banco de Dados. Aula 1 Introdução a Banco de Dados
Universidade Federal da Paraíba CCEN Departamento de Informática Disciplina: Banco de Dados Aula 1 Introdução a Banco de Dados 1. Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído
Leia maisInterface Usuário Máquina. Aula 05
Interface Usuário Máquina Aula 05 Interface Usar um sistema interativo significa interagir com sua interface para alcançar objetivos em determinado contexto de uso. Interação e Interface A interação e
Leia mais3 Medição de Software
3 Medição de Software À medida que a engenharia de software amadurece, a medição de software passa a desempenhar um papel cada vez mais importante no entendimento e controle das práticas e produtos do
Leia maisDepartamento de Sistemas de Computação Universidade de São Paulo Análise e Projeto Orientados a Objetos Aula 2 O Processo Unificado (PU)
Departamento de Sistemas de Computação Universidade de São Paulo Análise e Projeto Orientados a Objetos Aula 2 O Processo Unificado (PU) Prof. Seiji Isotani (sisotani@icmc.usp.br) Modelos de Processo de
Leia maisAula 11 - Fluxo do RUP: Ambiente
Aula 11 - Fluxo do RUP: Ambiente Propósito Trabalhadores e artefatos Fluxo típico Ambiente: Propósito Prover atividades de suporte à organização, com processos e ferramentas Seleção e aquisição de ferramentas
Leia maisDisciplina - Requisitos. Grupo Yuni Luiz Eduardo Káthia
Disciplina - Requisitos Grupo Yuni Luiz Eduardo Káthia RUP(Rational Unified Process) 1. Introdução. 2. Introdução a disciplinas no RUP. 3. Requisitos. 4. Gerenciamento de Requisitos. 5. Relação com outras
Leia maisProjeto Básico para Serviço de Especificação dos Produtos de Software Controle de Almoxarifado do SECPRA/CDTN e Controle de Equipamentos
Projeto Básico para Serviço de Especificação dos Produtos de Software Controle de Almoxarifado do SECPRA/CDTN e Controle de Equipamentos OBJETIVOS Definir as condições gerais para contratação de serviços
Leia maisORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados
ORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados Gestão da Informação (07182) Instituto de Ciências Econ., Adm. e Contábeis (ICEAC) Universidade Federal do Rio Grande (FURG) Gestão de Dados As organizações
Leia maisMODELAGEM DE SISTEMA Apresentação
MODELAGEM DE SISTEMA Apresentação Prof Daves Martins Msc Computação de Alto Desempenho Email: daves.martins@ifsudestemg.edu.br Análise de Requisitos Processo de descobrir, analisar, documentar e verificar
Leia maisBibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa
BibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa Dairton Bassi, Kelly Braghetto, Eduardo Colli, Fabio Kon, João Eduardo Ferreira Instituto de Matemática e Estatística Universidade
Leia maisQUALIDADE DE SOFTWARE. Princípios de Engenharia de Software
QUALIDADE DE SOFTWARE Princípios de Engenharia de Software Afinal o que é Software? Segundo o dicionário de Informática: Suporte lógico, suporte de programação. Conjunto de programas, métodos e procedimentos,
Leia maisFUNDAMENTOS DE ENGENHARIA DE SOFTWARE. Professor: Paulo Vencio
FUNDAMENTOS DE ENGENHARIA DE SOFTWARE Professor: Paulo Vencio Bibliografia: Como o assunto é cobrado: Conceito de forma geral Bibliografia Específica Aplicação do Conceito Conteúdo Programático: Conceito
Leia maisCurso de Sistemas de Informação. Karla Donato Fook DESU / DComp. Modelagem de Dados UML
Curso de Sistemas de Informação Karla Donato Fook karladf@ifma.edu.br DESU / DComp 2017 Modelagem de Dados UML 2 1 Eduardo Bezerra Editora Campus/Elsevier Porcentagem de projetos que terminam dentro do
Leia maisSimulado para CFPS. Questões de Propósito, Tipo e Fronteira. 1. Um dos objetivos da Análise de Pontos de Função é:
Questões de Propósito, Tipo e Fronteira 1. Um dos objetivos da Análise de Pontos de Função é: Simulado para CFPS a) Ajudar no processo de depuração de um software. b) Estimar o tamanho de uma equipe de
Leia mais17º Congresso de Iniciação Científica APLICAÇÃO DA ENGENHARIA BASEADA EM CONHECIMENTO NA ANÁLISE CINEMÁTICA DE ROBÔS INDUSTRIAIS
17º Congresso de Iniciação Científica APLICAÇÃO DA ENGENHARIA BASEADA EM CONHECIMENTO NA ANÁLISE CINEMÁTICA DE ROBÔS INDUSTRIAIS Autor(es) CARLOS ALBERTO DE SOUZA BARROSO Orientador(es) KLAUS SCHÜTZER
Leia maisPSP: Personal Software Process. PSP- Personal Software Process. PSP: Personal Software Process. PSP: Personal Software Process
PSP- Personal Software Process Maria Cláudia F. P. Emer PSP: Personal Software Process z Já foram vistas ISO/IEC 9126 foco no produto ISO 9001 e CMM foco no processo de desenvolvimento z Critica a essas
Leia maisConceitos, Arquitetura e Design
capítulo 1 Conceitos, Arquitetura e Design 1.1 O que são os serviços de diretórios? Segundo a Wikipédia: Um serviço de diretório é um software que armazena e organiza informações sobre os recursos e os
Leia maisTarefas de Gerenciamento de Configuração
Tarefas de Gerenciamento de Configuração 1- Tarefas Preliminares 2- Identificação 3- Controle de Mudanças 4- Controle de Versão 5- Auditoria de Configuração 6- Relato de Situação 7- Controle de Interface
Leia maisVisão Geral da Norma ISO/IEC 12207
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Visão Geral da Norma ISO/IEC 12207 Engenharia de Software 2o. Semestre
Leia maisParadigmas de Software
Paradigmas de Software Objetivos Introdução aos paradigmas de software. Descrição de modelos genéricos e sua aplicabilidade. Descrição dos processos de requisitos, desenvolvimento, teste e evolução. Modelo
Leia maisS09. Manufatura Integrada por Computador. Computer Integrated Manufacturing - CIM
S09 Manufatura Integrada por Computador Computer Integrated Manufacturing - CIM Tecnologias de manufatura Projeto Controle Manuseio Gerenciamento Projeto auxiliado por computador Manufatura auxiliada por
Leia maisENGENHARIA DE REQUISITOS
ENGENHARIA DE REQUISITOS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Contextualização Estudo realizado pelo Standish Group em 1995, envolvendo 350 companhias e 8.000 projetos
Leia maisRequisitos de Ferramentas Especializadas de Gestão de Configuração de Software
Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software Ricardo Terra 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Campus da Pampulha 31.270-010
Leia maisModelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus
Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis
Leia mais