Capítulo 6. Conclusão 189
|
|
|
- Luís Palhares Damásio
- 8 Há anos
- Visualizações:
Transcrição
1 6 Conclusão Trabalhando colaborativamente, pelo menos potencialmente, pode-se produzir melhores resultados do que se os membros do grupo atuassem individualmente (Fuks et al., 2002). Groupware é um tipo de software que oferece suporte à interação entre indivíduos possibilitando o trabalho colaborativo. Learningware é um tipo de groupware usado no aprendizado colaborativo. Um groupware envolve aspectos multidisciplinares em sua construção e é difícil de aplicar e testar, sendo especialmente vulnerável a falhas (Gerosa et al., 2004). Como cada grupo tem suas próprias necessidades que se modificam ao longo do tempo, é importante que o groupware seja desenvolvido de forma iterativa e que a experiência do seu uso seja usada para guiar seu desenvolvimento, criando novos serviços ou melhorando as funcionalidades dos serviços existentes. Através de uma arquitetura componentizada, o groupware pode ser adaptado plugando e desplugando componentes, compondo uma aplicação que melhor satisfaça um grupo de trabalho. O AulaNet é um learningware desenvolvido pelo Laboratório de Engenharia de Software (LES) da Pontifícia Universidade Católica do Rio de Janeiro (PUC- Rio) desde 1997 e desde o lançamento da versão 2.0 a sua arquitetura nunca sofreu reengenharia. Alunos de graduação, mestrado e doutorado desenvolvem suas monografias, dissertações e teses usando o AulaNet para realizar suas pesquisas. O AulaNet é usado no curso Engenharia de Groupware, onde atua como repositório de informações, e no curso Tecnologias de Informação Aplicada A Educação (TIAE), onde é usado integralmente a distância. O AulaNet é distribuído pela EduWeb, que também realiza customizações para atender as demandas de seus clientes. Atualmente o AulaNet é usado em diversas universidades e empresas no mundo inteiro. Com o passar do tempo o AulaNet acumulou código legado que não segue as principais boas práticas e tecnologias conhecidas atualmente. Como conseqüência, as equipes do LES e da EduWeb vêm enfrentando dificuldades para desenvolver novos serviços e manter os
2 Capítulo 6. Conclusão 189 existentes, sendo apontadas causas como a baixa modularidade e o uso de um paradigma funcional (Pimentel et al., 2005). Para solucionar estas questões, iniciou-se o desenvolvimento de uma nova versão, o AulaNet 3.0. Gerosa (2006) em sua pesquisa de doutorado na PUC-Rio concebeu uma arquitetura baseada em componentes para o AulaNet 3.0. Esta arquitetura possui dois níveis de componentização: o de serviços e o dos componentes 3C. Os serviços, como a Conferência e o Debate são plugados e desplugados em um framework de componentes, o Groupware Component Framework, compondo um groupware especifico que atenda às necessidades de um grupo de trabalho. Os serviços por sua vez são compostos por componentes 3C, que são reusados na construção de diversos serviços. Ao desenvolver componentes, o desenvolvedor se depara com inúmeros desafios. Além de entender do seu domínio de conhecimento ele deve lidar com questões como persistências de dados, controle de transações, segurança e muitas outras. O desenvolvimento de groupware já é difícil por si só devido a seu caráter multidisciplinar e a heterogeneidade dos diversos grupos de trabalho e não deveria ser complicado por questões de baixo nível. Frameworks de infra-estrutura de sistemas simplificam o desenvolvimento de sistemas de infra-estrutura portáveis e eficientes (Fayad et al., 1999b). Estes frameworks possibilitam uma visão mais alto nível destas questões. Nesta dissertação, foi visto como estes frameworks oferecem serviços que simplificam o desenvolvimento de groupwares. Tomando uma abordagem em camadas, foram vistos frameworks usados na camada de negócios e frameworks usados na camada de apresentação. Ao buscar por frameworks para lidar com determinada questão de infraestrutura muitas vezes o arquiteto de software se depara com diversos frameworks similares que se propõe a realizar a mesma coisa. A leitura da documentação do fabricante pode ajudar na escolha, mas muitas vezes as informações fornecidas pelo fabricante são subjetivas. Realizando uma análise técnica, possivelmente implementando uma prova de conceito, o arquiteto obtém indícios sobre qual framework atende melhor a suas necessidades. Entretanto nem sempre a implementação da prova de conceito é possível devido à limitação natural de tempo e recursos que todo projeto tem.
3 Capítulo 6. Conclusão 190 Além de identificar se o framework atende às necessidades técnicas do projeto, há outros fatores importantes que devem ser considerados. É importante saber se há documentação disponível, se há suporte disponível, se há ferramentas compatíveis com o framework, se o framework está sendo usado por outras instituições e se há profissionais aptos a trabalhar com o framework. Estas questões não-técnicas usualmente são tão importantes quanto as questões técnicas, principalmente no caso do AulaNet devido à rotatividade de desenvolvedores no LES e a integração com a equipe da EduWeb. Esta dissertação apresentou uma forma de comparar estes fatores. Na camada de negócios, as principais questões de infra-estrutura resolvidas por frameworks são: persistência de dados, gerenciamento de transações, gerenciamento de segurança e exposição de serviços remotamente. Estas questões são tratadas no framework de componentes Enterprise Java Beans (EJB) e, por isso, ele foi avaliado como opção. Após a análise técnica do EJB chegou-se a conclusão que ele apresentava inúmeras desvantagens. É preciso manter uma grande quantidade de arquivos para realizar manutenção em um componente EJB. Componentes EJB dependem de servidores de aplicação que possuam containeres EJB que geralmente são mais caros e complexos. Além disso, o modelo EJB resulta em componentes altamente intrusivos e consequentemente mais difíceis de serem testados unitariamente. As restrições de programação impostas pela especificação EJB 2.1 impossibilitam a realização de atividades corriqueiras. A especificação EJB 3.0 vem se inspirado em um modelo de POJOs e frameworks como o Hibernate para solucionar estas questões mas, como seu futuro é incerto, optou-se por seguir uma arquitetura de POJOs com frameworks. Para tratar a persistência de dados e dos desafios decorrentes do conflito dos paradigmas Objeto/Relacional, é usado o framework Object Relational Mapping (ORM) Hibernate (2005). Antes de adotar o Hibernate foi realizada uma análise técnica onde foram analisadas as características deste framework. Após a implementação de uma prova de conceito, um protótipo do serviço Conferências do AulaNet, percebeu-se que este framework supria as necessidades de persistência do AulaNet. Após a análise técnica foi realizada a análise não-técnica, que iniciou-se pela seleção dos concorrentes. Os frameworks ORM ibatis (2005), Apache OJB
4 Capítulo 6. Conclusão 191 (OJB, 2005) e JDOMax (2005), uma implementação da especificação JDO (2005) são soluções de mapeamento completo (Fussel,1997) e gratuitos. A análise determinou o Hibernate como o framework com mais documentação disponível, com mais suporte disponível (é a comunidade mais ativa e possui suporte pago), com mais ferramentas compatíveis, com mais empresas usando e com mais profissionais aptos a trabalhar com ele disponíveis no mercado. Como os outros não apresentavam nenhuma vantagem técnica significativa, a escolha do Hibernate se manteve. Para solucionar às questões de gerenciamento de transações, gerenciamento de segurança e exposição de serviços remotamente, foi escolhido o framework Spring (2005). A análise técnica mostrou que o Spring fornecia meios para lidar com estas questões e, além disso, fornecia um módulo de Dependency Injection que torna os componentes mais fracamente acoplados e mais fáceis de serem testados unitariamente. Spring possui também um módulo de Programação Orientada a Aspectos, possibilitando que pesquisas nesta área sejam realizadas com o AulaNet. Spring também integra-se ao Hibernate, facilitando o seu uso. O Spring também se manteve após a na análise não-técnica. Foram encontrados 4 frameworks gratuitos com características similares ao Spring: Avalon (2005), que se transformou no projeto Excalibur (2005), o HiveMind (2005), NanoContainer (2005) e o PicoContainer (2005). A análise mostrou que o Spring é superior em todas as categorias e, novamente, a escolha se manteve. Na camada de apresentação, há uma família de frameworks denominada web frameworks que oferecem uma implementação do padrão de projetos Model View Controller (MVC) (Fowler, 2002), além de tratar também desafios decorrentes do uso do HTML na construção de interfaces com o usuário. Estimase que há 54 web frameworks disponíveis gratuitamente na plataforma Java (Manageability, 2005). Devido ao grande número de web frameworks disponíveis, foi preciso adotar uma outra abordagem. Foram selecionados 3 para serem analisados tecnicamente. O Struts (2005), por ser o mais popular, o Spring MVC, módulo do framework Spring (2005), por ter sido escolhido para a camada de apresentação, e o JavaServer Faces (JSF) (2005), por especificar um modelo de componentes e ser um padrão da Sun. A análise técnica indicou cada um com suas vantagens. O Spring MVC, o menos intrusivo de todos, o Struts, com o melhor módulo de validação de entrada
5 Capítulo 6. Conclusão 192 de dados e o JSF sendo o único dos três a especificar um modelo de componentes. Após a análise técnica, escolheu-se o JSF, pois ele aparenta ser um modelo de componentes promissor e porque começa a se desenhar um mercado de componentes JSF com o surgimento de projetos como MyFaces (2005) e WebGalileo Faces (WebGalileo, 2005), que são gratuitos, e o WebCharts (2005), que é comercial. Alguns destes componentes, como o editor HTML encontrado no projeto MyFaces, atendem a demandas atuais de usuários do AulaNet. Ao realizar a análise não-técnica notou-se que Struts liderou todas as categorias exceto a categoria de ferramentas compatíveis. JSF, que liderou esta categoria, ficou em segundo lugar em todas as outras exceto a categoria de disponibilidade de suporte onde foi terceiro. JSF foi também o framework cujo número de oportunidades requerendo habilidade no framework mais cresceu ao longo das pesquisas. O bom desempenho do JSF na análise técnica foi crucial para que ele se mantivesse como escolha para a camada de apresentação. Mesmo tendo a sua primeira versão estável lançada em 2004, JSF ficou atrás apenas do Struts, que parece ser o web framework mais aceito atualmente, mas que não define um modelo de componentes e por isso não será usado. Apesar da arquitetura do AulaNet 3.0 prever apenas estes 3 frameworks, é possível incorporar outros frameworks, oferecendo infra-estrutura para tratar questões não previstas. Nesta dissertação foi visto como incorporar o framework de agentes Jade a arquitetura do AulaNet 3.0. Para integrar um novo framework na camada de negócios da arquitetura do AulaNet 3.0 é preciso integrá-lo ao Spring. Como o String não é intrusivo e é baseado em boas práticas, como a programação para interfaces (Bloch, 2005) e encapsulamento através de propriedades JavaBeans (2005), normalmente isto não é um problema. Como visto nesta dissertação, o Jade pode ser integrado à arquitetura através de um adaptador construído com poucas classes, possibilitando o uso de agentes de software no AulaNet tanto para fins de pesquisa quanto para fins de mercado. Além disso, através dos Proxys remotos do Spring é oferecido suporte a aplicações móveis. Com a nova arquitetura, é possível integrar o AulaNet e o AulaNetM, extensão do AulaNet para dispositivos móveis, no nível de serviços, aumentando o reuso entre os dois projetos. Desenvolver groupware é complexo e não deveria se tornar mais complexo devido a aspectos de infra-estrutura de baixo nível como persistência de dados,
6 Capítulo 6. Conclusão 193 gerenciamento de transações, etc. Frameworks de infra-estrutura simplificam estes aspectos ao tratarem os problemas em baixo nível e fornecerem interfaces em alto nível. Estes frameworks são projetados e desenvolvidos por especialistas nesta área enquanto que os componentes de groupware são projetados por especialistas em groupware. Esta pesquisa mostrou como uma arquitetura em três camadas pode se beneficiar pelo uso de frameworks de infra-estrutura. Mostrou-se também uma forma de avaliar frameworks que leva em conta tanto aspectos técnicos quanto não-técnicos. Espera-se que esta pesquisa possa auxiliar arquitetos de groupware e de software a construir aplicações, auxiliando na tomada de decisões sobre a estruturação da arquitetura técnica e na escolha de frameworks de aplicação que tratem de aspectos de infra-estrutura de baixo nível. Espera-se também que este trabalho guie os desenvolvedores LES/EduWeb na construção do AulaNet 3.0, para que este possa continuar rendendo mais uma década de pesquisas e aprendizagem.
Objetos e Componentes Distribuídos: EJB
: EJB Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta
JBoss Seam. Vinicius Senger Co-fundador Globalcode Alberto J Lemos (Dr. Spock) Instrutor Globalcode. Globalcode Open4Education
JBoss Seam Vinicius Senger Co-fundador Globalcode Alberto J Lemos (Dr. Spock) Instrutor Globalcode Agenda > Introdução > Arquitetura típica Java EE 5 > O que é JBoss Seam? > Porque escolher o JBoss Seam?
Engenharia de Software II
Engenharia de Software II Aula 4 http://www.ic.uff.br/~bianca/engsoft2/ Aula 4-03/05/2006 1 Modelos Prescritivos de Processo Modelo em cascata Modelos incrementais Modelo incremental Modelo RAD Modelos
Processos de software
Processos de software 1 Processos de software Conjunto coerente de atividades para especificação, projeto, implementação e teste de sistemas de software. 2 Objetivos Introduzir modelos de processos de
Introdução ao Desenvolvimento de
Introdução ao Desenvolvimento de Aplicações Web com JSF e PrimeFaces Marcelo Vinícius Cysneiros Aragão ICC Inatel Competence Center [email protected] Santa Rita do Sapucaí, 15 de março de 2016 Conteúdo
Introdução ao Zend Framework 2
Introdução ao Zend Framework 2 #laryssa-muniz Graduada em Telemática - Estácio de Sá Especialista em Engenharia de Software - UECE Mestranda em Ciências da Computação - UECE Analista de Sistemas - Brain
Ferramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes
Ferramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes Antônio Francisco do Prado Daniel Lucrédio e-mail: [email protected] Resumo Este artigo apresenta a ferramenta CASE
MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB
MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB Miguel Gustavo Miiller¹, Tiago Piperno Bonetti 1. 1 Universidade Paranaense (UNIPAR) Paranavaí -Paraná- Brasil [email protected], [email protected]
INSTITUTO 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 [email protected] Introdução 2 Antes de qualquer
Reutilização de Software
DCC / ICEx / UFMG Reutilização de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Reutilização de Software Abordagem de desenvolvimento com o objetivo de maximizar o uso de software pré-existente
Perguntas da Aula 2. Respostas da Pergunta 2. Respostas da Pergunta 1. Respostas da Pergunta 4. Respostas da Pergunta 3. Processos de Software
Engenharia de Software Aula 03 Perguntas da Aula 2 Processos de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] 12 Março 2012 Inconsistente: perguntei laranjas, respondeu
Prof. Esp. Fabiano Taguchi
UML Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com [email protected] UML COMPETÊNCIA: Conhecer e desenvolver estudos de caso usando modelagem orientada a objeto. HABILIDADE: Conhecer
2 Frameworks: Conceitos Gerais
2 Frameworks: Conceitos Gerais Um dos principais objetivos da Engenharia de Software é o reuso. Através da reutilização de software obtém-se o aumento da qualidade e redução do esforço de desenvolvimento
Reuso de Software Aula Maio 2012
Reuso de Software Aula 19 Tópicos da Aula Engenharia de Software baseada em Componentes (CBSE) Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] Componentes Modelos de Componentes
JBoss Seam Um framework para Java EE 5. [ Tiago Motta Jorge ]
JBoss Seam Um framework para Java EE 5 [ Tiago Motta Jorge ] Outline Introdução Conceitos básicos Exemplos básicos Conceitos Avançados JSR299: WebBeans Considerações finais Introdução Desenvolvido por
INTRODUÇÃO A ENGENHARIA DE SOFTWARE
Universidade Estadual Vale do Acaraú AGENDA INTRODUÇÃO A ENGENHARIA DE SOFTWARE Processos Modelos de Desenvolvimento de Software Engenharia de Requisitos Projeto de Interface com o Usuário Projeto Arquitetural
Unidade II MODELAGEM DE PROCESSOS. Profa. Gislaine Stachissini
Unidade II MODELAGEM DE PROCESSOS Profa. Gislaine Stachissini Modelagem de sistemas A fase do desenvolvimento do sistema exige: esforço; dedicação; envolvimento; um único objetivo. Estilo de desenvolvimento
TRABALHO DE CONCLUSÃO DE CURSO
UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO TRABALHO DE CONCLUSÃO DE CURSO Resumo Artigo I Desenvolvimento de Aplicações
Documento de Arquitetura de Software- SGE
Documento de Arquitetura de Software- SGE IFG Autor: Marcelo Roldrin Barros Silva 1. Introdução 1.1 Finalidade Este documento oferece uma visão geral arquitetural abrangente do sistema SGE (Sistema de
Desenvolvimento Web TCC Turma A-1
Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Model-View-Controller (MVC) Professor Leandro Augusto Frata Fernandes [email protected] Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226
Aplicações Web com Servlets e JSP
J550 Desenvolvimento de Aplicações Web com Servlets e JSP Helder da Rocha www.argonavis.com.br 1 Objetivos Este curso explora os recursos da linguagem Java para o desenvolvimento de aplicações Web Tem
Princí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
Agregando Frameworks em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet
Barreto, C.G., Fuks, H. & Lucena, C.J.P. (2005) Agregando Frameworks em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet, Anais do 5º Workshop de Desenvolvimento Baseado em
UMA ARQUITETURA VOLTADA PARA O DESENVOLVIMENTO DE APLICAÇÕES WEB.
UMA ARQUITETURA VOLTADA PARA O DESENVOLVIMENTO DE APLICAÇÕES WEB. Djonathan Assis Oliveira 1, Jaime William Dias 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil [email protected], [email protected]
DESENHO DE CARGOS E TAREFAS
Faculdade de Tecnologia SENAC GO Gestão de Pessoas Professor: Itair Pereira da Silva Grupo: Luís Miguel Nogueira de Resende, Valdivino de Carvalho, Rodrigo Neres Magalhães e Venicyus Venceslencio da Paz.
ENGENHARIA DE SOFTWARE
EMENTA ENGENHARIA DE SOFTWARE DISCIPLINA: Estrutura e Fluxo de Informação EMENTA: A disciplina Estrutura e Fluxo de Informação se propõe a capacitar o aluno sobre os fundamentos da Gestão da Informação
Introdução à Análise e Projeto de Sistemas
Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise
Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software
Reuso de Software Aula 04 Agenda da Aula Arquitetura de Software e Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] 14 Março 2012 Arquitetura de Software Padrões arquiteturais
Análise e projeto de sistemas
Análise e projeto de sistemas Conteúdo: UML O processo de desenvolvimento de software Prof. Patrícia Lucas A linguagem de modelagem unificada (UML) A UML teve origem em uma tentativa de se unificar os
Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator
Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator Ederson Evaristo Jantsch Orientador: Marcel Hugo 09/07/2002 Roteiro Introdução Aplicação multicamadas Tecnologias
De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software
AJA Software www.ajasoftware.wordpress.com De Olho na Pista Documento de Arquitetura Confidencial De Olho na Pista, 2013 1 Sumário 1. Introdução 3 2. Metas e Restrições da Arquitetura 3 3. Padrão da Arquitetura
ORGANIZAÇÃO CURRICULAR TÉCNICO NA ÁREA DE INFORMÁTICA: HABILITAÇÃO TÉCNICO EM INFORMÁTICA NA MODALIDADE A DISTÂNCIA /1
ORGANIZAÇÃO CURRICULAR TÉCNICO NA ÁREA DE INFORMÁTICA: HABILITAÇÃO TÉCNICO EM INFORMÁTICA NA MODALIDADE A DISTÂNCIA - 2008/1 DC 9481 03/10/07 Rev. 00 1. Dados Legais Autorizado pelo Parecer 278 do Conselho
Introdução a Teste de Software
Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução a Teste de Software Prof. Luthiano Venecian 1 Conceitos Teste de software
SisBIC Sistema de Gerenciamento de Bolsas de Iniciação
SisBIC Sistema de Gerenciamento de Bolsas de Iniciação 1. Introdução Robson Tenório Universidade Federal da Bahia Centro de Processamento de Dados Salvador Bahia Brasil {robsonrt}@ufba.br A Universidade
Engenharia de Software. Processos. Desenvolvimento de Software Tradicionais 2014/2. Prof. Luís Fernando Garcia
Engenharia de Software Processos Desenvolvimento de Software Tradicionais 2014/2 Prof. Luís Fernando Garcia [email protected] Processos Um conjunto estruturado de atividades necessárias para o desenvolvimento
RUP RATIONAL UNIFIED PROCESS
O que é RUP? É um metodologia para gerenciar projetos de desenvolvimento de software que usa a UML como ferramenta para especificação de sistemas. Ele é um modelo de processo híbrido Mistura elementos
QUESTÕES TESTES. Questão 1. O modelo de ciclo de vida em cascata:
QUESTÕES 1. 0 que é domínio da aplicação (ou do problema)? 2. Qual a importância da engenharia de software e como se justificam os custos a ela associados? 3. O que é processo de desenvolvimento de software
14/11/2014. Engenharia de Software. Modelos de software. Modelo Clássico - Cascata
4//204 Engenharia de Software Luiz A. Nascimento Modelos de software Cascata (especificação/desenvolvimento/ validação e evolução) Na teoria:desenvolvimento linear Na prática: São necessárias várias iterações
Técnicas para Reutilização de Software
DCC / ICEx / UFMG Técnicas para Reutilização de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Panorama de Reutilização Frameworks Padrões de projeto Aplicações configuráveis Padrões de
ENGENHARIA DE SOFTWARE
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Curso Técnico em Informática : ENGENHARIA DE SOFTWARE Prof.: Clayton Maciel Costa [email protected] Um conjunto estruturado
2
ANÁLISE DE SISTEMAS (processo de desenvolvimento de sistemas) por Antônio Maurício Pitangueira 1 2 Levantamento de requisitos Análise de requisitos Projeto Implementação Testes Implantação Foco da disciplina
TESTES DE SOFTWARE Lista de Exercício 02. Luiz Leão
Luiz Leão [email protected] http://www.luizleao.com Exercício 01 Ao testarmos uma aplicação web, que aspectos devemos levar em consideração? Exercício 01 Resposta Ao testarmos uma aplicação web, que aspectos
Framework Hibernate/JPA
Framework Hibernate/JPA SSC 124/621 Análise e Projeto Orientados a Objetos Sofia Costa 1 Hibernate É um Framework do tipo caixa-branca para persistência de dados. É uma ferramenta de mapeamento objeto/relacional
Programação orientada a objetos
J100 com Programação orientada a objetos TM SE Helder da Rocha ([email protected]) argonavis.com.br 1 Objetivos Este curso tem como objetivo iniciá-lo em Java... mas não apenas isto Visa também a ajudá-lo
Requisitos de Software
Requisitos de Software Engenharia de requisitos 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
Engenharia Reversa e Reengenharia. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015
Engenharia Reversa e Reengenharia Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015 Fases Genéricas do Ciclo de Vida Engenharia Sistemas Análise Projeto Codificação Testes Manutenção
Concurso de Programação Java
Página: 1 de 6 e-core Novos Talentos Jornada Acadêmica FACIN - PUCRS Porto Alegre, 01 de agosto de 2006. Página: 2 de 6 Histórico Data Versão Descrição Responsável (is) 01/08/2006 1.0 Criação do documento
Levantamento de classes (Análise de casos de uso)
Plano Levantamento de classes (Análise de casos de uso) Prof. Cesar Augusto Tacla Levantamento no método APOO Projeto por padrões: MVC e Observador Estereótipos de classes Visão geral do método Engenharia
Sistema colaborativo para monitoramento de focos de Aedes aegypti
Sistema colaborativo para monitoramento de focos de Aedes aegypti Thiago Amorim Orientador: André Backes Faculdade de Computação Universidade Federal de Uberlândia 1 de dezembro de 2016 Thiago A., André
ENGENHARIA DE SOFTWARE. Aula 03 Processos de Software
ENGENHARIA DE SOFTWARE Aula 03 Processos de Software AGENDA Modelos de processo de software Atividades do processo Lidando com mudanças Rational Unified Process (RUP) 14/03/2017 IFPR QUEDAS DO IGUAÇU -
Modelos de Processo de Software. SSC Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012
Modelos de Processo de Software SSC 121 - Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 ENGENHARIA DE SOFTWARE 3 pode ser vista como uma abordagem de desenvolvimento de
Analista de Negócios. Local de Trabalho: Porto Alegre. Número de Vagas: 02. Analista de Sistemas
Analista de Negócios - Especificação de Requisitos, - Modelagem de Sistemas e Processos, - 2 anos de experiência na função, - Bom relacionamento interpessoal, criatividade, pró-atividade e facilidade de
ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO DE APLICATIVOS MÓVEIS MULTIPLATAFORMA
ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO DE APLICATIVOS MÓVEIS MULTIPLATAFORMA Aluno: Nikson Barth Orientador: Marcel Hugo Roteiro Introdução Objetivos Fundamentação Teórica Trabalhos Correlatos
CONTEÚDO PROGRAMÁTICO
CONTEÚDO PROGRAMÁTICO Java Avançado Carga horária: 40 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO 1 - Introdução Introdução
Conteúdo Programático
Ementa do Curso O treinamento ios+swift Intro foi criado pela Catteno com o intuito de introduzir os alunos em programação de Apps para a plataforma ios (tablets e smartphones), utilizando a linguagem
Modelos de Processo de Software. Profª Jocelma Rios
Modelos de Processo de Software Profª Jocelma Rios Jun/2013 O que pretendemos: Apresentar os conceitos básicos de processos de software Descrever os principais modelos de processos de software, elucidando
Agregando Frameworks de Infra-Estrutura em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet
Celso Gomes Barreto Junior Agregando Frameworks de Infra-Estrutura em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet Dissertação de Mestrado Dissertação apresentada ao Programa
Engenharia de Software. Gerenciamento de Pessoal. Professor Joerllys Sérgio
Engenharia de Software Gerenciamento de Pessoal Professor Joerllys Sérgio Pessoas no Processo Pessoas constituem o bem mais valioso de uma organização. Atividades de um gerente são fortemente orientadas
Protótipo de Protocolo de Aplicação para Troca de Documentos da Área Extra Judicial. Acadêmico: Fabrício Bento Orientador: Paulo Fernando da Silva
Protótipo de Protocolo de Aplicação para Troca de Documentos da Área Extra Judicial Acadêmico: Fabrício Bento Orientador: Paulo Fernando da Silva Conteúdo Introdução Fundamentação teórica Desenvolvimento
Introdução a Web Services
Introdução a Web Services Mário Meireles Teixeira DEINF/UFMA O que é um Web Service? Web Service / Serviço Web É uma aplicação, identificada por um URI, cujas interfaces podem ser definidas, descritas
Por que é importante?
Disciplina: Engenharia de Software 3 Bimestre Aula 5: ENGENHARIA DE SOFTWARE BASEADA EM COMPONENTES Para o desenvolvimento de softwares customizados, a engenharia de software baseada em componentes é uma
EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS
EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS 1. Explique a(s) diferença(s) entre design pattern e framework. 2. Analisar o arquivo de configurações (web.xml) abaixo identificando quais suas
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 03 PROFª BRUNO CALEGARO
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 03 PROFª BRUNO CALEGARO Santa Maria, 13 de Setembro de 2013. Revisão aula anterior Processo de software Um modelo de processo de software consiste
Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1
Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando
Plataforma de desenvolvimento JAVA para terminal POS
Plataforma de desenvolvimento JAVA para terminal POS Avenida Viena, 360 Bairro São Geraldo CEP 90240020 Porto Alegre RS Fone 51 3325 2728 Fax 51 3343 9847 [email protected] Apresentação A plataforma
Uma Linha de Produto de Software para Módulos de Aprendizagem Interativa
Uma Linha de Produto de Software para Módulos de Aprendizagem Interativa Danilo Leite Dalmon Orientador: Prof. Dr. Leônidas de O. Brandão Defesa de Mestrado Instituto de Matemática e Estatística - Universidade
Java para Desenvolvimento Web Carga Horária: 40 Horas.
Java para Desenvolvimento Web Carga Horária: 40 Horas. PROGRAMAÇÃO AULAS AOS SABADOS: Início : 20/08/2011 - Término: 17/09/2011 Horário: 8:30 as 12:30 13:30 ás 17:30. Pagamento em 6X no cartão ou cheque.
Engenharia de Software II
Engenharia de Software II Aula 7 http://www.ic.uff.br/~bianca/engsoft2/ Aula 7-12/05/2006 1 Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software (Caps. 13 e 14 do
Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS
Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS 1. Com relação à engenharia de software, julgue os itens seguintes. Engenharia de software não está relacionada
Projeto 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:
Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software
Engenharia de Software Aula 17 Desenvolvimento de Software Testes de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] 7 Maio 2012 1. Especificação de requisitos 2. Projeto
Guia do Processo de Teste Metodologia Celepar
Guia do Processo de Teste Metodologia Celepar Agosto de 2009 Sumário de Informações do Documento Documento: guiaprocessoteste.odt Número de páginas: 11 Versão Data Mudanças Autor 1.0 26/12/07 Criação.
Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software
INTRODUÇÃO AO SWEBOK Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Origens do corpo de conhecimentos da Engenharia de Software: Engenharia da Computação Ciência da
2. Modelos de Desenvolvimento de Software
2. Modelos de Desenvolvimento de Software Patrícia Macedo Joaquim Filipe João Ascenso Engenharia de Software 2005/06 EST, Setúbal Ciclo de Vida do Software Um sistema de software é desenvolvido gradualmente
Verificação e Validação (V & V)
Verificação e Validação (V & V) Objetivo: assegurar que o software que o software cumpra as suas especificações e atenda às necessidades dos usuários e clientes. Verificação: Estamos construindo certo
Formação JAVA Web.
Inscreva-se na Formação JAVA Web e comece a desenvolver sistemas para Web e Desktop com a linguagem de programação open source multiplataforma mais valorizada do mercado. Carga-horária: 80h O que você
O que é um sistema distribuído?
Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores
Proposta de uma plataforma de monitoramento e acionamento remoto voltada para sistemas de hardware industriais utilizando LabVIEW
Proposta de uma plataforma de monitoramento e acionamento remoto voltada para sistemas de hardware industriais utilizando LabVIEW "Este artigo tem como proposta apresentar uma plataforma para monitoramento
