O documento apresenta uma representação estrutural de código-fonte chamada CodeMI para permitir a coleta de métricas em softwares industriais preservando propriedade intelectual. CodeMI mapeia elementos estruturais do código como declarações e comandos para XML de baixa verbosidade. Isso permite extrair métricas usando XSLT enquanto impede a recuperação do código original. O formato é testado em um estudo de caso no sistema Compiere.
Apresentação curso de Extensão em Java (UERJ-IME) v1Marcelo Zeferino
O documento resume um curso de extensão em Java com 40 horas, abordando tópicos como introdução à linguagem Java, programação orientada a objetos, controle de fluxo, arrays, persistência de dados com Hibernate, desenvolvimento web e interfaces gráficas.
O documento discute a evolução da linguagem C# desde sua primeira versão (C# 1.0) até as novidades da próxima versão (C# 5). Ele apresenta os principais recursos introduzidos em cada versão como generics, LINQ, objetos dinâmicos e compilador como serviço.
A polícia encontrou a cabeça de um homem em uma caixa no porão de uma casa abandonada. Testes de DNA confirmaram que a cabeça pertencia a um homem desaparecido há um mês. A investigação está em andamento para encontrar o corpo e o assassino.
O documento discute crianças índigo e cristal, que são seres especiais que estão chegando à Terra para ajudar na transformação espiritual e social. Essas crianças têm estruturas cerebrais diferentes e sensibilidades elevadas, o que as torna desafiadoras para famílias e escolas tradicionais. Elas estão aqui para questionar sistemas rígidos e ajudar a humanidade a evoluir para uma nova realidade.
O documento discute estatísticas e tendências religiosas no Brasil, incluindo o crescimento de 20% de evangélicos, 10,8 milhões de fãs de uma página cristã no Facebook, e 14% de evangélicos que deixaram igrejas para buscar livremente.
Curso Desenvolvimento de Dashboards com o Excel 2007 e 2010Grupo Treinar
Este documento descreve um curso sobre desenvolvimento de dashboards no Excel. O curso ensina como criar relatórios gerenciais dinâmicos usando recursos avançados do Excel combinados com conceitos de Business Intelligence. A metodologia inclui estudos de caso práticos para construir dashboards reais.
Este documento fornece instruções e feedback para atores e equipe de uma peça teatral. Contém orientações sobre ocupação de espaço, dicção, expressão facial, sincronia de movimentos, volume da voz e entonação. Também lista nomes de atores e tarefas específicas para revisar antes do ensaio geral.
O documento descreve duas ferramentas para acompanhar notícias e redes sociais: o Paper.li, que cria um "jornal diário" com os assuntos mais comentados nas redes sociais de um usuário; e o Google Reader, que permite acompanhar feeds RSS de sites favoritos e compartilhar artigos com amigos.
Apresentação curso de Extensão em Java (UERJ-IME) v1Marcelo Zeferino
O documento resume um curso de extensão em Java com 40 horas, abordando tópicos como introdução à linguagem Java, programação orientada a objetos, controle de fluxo, arrays, persistência de dados com Hibernate, desenvolvimento web e interfaces gráficas.
O documento discute a evolução da linguagem C# desde sua primeira versão (C# 1.0) até as novidades da próxima versão (C# 5). Ele apresenta os principais recursos introduzidos em cada versão como generics, LINQ, objetos dinâmicos e compilador como serviço.
A polícia encontrou a cabeça de um homem em uma caixa no porão de uma casa abandonada. Testes de DNA confirmaram que a cabeça pertencia a um homem desaparecido há um mês. A investigação está em andamento para encontrar o corpo e o assassino.
O documento discute crianças índigo e cristal, que são seres especiais que estão chegando à Terra para ajudar na transformação espiritual e social. Essas crianças têm estruturas cerebrais diferentes e sensibilidades elevadas, o que as torna desafiadoras para famílias e escolas tradicionais. Elas estão aqui para questionar sistemas rígidos e ajudar a humanidade a evoluir para uma nova realidade.
O documento discute estatísticas e tendências religiosas no Brasil, incluindo o crescimento de 20% de evangélicos, 10,8 milhões de fãs de uma página cristã no Facebook, e 14% de evangélicos que deixaram igrejas para buscar livremente.
Curso Desenvolvimento de Dashboards com o Excel 2007 e 2010Grupo Treinar
Este documento descreve um curso sobre desenvolvimento de dashboards no Excel. O curso ensina como criar relatórios gerenciais dinâmicos usando recursos avançados do Excel combinados com conceitos de Business Intelligence. A metodologia inclui estudos de caso práticos para construir dashboards reais.
Este documento fornece instruções e feedback para atores e equipe de uma peça teatral. Contém orientações sobre ocupação de espaço, dicção, expressão facial, sincronia de movimentos, volume da voz e entonação. Também lista nomes de atores e tarefas específicas para revisar antes do ensaio geral.
O documento descreve duas ferramentas para acompanhar notícias e redes sociais: o Paper.li, que cria um "jornal diário" com os assuntos mais comentados nas redes sociais de um usuário; e o Google Reader, que permite acompanhar feeds RSS de sites favoritos e compartilhar artigos com amigos.
Igor Almeida de Carvalho é um graduando em marketing e relações públicas com experiência em marketing esportivo, tendo trabalhado como coordenador de marketing de um clube de futebol e fundado seu próprio negócio de comunicação e eventos esportivos.
Este documento apresenta o planejamento anual de atividades do Grupo PET-Geologia da Universidade Federal do Paraná para 2012, incluindo atividades de ensino, pesquisa e extensão como cursos, discussões temáticas, elaboração de monografias individuais, projetos de extensão e palestras.
A história conta de uma jovem caiçara que se envergonhou de sua cultura e foi embora para a cidade grande. Ela acabou transformada em uma bruxa sem cultura que tentava fazer as crianças se envergonharem de suas origens também. Um ancião ensinou as crianças sobre sua rica cultura caiçara e assim a bruxa perdeu forças e desapareceu.
O documento discute vários tipos de materiais recicláveis, incluindo papel, plástico, metal e vidro. Ele fornece detalhes sobre como esses itens podem ser coletados e reciclados, bem como seus usos finais após o processo de reciclagem.
Programa semi-presencial de formacao fundamental em Analise de NegociosGrupo Treinar
O documento discute a importância da Análise de Negócios para melhorar a comunicação entre as áreas de negócio e TI. A Análise de Negócios pode fornecer uma "ponte cognitiva" entre essas áreas e apoiar iniciativas estratégicas e táticas. O evento planejado tem como objetivo apresentar a Análise de Negócios para executivos e mostrar como analistas de negócios podem apoiar a colaboração entre equipes.
Curso Especializacao em Gerenciamento Operacional de Servicos de TI Baseado ...Grupo Treinar
Este curso visa capacitar profissionais de TI a entenderem os processos operacionais necessários para a gestão de serviços de TI com base nos frameworks ITIL V3 e COBIT 4.1, abordando tópicos como níveis de serviço, gerenciamento de capacidade, segurança e configuração. O curso será ministrado em português por um instrutor experiente e certificado em governança e gerenciamento de TI.
O documento discute vários tópicos da adolescência como: 1) os perigos das drogas para os adolescentes; 2) as mudanças físicas como espinhas e a puberdade; 3) a importância da amizade; 4) os desafios do namoro e sexualidade na adolescência como gravidez e doenças.
O documento descreve melhorias realizadas e planejadas na Unidade de Saúde da Família e na infraestrutura do bairro Savoy de Itanhaém através do Plano de Ação de Itanhaém. A USF passou por reformas como pintura, limpeza e cercamento e terá mais consultórios e banheiros adaptados. O PAI investirá R$2,3 milhões no bairro em obras de educação, saúde e pavimentação, incluindo uma nova creche e escola e reforma da UBS Savoy
Edital 1 processo seletivo - pet - 2013-2Petgeologia
I. O documento descreve o processo seletivo para o Programa de Educação Tutorial (PET) em Geologia da Universidade Federal do Paraná, oferecendo 6 vagas para alunos bolsistas.
II. O processo seletivo consiste em três etapas: uma vivência de 30 dias, uma apresentação oral e uma entrevista. A nota final é a média ponderada das três etapas.
III. As inscrições ocorrem entre 18 e 20 de setembro e os candidatos selecionados iniciarão suas atividades no PET em 5 de novemb
Como cuidar la pc para que dure mas(diapositivas)latuadadana
Para mantener la PC funcionando por más tiempo, se recomienda no golpearla, mojarla o maltratar sus componentes; mantenerla lejos de fuentes de calor, humedad y luz solar directa; apagarla correctamente y cerrar la grabadora inmediatamente después de usarla.
Este documento apresenta fotos reais dos anos 1930 que mostram trabalhadores construindo arranha-céus em Nova York sem medidas de segurança adequadas. A primeira foto foi tirada no 69o andar de um prédio em 1932 e publicada no jornal New York Herald Tribune para denunciar a falta de segurança nestas obras. Muitas das fotos fazem parte do arquivo fundado por Otto Bettmann em 1936 e agora pertencem à empresa Corbis.
Gestao Estrategica de Marketing, Vendas e Servicos para Empresas de TI C Basi...Grupo Treinar
Este curso avançado capacita executivos de marketing, vendas e serviços de empresas de TI em estratégias integradas de marketing, vendas e serviços para enfrentar os novos desafios da web 2.0. O curso discute posicionamento, gestão do conhecimento, marketing na web social e estratégias inovadoras. É ministrado por Antonio Bucci e tem duração de 8 horas.
Este documento é um questionário para professores avaliarem dois alunos, um com e outro sem hiperatividade e défice de atenção (PHDA). O questionário inclui 21 perguntas sobre comportamentos dos alunos e pede aos professores que os classifiquem de 0 a 3 com base na frequência desses comportamentos no último mês.
O documento discute vários aspectos da sexualidade humana ao longo da vida. Aborda como a sexualidade muda com a idade, os fatores psicossociais que afetam a atividade sexual na idade adulta e as mudanças fisiológicas nos órgãos sexuais masculinos e femininos com o envelhecimento. Também discute disfunções sexuais comuns e como melhorar a saúde e o conhecimento sexual nas idades mais avançadas.
Este documento describe los pasos para enviar una carta a múltiples personas utilizando Microsoft Word y Excel. Incluye una lista de destinatarios en Excel y guía al usuario a través del asistente de correspondencia de Word para crear cartas individualizadas para cada destinatario utilizando la misma plantilla de carta.
Este documento presenta conceptos clave sobre planificación estratégica del desarrollo territorial. Explica que el territorio se refiere al espacio físico estructurado por las relaciones sociales que ocurren en él. Analiza factores como actores, instituciones y el espacio mismo. También describe cómo analizar elementos espaciales, procesos, estructuras y dinámicas territoriales para diagnosticar problemas e implementar soluciones.
Code Smells: o que eles dizem sobre seu código?Elaine Naomi
Apresentação RubyConfBR 2018
No mundo do Rails, aprendemos a sempre analisar o nosso código sobre o princípio do DRY e seguimos a estratégia de afastar qualquer lógica das nossas views, manter nossos controllers simples e mover toda a lógica de negócio para nossos models.
E quando a nossa aplicação começa a ficar complexa e de difícil manutenção? Models cada vez maiores e com cenários de testes complexos? O que isso diz sobre a nossa aplicação e sobre a qualidade do código escrito? É hora de começar do zero e reescrever tudo? É hora de mudar de paradigma? É hora de migrar para microsserviços? Calma! Vamos, primeiro, identificar os problemas de design da base de código atual.
Nessa talk, vamos conhecer code smells que nos auxiliam na refatoração e na medição da qualidade do nosso código, discutindo o impacto das decisões de design na evolução das aplicações, na entrega de funcionalidades, no processo de desenvolvimento e na comunicação e interação entre as pessoas da equipe.
13/12/2018
O documento discute os conceitos fundamentais de arquitetura de software, incluindo: (1) arquitetura de software é o conjunto de estruturas que compõem um sistema, incluindo módulos, componentes e conectores, e alocação; (2) módulos dividem o sistema em unidades de implementação com responsabilidades específicas; (3) componentes e conectores representam elementos de software e suas interações em tempo de execução.
Igor Almeida de Carvalho é um graduando em marketing e relações públicas com experiência em marketing esportivo, tendo trabalhado como coordenador de marketing de um clube de futebol e fundado seu próprio negócio de comunicação e eventos esportivos.
Este documento apresenta o planejamento anual de atividades do Grupo PET-Geologia da Universidade Federal do Paraná para 2012, incluindo atividades de ensino, pesquisa e extensão como cursos, discussões temáticas, elaboração de monografias individuais, projetos de extensão e palestras.
A história conta de uma jovem caiçara que se envergonhou de sua cultura e foi embora para a cidade grande. Ela acabou transformada em uma bruxa sem cultura que tentava fazer as crianças se envergonharem de suas origens também. Um ancião ensinou as crianças sobre sua rica cultura caiçara e assim a bruxa perdeu forças e desapareceu.
O documento discute vários tipos de materiais recicláveis, incluindo papel, plástico, metal e vidro. Ele fornece detalhes sobre como esses itens podem ser coletados e reciclados, bem como seus usos finais após o processo de reciclagem.
Programa semi-presencial de formacao fundamental em Analise de NegociosGrupo Treinar
O documento discute a importância da Análise de Negócios para melhorar a comunicação entre as áreas de negócio e TI. A Análise de Negócios pode fornecer uma "ponte cognitiva" entre essas áreas e apoiar iniciativas estratégicas e táticas. O evento planejado tem como objetivo apresentar a Análise de Negócios para executivos e mostrar como analistas de negócios podem apoiar a colaboração entre equipes.
Curso Especializacao em Gerenciamento Operacional de Servicos de TI Baseado ...Grupo Treinar
Este curso visa capacitar profissionais de TI a entenderem os processos operacionais necessários para a gestão de serviços de TI com base nos frameworks ITIL V3 e COBIT 4.1, abordando tópicos como níveis de serviço, gerenciamento de capacidade, segurança e configuração. O curso será ministrado em português por um instrutor experiente e certificado em governança e gerenciamento de TI.
O documento discute vários tópicos da adolescência como: 1) os perigos das drogas para os adolescentes; 2) as mudanças físicas como espinhas e a puberdade; 3) a importância da amizade; 4) os desafios do namoro e sexualidade na adolescência como gravidez e doenças.
O documento descreve melhorias realizadas e planejadas na Unidade de Saúde da Família e na infraestrutura do bairro Savoy de Itanhaém através do Plano de Ação de Itanhaém. A USF passou por reformas como pintura, limpeza e cercamento e terá mais consultórios e banheiros adaptados. O PAI investirá R$2,3 milhões no bairro em obras de educação, saúde e pavimentação, incluindo uma nova creche e escola e reforma da UBS Savoy
Edital 1 processo seletivo - pet - 2013-2Petgeologia
I. O documento descreve o processo seletivo para o Programa de Educação Tutorial (PET) em Geologia da Universidade Federal do Paraná, oferecendo 6 vagas para alunos bolsistas.
II. O processo seletivo consiste em três etapas: uma vivência de 30 dias, uma apresentação oral e uma entrevista. A nota final é a média ponderada das três etapas.
III. As inscrições ocorrem entre 18 e 20 de setembro e os candidatos selecionados iniciarão suas atividades no PET em 5 de novemb
Como cuidar la pc para que dure mas(diapositivas)latuadadana
Para mantener la PC funcionando por más tiempo, se recomienda no golpearla, mojarla o maltratar sus componentes; mantenerla lejos de fuentes de calor, humedad y luz solar directa; apagarla correctamente y cerrar la grabadora inmediatamente después de usarla.
Este documento apresenta fotos reais dos anos 1930 que mostram trabalhadores construindo arranha-céus em Nova York sem medidas de segurança adequadas. A primeira foto foi tirada no 69o andar de um prédio em 1932 e publicada no jornal New York Herald Tribune para denunciar a falta de segurança nestas obras. Muitas das fotos fazem parte do arquivo fundado por Otto Bettmann em 1936 e agora pertencem à empresa Corbis.
Gestao Estrategica de Marketing, Vendas e Servicos para Empresas de TI C Basi...Grupo Treinar
Este curso avançado capacita executivos de marketing, vendas e serviços de empresas de TI em estratégias integradas de marketing, vendas e serviços para enfrentar os novos desafios da web 2.0. O curso discute posicionamento, gestão do conhecimento, marketing na web social e estratégias inovadoras. É ministrado por Antonio Bucci e tem duração de 8 horas.
Este documento é um questionário para professores avaliarem dois alunos, um com e outro sem hiperatividade e défice de atenção (PHDA). O questionário inclui 21 perguntas sobre comportamentos dos alunos e pede aos professores que os classifiquem de 0 a 3 com base na frequência desses comportamentos no último mês.
O documento discute vários aspectos da sexualidade humana ao longo da vida. Aborda como a sexualidade muda com a idade, os fatores psicossociais que afetam a atividade sexual na idade adulta e as mudanças fisiológicas nos órgãos sexuais masculinos e femininos com o envelhecimento. Também discute disfunções sexuais comuns e como melhorar a saúde e o conhecimento sexual nas idades mais avançadas.
Este documento describe los pasos para enviar una carta a múltiples personas utilizando Microsoft Word y Excel. Incluye una lista de destinatarios en Excel y guía al usuario a través del asistente de correspondencia de Word para crear cartas individualizadas para cada destinatario utilizando la misma plantilla de carta.
Este documento presenta conceptos clave sobre planificación estratégica del desarrollo territorial. Explica que el territorio se refiere al espacio físico estructurado por las relaciones sociales que ocurren en él. Analiza factores como actores, instituciones y el espacio mismo. También describe cómo analizar elementos espaciales, procesos, estructuras y dinámicas territoriales para diagnosticar problemas e implementar soluciones.
Code Smells: o que eles dizem sobre seu código?Elaine Naomi
Apresentação RubyConfBR 2018
No mundo do Rails, aprendemos a sempre analisar o nosso código sobre o princípio do DRY e seguimos a estratégia de afastar qualquer lógica das nossas views, manter nossos controllers simples e mover toda a lógica de negócio para nossos models.
E quando a nossa aplicação começa a ficar complexa e de difícil manutenção? Models cada vez maiores e com cenários de testes complexos? O que isso diz sobre a nossa aplicação e sobre a qualidade do código escrito? É hora de começar do zero e reescrever tudo? É hora de mudar de paradigma? É hora de migrar para microsserviços? Calma! Vamos, primeiro, identificar os problemas de design da base de código atual.
Nessa talk, vamos conhecer code smells que nos auxiliam na refatoração e na medição da qualidade do nosso código, discutindo o impacto das decisões de design na evolução das aplicações, na entrega de funcionalidades, no processo de desenvolvimento e na comunicação e interação entre as pessoas da equipe.
13/12/2018
O documento discute os conceitos fundamentais de arquitetura de software, incluindo: (1) arquitetura de software é o conjunto de estruturas que compõem um sistema, incluindo módulos, componentes e conectores, e alocação; (2) módulos dividem o sistema em unidades de implementação com responsabilidades específicas; (3) componentes e conectores representam elementos de software e suas interações em tempo de execução.
O documento descreve a implementação de Java pela empresa PROCEMPA para desenvolver sistemas para o setor público de forma produtiva, flexível e de baixo custo. A empresa criou um framework com arquitetura padronizada usando Java, Hibernate, Struts e taglibs customizadas para aumentar a produtividade. O framework possibilitou o desenvolvimento de 19 projetos em 1,5 anos e continua em evolução para atender as necessidades do setor público.
O documento discute a importância de testes automatizados para sustentar Continuous Delivery e DevOps. Ele explica os benefícios de testes automatizados, como feedback rápido e menos erros, e discute vários tipos de testes como testes unitários, de serviço, funcionais e de desempenho. Também fornece exemplos de ferramentas para cada tipo de teste.
O documento discute métricas e fatores que afetam a produtividade em projetos de software. Algumas métricas propostas incluem esforço por ponto de função, bugs por mil linhas de código e pacotes reusados em comparação ao total. Fatores como processo, tamanho, qualidade e reuso podem impactar a produtividade. Métricas devem ser específicas para cada organização e o foco é em simplicidade e melhoria contínua.
O documento discute métricas e modelos para estimativa de esforço em projetos de software. As 3 principais ideias são: 1) Métricas medem atributos de processo e produto para avaliar qualidade, produtividade e gerenciar projetos. 2) Pontos de função medem funcionalidade em vez de linhas de código. 3) Modelos como COCOMO estimam esforço baseado em métricas como loc ou pontos de função e fatores do projeto.
Arquitetura de Computadores - Lecom - UFMGdjonatascostsa
O documento apresenta uma introdução sobre o curso de Arquitetura de Computadores ministrado por Mario F. Montenegro Campos, abordando os tópicos que serão estudados como arquiteturas reconfiguráveis, sistemas paralelos e distribuídos, e hardware/software co-design. Também discute a importância do estudo da arquitetura de computadores e os pré-requisitos para o curso.
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...Daniel Destro Do Carmo
A plataforma Java revolucionou o panorama do desenvolvimento com a sua comunidade ativa, de onde originaram muitos projetos e iniciativas de soluções open source. Diversas soluções nasceram e são utilizadas com frequência, mas podem apresentar problemas comuns se não tomarmos o devido cuidado. Será apresentada uma abordagem de como utilizar software livre, como os populares Spring, Hibernate, Netty e Jetty com clusterização e virtualização, em uma arquitetura focada em um sistema crítico (24x7) de alta disponibilidade que atende milhares de dezenas de solicitações diariamente, no mercado de 300 mil cientes e 430 mil usuários do SPC. Veremos problemas enfrentados e as medidas tomadas em situações diversas, debatendo detalhes técnicos e gargalos comuns que podem aparecer.
Domain-Driven Design não é uma tecnologia ou metodologia. DDD é uma abordagem à modelação de software que providencia uma estrutura de práticas, padrões de programação e terminologias que ajudam à sua concepção.
Nesta sessão vamos conhecer o que é Domain-Driven Design, quando o usar e como implementar.
O documento apresenta uma introdução ao .NET Framework, descrevendo suas principais características como plataforma multiplataforma e suporte a várias linguagens de programação. Apresenta também os principais namespaces do .NET Framework e ferramentas como o Visual Studio para desenvolvimento de aplicações.
O documento fornece uma introdução sobre testes de software, discutindo princípios como verificação versus validação, técnicas estáticas e dinâmicas de teste, fatores psicológicos relacionados a testes, e a importância de planejamento e cobertura de casos de teste.
Estratégias de Estruturação de Código-fonte e Controlo de VersãoComunidade NetPonto
Muitas das dificuldades no desenvolvimento profissional de software são causadas por problemas (ou a falta de) um correcto sistema e uso de controlo de versões. Nesta apresentação o Tiago Pascoal, MVP em Visual Studio Team System, irá mostrar estratégias sobre como melhor estruturar todos os artefactos de um projecto, incluindo melhores práticas para uso de controlo de versões, tendo por base a plataforma de Application Lifecycle Management da Microsoft (Team Foundation Server / TFS).
1) O documento apresenta os papéis e técnicas de automação de testes para equipes ágeis, discutindo como a automação pode ajudar a resolver problemas como falta de tempo para testar e garantir a qualidade ao longo dos sprints. 2) É destacado que nem todos os casos de teste devem ser automatizados e que é importante separar os ambientes de desenvolvimento e teste. 3) A apresentação discute diferentes níveis de automação, desde scripts lineares até abordagens data-driven e keyword-driven, concluindo que a combinação das últimas é a melhor opção
O documento discute princípios e boas práticas para arquitetura de software e desenvolvimento, incluindo: (1) serviços orientados a arquitetura, (2) 12 fatores para aplicações em nuvem, (3) uso de padrões PSR e (4) importância de métricas, testes e automação.
O documento discute os desafios comuns em projetos de software, como requisitos não gerenciados efetivamente e falta de comunicação entre membros da equipe. A solução proposta é o uso do ALM (Application Lifecycle Management) para melhorar a produtividade através de ferramentas como gerenciamento de defeitos, controle de versão e automação de testes. O documento também apresenta o Visual Studio 2013 e o Team Foundation Server como plataformas ALM capazes de integrar todos os membros da equipe e melhorar a visibilidade do status do projeto.
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EEMarco Antonio Maciel
Este documento resume um projeto para definir um framework Java EE padronizado para desenvolvimento de sistemas na instituição. Ele descreve os objetivos e benefícios do projeto, critérios de seleção para as tecnologias do framework, e as ferramentas e produtos resultantes, incluindo documentação, plano de capacitação e proposta para disseminar a nova arquitetura.
Scrum e o Ambiente de Desenvolvimento Ágilabacrazy
O documento discute princípios e métodos ágeis para desenvolvimento de software, como:
- Colocar pessoas e colaboração acima de processos e ferramentas;
- Entregar software funcionando com frequência ao invés de longos documentos;
- Responder à mudança ao invés de seguir um plano rígido.
Apresentação da Palestra sobre o Framework Django, utilizado no desenvolvimento de sites e aplicações web. Na apresentação são mostrados os recursos do Django, citando seu ORM, acesso a bancos de dados, templates, cache, views, urls e diversos outros recursos.
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24, Pr Henrique, EBD NA TV, Revista ano 11, nº 1, Revista Estudo Bíblico Jovens E Adultos, Central Gospel, 2º Trimestre de 2024, Professor, Tema, Os Grandes Temas Do Fim, Comentarista, Pr. Joá Caitano, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Com. Extra Pr. Luiz Henrique, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique
Atividade letra da música - Espalhe Amor, Anavitória.Mary Alvarenga
A música 'Espalhe Amor', interpretada pela cantora Anavitória é uma celebração do amor e de sua capacidade de transformar e conectar as pessoas. A letra sugere uma reflexão sobre como o amor, quando verdadeiramente compartilhado, pode ultrapassar barreiras alcançando outros corações e provocando mudanças positivas.
Leis de Mendel - as ervilhas e a maneira simples de entender.ppt
Defesa Mestrado
1. UNIRIO
Universidade Federal do Estado do Rio de Janeiro
CodeMI – Source Code as XMI
Uma Representação Estrutural de Código-fonte para Coleta de Métricas
João Paulo Oliveira dos Santos
Márcio de Oliveira Barros
joao.santos@uniriotec.br
3. Contexto
• Evolução de Software
– Pesquisas nesta área estudam o comportamento
de projetos de software ao longo do tempo
– Em geral, estes estudo se baseiam em
repositórios de sistemas de controle de versão
joao.santos@uniriotec.br
4. Contexto
• Estudos em evolução de software
– Análise de repositórios de controle de versão de
softwares
– Coleta de métricas a partir do código-fonte ou de
outros artefatos desenvolvidos
– Formação de séries temporais com dados
colhidos através das métricas
– Análise (estatística) das séries históricas
joao.santos@uniriotec.br
5. Contexto
• Concentração dos estudos em repositórios
de software livre
– Ex: SourceForge, GNU, Apache, Eclipse, ...
• Problemas:
– Projetos extintos e revisões anteriores perdidas
– Software comercial/industrial é desenvolvido de
forma diferente do software livre
– Formulação de teorias baseadas neste tipo de
repositório
joao.santos@uniriotec.br
6. Motivação
• Poucos estudos são realizados sobre software
desenvolvido segundo um modelo industrial
– Empresas desenvolvedoras de software restringem
o acesso ao código-fonte de seus produtos
• Consequências
– Falta de métricas colhidas de softwares industriais
– Métricas colhidas de forma oportunista (muitas
vezes sem associação com uma pesquisa)
– Falta de teorias evolutivas sobre estes softwares
joao.santos@uniriotec.br
7. Problema
Como realizar estudos de evolução de
software baseados em sistemas industriais
sem ferir restrições de propriedade intelectual
e sem definir, antes de planejar os objetivos
da pesquisa, quais métricas devem ser
analisadas?
joao.santos@uniriotec.br
8. Solução Proposta
Prover uma representação de código-fonte
que evidencie as características estruturais do
código sem deixar explícita a lógica que ele
implementa (propriedade intelectual).
• Representação de código em XML
• Facilidade de manipulação
• Diversidade de mecanismos de consulta –
Xpath, Xquery, XSLT
joao.santos@uniriotec.br
9. Principais Representações
Críterios JavaML JavaML XJava JavaML
M&K 1.0 2.0
Elementos essenciais
Informações textuais
Verbosidade Alta Média Baixa Alta
Linhas em branco
Comentários
Representa AST
Exposição do código
Granularidade Classe Classe Sistema Classe
joao.santos@uniriotec.br
10. Critérios Desejáveis
• Verbosidade baixa
– facilita a realização de consultas
– viabiliza análise de grandes sistemas
• Não exposição do código
– impede a extração do código-fonte
– restrições de propriedade
joao.santos@uniriotec.br
11. Representação Proposta
• CodeMI
– Baseado no formato XMI v2.1
• Requisitos
– Baixa verbosidade
– Baixa exposição do código-fonte
– Granularidade em nível de pacote
– Independência de linguagem de programação
– Alinhamento ao paradigma OO
joao.santos@uniriotec.br
12. Formato XMI
• Troca de modelos entre ferramentas
– Arquitetura MOF (4 camadas)
Nível Descrição
M3 MOF
M2 Metamodelo UML
(elemento: “Classe”)
M1 Elemento UML
(classe: “Hóspede”)
M0 Instâncias de elementos UML
(hospede: “João”)
joao.santos@uniriotec.br
17. Construindo a Representação
• Criação do Parser Java
– Análise dos lexemas da linguagem Java
– Verificação da ordem dos lexemas
– Geração da CodeMI
– JRefactory & Gramática do Java 1.5
Código-fonte Representação
Parser Java
Java CodeMI
joao.santos@uniriotec.br
18. Teste do Parser – Código-fonte
Pacote: org.compiere.process
Classe: CompiereService
Método: terminate
joao.santos@uniriotec.br
19. Engenharia Reversa & CodeMI
• Engenharia Reversa
– Obtenção de informações de projeto
• CodeMI
– Estendida do formato XMI
– Importação por ferramenta CASE
– Obtenção dos elementos do modelo UML
• Resultados
– Diagramas estruturais (classe, pacote)
• Alto nível de Abstração
• Baixa completeza (detalhamento)
joao.santos@uniriotec.br
20. Reengenharia & CodeMI
• Reengenharia
– Reconstrução do sistema
– Utilizando documentação – Engenharia Reversa
– Dificultada (baixa completeza)
• CodeMI
– Inviabilidade de extração do código-fonte (XSLT)
Preservação dos detalhes do código-fonte da CodeMI.
joao.santos@uniriotec.br
21. Avaliação - Extração de Métricas
• Coleta de métricas
– Suíte de métricas de Lorenz & Kidd (projeto)
– Suíte de métricas de Chidamber & Kemerer
– Complexidade ciclomática (McCabe – Myers)
– Tamanho (LOC)
• Utilização de transformações XSLT
joao.santos@uniriotec.br
23. Avaliação - Estudo de Caso
• Compiere
– Médio porte
– Gestão empresarial - ERP
– Gestão de relacionamento com cliente - CRM
– Open source
– Comércio, indústria e serviços
Extrair Converter
Obter
Versão do Código- Coletar
Repositório
Código- fonte para Métricas
CVS
fonte CodeMI
joao.santos@uniriotec.br
25. Estudo de Caso – Coleta de Métricas
Lorenz & Kidd
Tamanho do Método (LOC)
Tamanho Médio do Método
Número de Métodos Públicos de Instância (PIM)
Número de Métodos de Instância numa Classe (NIM) Complexidade Ciclomática
Média dos Métodos de Instância por Classe (ANIM) McCabe
Número de Atributos de Instância numa Classe (NIA) Myers
Média de Atributos de Instância por Classe (ANIA)
Número de Métodos de Classe numa Classe (NCM)
Média dos Métodos de Classe por Classe (ANCM)
Número de Atributos de Classe numa Classe (NCA) Chidamber & Kemerer
Média dos Atributos de Classe por Classe (ANCA) Métodos Ponderados por Classe (WMC)
Número de Parâmetros por Método (PPM) Número de Filhos (NOC)
joao.santos@uniriotec.br
27. Ambiente de Suporte a Pesquisas
• CodeMI – Coletas periódicas
• Acompanhar evolução das métricas
• Elaboração de séries temporais
• Proposição de novas métricas
• Evolução de softwares industriais
• Interface com as empresas
joao.santos@uniriotec.br
30. Contribuições
• Conjunto de marcadores - Métricas estruturais
• CodeMI
• Parser Java
• XSLT – suíte de métricas
• Estudo de Caso – Compiere
• Proposta do ambiente de suporte à pesquisa
joao.santos@uniriotec.br
31. Limitações
• Parser – Gramática Java 1.5
• Engenharia Reversa parcial (baixa
completeza)
• XSLT - coletar métricas em nível de sistema
– Ausência de operação de junção (join)
joao.santos@uniriotec.br
32. Conclusões
• Representação Genérica
• Granularidade em Nível de Pacote
• Baixa Verbosidade
• Baixa Exposição do Código-Fonte
joao.santos@uniriotec.br
33. Trabalhos Futuros
• Implementação do ambiente proposto
• Analisar repositórios industriais de controle de
versão
• Construção do parser/plug-in para outras
linguagens
• Extrair métricas ao longo do tempo
• Utilização da representação para construção de
séries históricas das métricas
• Realização de estimativas e simulações utilizando
estas séries históricas
joao.santos@uniriotec.br