787 resultados para Cross-platform software development
Resumo:
This article examines the philosophy and practice of open-source technology in the development of the jam2jam XO software for the One Laptop Per Child (OLPC) computer. It explores how open-source software principles, pragmatist philosophy, improvisation and constructionist epistemologies are operationalized in the design and development of music software, and how such reflection reveals both the strengths and weaknesses of the open-source software development paradigm. An overview of the jam2jam XO platform, its development processes and music educational uses is provided and resulting reflections on the strengths and weaknesses of open-source development for music education are discussed. From an educational and software development perspective, the act of creating open-source software is shown to be a valuable enterprise, however, just because the source code, creative content and experience design are accessible and 'open' to be changed, does not guarantee that educational practices in the use of that software will change. Research around the development and use of jam2jam XO suggests that open-source software development principles can have an impact beyond software development and on to aspects of experience design and learning relationships.
Resumo:
This paper explores the renewed interest in the creative economy as a possible development pathway for developing nations. Noting the extent to which discussions of creative industries frequently merge into the concept of a creative economy, the paper considers the institutional and public policy settings required to capture economic value associated with creative practice. It is also argued that knowledge economy and creative economy discourses are increasingly merging, particularly in their focus upon design, innovation, software development and convergent media. The paper draws attention to ambiguities in policy discourse, particularly in relation to copyright and intellectual property.
Resumo:
This paper describes the content and delivery of a software internationalisation subject (ITN677) that was developed for Master of Information Technology (MIT) students in the Faculty of Information Technology at Queensland University of Technology. This elective subject introduces students to the strategies, technologies, techniques and current development associated with this growing 'software development for the world' specialty area. Students learn what is involved in planning and managing a software internationalisation project as well as designing, building and using a software internationalisation application. Students also learn about how a software internationalisation project must fit into an over-all product localisation and globalisation that may include culturalisation, tailored system architectures, and reliance upon industry standards. In addition, students are exposed to the different software development techniques used by organizations in this arena and the perils and pitfalls of managing software internationalisation projects.
Resumo:
The detection and correction of defects remains among the most time consuming and expensive aspects of software development. Extensive automated testing and code inspections may mitigate their effect, but some code fragments are necessarily more likely to be faulty than others, and automated identification of fault prone modules helps to focus testing and inspections, thus limiting wasted effort and potentially improving detection rates. However, software metrics data is often extremely noisy, with enormous imbalances in the size of the positive and negative classes. In this work, we present a new approach to predictive modelling of fault proneness in software modules, introducing a new feature representation to overcome some of these issues. This rank sum representation offers improved or at worst comparable performance to earlier approaches for standard data sets, and readily allows the user to choose an appropriate trade-off between precision and recall to optimise inspection effort to suit different testing environments. The method is evaluated using the NASA Metrics Data Program (MDP) data sets, and performance is compared with existing studies based on the Support Vector Machine (SVM) and Naïve Bayes (NB) Classifiers, and with our own comprehensive evaluation of these methods.
Resumo:
Software development settings provide a great opportunity for CSCW researchers to study collaborative work. In this paper, we explore a specific work practice called bug reproduction that is a part of the software bug-fixing process. Bug re-production is a highly collaborative process by which software developers attempt to locally replicate the ‘environment’ within which a bug was originally encountered. Customers, who encounter bugs in their everyday use of systems, play an important role in bug reproduction as they provide useful information to developers, in the form of steps for reproduction, software screenshots, trace logs, and other ways to describe a problem. Bug reproduction, however, poses major hurdles in software maintenance as it is often challenging to replicate the contextual aspects that are at play at the customers’ end. To study the bug reproduction process from a human-centered perspective, we carried out an ethnographic study at a multinational engineering company. Using semi-structured interviews, a questionnaire and half-a-day observation of sixteen software developers working on different software maintenance projects, we studied bug reproduction. In this pa-per, we present a holistic view of bug reproduction practices from a real-world set-ting and discuss implications for designing tools to address the challenges developers face during bug reproduction.
Resumo:
Models are abstractions of reality that have predetermined limits (often not consciously thought through) on what problem domains the models can be used to explore. These limits are determined by the range of observed data used to construct and validate the model. However, it is important to remember that operating the model beyond these limits, one of the reasons for building the model in the first place, potentially brings unwanted behaviour and thus reduces the usefulness of the model. Our experience with the Agricultural Production Systems Simulator (APSIM), a farming systems model, has led us to adapt techniques from the disciplines of modelling and software development to create a model development process. This process is simple, easy to follow, and brings a much higher level of stability to the development effort, which then delivers a much more useful model. A major part of the process relies on having a range of detailed model tests (unit, simulation, sensibility, validation) that exercise a model at various levels (sub-model, model and simulation). To underline the usefulness of testing, we examine several case studies where simulated output can be compared with simple relationships. For example, output is compared with crop water use efficiency relationships gleaned from the literature to check that the model reproduces the expected function. Similarly, another case study attempts to reproduce generalised hydrological relationships found in the literature. This paper then describes a simple model development process (using version control, automated testing and differencing tools), that will enhance the reliability and usefulness of a model.
Resumo:
Information sharing in distance collaboration: A software engineering perspective, QueenslandFactors in software engineering workgroups such as geographical dispersion and background discipline can be conceptually characterized as "distances", and they are obstructive to team collaboration and information sharing. This thesis focuses on information sharing across multidimensional distances and develops an information sharing distance model, with six core dimensions: geography, time zone, organization, multi-discipline, heterogeneous roles, and varying project tenure. The research suggests that the effectiveness of workgroups may be improved through mindful conducts of information sharing, especially proactive consideration of, and explicit adjustment for, the distances of the recipient when sharing information.
Resumo:
The current study describes the evolution of microstructure and texture in an Al-Zn-Mg-Cu-Zr-based 7010 aluminum alloy during different modes of hot cross-rolling. Processing of materials involves three different types of cross-rolling. The development of texture in the one-step cross-rolled specimen can be described by a typical beta-fiber having the maximum intensity near Copper (Cu) component. However, for the multi-step cross-rolled specimens, the as-rolled texture is mainly characterized by a strong rotated-Brass (Bs) component and a very weak rotated-cube component. Subsequent heat treatment leads to sharpening of the major texture component (i.e., rotated-Bs). Furthermore, the main texture components in all the specimens appear to be significantly rotated in a complex manner away from their ideal positions because of non-symmetric deformations in the two rolling directions. Detailed microstructural study indicates that dynamic recovery is the dominant restoration mechanism operating during the hot rolling. During subsequent heat treatment, static recovery dominates, while a combination of particle-stimulated nucleation (PSN) and strain-induced grain boundary migration (SIBM) causes partial recrystallization of the grain structure. The aforementioned restoration mechanisms play an important role in the development of texture components. The textural development in the current study could be attributed to the combined effects of (a) cross-rolling and inter-pass annealing that reduce the intensity of Cu component after each successive pass, (b) recrystallization resistance of Bs-oriented grains, (c) stability of Bs texture under cross-rolling, and (d) Zener pinning by Al3Zr dispersoids.
Resumo:
Reporta resultados da aplicação de princípios da gestão do conhecimento na condução de um projeto de definição, modelagem e implementação de processo de desenvolvimento de software, no contexto de uma organização do setor público. O processo resultante, denominado SIGA-ME, se mostrou capaz de harmonizar práticas variadas, integrar processos técnicos de TI e formalizar papeis e responsabilidades dos participantes envolvidos. Estão relatadas neste trabalho as principais dificuldades encontradas e lições aprendidas registradas ao longo do trabalho, que adotou como estratégia o levantamento dos pontos de interesse das áreas envolvidas, a validação de práticas em projetos reais, o desenho do processo através da notação BPMN e a utilização do MediaWiki como ferramenta de comunicação, colaboração e compartilhamento de conhecimento.
Resumo:
In the past many different methodologies have been devised to support software development and different sets of methodologies have been developed to support the analysis of software artefacts. We have identified this mismatch as one of the causes of the poor reliability of embedded systems software. The issue with software development styles is that they are ``analysis-agnostic.'' They do not try to structure the code in a way that lends itself to analysis. The analysis is usually applied post-mortem after the software was developed and it requires a large amount of effort. The issue with software analysis methodologies is that they do not exploit available information about the system being analyzed.
In this thesis we address the above issues by developing a new methodology, called "analysis-aware" design, that links software development styles with the capabilities of analysis tools. This methodology forms the basis of a framework for interactive software development. The framework consists of an executable specification language and a set of analysis tools based on static analysis, testing, and model checking. The language enforces an analysis-friendly code structure and offers primitives that allow users to implement their own testers and model checkers directly in the language. We introduce a new approach to static analysis that takes advantage of the capabilities of a rule-based engine. We have applied the analysis-aware methodology to the development of a smart home application.
Resumo:
A tecnologia da informação (TI) transformou o mundo nas últimas décadas e suas contribuições no processamento e disseminação da informação provocaram mudanças radicais no modo de viver das pessoas e afetou profundamente a gestão e a estrutura das organizações. Neste novo cenário, a literatura de negócios vem apresentando registros de desperdício de investimentos na área de tecnologia da informação. As dificuldades em reconhecer valor nos investimentos em TI e os desafios enfrentados na gestão de equipes de desenvolvimento de software são aspectos considerados no problema a ser pesquisado, a saber: a área de TI carece de sistemas de controle gerencial que poderiam minimizar riscos de desperdício de recursos, de baixa produtividade ou de fracasso na implantação do sistema a ser desenvolvido?O objetivo geral desta pesquisa é investigar as dificuldades enfrentadas pelas equipes de desenvolvimento de software para avaliar se há ou não desperdício de recursos, segundo a percepção dos entrevistados e, ainda, se há ou não carência de controle gerencial. Investigar quais poderiam ser os indicadores mais adequados para um sistema de controle gerencial voltados para esta área de atuação da TI e mapear fatores de sucesso estão entre os objetivos específicos da pesquisa. Do ponto de vista metodológico, esta é uma pesquisa exploratória que adota o procedimento de estudo de caso baseado em análise qualitativa. Os resultados alcançados confirmam o problema de desperdício de recursos e de baixa produtividade nas equipes de TI da empresa analisada e apontam para a carência de mecanismos ou processos de controle gerencial.
Resumo:
O contexto da era da informação exige novas habilidades para competir com sucesso, tanto para empresas industriais como para as de serviços. Desde o seu surgimento, a Engenharia de Software tem enfrentado o desafio em estimar, controlar e gerenciar custos no processo de desenvolvimento de software. Os custos são parte de um projeto de software e nem sempre são claramente mensurados. Algumas desenvolvedoras de software são caracterizadas como prestadoras de serviços e as organizações que prestam serviços possuem as mesmas dificuldades em termos gerenciais que as indústrias, elas precisam de sistemas de gestão adequados para gerir seus custos, logo seus recursos. Nesse contexto é que os sistemas de informações contábeis estão inseridos, fornecendo respostas que os gestores necessitam para tomar decisões. Os custos são exemplos desse tipo de informação, pois o seu conhecimento é indispensável para uma boa gerência dos recursos organizacionais. O Custeio Baseado em Atividades (ABC) é uma ferramenta contábil útil para o gerenciamento estratégico dos custos uma vez que os sistemas de custeio tradicionais já não atendem essa necessidade das organizações. Diante desse cenário, o objetivo geral dessa dissertação é aplicar a metodologia de custeio baseado em atividades em um projeto de desenvolvimento de software com a finalidade de gestão de custos. Este pesquisa caracteriza-se como qualitativa descritiva e faz uso do método do estudo de caso. Através desse estudo foi possível comprovar a utilidade do ABC como instrumento de auxílio na gestão de custos nas organizações que prestam serviços em desenvolvimento de software, pois possibilita a visualização da maneira que os recursos são consumidos pelas atividades que agregam e não agregam valor ao negócio e ao cliente.
Resumo:
É descrita a modelagem, para controle, da dinâmica de uma plataforma semisubmersível com seis graus de liberdade. O modelo inclui os efeitos dos tanques de lastro como forças e momentos, assim como a dinâmica da plataforma. Os parâmetros do sistema foram obtidos das características da plataforma e de resultados experimentais obtidos com uma plataforma semisubmersível de dimensões reduzidas. O desenvolvimento de uma metodologia e de um software capazes de determinar o volume submerso e o centro de empuxo de uma estrutura com geometria complexa foram pontos determinantes nessa Dissertação, tendo em vista a complexidade do processo e as importâncias desses parâmetros para o desenvolvimento do modelo. A linearização do modelo permitiu a elaboração de uma estratégia de controle capaz de estabilizar a plataforma mesmo em condições iniciais distantes do equilíbrio. As equações que descrevem o movimento da plataforma nos graus de liberdade vertical, jogo e arfagem foram desenvolvidas. A realocação dos polos e um observador de estado foram utilizados com o objetivo de melhorar o controle do sistema.
Resumo:
A partir dos avanços obtidos pela industria farmacêutica surgiram diversos medicamentos para o combate de enfermidades. Esses medicamentos possuem efeito tópico similar porém com suaves modificações em sua estrutura bioquímica, com isso a concorrência entre as industrias farmacêuticas se torna cada vez mais acirrada. Como forma de comparar a efetividade desses medicamentos, surgem diversas metodologias, com o objetivo de encontrar qual seria o melhor medicamento para uma dada situação. Uma das metodologias estudadas é a comparação mista de tratamentos, cujo objetivo é encontrar a efetividade de determinadas drogas em estudos e/ou ensaios clínicos que abordem, mesmo que de maneira indireta, os medicamentos estudados. A utilização dessa metodologia é demasiadamente complexa pois requer conhecimento de linguagens de programação em ambientes estatísticos além do domínio sobre as metodologias aplicadas a essa técnica. O objetivo principal desse estudo é a criação de uma interface gráfica que facilite a utilização do MTC para usuários que não possuam conhecimento em linguagens de programação, que seja de código aberto e multiplataforma. A expectativa é que, com essa interface, a utilização de técnicas mais abrangentes e avançadas seja facilitada, além disso, venha tornar o ensinamento sobre o tema mais facilitado para pessoas que ainda não conhecem o método
Resumo:
Software importance keeps growing fast and consistently for many organizations. The growth of software functionality in manufactured products and the emergence of digital media, convergent spaces including digital content, software, and multi-channels to the market, are recent examples of organizational changes where software assumed a central position for the corporate strategy. This paper analyzes the alignment between strategic objectives and software development processes at software companies and proposes a methodology to ensure that development processes are aligned with the corporate capabilities required to exploit future market opportunities. The methodology includes the categorization of different software companies according to their core capabilities and the customization of the technology roadmapping technique for software companies. The research process included the realization of case studies and a survey. (c) 2006 PICMET.