Integrando UML e Métodos Formais
|
|
- Kléber Alencar Castelo
- 8 Há anos
- Visualizações:
Transcrição
1 Universidade Federal de Pernambuco Graduação em Ciência da Computação Centro de Informática Proposta de Trabalho de Graduação Integrando UML e Métodos Formais Aluno: Orientador: Co-orientador: Rafael Magalhães Borges (rmb2@cin.ufpe.br) Alexandre Cabral Mota (acm@cin.ufpe.br) Augusto Cézar Alves Sampaio (acas@cin.ufpe.br) Recife, 1 de Junho de 2004.
2 1 Contexto A crise de software é, ainda hoje, o maior problema da Engenharia de Software. Diversos projetos são cancelados e outros tantos estouram custos e prazos. Poucos são aqueles concluídos com sucesso, sem erros ou atrasos. Este problema se agrava quando falamos dos sistemas considerados críticos: sistemas que envolvem elevadas somas de dinheiro ou vidas humanas. Um erro pode ser fatal, como o caso do Therac-25, que aplicava doses radioativas letais nos pacientes [18], ou caríssimo, como o do Ariane 5, cujas falhas de lançamento custaram milhões ao programa espacial europeu [15]. Alguns trabalhos [11, 4, 3] sugerem que as causas desta crise são a instabilidade dos requisitos e a complexidade inerente do software. Outros [13], mais filosóficos, comparam os desenvolvedores atuais aos artesãos pré-industriais: ambos produzem seus artefatos utilizando técnicas baseadas no empirismo, desconhecendo a ciência por trás dos seus ofícios. Inclusive, [7] vai além: sugere não só o embasamento, mas também a verificação formal dos programas. Vale ressaltar que todos concordam que produzir software de qualidade (cuja maior componente é a corretude) é essencial. Diversas balas de prata para essa crise foram propostas: ferramentas especializadas, orientação a objetos e inteligência artificial são exemplos disso [3]. Dentre elas, Métodos Formais merecem destaque. Estabelecer a matemática como alicerce do desenvolvimento de software dá rigor científico a diversos conceitos outrora informais; é agora possível verificar formalmente a corretude dos programas através de provas. Noções de refinamento passaram a ter uma importância muito grande: especificar um sistema utilizando estruturas matemáticas e abstraindo detalhes operacionais permite um maior entendimento do problema. A prova das propriedades dos sistemas passa a ser bastante intuitiva e relativamente fácil. Depois, a substituição dessa especificação por outras mais concretas (cujas relações com a original sejam demonstradas), com estruturas de dados cada vez mais computacionais e menos abstratas, garante as propriedades do modelo original [32]. Por fim, a aplicação de transformações (ou leis) matemáticas leva-nos à derivação de uma implementação que, por construção, está correta [20, 8]. Contudo, mesmo com casos de sucesso como o CICS [32], TCAS II [12] e muitos outros [1], Métodos Formais ainda não são utilizados em larga escala na indústria. Como destacam [6, 30], isso se deve à sua forte notação matemática e ao uso de ferramentas ineficientes e não-amigáveis. Porém, é importante frisar que nenhum método foi universalmente aceito até hoje. Para suprir essas deficiências e tornar Métodos Formais mais acessíveis, existem duas alternativas mais comuns: a simplificação da linguagem formal, 1
3 o que inclui até a adição elementos gráficos [14], ou a utilização de uma outra linguagem, geralmente informal, mapeando-a para uma formal [21, 26, 33]. Apesar dessa primeira alternativa possuir seus méritos, acreditamos que a segunda é mais promissora. Podemos assim utilizar, como intermediárias, as linguagens com as quais o desenvolvedor já está habituado e mapeá-las numa linguagem formal mais poderosa, concebida sem maiores restrições conceituais (embora sejam necessárias algumas para a utilização prática). Como linguagem intermediária, UML [22, 24] aparece como a opção mais importante. Ela utiliza elementos gráficos para representar as diversas entidades assim como seus relacionamentos e graças a essa simplicidade, aliada à facilidade de entendimento, tornou-se o padrão do mercado. Porém, é uma linguagem informal (portanto ambígua) e insuficiente para representar até propriedades mais simples [23]. Já para o papel de linguagem formal, OhCircus [5] é uma excelente escolha. OhCircus integra conceitos bem estabelecidos na comunidade formal: a linguagem baseada em modelos Z [31], a álgebra de processos CSP [27] e o cálculo de refinamentos [20], além dos conceitos de orientação a objetos, provendo uma linguagem unificada para classes e processos. Vale destacar que algumas idéias foram obtidas a partir de UML-RT 1 [19, 29], o que a torna ainda mais apropriada para esse mapeamento. Atualmente, essa integração entre linguagens de mercado e formais é uma área de pesquisa bastante ativa, permitindo que as práticas da Engenharia de Software sejam provadas formalmente, enquanto os resultados dos Métodos Formais são aplicados na indústria. Em particular, hidden formal methods vai além, utilizando na prática os resultados estabelecidos formalmente, mas sem que o desenvolvedor perceba o uso de Métodos Formais. 2 Objetivos O objetivo deste trabalho é capturar os principais elementos que constituem os diagramas de classes anotados de UML e mapeá-los em especificações Oh- Circus. Este é um tópico de pesquisa bastante ativo [2, 16, 17, 25], mas nossa abordagem difere das demais porque utiliza uma linguagem projetada para acomodar várias construções de UML(-RT) e procura preservar a estrutura do diagrama de classes. Vale destacar que a semântica de OhCircus ainda está incompleta; porém, como as vantagens de utilizá-la superam as desvantagens, esperamos que esse trabalho seja uma contribuição para a evolução da própria linguagem. 1 UML-RT é uma extensão de UML que contempla concorrência. 2
4 Como discutido no contexto, UML é por si só insuficiente para capturar todas as propriedades relevantes do sistema [23], sendo também necessárias anotações (invariantes, pré- e pós-condições etc). Por outro lado, a linguagem proposta pela OMG para suprir este papel, OCL [23], é limitada: apenas especifica restrições (semelhantes a asserções) e ainda não possui semântica formal bem definida. Neste trabalho, consideraremos algumas características e construções dessa linguagem, mas OhCircus será utilizada nas anotações. Além de tratar dos elementos individuais do diagrama de classes (as próprias classes), também preservamos toda a sua estrutura, como relacionamentos, propriedades globais e aspectos dinâmicos do sistema (via system history [10]). Isto é realizado através de uma (meta-)classe, sintaticamente equivalente às demais, que concentra tal estrutura (classe-modelo). A principal motivação para isso é explorar refinamento em UML [28]. Por fim, diversos trabalhos [2, 9, 17], inclusive [24], tomam como verdade a noção de equivalência entre associações e atributos. Utilizando nossa abordagem, propomos demonstrar que as associações representam uma visão abstrata do diagrama de classes, enquanto a interpretação delas como atributos é um dos refinamentos possíveis. O objetivo principal é, além do próprio resultado, dar uma intuição de (e possivelmente consolidar) o mapeamento e a noção de classe-modelo. É importante ressaltar que este trabalho é apenas um passo inicial em direção ao mapeamento completo de UML-RT para OhCircus. Várias pesquisas podem ser exploradas a partir desta, como a construção do mapeamento inverso (a partir da preservação das características) e futuras extensões, contemplando, por exemplo, os aspectos dinâmicos (o uso de uma classe-modelo) e OCL. 3 Cronograma Mês Atividade Junho Julho Agosto Investigar classes-modelo Preparar o mapeamento Abordar o refinamento Elaborar o relatório Elaborar a apresentação Tabela 1: Cronograma 3
5 Referências [1] J. Bowen and M. Hinchey. Applications of Formal Methods. Prentice Hall PTR, [2] R. Breu, U. Hinkel, C. Hofmann, C. Klein, B. Paech, B. Rumpe, and V. Thurner. Towards a Formalization of the Unified Modeling Language. In Proceedings of ECOOP 97. Springer Verlag, LNCS, [3] F. Brooks, Jr. No Silver Bullet: Essence and Accidents of Software Engineering. Computer Magazine, 20(4):10 19, [4] F. Brooks, Jr. The Mythical Man-Month (Anniversary ed.). Addison- Wesley Longman Publishing Co., Inc., [5] A. Cavalcanti, A. Sampaio, and J. Woodcock. A Unified Language of Classes and Processes. In St Eve: State-Oriented vs. Event-Oriented Thinking in Requirements Analysis, Formal Specification and Software Engineering, Satellite Workshop at FM 03, unknown [6] E. Clarke and J. Wing. Formal Methods: State of the Art and Future Directions. ACM Computing Surveys, [7] E. Dijkstra. The Humble Programmer. Communications of the ACM, 15(10): , [8] E. Dijkstra. A Discipline of Programming. Prentice Hall PTR, [9] A. Evans. Reasoning with UML Class Diagrams. In 2nd IEEE Workshop on Industrial Strength Formal Specification Techniques. IEEE, [10] R. Gheyi and P. Borba. Refactoring Alloy Specifications. In WMF 2003: 6th Workshop on Formal Methods, Brazil, pages , [11] W. Gibbs. Software s Chronic Crisis. Scientific American (International ed.), 271(3):86 95, [12] M. Heimdahl. Experiences and lessons from the analysis of tcas ii. SIG- SOFT Softw. Eng. Notes, 21(3):79 83, [13] C. Hoare. Programming: Sorcery or Science? IEEE Software, 1(2):5 12, 15 16, April [14] D. Jackson. Micromodels of Software: Lightweight Modelling and Analysis with Alloy. Technical report, Software Design Group, MIT Lab for Computer Science,
6 [15] J.-M. Jézéquel and B. Meyer. Design by Contract: The Lessons of Ariane. IEEE Computer, 30(2): , January [16] S. Kim and D. Carrington. A Formal Mapping between UMLModels and Object-Z Specifications. Lecture Notes in Computer Science, 1878:2 21, [17] K. Lano and J. Bicarregui. UML Refinement and Abstraction Transformations. ROOM 2 Workshop, Bradford University, [18] N. Leveson and C. Turner. An Investigation of the Therac-25 Accidents. IEEE Computer, 26(7):18 41, June [19] A. Lyons. UML for Real-Time Overview. Whitepaper, ObjecTime Limited, April [20] C. Morgan. Programming from Specifications (2nd ed.). Prentice Hall International (UK) Ltd., [21] P. Moura, R. Borges, and A. Mota. Experimenting Formal Methods through UML. Submitted to WMF 2003, July [22] OMG. UML 2 Infrastructure Final Adopted Specifcation. Whitepaper, Object Management Group, September [23] OMG. UML 2 OCL Final Adopted Specification. Whitepaper, Object Management Group, October [24] OMG. UML 2 Superstructure Final Adopted specification. Whitepaper, Object Management Group, August [25] R. Paige. Integrating a program design calculus and a subset of UML. The Computer Journal, 42(2), [26] D. Roe, K. Broda, and A. Russo. Mapping UML Models incorporating OCL Constraints into Object-Z. Technical Report 2003/9, Imperial College London, [27] A. Roscoe, C. Hoare, and R. Bird. The Theory and Practice of Concurrency. Prentice Hall PTR, [28] A. Sampaio, A. Mota, and R. Ramos. Class and Capsule Refinement for UML-RT. In WMF 2003: 6th Workshop on Formal Methods, Brazil, pages 16 34, Extended version to appear in Electronic Notes in Theoretical Computer Science, Elsevier,
7 [29] B. Selic and J. Rumbaugh. Using UML for Modeling Complex Real- Time Systems. Whitepaper, Rational Software Corp., March [30] I. Sommerville. Software Engineering. Addison-Wesley, [31] M. Spivey. The Z Notation. Prentice-Hall, [32] J. Woodcock and J. Davies. Using Z: Specification, Refinement, and Proof. Prentice Hall, [33] P. Zeppo. From UML to B Specifications. Master s thesis, Dept. of Computer Science, King s College London,
8 Datas e Assinaturas 1 de Junho de 2004 Alexandre Cabral Mota (Orientador) Augusto Cézar Alves Sampaio (Co-orientador) Rafael Magalhães Borges (Proponente) 7
Utilização da modelagem UML em um sistema de gerenciamento de uma franquia do setor de alimentação
Utilização da modelagem UML em um sistema de gerenciamento de uma franquia do setor de alimentação Use of UML modeling in a management system for a food franchising Richard B. N. Vital, Tatiane M. Vital.
Leia maisUML 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 maisTransformação de um Modelo de Empresa em Requisitos de Software
Transformação de um Modelo de Empresa em Requisitos de Software Fábio Levy Siqueira 1 and Paulo Sérgio Muniz Silva 2 1 Programa de Educação Continuada da Poli-USP, São Paulo, Brazil 2 Escola Politécnica
Leia mais2 Engenharia de Software
20 2 Engenharia de Software 2.1 Design de Sistemas Orientados a Objetos Os Sistemas Orientados a Objetos não são mais novidade hoje em dia já estando há muitos anos no mercado. A orientação a objetos permite
Leia maisPROVA DISCURSIVA (P )
PROVA DISCURSIVA (P ) 2 Nesta prova que vale dez pontos, faça o que se pede, usando os espaços indicados no presente caderno para rascunho. Em seguida, transcreva os textos para as folhas de TEXTOS DEFINITIVOS
Leia maisREQUISITOS 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 maisAula 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 maisAutoria: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 maisUm Framework para definição de processos de testes de software que atenda ao nível 3 do TMM-e
JEANE MENDES DA SILVA SANTOS Um Framework para definição de processos de testes de software que atenda ao nível 3 do TMM-e Plano de Trabalho de Conclusão de Curso apresentado à Universidade Federal de
Leia maisModelagem 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 maisIntroduçã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 maisCiê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 maisDesenvolvimento 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 maisEngenharia 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 mais3.1 Definições Uma classe é a descrição de um tipo de objeto.
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 Classes Autoria:Aristófanes Corrêa Silva Adaptação:
Leia maisProcessos de Software
Processos de Software Prof. Márcio Lopes Cornélio Slides originais elaborados por Ian Sommerville O autor permite o uso e a modificação dos slides para fins didáticos O processo de Um conjunto estruturado
Leia maisFerramenta para Geração de Código a partir da Especialização do Diagrama de Classes
Ferramenta para Geração de Código a partir da Especialização do Diagrama de Classes Alexandro Deschamps (Ápice) alexandro@apicesoft.com Everaldo Artur Grahl (FURB/DSC) egrahl@furb.br Resumo. Uma das grandes
Leia maisProfessor: Curso: Disciplina: Aula 4-5-6
Professor: Curso: Disciplina: Aula 4-5-6 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Engenharia de Requisitos 03º semestre 1 Engenharia de Requisitos Prof. Marcos
Leia maissão capturados de forma sistemática e intuitiva por meio de casos de uso.
Prevenção de defeitos em Requisitos de Software: Uma caracterização do processo de melhoria Daniela C. C. Peixoto (Synergia, DCC/UFMG), Clarindo Isaías P. S. Pádua (Synergia, DCC/UFMG), Eveline A. Veloso
Leia maisProjeto de Desenvolvimento de Software. Apresentação (Ementa) e Introdução
Projeto de Desenvolvimento de Software Apresentação (Ementa) e Introdução Msc. Eliezio Soares Graduação em Análise e Desenvolvimento de Sistemas IFRN Mestrado em Sistemas e Computação - DIMAp / UFRN Experiência
Leia maisADMINISTRAÇÃO I. Família Pai, mãe, filhos. Criar condições para a perpetuação da espécie
1 INTRODUÇÃO 1.1 ORGANIZAÇÃO E PROCESSOS A administração está diretamente ligada às organizações e aos processos existentes nas mesmas. Portanto, para a melhor compreensão da Administração e sua importância
Leia maisUm Framework para Desenvolvimento de Aplicações Móveis Orientadas a Serviços
UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA Um Framework para Desenvolvimento de Aplicações Móveis Orientadas a Serviços PROPOSTA DE TRABALHO DE GRADUAÇÃO
Leia maisESTENDENDO 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 maisEspecificação Formal. Especificação no Processo de Software
Especificação Formal Técnicas para a especificação não ambígua de software Objectivos Explicar o lugar da especificação formal de software no processo de software Explicar quando a utilização de especificação
Leia maisSISTEMAS DE INFORMAÇÃO GERENCIAIS
SISTEMAS DE INFORMAÇÃO GERENCIAIS Aluno: Luiza Cavalcanti Marques Orientador: Silvio Hamacher Introdução A modelagem e a utilização de bancos de dados em atividades gerenciais têm sofrido um aumento significativo
Leia maisUma Abordagem para Tratamento de Regras de Negócio nas Fases Iniciais do Desenvolvimento
Uma Abordagem para Tratamento de Regras de Negócio nas Fases Iniciais do Desenvolvimento Marco Antonio De Grandi, Valter Vieira de Camargo, Edmundo Sérgio Spoto Centro Universitário Eurípides de Marília
Leia maisCapí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 maisAnálise e Projeto Orientados a Objeto
Análise e Projeto Orientados a Objeto Objetivos Comparar e contrastar Análise e Projeto Definir O que vamos fazer na disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente
Leia maisCURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 4º PERÍODO 7º MÓDULO AVALIAÇÃO A3 DATA 15/10/2009 ENGENHARIA DE SOFTWARE 2009/2 GABARITO COMENTADO QUESTÃO 1: Analise as afirmações
Leia maisbuild 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 maisGestão de Projectos de Software - 1
Gestão de Projectos de Software Licenciaturas de EI / IG 2012/2013-4º semestre msantos@ispgaya.pt http://paginas.ispgaya.pt/~msantos Gestão de Projectos de Software - 1 Objectivos da Disciplina de Gestão
Leia maisOntologias na Computação
Ontologias na Computação Claudio Akio Namikata, Henrique Sarmento, Marcio Valença Ramos cjnamikata90@hotmail.com, rique-182@hotmail.com, maxtr3m3@hotmail.com Resumo: Este trabalho tem como objetivo apresentar
Leia mais18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB
18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB Autor(es) HARLEI MIGUEL DE ARRUDA LEITE Orientador(es) PLÍNIO ROBERTO SOUZA VILELA Apoio Financeiro PIBIC/CNPQ
Leia maisFicha da Unidade Curricular
ESCOLA SUPERIOR DE TECNOLOGIA E GESTÃO DE FELGUEIRAS CURSO Licenciatura em Engenharia Informática U.C. ENGENHARIA DE SOFTWARE I Ficha da Unidade Curricular Horas presenciais / Ano 56 Ano Lectivo 2010 /
Leia maisMetodologia 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 maisIntrodução ao Paradigma Orientado a Objetos. Principais conceitos
Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura
Leia maisUNIVERSIDADE 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 maisUnidade 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 maisOrientação a Objetos I
Serviço Nacional de Aprendizagem Comercial do Rio Grande do Sul Informação e Comunicação Habilitação Técnica de Nível Médio Técnico em Informática Orientação a Objetos I UML: Introdução e Casos de Uso
Leia maisProgramação orientada a objetos usando a linguagem C++ CDTN Centro de Desenvolvimento de Tecnologia Nuclear
Programação orientada a objetos usando a linguagem C++ CDTN Centro de Desenvolvimento de Tecnologia Nuclear Belo Horizonte, Setembro de 2000 1- Objetivo: Ministrar o curso de Treinamento em Programação
Leia maisModelagem de Sistemas
Capítulo 5 Modelagem de Sistemas slide 1 2011 Pearson Pren0ce Hall. Todos os direitos reservados. 1 Tópicos Apresentados Modelos de contexto Modelos de interação Modelos estruturais Modelos comportamentais
Leia maisIntroduçã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 maisGerenciamento de Requisitos
Gerenciamento de Requisitos Jaelson Castro 2013 1 Gerenciamento de requisitos Relaciona-se ao processo de gerenciar a mudança dos requisitos de um sistema As principais preocupações do gerenciamento de
Leia maisTable 1. Dados do trabalho
Título: Desenvolvimento de geradores de aplicação configuráveis por linguagens de padrões Aluno: Edison Kicho Shimabukuro Junior Orientador: Prof. Dr. Paulo Cesar Masiero Co-Orientadora: Prof a. Dr. Rosana
Leia maisnatureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues
Modelo De Desenvolvimento De Software É uma representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas e interrelacionadas
Leia maisLevantamento, Análise e Gestão Requisitos. Aula 06
Levantamento, Análise e Gestão Requisitos Aula 06 Agenda Técnicas de Levantamento de Requisitos: Entrevista Workshop, Brainstorming, Storyboarding e Roleplaying Prototipação JAD Joint Application Design
Leia maisMapa Mental de Engenharia de Software - Diagramas UML
Mapa Mental Engenharia Software - Diagramas UML Mapa Mental Engenharia Software Diagramas UML Mapa Mental Engenharia Software Diagramas UML Mapa Mental UML - Diagramas, Fases e Detalhes Resolvi juntar
Leia maisLINGUAGEM DE ESPECIFICAÇÃO E DESCRIÇÃO (SDL) APLICADA AO PROCESSO DE VERIFICAÇÃO E VALIDAÇÃO DE SISTEMAS REATIVOS
LINGUAGEM DE ESPECIFICAÇÃO E DESCRIÇÃO (SDL) APLICADA AO PROCESSO DE VERIFICAÇÃO E VALIDAÇÃO DE SISTEMAS REATIVOS Fabiana Fraga Ferreira Bacharelanda em Sistemas de Informação Bolsista de Iniciação Científica
Leia maisEstimativa & Planejamento de Projeto de Software.
Estimativa & Planejamento de. Capítulo I Sobre a Disciplina de Estimativas & Planejamento de Prof. M. Sc. Índice dos Capítulos. 2 1 Sobre a disciplina estimativas e planejamento de projetos. 2 Conceitos
Leia maisA abordagem da Engenharia Semiótica para o desenvolvimento de software centrado no usuário
A abordagem da Engenharia Semiótica para o desenvolvimento de software centrado no usuário Jair Cavalcanti Leite Departamento de Informática e Matemática Aplicada Universidade Federal do Rio Grande do
Leia maisTeste de Software: Um Breve Estudo do Importante Processo no Desenvolvimento de Softwares
Teste de Software: Um Breve Estudo do Importante Processo no Desenvolvimento de Softwares André Assis Lôbo de Oliveira Francisco Guerra Fernandes Júnior Faculdades Alves Faria, 74445190, Brasil andrelobin@hotmail.com,
Leia maisNotas 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 maisEngenharia de Software
Engenharia de Software Slide 05 Modelos de Processos Maurício Archanjo Nunes Coelho mauricio.coelho@ifsudestemg.edu.br Instituto Federal Análise de Sistemas Por que surgiu a Engenharia de Software? Resposta
Leia maisUMA PROPOSTA DE MODELO DE PROCESSO PARA DESENVOLVIMENTO DE TECNOLOGIAS EDUCACIONAIS
UMA PROPOSTA DE MODELO DE PROCESSO PARA DESENVOLVIMENTO DE TECNOLOGIAS EDUCACIONAIS Rodrigo de Assis Ramos 1 NIPETI 2 - Instituto Federal de Mato Grosso do Sul (IFMS), Campus Nova Andradina rodrigoramos_dpvat@hotmail.com
Leia maisIntrodução ao Processo Unificado (PU)
Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX Introdução ao Processo Unificado (PU) Prof. Fernando Maia da Mota Slides gentilmente cedidos por Profa. Dra. Maria Istela Cagnin
Leia maisNo capítulo 3 estão concentrados todos os assuntos relacionados à metodologia utilizada nesse trabalho de pesquisa. Ou seja, tipo de pesquisa, método
14 1 Introdução Este estudo visa identificar os atributos e seus respectivos níveis mais importantes na definição da contratação de serviços de consultoria estratégica pelas operadoras de telecomunicações.
Leia maisOuvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos
Ouvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos Antonio Mendes da Silva Filho * The most important thing in communication is to hear what isn't being said. Peter Drucker
Leia maisAvaliando modelos arquiteturais através de um checklist baseado em atributos de qualidade
Avaliando modelos arquiteturais através de um checklist baseado em atributos de qualidade Aluno: Rafael Ferreira Barcelos barcelos@cos.ufrj.br Orientador: Guilherme Horta Travassos ght@cos.ufrj.br Nível:
Leia maisUML - 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 maisClassificação: Determinístico
Prof. Lorí Viali, Dr. viali@pucrs.br http://www.pucrs.br/famat/viali/ Da mesma forma que sistemas os modelos de simulação podem ser classificados de várias formas. O mais usual é classificar os modelos
Leia maisATENAS: Um Sistema Gerenciador de Regras de Negócio
1. Introdução ATENAS: Um Sistema Gerenciador de Regras de Negócio Geraldo Zimbrão da Silva (IM/UFRJ) Victor Teixeira de Almeida (COPPE/UFRJ) Jano Moreira de Souza (COPPE/UFRJ) Francisco Gonçalves Pereira
Leia mais1 Introdução. Componentes Usuários. Provedor de Serviços. Figura 1.1 Ambiente de oferecimento de serviços
1 Introdução Nos últimos anos, houve um aumento notável de demanda por plataformas com suporte a diferentes mídias. Aplicações manipulando simultaneamente texto, vídeo e áudio são cada vez mais comuns.
Leia maisOdyssey-MDA: Uma Ferramenta para Transformações de Modelos UML
Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML Natanael E. N. Maia, Ana Paula B. Blois, Cláudia M. Werner COPPE/UFRJ Programa de Engenharia de Sistemas e Computação Caixa Postal 68.511
Leia maisCurso de Especialização em Tecnologia da Informação. Engenharia de Software
Universidade Federal de Pernambuco Departamento de Informática Curso de Especialização em Tecnologia da Informação Engenharia de Software Questionário para Discussão e Reflexão Aluna: Danielle Novaes de
Leia maisEspecificação de Testes Funcionais usando Redes de Petri a Objetos para Softwares Orientados a Objetos
Especificação de Testes Funcionais usando Redes de Petri a Objetos para Softwares Orientados a Objetos Autor(a): Liliane do Nascimento Vale 1 Orientador: Stéphane Júlia 1 1 Universidade Federal de Uberlândia
Leia maisAmbientes Computacionais para o Desenvolvimento e Aplicação de Sistemas de Documentação Ativa
Plano de Trabalho Ambientes Computacionais para o Desenvolvimento e Aplicação de Sistemas de Documentação Ativa Professores Ana Cristina Garcia Bicharra 1 e Flávio Miguel Varejão 2 1 Laboratório de Documentação
Leia maisModelando com UML Unified Modeling Language
Modelando com UML Unified Modeling Language AHMED ALI ABDALLA ESMIN 1 1 ILES ULBRA Instituto de Informática - Universidade Luterana do Brasil de Informática Cx. Postal 271 CEP 78.9860-000 Ji-Paraná (RO)
Leia maisIntrodução à. Engenharia de Software. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.
"Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE." Engenharia de Software Introdução à Engenharia de Software Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha
Leia maisVisão Geral Parte 1. O que é engenharia de software?
Visão Geral Parte 1 Jair C Leite DIMAp/UFRN O que é engenharia de software? É uma disciplina da engenharia dedicada a todos os aspectos da produção de software. Engenheiros de software devem adotar uma
Leia mais18º Congresso de Iniciação Científica UM ESTUDO EXPLORATÓRIO SOBRE TÉCNICAS DE MODELAGEM DE REQUISITOS DE SOFTWARE PARA SISTEMA EMBARCADO
18º Congresso de Iniciação Científica UM ESTUDO EXPLORATÓRIO SOBRE TÉCNICAS DE MODELAGEM DE REQUISITOS DE SOFTWARE PARA SISTEMA EMBARCADO Autor(es) MARINA CALÇA Orientador(es) LUIZ EDUARDO GALVÃO MARTINS
Leia maisO ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO
O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO Prof. Leugim Corteze Romio Universidade Regional Integrada URI Campus Santiago-RS leugimcr@urisantiago.br Prof.
Leia mais5 Considerações finais
5 Considerações finais 5.1. Conclusões A presente dissertação teve o objetivo principal de investigar a visão dos alunos que se formam em Administração sobre RSC e o seu ensino. Para alcançar esse objetivo,
Leia maisAná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 maisEngenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti.
Engenharia de Software Engenharia de Requisitos Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti.br 1 Contextualizando... Fonte: [1] O Processo de ER pode ser
Leia maisComunicado. Técnico. Uso da Linguagem de Especificação SDL como Alternativa ao Diagrama de Estados Proposto pela Linguagem UML
Comunicado Técnico 55 Dezembro, 2003 Campinas, SP ISSN 1677-8464 Uso da Linguagem de Especificação SDL como Alternativa ao Diagrama de Estados Proposto pela Linguagem UML Carla Geovana do Nascimento Macário¹
Leia maisCurso Superior de Tecnologia em Banco de Dados e Sistemas para Internet Disciplina: Projeto Integrador III Prof.: Fernando Hadad Zaidan
Faculdade INED Curso Superior de Tecnologia em Banco de Dados e Sistemas para Internet Disciplina: Projeto Integrador III Prof.: Fernando Hadad Zaidan Ago-2008 1 Gestão de requisitos 2 Bibliografia: PAULA
Leia maisProgramação Extrema. Luis Fernando Machado. Engenharia de Software
Programação Extrema Luis Fernando Machado Engenharia de Software Desenvolvimento Ágil Programação Extrema, ou Extreme Programming (XP) é um modelo de desenvolvimento ágil. Desenvolvimento ágil foi criado
Leia maisEngenharia de Software
Engenharia de Software Conceitos e Metodologias para Desenvolvimento de Software Cascata, Prototipação, Espiral e RUP Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.br
Leia maisREPRESENTAÇÃO DE REQUISITOS VARIÁVEIS COM UML, SEGUINDO O MÉTODO ICONIX
REPRESENTAÇÃO DE REQUISITOS VARIÁVEIS COM UML, SEGUINDO O MÉTODO ICONIX Murilo Augusto Tosatti (ICV-Unicentro), Marcos Antonio Quináia (Orientador), e-mail: maquinaia@gmail.com. Universidade Estadual do
Leia maisDiagramas de Casos de Uso
UML Unified Modeling Language Diagramas de Casos de Uso José Correia, Março 2006 (http://paginas.ispgaya.pt/~jcorreia/) Objectivos O objectivo de um diagrama de casos de uso de um sistema é mostrar para
Leia maisEspecialização em Engenharia de Software e Banco de Dados
Especialização em Engenharia de Software e Banco de Dados Disciplina: Engenharia de Software Tópico: Introdução Prof. Rodolfo Miranda de Barros rodolfo@uel.br Grandes verdades sobre o desenvolvimento e
Leia maisCinco restrições de desenvolvimento/teste que afetam a velocidade, o custo e a qualidade dos seus aplicativos
Série de ebooks sobre desenvolvimento em paralelo ágil: Capítulo 2 Cinco restrições de desenvolvimento/teste que afetam a velocidade, o custo e a qualidade dos seus aplicativos Novas pressões, mais restrições
Leia maisControle da produção baseado em códigos de barras
Controle da produção baseado em códigos de barras Fábio Favaretto (PUCPR) fabiofav@ccet.pucpr.br Alfredo Iarozinski Neto (PUCPR) alfredo@ccet.pucpr.br Resumo O controle da produção é um processo que tem
Leia maisRECONHECIMENTO DE AVES DE NOMES ONOMATOPÉICOS
RECONHECIMENTO DE AVES DE NOMES ONOMATOPÉICOS Célio Seixo de BRITO Junior, Paulo César Miranda MACHADO Escola de Engenharia Elétrica e de Computação, UFG, 74001-970, Goiânia, GO Celiojunior01@gmail.com,
Leia maisUSO DOS CONCEITOS DE INTERAÇÃO HUMANO-COMPUTADOR NO DESENVOLVIMENTO WEB PARA EDUCAÇÃO A DISTÂNCIA
Discutindo a visibilidade da EaD Pública no Brasil USO DOS CONCEITOS DE INTERAÇÃO HUMANO-COMPUTADOR NO DESENVOLVIMENTO WEB PARA EDUCAÇÃO A DISTÂNCIA Priscilla Márcia Scarpelli Bastos 1, Diogo Marcos de
Leia maisUML 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 maisAnálise comparativa sobre bases de dados para armazenamento e consulta de dados não estruturados no formato JSON.
UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA Análise comparativa sobre bases de dados para armazenamento e consulta de dados não estruturados no formato JSON. Proposta de Trabalho de Graduação
Leia maisPROCESSOS DE CRIAÇÃO DE APLICATIVOS
PROCESSOS DE CRIAÇÃO DE APLICATIVOS Joaldo de Carvalho Wesley Oliveira Irlei Rodrigo Ferraciolli da Silva Rodrigo Clemente Thom de Souza INTRODUÇÃO O mundo está dominado pelos dispositivos móveis. A cada
Leia maisCapítulo 7: Engenharia de Software
Capítulo 7: Engenharia de Software Ciência da computação: Uma visão abrangente 11a Edição by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Capítulo 7: Engenharia de software 7.1 A disciplina
Leia maisProjeto de Desenvolvimento de Software
Projeto de Desenvolvimento de Software Processo de Desenvolvimento de Software Msc. Eliezio Soares eliezio.soares@ifrn.edu.br http://docente.ifrn.edu.br/elieziosoares Objetivos Conceituar genericamente
Leia maisPontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação
Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação Dr. Ítalo S. Vega ES-II/III: Engenharia de Software: Processos Projeto 1 c 2004, ISVega Ferramenta CASE: LiMAOO-PUC CONTEÚDO
Leia maisMETODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS
METODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS COORDENAÇÃO DE SISTEMAS (CODES) JUNHO/2011 Rua do Rouxinol, N 115 / Salvador Bahia CEP: 41.720-052 Telefone: (71) 3186-0001. Email: codes@ifbaiano.edu.br Site:
Leia maisPMBoK Comentários das Provas TRE-PR 2009
PMBoK Comentários das Provas TRE-PR 2009 Comentário geral: As provas apresentaram grau de dificuldade médio. Não houve uma preocupação da banca em aprofundar os conceitos ou dificultar a interpretação
Leia maisCASTILHO, Grazielle (Acadêmica); Curso de graduação da Faculdade de Educação Física da Universidade Federal de Goiás (FEF/UFG).
ANÁLISE DAS CONCEPÇÕES DE EDUCAÇÃO INFANTIL E EDUCAÇÃO FÍSICA PRESENTES EM UMA INSTITUIÇÃO FILÁNTROPICA E MUNICIPAL DE EDUCAÇÃO INFANTIL DA CIDADE DE GOIÂNIA/GO CASTILHO, Grazielle (Acadêmica); Curso de
Leia maisIntrodução a UML. Agenda. Definição Histórico Contribuições Diagramas Observações. Cleidson de Souza (Rodrigo Reis)
Agenda Introdução a Cleidson de Souza (Rodrigo Reis) Definição Contribuições Diagramas Observações Definição A (Unified Modeling Language) é uma notação para descrição de sistemas orientados: The Unified
Leia mais3 Qualidade de Software
3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo
Leia maisUnidade I Conceitos BásicosB. Conceitos BásicosB
à Engenharia de Software Unidade I Conceitos BásicosB Pedro de Alcântara dos Santos Neto pasn@ufpi.edu.br 1961 a 1963 Surgimento de novos Hardwares 1963-1968 Crise do Software! Incapacidade de se utilizar
Leia maisUniversidade Federal de Santa Catarina Departamento de Informática e Estatística Bacharelado em Sistemas de Informação
Universidade Federal de Santa Catarina Departamento de Informática e Estatística Bacharelado em Sistemas de Informação Rafael Strecker Coelho de Souza ANÁLISE E COMPARATIVO DE FERRAMENTAS CMS COMPATÍVEIS
Leia mais1. O Contexto do SBTVD
CT 020/06 Rio de Janeiro, 27 de janeiro de 2006 Excelentíssimo Senhor Ministro Hélio Costa MD Ministro de Estado das Comunicações Referência: Considerações sobre o Sistema Brasileiro de Televisão Digital
Leia mais