• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 1284
  • 99
  • 38
  • 16
  • 13
  • 13
  • 13
  • 11
  • 2
  • 2
  • 2
  • 2
  • 2
  • Tagged with
  • 1432
  • 1432
  • 393
  • 311
  • 309
  • 308
  • 299
  • 298
  • 293
  • 286
  • 281
  • 239
  • 139
  • 129
  • 115
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
221

Implementação em FPGA de uma biblioteca parametrizável para inversão de matrizes baseada no algoritmo Gauss-Jordan, usando representação em ponto flutuante

Arias García, Janier 24 September 2010 (has links)
Dissertação (mestrado)—Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2010. / Submitted by Albânia Cézar de Melo (albania@bce.unb.br) on 2011-04-12T16:33:59Z No. of bitstreams: 1 2010_JanierAriasGarcia.pdf: 1477625 bytes, checksum: 49f129291f7b6557c3d4729d552f872f (MD5) / Approved for entry into archive by Guimaraes Jacqueline(jacqueline.guimaraes@bce.unb.br) on 2011-05-20T15:41:00Z (GMT) No. of bitstreams: 1 2010_JanierAriasGarcia.pdf: 1477625 bytes, checksum: 49f129291f7b6557c3d4729d552f872f (MD5) / Made available in DSpace on 2011-05-20T15:41:00Z (GMT). No. of bitstreams: 1 2010_JanierAriasGarcia.pdf: 1477625 bytes, checksum: 49f129291f7b6557c3d4729d552f872f (MD5) / As operações computacionais em que se desenvolvem cálculos matriciais são à base, ou melhor, o coração de muitos algoritmos computacionais científicos, por exemplo: processamento de sinais,visão computacional, robótica, entre outros. Esse tipo de algoritmos em que desenvolvem-se cálculos matriciais terminam sendo tarefas computacionalmente custosas, e suas implementações em hardware exigem grandes esforços e tempo. Existe então uma crescente demanda por arquiteturas que permitam cálculos matriciais, proporcionando soluções rápidas e eficientes para este tipo de problema. Este trabalho apresenta diferentes arquiteturas computacionais para inverter matrizes em hardware reconfigurável, FPGA: (a) sequencial, (b) pipeline e (c) Paralelo. Estas arquiteturas usam uma representação de ponto flutuante tanto em precisão simples (32 bits) quanto precisão dupla (64 bits), visando o uso em implementações de baixo consumo de recursos lógicos, na qual a unidade principal é o componente de processamento para redução Gauss-Jordan. Esse componente consiste de outras pequenas unidades organizadas de tal forma que mantêm a precisão dos resultados sem a necessidade de internamente normalizar e de-normalizar os dados em ponto flutuante. No intuito de gerar arquiteturas de baixo custo, este trabalho propõe o estudo de diferentes formas de abordar o problema, descrevendo em código VHDL estas arquiteturas em que os tamanhos de matrizes são definidos pelos usuários. Os resultados de erro e de tempo de execução das arquiteturas desenvolvidas foram comparados contra o MatLab, que faz uma simulação comportamental do código VHDL gerado através do ambiente de simulação ModelSim. A implementação das operações e da própria unidade procura explorar os recursos disponíveis na FPGA Virtex-5. O desempenho e o consumo de recursos são apresentados, comparando as diferentes arquiteturas desenvolvidas entre si e entre outras arquiteturas propostas encontradas em publicações anteriores. Além disso, é mostrado o decremento no desempenho a medida que o tamanho da matriz aumenta. ______________________________________________________________________________ ABSTRACT / Computer operations demanding matrix calculations are at the heart of many scientific computing algorithms such as: signal processing, computer vision, robotics, among others. Because these algorithms perform matrix calculations, they are often computationally expensive, and their hardware implementations require much effort and time. So there is a growing demand for architectures that perform matrix calculations, fast and efficiently. This work presents different computer architectures for matrix inversion in FPGA reconfigurable hardware: (a) sequential, (b) pipeline and (c) Parallel. These architectures use a floating point representation in both single-precision (32 bit) and double precision (64 bits), suitable for use in low cost implementations, and where main component is Gauss-Jordan reduction. This component consists of other small units arranged in such a way that maintains the accuracy of results without the need of internally normalizing and de-normalizing the floating point data. In order to generate low-cost architectures, this work proposes to study different ways of approaching the problem in VHDL code, and allowing that sizes of matrices be defined by users. All architectures were simulated using MatLab, with a behavioral simulation of VHDL code generated by ModelSim simulation environment. As a result of comparing the error obtained by the architecture, with the inversion performed using MatLab as static estimator. The implementation of operations and the unit seeks to explore the resources available in Virtex-5 FPGA. The performance and resource consumption are presented, comparing the different architectures developed between themselves and with others proposed in previous publications. In addition, it is shown the influence of the array size in the performance.
222

Metamodelo de indicadores de desempenho : uma proposta para centrais de atendimento

Nagamine, José Carlos 24 June 2010 (has links)
Dissertação (mestrado)-Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Elétrica, 2010. / Submitted by Allan Wanick Motta (allan_wanick@hotmail.com) on 2011-05-17T17:55:52Z No. of bitstreams: 1 2010_JoseCarlos Nagamine.pdf: 2624547 bytes, checksum: 74bc2835f848d9e30d8f7c55e3889c6f (MD5) / Approved for entry into archive by Daniel Ribeiro(daniel@bce.unb.br) on 2011-05-21T00:08:31Z (GMT) No. of bitstreams: 1 2010_JoseCarlos Nagamine.pdf: 2624547 bytes, checksum: 74bc2835f848d9e30d8f7c55e3889c6f (MD5) / Made available in DSpace on 2011-05-21T00:08:31Z (GMT). No. of bitstreams: 1 2010_JoseCarlos Nagamine.pdf: 2624547 bytes, checksum: 74bc2835f848d9e30d8f7c55e3889c6f (MD5) / A motivação deste trabalho de pesquisa foi a constatação de ocorrência constante de mudanças de diretrizes estratégicas e dinâmica agressiva em ambientes de operação de Centrais de Atendimento, causando problemas de qualidade de atendimento, desalinhamentos organizacionais, sub-otimização de investimentos, e principalmente, falha no alcance das metas estratégicas da empresa. O objetivo foi entender como realizar o alinhamento e integração de indicadores de desempenho em empresas de serviços, e em particular em processos de Centrais de Atendimento, com a finalidade de garantir a dirigibilidade destas empresas rumo aos seus objetivos estratégicos. Foi realizada uma revisão de literatura sobre o estágio atual em relação ao tema: conceituação de indicadores de desempenho como ferramenta de implementação de estratégias e fatores de falha no uso da mesma; panorama da área de Centrais de Atendimento mostrando as complexidades do planejamento e gestão operacional, tecnologias envolvidas e relacionamentos com outras áreas; levantamento de soluções tecnológicas de gestão de desempenho corporativo, gestão de processos de negócio e monitoração de indicadores; alinhamento da área de TI com objetivos de negócio, pelo seu impacto em desempenho de processos em geral. Pela análise deste contexto atual, verificaram-se necessidades e foram propostas as seguintes soluções: uma Estrutura de Indicadores de Desempenho, que provê diretrizes para organização de indicadores para garantir a visão alinhada e integrada globalmente; e um Metamodelo de atuação sobre os indicadores para maior agilidade em mudanças. Verificou-se também, que o mercado já provê soluções tecnológicas que podem ser adequadas para implementação das proposições de Estrutura e Metamodelo de Indicadores deste trabalho de pesquisa. _________________________________________________________________________________ ABSTRACT / The motivation of this research was the perception of constant changes in strategic directions and aggressive dynamic found in Call Center operation environments, causing lack of quality in the customer care service, organizational miss-alignments, investments looses, and mainly, fault to reach the strategic goals of the company. The objective was to better understand how to achieve the alignment and integration of performance indicators for services companies, and in particular for Call Center processes, in order to guarantee to drive those companies into their strategic goals. It was performed a review of literature about the state of art regarding this subject: concepts of performance indicators as a tool for strategy implementation and issues found during its usage; overview of Call Center arena showing the complexities of its planning and operational management, related technologies and relationships with other departments; research of technological solutions for Corporate Performance Management, Business Process Management and performance indicators monitoring; IT and business alignment, because of its impact in performance of processes, in general. In the analysis of this current context, were found necessities and were proposed the following solutions: a Framework of Performance Indicators, to provide directions on how to structure indicators in order to guarantee a globally aligned and integrated view; and a Meta-Model, to provide an actionable approach over indicators to guarantee agility during changes. It was found too, that the market already provides technological solutions that can be adjusted for implementations based on the proposed Framework and Meta-Model presented in this research.
223

APSEE-Tail : um modelo de apoio à adaptação de processos de software

Maia, Anderson Baia January 2005 (has links)
O crescimento experimentado pela indústria do software nas últimas décadas, trouxe consigo o aumento das exigências do mercado. É exigido das organizações de software, que os sistemas sejam construídos de acordo com prazo e custos determinados, obedecendo-se certos padrões de qualidade. Para atender tais exigências e assim obter o diferencial competitivo, tornou-se necessário investir no processo de desenvolvimento de software, dada a relação cada vez mais evidente entre a qualidade do produto de software e a eficiência e eficácia do processo de desenvolvimento adotado. Uma estratégia na busca pela maturidade em termos de processos é a definição e adoção de um processo único a ser seguido em todos os projetos de uma organização, denominado processo padrão. Levando-se em consideração a singularidade de cada novo projeto de software, é natural presumir que o processo padrão tenha de ser adaptado para as necessidades específicas de cada situação, de forma a ser aceito, ter seu uso maximizado e garantir a qualidade do software a ser produzido. Este trabalho apresenta, assim, o APSEE-Tail, um modelo para apoiar o engenheiro de processos na tarefa de adaptar o processo padrão de uma organização de software para as particularidades de cada um de seus projetos, possibilitando maior efetividade e eficiência no uso do mesmo. Sua abordagem de adaptação é livre, orientada à atividades e baseada no raciocínio, através da combinação das técnicas de interpretação de regras e CBR (Case Based Reasoning), sobre o conhecimento necessário. Tal conhecimento, neste trabalho, é agrupado em três categorias: diretrizes de adaptação do processo padrão, tipos de característica usados para definir os projetos de software e informações sobre adaptações realizadas anteriormente. Os diferentes componentes envolvidos na definição do APSEE-Tail foram especificados algebricamente, o que constituiu uma base semântica de alto nível de abstração e possibilitou a construção de um protótipo, implementado no ADS (Ambiente de Desenvolvimento de Software) Prosoft-Java e fracamente acoplado ao APSEE, um ambiente de engenharia de software centrado no processo também prototipado no Prosoft-Java, tornando-se assim parte do meta-processo adotado pelo mesmo. O texto apresenta ainda alguma fundamentação teórica sobre a área de Adaptação de Processos de Software, considerações sobre as abordagens pesquisadas, enfatizando as que mais influenciaram o APSEE-Tail, e um exemplo de aplicação do protótipo construído. Por fim, são apresentadas as contribuições e limitações da proposta, na visão do autor, bem como os trabalhos futuros vislumbrados.
224

fwWorkCell : framework para a construção de simuladores didáticos de células de trabalho

Cardoso, Fernando Henrique January 2005 (has links)
Braços robóticos articulados são cada vez mais utilizados hoje em dia e consistem de dispositivos mecânicos programáveis, equipados com sensores e atuadores sob o controle de um sistema computacional. Existem atualmente no mercado inúmeros fabricantes e modelos destes braços, cada um adequado a uma determinada utilização ou faixa de mercado. Para que se saiba operar devidamente este robô é necessário um período de aprendizagem. Essa necessidade pode ser suprida pelo emprego dos simuladores de braços robóticos.Desenvolver um simulador é uma atividade complexa, mas alguns elementos de sua estrutura e de seu comportamento são comuns a vários tipos de simuladores e podem idealmente ser reusados. Permitir reuso de código e de projeto é exatamente um dos principais fatores que motivaram a construção de um framework. Este trabalho descreve a definição e a construção do fwWorkCell , um framework que permita agilizar a construção destes simuladores. Tal agilidade será obtida através da implementação de um ambiente de edição e de classes genéricas para controle, visualização e programação dos robôs. A proposta deste framework inclui definição de classes genéricas e de controle, a construção de todo um ambiente de suporte à manipulação e visualização das células de trabalho e suas simulações e visa dar suporte à construção de uma grande variedade de simuladores. O framework proposto foi utilizado em uma aplicação real: através dele foi feita a migração de um simulador já existente.
225

Workflow de autoria de cursos para educação a distância com suporte à cooperação

Araujo, Valeria de January 2003 (has links)
As exigências sociais atuais levam ao repensar das ações educacionais, evidenciando a Educação a Distância (EAD). Esta modalidade de educação, embasada por concepções pedagógicas consistentes e associada às tecnologias de informática e comunicação, é capaz de alavancar novos modelos rompendo com os já estabelecidos. As tecnologias de workflow se apresentam como uma alternativa à modelagem de cursos para EAD. Um workflow permite organizar e descrever todo o processo que está sendo modelado, a partir de suas atividades. Da mesma forma modelos de construção de cursos para EAD sugerem a separação do processo em etapas compostas por atividades. A autoria destes cursos acontece por meio de equipes multidisciplinares atuando em trabalho cooperativo. A cooperação na equipe de autoria é fundamentada pelos requerimentos de apoio à sua efetividade, de acordo com os comportamentos e funcionalidades cooperativas. No trabalho de Sizilio é sugerida a utilização de um workflow para guiar as atividades de autoria de um curso para EAD. Note-se que o workflow de autoria proposto por Sizilio considera apenas um autor para a construção do curso, não contemplando a autoria feita por uma equipe de autores desempenhando um trabalho cooperativo. O objetivo desta dissertação é especificar um workflow de autoria de cursos para EAD com suporte à cooperação, a partir do workflow de Sizilio. Este workflow constitui um modelo formal de construção cooperativa de cursos nesta modalidade educacional. O trabalho apresenta, além da proposta do workflow de autoria de cursos para EAD com suporte à cooperação, fundamentos e particularidades da EAD sob a ótica da autoria de cursos. Analisa, ainda, a cooperação vislumbrando as equipes de autoria em trabalho cooperativo e a tecnologia de modelagem de workflow aplicada a cursos de EAD. A análise de viabilidade do workflow proposto e do suporte oferecido ao desenvolvimento cooperativo de um curso foi feita através de estudo de caso real, sendo apresentados os comentários do grupo envolvido na autoria do curso.
226

Innovative Behavior Model of Software Professionals

Monteiro, Cleviton Vinicius Fonseca 25 November 2014 (has links)
Submitted by Lucelia Lucena (lucelia.lucena@ufpe.br) on 2015-03-06T18:40:57Z No. of bitstreams: 2 DISSERTAÇÃO Cleviton Vinicius Fonseca Monteiro.pdf: 2456824 bytes, checksum: d373c5c6116f63a58b2bffd2b1772776 (MD5) license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) / Made available in DSpace on 2015-03-06T18:40:57Z (GMT). No. of bitstreams: 2 DISSERTAÇÃO Cleviton Vinicius Fonseca Monteiro.pdf: 2456824 bytes, checksum: d373c5c6116f63a58b2bffd2b1772776 (MD5) license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) Previous issue date: 2014-11-25 / CAPES, Emerging Leaders in the Americas Program (ELAP) / Background: Innovation has been recognized as an important, if not essential condition to gain competitive advantage and survive in the software industry. From the initial moments of any innovation process, the company`s employees play an essential role. They are the ones who should engage in the search for opportunities as well as generate and implement new ideas. Their behavior towards innovation is called innovative behavior and it can be observed at different levels on each professional. Goal: The aim of this study is to build a model to explain which factors influence the innovative behavior of individuals in software development teams. To achieve higher explanatory power and close the gap of current researches, which are mostly based on quantitative data, this model was built grounded on deep analysis of rich qualitative and quantitative data. Method: A mix method research composed of a systematic literature review (SLR) and two industrial case studies were used to analyze the phenomenon of innovative behavior. The SLR analyzed 80 primary studies, from an initial set of 10.399 articles. The first case study was conducted on a small Canadian software firm, involving 2 projects and 6 participants, and its results were used to produce an initial model. The second case study was performed on a large Brazilian software organization, involving 8 projects and over 60 participants. Results: The resulting model, called IBMSW, confirmed several antecedents from previous models as well as proposed new antecedents of innovative behavior. In particular, the findings showed that the individual’s personality exert influence on individual’s innovative behavior and two competing explanations were identified. Conclusion: The results obtained provided explanatory power to the innovative behavior model as well as showed the importance to study such phenomena in the software industry. In addition, several recommendations for practitioners from different organizational levels were provided based on the IBMSW.
227

Análise da qualidade de experimentos controlados no contexto da engenharia de software empírica

Teixeira, Eudis Oliveira 21 May 2014 (has links)
Submitted by Luiz Felipe Barbosa (luiz.fbabreu2@ufpe.br) on 2015-03-09T12:40:59Z No. of bitstreams: 2 Dissertação Eudis Oliveira Teixeira.pdf: 798899 bytes, checksum: ddf3f89677d105c4b5f8c29f5c0fdb3a (MD5) license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) / Made available in DSpace on 2015-03-09T12:40:59Z (GMT). No. of bitstreams: 2 Dissertação Eudis Oliveira Teixeira.pdf: 798899 bytes, checksum: ddf3f89677d105c4b5f8c29f5c0fdb3a (MD5) license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) Previous issue date: 2014-05-21 / Contexto – Considerando o aumento do interesse em pesquisas que conduzem Estudos Empíricos (EE), assim como, do aumento no número de pesquisadores e instituições em todo o mundo que investigam processos experimentais em Engenharia de Software (ES), autores têm criticado a falta de qualidade e padronização dos experimentos quanto aos métodos, procedimentos e forma de divulgar os resultados de EE. Objetivo – Realizar uma análise quantitativa da qualidade dos estudos categorizados como experimentos controlados no contexto da comunidade de Engenharia de Software Empírica (ESE) quanto aos mecanismos de suporte utilizados, replicabilidade e rigor estatístico. Método – Em virtude de não ter encontrado na literatura revisada um padrão de perguntas para avaliar a qualidade de EE em ES, decidiu-se criar uma escala de qualidade baseada, principalmente, em listas de verificação amplamente utilizadas por pesquisadores da área de ES. O método de procedimento utilizado foi a abordagem GQM - Goal Question Metric, composta pelas fases: definição, planejamento, coleta e interpretação. Resultados – Os estudos que mencionaram o uso de mecanismos de suporte tiveram um índice de qualidade igual a 58,54, numa escala que vai de zero a cem pontos, enquanto aos que não usaram, tiveram um índice igual a 51,32. A classificação da variável replicabilidade e rigor estatístico foi respectivamente 63,42 (Boa) e 70,79 (Muito Boa) e, no geral, os resultados mostraram que o índice de qualidade dos estudos foi 57,15, sendo que entre os locais avaliados, houve diferença estatisticamente significativa apenas quando comparamos o Journal (ESEJ) com os outros dois locais pesquisados (EASE e ESEM). Conclusões – Houve evolução significativa na qualidade dos experimentos que relatou o uso de mecanismos de suporte, o que evidencia a importância da aplicação de metodologias de apoio que permitam planejar, executar e analisar resultados de EE em ES. Porém, o índice de qualidade dos estudos não apresentou diferenças estatísticas EUDIS OLIVEIRA TEIXEIRA no período avaliado, o que preocupa, pois não foram identificados avanços significativos na qualidade ao longo dos anos. Vale ressaltar que o instrumento de qualidade desenvolvido está estruturado de tal maneira que possa ser evoluído para avaliar a qualidade de outros tipos de estudos, uma vez que apresenta critérios gerais e outros específicos. Além dos resultados encontrados, espera-se ter contribuído, também, no sentido de prover às outras pesquisas uma compreensão sobre um modelo, processo ou guia que possa dar suporte à avaliação da qualidade de EE e com isso outros pesquisadores conduzam estudos com maior qualidade.
228

O impacto do crescimento de equipes de software nos fatores individuais e nos processos de grupo: um estudo de caso

Dias, Fernanda Nóbrega Martins 05 September 2013 (has links)
Submitted by João Arthur Martins (joao.arthur@ufpe.br) on 2015-03-10T18:23:12Z No. of bitstreams: 2 Dissertacao Fernanda Dias.pdf: 2340146 bytes, checksum: d55463c3bdd860fd38bfed5a5b17fa4a (MD5) license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) / Made available in DSpace on 2015-03-11T17:40:51Z (GMT). No. of bitstreams: 2 Dissertacao Fernanda Dias.pdf: 2340146 bytes, checksum: d55463c3bdd860fd38bfed5a5b17fa4a (MD5) license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) Previous issue date: 2013-09-05 / O interesse em compreender o impacto dos fatores humanos no desenvolvimento de software vem despertando interesse crescente para a realização de pesquisas. Neste cenário, a mudança ocasionada pela expansão de uma equipe pode causar alguns impactos, entre eles, estruturais (papéis, composição da equipe etc.) e psicossociais (motivação, comunicação, coesão etc.). Entretanto, para a engenharia de software, não foi encontrado nenhum estudo que analise as implicações deste tipo de mudança. Objetivo: Esta pesquisa tem como objetivo analisar a expansão do tamanho de uma equipe de software com o propósito de identificar quais fatores impactam os membros em nível individual e em nível de equipe, do ponto de vista de gerentes de projeto, membros de recursos humanos, líderes de equipe, líderes técnicos e engenheiros de software, no contexto de um projeto industrial de desenvolvimento de software para dispositivos móveis, localizado no Centro de Informática da Universidade Federal de Pernambuco. Método: Foi realizado um estudo de caso, com características etnográficas, possuindo como técnicas de coleta de dados entrevistas e observações, e tendo como unidade de análise 32 colaboradores de uma equipe de desenvolvimento de software para aplicações móveis. Resultados: A pesquisa exploratória foi realizada com um estudo de caso descritivo e longitudinal, que analisou os dados através da Teoria Fundamentada (GroundedTheory). Estes dados proporcionaram a elaboração de um modelo de impacto que foi evidenciado a partir da existência de fatores que causaram impactos estruturais e psicossociais durante a expansão da equipe. Conclusão: Realizar a expansão de uma equipe sem que houvesse uma preparação com estratégias adequadas proporcionou, na equipe estudada, impactos em fatores como comunicação, composição da equipe, integração, motivação, coesão, entre outros. Nesse sentido, a realização desta pesquisa e os resultados encontrados contribuíram para o aumento do conhecimento sobre fatores que precisam de maior atenção quando estamos realizando uma expansão na equipe de software.
229

XDTV: um método ágil para o desenvolvimento de aplicações para TV digital

Godoy Neto, Mario 31 January 2014 (has links)
Submitted by Nayara Passos (nayara.passos@ufpe.br) on 2015-03-12T14:47:20Z No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) TESE Mário Godoy Neto.pdf: 4537800 bytes, checksum: 7f113783ee5f2a1d63a7eeb19a1c1a0a (MD5) / Made available in DSpace on 2015-03-12T14:47:20Z (GMT). No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) TESE Mário Godoy Neto.pdf: 4537800 bytes, checksum: 7f113783ee5f2a1d63a7eeb19a1c1a0a (MD5) Previous issue date: 2014 / Nos últimos tempos, têm surgido cada vez mais dispositivos computacionais com aplicabilidades diversas. Smartphones têm propósitos distintos de tablets, que têm propósitos diferentes de aparelhos de TV, que se apresentam como plataformas de computação não-convencional. Tais distinções apresentam, em especial, implicações merecedoras de estudos sobre o desenvolvimento de software para os mais diferentes dispositivos. Aplicações de software para TV Digital (TVD), por exemplo, possuem peculiaridades que demandam atenção especial em seu processo de desenvolvimento, tais como: coleta de requisitos referentes ao conteúdo multimídia (dimensão, tempo de exibição, posição e sincronismo) e a necessidade de um rápido desenvolvimento das aplicações, ou seja, o mais próximo possível do tempo de produção do conteúdo audiovisual da TV associado à aplicação, como: telejornais, notícias de última hora, publicidade entre outros. A presente pesquisa pretende apontar um método de desenvolvimento de software mais rápido e adequado às peculiaridades das aplicações de TVD. Para isso, através do levantamento bibliográfico foram estudados os métodos ágeis mais utilizados Scrum, eXtreme Programming (XP) e um método híbrido, formado por ambos. Visando avaliar o desempenho de tais métodos, foi realizado o primeiro experimento controlado. Em sequência, a adequação de tais métodos foi novamente avaliada através de um survey com profissionais experientes em TVD. Os resultados obtidos foram analisados através da técnica multicritério de apoio à decisão, que apontaram indícios que o método híbrido é o mais adequado, porém, existem pontos de melhoria que podem aprimorar o processo de desenvolvimento. Os resultados do primeiro experimento associados ao survey viabilizaram a especificação e customização de um novo método híbrido, proposto pela presente tese, denominado eXtreme Digital Television (XDTv) que compartilha da filosofia ágil para auxiliar no tratamento das peculiaridades do ambiente de TVD. Um segundo experimento avaliou o desempenho do método XDTv e o comparou com o método híbrido (Scrum/XP) que foi melhor avaliado no primeiro experimento. Os dados dos experimentos foram coletados sob diferentes perspectivas e as análises permitem concluir que o método XDTv apresentou melhor desempenho, revelando-se mais rápido e mais adequado ao desenvolvimento de aplicações para TV Digital
230

Algebraic laws for object oriented programming with references

PALMA, Giovanny Fernando Lucero 16 March 2015 (has links)
Submitted by Isaac Francisco de Souza Dias (isaac.souzadias@ufpe.br) on 2016-01-19T17:04:34Z No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) GIovannyTesis.pdf: 1126817 bytes, checksum: 54a975f083d8ea416057bffa468c281c (MD5) / Made available in DSpace on 2016-01-19T17:04:34Z (GMT). No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) GIovannyTesis.pdf: 1126817 bytes, checksum: 54a975f083d8ea416057bffa468c281c (MD5) Previous issue date: 2015-03-16 / CAPES / CNPq / There are several approaches to defining a formal semantics of a programming language. The main established ones are operational, denotational and axiomatic semantics. The first two rely on defining an explicit model, whereas the latter one is based on postulating relevant properties of the language in terms of axioms. Particularly, in a purely algebraic approach the axioms take the form of conditional equations (typically denoted as programming laws) that relate the language constructs. Without requiring an explicit model, the advantage of the algebraic approach is incrementality: the language can be extended and the laws tend to remain valid, provided the new constructs do not interfere with the behaviour of the original ones. Algebraic laws have been proposed to uncover interesting properties of several programming paradigms: imperative, logic, functional, concurrent and object oriented, among others. As for the other paradigms, there is a comprehensive set of laws for object oriented constructs, but these are restricted to a language with copy semantics; some laws to deal with references have also been proposed, but these are tailored to specific applications, and are far from being comprehensive. In general, formal reasoning with references has been a persistent challenge and algebraic approaches usually have avoided including them in programming languages. We propose a set of algebraic laws for reasoning about object oriented programs with a reference semantics. First we focus on sequential imperative programs that use object references like in Java. The theory is based on previous work by adding laws to cope with object references. The incrementality of the algebraic method is fundamental; with a few exceptions, existing laws for copy semantics are entirely reused, as they are not affected by the reference semantics. As an evidence of relative completeness, we show that any program can be transformed, through the use of our laws, to a normal form which simulates it using an explicit heap with copy semantics. Soundness is addressed by illustrating how some of the laws can be proved in a relational semantics for a subset of the language. We extend the theory of imperative programs for an object oriented language with the usual constructs: additional imperative commands with references, classes with inheritance and subtyping, visibility control, dynamic binding, type tests and downcasts. Algebraic laws are proposed for these new constructs. In order to illustrate the expressiveness of the laws for the object oriented language, we characterize and prove a set of refactorings from Fowler’s catalog. These are contrasted with previous work that formalized refactorings in the context of copy semantics. / Existem várias abordagens para descrever formalmente a semântica de linguagens de programação. As principais são semântica operacional, denotacional e axiomática. As duas primeiras definem modelos semânticos explícitos enquanto a última postula axiomas que descrevem propriedades relevantes da linguagem. Em uma abordagem puramente algébrica, os axiomas são equações (tipicamente denominadas leis de programação) que relacionam os diversos construtores da linguagem. A vantagem da álgebra é a facilidade de extensão: quando uma linguagem é estendida, a tendencia é que as leis já estabelecidas continuem sendo válidas, desde que os novos contrutores não interfiram com o comportamento dos construtores originais da linguagem Leis algébricas tem sido propostas para estudar propriedades interessantes de vários paradigmas de programação: imperativo, lógico, funcional, concorrente e orientado a objetos, entre outros. Em geral, para todos estes paradigmas existe um conjunto representativo de leis. Porém, para programação orientada a objetos, os trabalhos tem se restringido a linguagens com semântica de cópia ou as leis relacionadas com referências tem sido direcionadas somente para aplicações específicas e estão distantes de serem representativas. Em geral, raciocínio formal com referências tem sido um desafio persistente e os trabalhos algébricos usualmente tem evitado a inclusão de referências nas linguagens de programação. Propomos um conjunto de leis algébricas que permitem raciocinar com programas orientados a objetos com uma semântica de referências. Primeiro, focamos em uma linguagem imperativa sequencial que usa referências a objetos como em Java. A teoria é baseada em trabalhos anteriores adicionando leis que lidam com referências. A facilidade de extensão do método algébrico é fundamental; com poucas exeções, as leis anteriores para semântica de cópia são reusadas, pois elas não são afetadas pela semântica de referência. Como uma evidência de completude relativa, mostramos que qualquer programa pode ser transformado, usado as leis, em uma forma normal que simula o programa original usando um heap explícito com semântica de cópia. A consistência (soundness) das leis é abordada ilustrando como algumas das leis podem ser provadas em uma semântica relacional para um subconjunto da linguagem. Estendemos a teoria de programas imperativos para uma linguagem orientada a objetos com os habituais construtores: comandos imperativos adicionais com referências, classes com herança e subtipos, controle de visibilidade, amarração dinâmica, e testes e casts de tipos. Leis são propostas para estes novos construtores. Para ilustrar a expressividade das leis para a linguagem orientada a objetos, caracterizamos e provamos um conjunto de refatorações do catalógo clássico de Fowler. Comparamos nossa apresentação com trabalhos anteriores que formalizaram refatorações em um contexto de semântica de cópia.

Page generated in 0.0956 seconds