416,090 research outputs found
An Open Framework for Extensible Multi-Stage Bioinformatics Software
In research labs, there is often a need to customise software at every step
in a given bioinformatics workflow, but traditionally it has been difficult to
obtain both a high degree of customisability and good performance.
Performance-sensitive tools are often highly monolithic, which can make
research difficult. We present a novel set of software development principles
and a bioinformatics framework, Friedrich, which is currently in early
development. Friedrich applications support both early stage experimentation
and late stage batch processing, since they simultaneously allow for good
performance and a high degree of flexibility and customisability. These
benefits are obtained in large part by basing Friedrich on the multiparadigm
programming language Scala. We present a case study in the form of a basic
genome assembler and its extension with new functionality. Our architecture has
the potential to greatly increase the overall productivity of software
developers and researchers in bioinformatics.Comment: 12 pages, 1 figure, to appear in proceedings of PRIB 201
Energy-Efficient Management of Data Center Resources for Cloud Computing: A Vision, Architectural Elements, and Open Challenges
Cloud computing is offering utility-oriented IT services to users worldwide.
Based on a pay-as-you-go model, it enables hosting of pervasive applications
from consumer, scientific, and business domains. However, data centers hosting
Cloud applications consume huge amounts of energy, contributing to high
operational costs and carbon footprints to the environment. Therefore, we need
Green Cloud computing solutions that can not only save energy for the
environment but also reduce operational costs. This paper presents vision,
challenges, and architectural elements for energy-efficient management of Cloud
computing environments. We focus on the development of dynamic resource
provisioning and allocation algorithms that consider the synergy between
various data center infrastructures (i.e., the hardware, power units, cooling
and software), and holistically work to boost data center energy efficiency and
performance. In particular, this paper proposes (a) architectural principles
for energy-efficient management of Clouds; (b) energy-efficient resource
allocation policies and scheduling algorithms considering quality-of-service
expectations, and devices power usage characteristics; and (c) a novel software
technology for energy-efficient management of Clouds. We have validated our
approach by conducting a set of rigorous performance evaluation study using the
CloudSim toolkit. The results demonstrate that Cloud computing model has
immense potential as it offers significant performance gains as regards to
response time and cost saving under dynamic workload scenarios.Comment: 12 pages, 5 figures,Proceedings of the 2010 International Conference
on Parallel and Distributed Processing Techniques and Applications (PDPTA
2010), Las Vegas, USA, July 12-15, 201
DevOps – fundamentos e perspetivas
DevOps is often defined by information technology professionals as a movement, cultural or professional, that brings a new approach to the delivery of software applications through the close collaboration between the development and operations teams. It is grounded by a diverse set of principles, such as culture, automation, lean, monitoring and sharing; and practices, such as, continuous integration and continuous deployment. This article aims to review various aspects of DevOps, highlighting the main benefits and barriers of its adoption.Este trabalho foi apoiado pela FCT - Fundação para a Ciência e Tecnologia no âmbito do projeto:
UID/CEC/00319/201
Examining perceptions of agility in software development practice
This is the post-print version of the final published article that is available from the link below. Copyright @ 2010 ACM.Organizations undertaking software development are often reminded that successful practice depends on a number of non-technical issues that are managerial, cultural and organizational in nature. These issues cover aspects from appropriate corporate structure, through software process development and standardization to effective collaborative practice. Since the articulation of the 'software crisis' in the late-1960s, significant effort has been put into addressing problems related to the cost, time and quality of software development via the application of systematic processes and management practices for software engineering. Early efforts resulted in prescriptive structured methods, which have evolved and expanded over time to embrace consortia/ company-led initiatives such as the Unified Modeling Language and the Unified Process alongside formal process improvement frameworks such as the International Standards Organization's 9000 series, the Capability Maturity Model and SPICE.
More recently, the philosophy behind traditional plan-based initiatives has been questioned by the agile movement, which seeks to emphasize the human and craft aspects of software development over and above the engineering aspects. Agile practice is strongly collaborative in its outlook, favoring individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and responding to change over following a plan (see Sidebar 1). Early experience reports on the use of agile practice suggest some success in dealing with the problems of the software crisis, and suggest that plan-based and agile practice are not mutually exclusive. Indeed, flexibility may arise from this unlikely marriage in an aim to strike a balance between the rigor of traditional plan-based approaches and the need for adaptation of those to suit particular development situations. With this in mind, this article surveys the current practice in software engineering alongside perceptions of senior development managers in relation to agile practice in order to understand the principles of agility that may be practiced implicitly and their effects on plan-based approach
How do particle physicists learn the programming concepts they need?
The ability to read, use and develop code efficiently and successfully is a
key ingredient in modern particle physics. We report the experience of a
training program, identified as "Advanced Programming Concepts", that
introduces software concepts, methods and techniques to work effectively on a
daily basis in a HEP experiment or other programming intensive fields. This
paper illustrates the principles, motivations and methods that shape the
"Advanced Computing Concepts" training program, the knowledge base that it
conveys, an analysis of the feedback received so far, and the integration of
these concepts in the software development process of the experiments as well
as its applicability to a wider audience.Comment: 8 pages, 2 figures, CHEP2015 proceeding
Safety distance awareness system for Malaysian Driver
It is known that the risk of an accident increases exponentially with the speed of the
vehicle and most collisions happen when the driver fails to brake at the required time
and distance. The objective of this research is to create a Safety Distance Awareness
System which aims at warning the driver of the potential frontal collision and to alter
Malaysian driver attitudes. This system is to manipulate Malaysian driver attitude
that likes to tailgating and to prevent rear-end collision in Malaysia. This is done by
using a Sound Navigation and Ranging (SONAR) range finder to determine the
distance of the vehicle or obstacle in front of the host vehicle. With the help of
microcontroller, the distance of the host vehicle could be determined and a warning
will be issued in the form of both visual and hearing so driver could take the correct
preventive measure. There will be few stages of warning, the system will intensify
the distress warning until the collision occurs. These SDAs do not take any automatic
prevention or control to the vehicle to avoid collision. In overall the research hopes
to achieve a more convenient driving experience and a safer driving environment by
implementing the SDAS to keep drivers aware of the potential hazards ahead of their
vehicle. Hopefully the Malaysian government will involve in this research, since the
implementation of Safety Distance Awareness System can provide a new alternative
in the safety system hence it can reduce accidents in Malaysia
- …