947 resultados para component-based software development
The Impact of office productivity cloud computing on energy consumption and greenhouse gas emissions
Resumo:
Cloud computing is usually regarded as being energy efficient and thus emitting less greenhouse gases (GHG) than traditional forms of computing. When the energy consumption of Microsoft’s cloud computing Office 365 (O365) and traditional Office 2010 (O2010) software suites were tested and modeled, some cloud services were found to consume more energy than the traditional form. The developed model in this research took into consideration the energy consumption at the three main stages of data transmission; data center, network, and end user device. Comparable products from each suite were selected and activities were defined for each product to represent a different computing type. Microsoft provided highly confidential data for the data center stage, while the networking and user device stages were measured directly. A new measurement and software apportionment approach was defined and utilized allowing the power consumption of cloud services to be directly measured for the user device stage. Results indicated that cloud computing is more energy efficient for Excel and Outlook which consumed less energy and emitted less GHG than the standalone counterpart. The power consumption of the cloud based Outlook (8%) and Excel (17%) was lower than their traditional counterparts. However, the power consumption of the cloud version of Word was 17% higher than its traditional equivalent. A third mixed access method was also measured for Word which emitted 5% more GHG than the traditional version. It is evident that cloud computing may not provide a unified way forward to reduce energy consumption and GHG. Direct conversion from the standalone package into the cloud provision platform can now consider energy and GHG emissions at the software development and cloud service design stage using the methods described in this research.
Resumo:
Mutation testing has been used to assess the quality of test case suites by analyzing the ability in distinguishing the artifact under testing from a set of alternative artifacts, the so-called mutants. The mutants are generated from the artifact under testing by applying a set of mutant operators, which produce artifacts with simple syntactical differences. The mutant operators are usually based on typical errors that occur during the software development and can be related to a fault model. In this paper, we propose a language-named MuDeL (MUtant DEfinition Language)-for the definition of mutant operators, aiming not only at automating the mutant generation, but also at providing precision and formality to the operator definition. The proposed language is based on concepts from transformational and logical programming paradigms, as well as from context-free grammar theory. Denotational semantics formal framework is employed to define the semantics of the MuDeL language. We also describe a system-named mudelgen-developed to support the use of this language. An executable representation of the denotational semantics of the language is used to check the correctness of the implementation of mudelgen. At the very end, a mutant generator module is produced, which can be incorporated into a specific mutant tool/environment. (C) 2008 Elsevier Ltd. All rights reserved.
Resumo:
The notion of knowledge artifact has rapidly gained popularity in the fields of general knowledge management and more recently knowledge-based systems. The main goal on this paper is to propose and discuss a methodology for the design and implementation of knowledge-based systems founded on knowledge artifacts. We advocate that the systems built according to this methodology can be effective to convey the flow of knowledge between different communities of practice. Our methodology has been developed from the ground up, i.e. we have built some concrete systems based on the abstract notion of knowledge artifact and synthesized our methodology based on reflections upon our experiences building these systems. In this paper, we also describe the most relevant systems we have built and how they have guided us to the synthesis of our proposed methodology. (C) 2008 Elsevier B.V. All rights reserved.
Resumo:
In order to facilitate the development of agent-based software, several agent programming languages and architectures, have been created. Plans in these architectures are often self-contained procedures with an associated triggering event and a context condition, while any further information about the consequences of executing a plan is absent. However, agents designed using such an approach have limited flexibility at runtime, and rely on the designer’s ability to foresee all relevant situations an agent might have to handle. In order to overcome this limitation, we have created AgentSpeak(PL), an interpreter capable of performing state-space planning to generate new high-level plans. As the planning module creates new plans, the plan library is expanded, improving performance over time. However, for new plans to be useful in the long run, it is critical that the context condition associated with new plans is carefully generated. In this paper we describe a plan reuse technique aimed at improving an agent’s runtime performance by deriving optimal context conditions for new plans, allowing an agent to reuse generated plans as much as possible.
Resumo:
As Brazil wants to be perceived as a competitor in providing computer applications and system development services in the global market, the concept of Software Factory gains importance. The metaphor for the 'Factory', when applied to the activity of software development, is used to describe organizations which produce software with a minimum quality standard and at competitive costs. However, the term 'Factory' recalls Fordist concepts, which have been challenged for a few decades in the manufacturing industry. This study analyzed university curricula and how students and teachers perceive the concept of Software Factory and assessed them in relation to the Fordism ------------ post-Fordism /continuum/. It was observed that some of the teachers who have influence over curricula define Software Factories according to Fordist concepts. It was also observed that, despite opportunities for improvements, curricula are adequately structured with regards to the skills a professional at these organizations must possess. We conclude that education provided at the programs being analyzed is adequate, but that it must be supplemented by companies or by the professionals themselves so that the knowledge acquired in the programs may be put in practice.
Alinhamento de expectativas e desempenho organizacional: um estudo sobre os métodos ágeis de gestão.
Resumo:
A adoção dos métodos ágeis de gestão do desenvolvimento de software tem sido uma tendência mundial, considerando-se as empresas do setor de tecnologia. Empresas brasileiras atuando neste mercado não estão apartadas deste quadro, uma vez que o objetivo desses métodos é endereçar um cenário comum a qualquer uma dessas organizações: lidar com a dificuldade de modelar adequadamente os problemas usualmente complexos que são objetivo da construção de um software e com a mudança constante de requisitos que esta situação representa, potencializada ainda mais pela dinâmica frenética da disseminação da informação no século XXI, além de modificar um quadro crônico de fracassos e falhas no setor, visando entregar produtos de qualidade aos seus clientes com o máximo de velocidade. Aspectos internos como o aumento de produtividade e a redução de retrabalho também fazem parte dos objetivos de adoção destas metodologias. O presente estudo visa avaliar os aspectos humanos e culturais envolvidos e identificar a convergência entre as expectativas da empresa e dos empregados quando da adoção de métodos ágeis de gestão, a partir de pesquisa de campo que capturou as reações de um grupo de entrevistados à implantação desses métodos na Módulo Security Solutions, empresa brasileira de tecnologia e serviços, após dois anos de uso interno abrangente. Os resultados apontam para o sucesso da implantação, com reação positiva dos empregados, a despeito da necessidade de endereçamento de aspectos humanos para ajuste do modelo e do impacto negativo da cultura local e organizacional terem sido amplamente percebidos.
Resumo:
A capacidade das empresas multinacionais (EMN) de se adaptar às oportunidades e ameaças de seus mercados é um dos fatores estratégicos de maior importância na dinâmica dos negócios atuais. Essa necessidade de adaptação não se restringe apenas aos países desenvolvidos, mas também aos países emergentes. Nesse contexto faz-se necessário a compreensão da estratégia de empresas multinacionais dos países emergentes através do estudo das capacidades dinâmicas e de seus modelos de gestão. Assim este trabalho teve como objetivo geral analisar o desenvolvimento e a transferência das capacidades dinâmicas entre matriz e subsidiárias. Serviu como fundamento teórico deste estudo, a visão baseada em recursos, a ambidestralidade das organizações (exploration x explotation), as capacidades dinâmicas e os modelos estratégicos de gestão de EMNs. A definição escolhida para as capacidades dinâmicas, “habilidades sistemáticas da organização de integrar, construir e reconfigurar suas competências organizacionais de acordo com as ameaças e oportunidades do mercado”, serviu como base para toda a pesquisa. Em termos metodológicos foi utilizada a abordagem qualitativa, através de estudo de caso único como método de pesquisa. Após definição de alguns critérios (EMNs brasileiras, setor de tecnologia, mais de uma subsidiária e atuação em diversos segmentos) para definição da organização a ser estudada, optou-se pela escolha da empresa Alpha. A coleta de dados sobre a Alpha foi baseada em múltiplas fontes, através de informações secundárias e entrevistas em profundidade realizadas com pessoas chaves da organização para investigar de forma direta os processos, competências e recursos existentes na organização. Foram encontradas duas capacidades dinâmicas na Alpha: “processo de desenvolvimento de software” e “desenvolvimento de novos serviços”. A primeira CD está presente na matriz e nas subsidiarias. Sua transferência se deu de maneira integral a todas as subsidiárias e teve como fatores antecedentes à integração e o contexto competitivo. A segunda CD está presente somente na matriz e teve como principais fatores antecedentes a orientação empreendedora e as iniciativas. Sua transferência não ocorreu para qualquer subsidiária. Após a análise dos resultados pôde-se concluir que as duas capacidades dinâmicas, em especial a CD processo de desenvolvimento de software, é geradora de vantagem competitiva para a Alpha.
Resumo:
Supervisor: Duarte Nuno Jardim Nunes
Resumo:
VALENTIM, R. A. M. ; SOUZA NETO, Plácido Antônio de. O impacto da utilização de design patterns nas métricas e estimativas de projetos de software: a utilização de padrões tem alguma influência nas estimativas?. Revista da FARN, Natal, v. 4, p. 63-74, 2006
Resumo:
This dissertation aims to develop a software applied to a communication system for a wireless sensor network (WSN) for tracking analog and digital variables and control valve of the gas flow in artificial oil s elevation units, Plunger Lift type. The reason for this implementation is due to the fact that, in the studied plant configuration, the sensors communicate with the PLC (Programmable and Logic Controller) by the cables and pipelines, making any changes in that system, such as changing the layout of it, as well as inconveniences that arise from the nature of the site, such as the vicinity s animals presence that tend to destroy the cables for interconnection of sensors to the PLC. For software development, was used communication polling method via SMAC protocol (Simple Medium Access ControlIEEE 802.15.4 standard) in the CodeWarrior environment to which generated a firmware, loaded into the WSN s transceivers, present in the kit MC13193-EVK, (all items described above are owners of Freescale Semiconductors Inc.). The network monitoring and parameterization used in its application, was developed in LabVIEW software from National Instruments. The results were obtained through the observation of the network s behavior of sensors proposal, focusing on aspects such as: indoor and outdoor quantity of packages received and lost, general aspects of reliability in data transmission, coexistence with other types of wireless networks and power consumption under different operating conditions. The results were considered satisfactory, which showed the software efficiency in this communication system
Resumo:
Nowadays, the importance of using software processes is already consolidated and is considered fundamental to the success of software development projects. Large and medium software projects demand the definition and continuous improvement of software processes in order to promote the productive development of high-quality software. Customizing and evolving existing software processes to address the variety of scenarios, technologies, culture and scale is a recurrent challenge required by the software industry. It involves the adaptation of software process models for the reality of their projects. Besides, it must also promote the reuse of past experiences in the definition and development of software processes for the new projects. The adequate management and execution of software processes can bring a better quality and productivity to the produced software systems. This work aimed to explore the use and adaptation of consolidated software product lines techniques to promote the management of the variabilities of software process families. In order to achieve this aim: (i) a systematic literature review is conducted to identify and characterize variability management approaches for software processes; (ii) an annotative approach for the variability management of software process lines is proposed and developed; and finally (iii) empirical studies and a controlled experiment assess and compare the proposed annotative approach against a compositional one. One study a comparative qualitative study analyzed the annotative and compositional approaches from different perspectives, such as: modularity, traceability, error detection, granularity, uniformity, adoption, and systematic variability management. Another study a comparative quantitative study has considered internal attributes of the specification of software process lines, such as modularity, size and complexity. Finally, the last study a controlled experiment evaluated the effort to use and the understandability of the investigated approaches when modeling and evolving specifications of software process lines. The studies bring evidences of several benefits of the annotative approach, and the potential of integration with the compositional approach, to assist the variability management of software process lines
Resumo:
This work presents a proposal of a multi-middleware environment to develop distributed applications, which abstracts different underlying middleware platforms. This work describes: (i) the reference architecture designed for the environment, (ii) an implementation which aims to validate the specified architecture integrating CORBA and EJB, (iii) a case study illustrating the use of the environment, (iv) a performance analysis. The proposed environment allows interoperability on middleware platforms, allowing the reuse of components of different kinds of middleware platforms in a transparency away to the developer and without major losses in performance. Also in the implementation we developed an Eclipse plugin which allows developers gain greater productivity at developing distributed applications using the proposed environment
Resumo:
Aspect Oriented approaches associated to different activities of the software development process are, in general, independent and their models and artifacts are not aligned and inserted in a coherent process. In the model driven development, the various models and the correspondence between them are rigorously specified. With the integration of aspect oriented software development (DSOA) and model driven development (MDD) it is possible to automatically propagate models from one activity to another, avoiding the loss of information and important decisions established in each activity. This work presents MARISA-MDD, a strategy based on models that integrate aspect-oriented requirements, architecture and detailed design, using the languages AOV-graph, AspectualACME and aSideML, respectively. MARISA-MDD defines, for each activity, representative models (and corresponding metamodels) and a number of transformations between the models of each language. These transformations have been specified and implemented in ATL (Atlas Definition Language), in the Eclipse environment. MARISA-MDD allows the automatic propagation between AOV-graph, AspectualACME, and aSideML models. To validate the proposed approach two case studies, the Health Watcher and the Mobile Media have been used in the MARISA-MDD environment for the automatic generation of AspectualACME and aSideML models, from the AOV-graph model