GridUnit: Using the Computational Grid to Speed up Software Testing

Size: px
Start display at page:

Download "GridUnit: Using the Computational Grid to Speed up Software Testing"

Transcription

1 GridUnit: Using the Computational Grid to Speed up Software Testing Alexandre Nóbrega Duarte, Walfredo Cirne, Francisco Brasileiro, Patricia Duarte de Lima Machado Departamento de Sistemas e Computação Universidade Federal de Campina Grande Avenida Aprígio Veloso, s/n. Bodocongó, CEP Campina Grande PB Brazil {alex, walfredo, fubica, patricia}@dsc.ufcg.edu.br Abstract. Software testing practices can improve software reliability. This is a fact that the long history of disasters caused by poorly tested software should not allow us to forget. However, as software grows, its test suite becomes larger and its execution time may become a problem to software developers. This is especially stronger for agile methodologies, which preach a short develop/test cycle. Moreover, due to the increasing complexity of systems, it is not enough to test software only in the development environment. We need to test the software in a variety of environments. In this paper we investigate how the Grid can help with both problems and present a framework to use the intrinsic characteristics of the Grid to speed up the software testing process. 1. Introduction Software testing practices can improve software reliability. For instance, Ben-Ari discusses how a poorly tested software could brought down a rocket, costing hundreds of millions of dollars and delaying the European Space Agency space program by a year (Ben-Ari, 1999). Other examples of disasters caused by untested software are also showed in (Mellor, 1994). A test suite that catches the expected behavior of the software can be used to check if its implementation works as it is supposed to. Furthermore, when a software defect is fixed, the test suite can be used to check whether the modification has collateral effects in other parts of the software. Large software projects usually involve several development teams. In these situations, a test suite can be used by a development team to check if a software module provided by another team has an intended behavior, hiding the implementation details (Jeffries, Anderson and Hendrickson, 2000). This way, large software projects usually have large test suites. There are industry reports showing that a complete regression test session of a lines software could take as much as seven weeks of continuous execution (Rothermel, Untch and Chu, 2001). In order to be effective, the software testing process should be carried out in an automatic and fast way. It should be automatic because the same test suite must be executed many times along the software life cycle, including every time a new functionality is added and every time a software defect is fixed. Additionally, a test suite that executes fast can be executed more frequently during the development process, catching problems sooner. Another issue that must be dealt with when testing a software is environment heterogeneity. Although software components may be exhaustively tested in the

2 development environment before going into production, we believe that the ability to run tests in a variety of environments can be very useful. This is because the environment and its configuration change from development to production environments. In fact, due to the complexity of systems, nowadays, each environment is unique. Therefore, running the tests in a heterogeneous production-like environment allows for finding configuration errors as well as software defects that were not detected while the software was tested within the homogeneous development environment. There are well established solutions (Gamma and Back, 1999) (The Open Group, 2003) to automate the software testing process. There are also a few efforts (Kapfhammer, 2001) (Hughes, Greenwood and Coulson, 2004) (SpiritSoft, 2005) to speed up the software testing process by distributing the execution over a set of processors. But, to the best of our knowledge, nobody has explored the unique characteristics of the Computational Grids (Foster and Kesselman, 2004) (Berman, Fox and Hey, 2003) yet, such as its massive parallelism and huge heterogeneity, to improve software testability. In this paper we investigate the use of the Grid as a testing environment and present an open source solution to execute automated software tests in the Grid. Our solution is an extension of the widely adopted JUnit (Gamma and Back, 1999) testing framework and is able to distribute the execution of a JUnit TestSuite in the Grid without requiring any source code modification. We start by presenting, in Section 2, the Grid as a test environment. Then, in Section 3, we present the GridUnit, downloadable from and also some preliminary performance evaluation of its utilization. Finally, in Section 4, we conclude the paper with our final remarks and proposals for future work. 2. The Grid as a Test Environment The Grid is the computing and data management infrastructure that will provide the electronic underpinning for a global society in business, government, research, science and entertainment (Berman, Fox and Hey, 2003). Grids have the potential to revolutionize computing by providing ubiquitous, on demand access to computational services and resources, provided by multiple independent sources. Grids can also provide unprecedented levels of parallelism for high-performance applications. These possibilities create fertile ground for entirely new applications, much more ubiquitous and adaptive, maybe with huge computational and storage requirements. Grid software is highly complex distributed software however, we reach a conclusion that seems to be, at first, contradictory: The same caracteristics that make Grid software a very complex piece of code make the Grid an excelent test environment. The very high levels of paralelism provided by a Grid can speed up the test execution, increasing productivity and making the testing process of large software a less expensive task. The Grid can also lower the costs of acquisition and maintenance of the test environment. For instance, a large company, with several software factories distributed over the world, working on different time zones, can use the Grid to share its idle resources among its factories. By creating an enterprise Grid, a company does not need to buy additional machines to improve test speed and, therefore, does not need to spend more money with new hardware and new software maintenance. Additionaly, as the. Grid is a highly heterogeneous environment, the software can be tested using varied software and hardware configurations, bringing the software test process closer to the

3 software production environment. This can minimize test result contamination by specific development configurations. Moreover, the Grid can provide resource virtualizations for its nodes, creating empty and well defined environments for the execution of the user tasks. This bounded environment impedes that the execution of test t i alters the normal outcome of test t j. 3. The GridUnit Framework The GridUnit framework is an extension of the widely adopted JUnit testing framework (Gamma and Beck, 1999) able to run JUnit test suites in a Grid with minimum user intervention. Its main functionalities were pointed by (Kapfhammer, 2001) as important aspects that a test distribution tool must consider in order to improve the costeffectiveness of the testing process. 1. Transparent and Automatic Distribution: The GridUnit considers each JUnit test as an independent task, scheduling its execution in the Grid without any user intervention. Moreover, GridUnit does not require any modification in the application source code; 2. Test Case Contamination Avoidance: Each test is executed using the resource virtualization provided by the Grid, and, as explained in Section 2, this impedes that the execution of test t i alters the normal outcome of a test t j ; 3. Test Load Distribution: The GridUnit relies on the Grid broker scheduler to provide load distribution; 4. Test Suite Integrity: The default JUnit test runner runs each unit test as an independent task. For each test, it creates an instance of the test class, calls the setup() method, calls the testmethod(), calls the teardown() method and then destroys the instance. The GridUnit reproduces the same behavior with the difference that each test can be executed in a different location in the Grid; 5. Test Execution Control: The GridTestRunner and GridTestListener interfaces provide a mechanism to build a centralized test execution and monitoring point. The GridUnit graphical user interface provides controls to start and stop the execution of the tests of a given test suite. It also monitors the execution of the tests and presents the result of the execution of each test as soon as it is available. Figure 1 shows the high level architecture of the GridUnit framework. Figure 1: The GridUnit high level architecture

4 The framework is composed by four entities: GridTestSuite, GridTestRunner, GridTestListener and GridTester. The GridTestSuite is an extension of the JUnit TestSuite and provides a way to specify which tests should be executed in the Grid. GridTestRunner is a Java interface that represents an entity able to coordinate the execution of the tests in the Grid. GridTester is a Java class that uses the JUnit framework to execute one TestCase in a Grid node. The GridTestRunner sends each of the TestCases (and all files needed to execute the test) in a GridTestSuite to a Grid node and uses a GridTester to run it and to collect the results of the execution. GridTestListener is a Java interface that should be implemented by each class that wants to monitor the execution of the tests. The only Grid-dependent part of the GridUnit framework is the GridTestRunner. So it needs to be specialized in order to provide support to specific Grid software and middleware, like Globus (The Globus Alliance, 2005), OurGrid (Cirne et al, 2005) or Condor (Thain, Tannenbaum, and Livny, 2004). In addition to the core framework, we created the graphical user interface (GUI) showed in Figure 2 to provide a centralized user friendly way to run and to monitor the execution of JUnit tests on the Grid. It implements the GridTestListener interface in order to receive information about the status of the execution of the tests on the grid. The input for the GridUnit GUI is a JUnit TestSuite containing all tests that should be executed in the Grid. Like the JUnit TestRunners, the tool must be executed inside the directory where all files used by the tests are located. This is necessary because GridUnit need to copy the application directory to the remote Grid node prior to the execution of each test. Figure 2: The GridUnit graphical user interface Figure 2 shows an example of the execution of a test suite in a Grid. In this example, the GridTestSuite has 250 TestCases. The status bar, in the lower corner of the window, shows that at that moment 6% (or 15) of the 250 TestCases were executed, five of them failed due to unsatisfied assertions and five of them failed due to unanticipated errors. The progress bar is gray because there are tests that failed due to unanticipated errors, indicating that some tests could not be executed. It would be red if all failed tests failed due to unsatisfied assertions and green if no tests failed at all.

5 The tree at the left corner represents the test hierarchy and shows the status of the execution of the tests using colored icons. It provides an overview of the execution process. For detailed information the user can look at the Failures and the Errors tabs. The Execution Trace tab provides an event driven log of the test execution. The user can, at any time, save the contents of each tab to a file for posterior analysis. 3.2 Preliminary Results In order to validate the GridUnit framework we have instantiated it to run tests in a real Grid environment. We decided to start using the OurGrid (Cirne et al, 2005) toolkit based on our knowledge and past experiences with the solution and in the fact that the OurGrid is a free-to-join Grid, so we could start to use it immediately, without previous access negotiations. To do so, we have implemented the MyGridTestRunner. The MyGridTestRunner is able to convert a JUnit TestSuite into a set of Grid tasks and jobs that can be executed using the OurGrid toolkit. Note that the graphical user interface could be used to run tests over any kind of Grid, given that there is an appropriate GridTestRunner available. We have created also the LocalTestRunner that simulates the behavior of JUnit, running all tests in the local machine. So the GridUnit GUI can also be used as a replacement for the JUnit graphical test runners. We have created a synthetic application, with 250 TestCases, and compared the execution time of the tests using JUnit and using GridUnit with some different Grid configurations. The chart in Figure 3 shows the results of the experiments. 12,00 GridUnit Speedup 10,00 Speedup 8,00 6,00 4,00 2,00 0, Grid Size Figure 3: GridUnit performance evaluation In the chart, the X axis represents the number of machines used to run a test suite during one execution of the experiment while the Y axis shows the speed up obtained by using GridUnit instead of JUnit. As we can see the GridUnit provided a speedup of almost 12x over JUnit when using a grid with 45 machines. Due to some network instability observed during the experiments, there were some unexpected results, like a speedup of only 3x using a grid with 30 machines. 4. Conclusions and Future Work In this paper we showed that the computational power provided by Computational Grids can be used to parallelize the execution of the tests, speeding up the overall process. 50

6 Additionally, we discussed how the Grid can bring the software testing process a step closer to the software production environment. We created an open source Java-based framework, called GridUnit, able to distribute the execution of a JUnit test suite over a Grid without requiring any change in the application source code, providing a cost-effective improvement to the testing processes. We showed how the framework addresses the five considerations pointed by (Kapfhammer, 2001) as key aspects to build a reliable test distribution mechanism. The framework was validated by using OurGrid (Cirne et al, 2005) as the Grid environment to run the tests of a synthetic application. There is much room for future work. First, we need to use GridUnit to test some real applications in a Grid and characterize how the heterogeneity of the Grid could help find defects in the software. Next, it is important to study the relation between test granularities and file transmission delays measuring the network overhead introduced by the Grid. Finally we want to study how the use of the Grid as a software environment can improve the quality of Grid software itself. Acknowledges This work has been partially developed in collaboration with HP Brazil R&D. Authors would also like to thank the financial support from CNPq/Brazil. References M. Ben-Ari. The bug that destroyed a rocket. Journal of Computer Science Education, 13(2):15 16, P. Mellor, CAD: Computer-Aided Disaster, High. Integr. Syst., 1(2): , F. Berman, G. Fox, A. J. G. Hey, Grid Computing: Making the Global Infrastructure a Reality, (John Wiley & Sons Inc., 2003). W. Cirne, F. Brasileiro, N. Andrade, R. Santos, A. Andrade, R. Novaes and M. Mowbray, Labs of the World, Unite!!!, Submitted for publication in May D. Thain, T. Tannenbaum, and M. Livny., Distributed Computing in Practice: The Condor Experience, Concurrency and Computation: Practice and Experience, 17(2): , E. Gamma, K. Beck. JUnit: A cook's tour. Java Report, 4(5):27-38, May 1999 R. E. Jeffries, A. Anderson and C. Hendrickson, Extreme Programming Installed. (Addison-Wesley, 2000). G. M. Kapfhammer, Automatically and Transparently Distributing the Execution of Regression Test Suites, in: Proceedings of the 18th International Conference on Testing Computer Software, G. Rothermel, R. H. Untch and C. Chu. Prioritizing test cases for regression testing, IEEE Transactions on Software Engineering, 27(10): , D. Hughes, P. Greenwood,G. Coulson. A Framework for Testing Distributed Systems. in: Proceedings of the 4th IEEE International Conference on Peer-to-Peer computing (P2P 04), I. Foster and C. Kesselman. The Grid: Blueprint for a New Computing Infrastructure, 2nd Ed, Morgan Kaufmann, SpiritSoft, SysUnit, The Globus Alliance, Globus, The Open Group, TETware,

Labs of the World, Unite!!!

Labs of the World, Unite!!! Labs of the World, Unite!!! Walfredo Cirne walfredo@dsc.ufcg.edu.br Universidade Federal de Campina Grande, Brasil Departamento de Sistemas e Computação Laboratório de Sistemas Distribuídos http://www.lsd.ufcg.edu.br/

More information

Peer-to-peer grid computing with the OurGrid Community

Peer-to-peer grid computing with the OurGrid Community Peer-to-peer grid computing with the OurGrid Community Nazareno Andrade 1, Lauro Costa 1, Guilherme Germóglio 1, Walfredo Cirne 1 1 Laboratório de Sistemas Distribuídos Universidade Federal de Campina

More information

A Framework for Automated Software Testing on the Cloud

A Framework for Automated Software Testing on the Cloud A Framework for Automated Software Testing on the Cloud Gustavo Sávio de Oliveira, Alexandre Duarte Informatics Centre Federal University of Paraiba Joao Pessoa, Paraiba, Brazil gso@di.ufpb.br, alexandre@ci.ufpb.br

More information

Scalable Hybrid Search on Distributed Databases

Scalable Hybrid Search on Distributed Databases Scalable Hybrid Search on Distributed Databases Jungkee Kim 1,2 and Geoffrey Fox 2 1 Department of Computer Science, Florida State University, Tallahassee FL 32306, U.S.A., jungkkim@cs.fsu.edu, 2 Community

More information

Laboratório de Sistemas Distribuídos, Universidade Federal de Campina Grande. {zflavio, Eliane Araújo

Laboratório de Sistemas Distribuídos, Universidade Federal de Campina Grande. {zflavio, Eliane Araújo Enhancing SegHidro/BRAMS experience through EELA José Flávio M. V. Júnior Paulo Ricardo M. Gomes Laboratório de Sistemas Distribuídos, Universidade Federal de Campina Grande {zflavio, paulo}@lsd.ufcg.edu.br

More information

A Grid-Enabled Component Container for CORBA Lightweight Components

A Grid-Enabled Component Container for CORBA Lightweight Components A Grid-Enabled Component Container for CORBA Lightweight Components Diego Sevilla 1, José M. García 1, Antonio F. Gómez 2 1 Department of Computer Engineering 2 Department of Information and Communications

More information

Description of a Lightweight Bartering Grid Architecture

Description of a Lightweight Bartering Grid Architecture Description of a Lightweight Bartering Grid Architecture Cyril Briquet and Pierre-Arnoul de Marneffe Department of Electrical Engineering & Computer Science, University of Liège, Montefiore Institute,

More information

Analysis of the Test Driven Development by Example

Analysis of the Test Driven Development by Example Computer Science and Applications 1 (2013) 5-13 Aleksandar Bulajic and Radoslav Stojic The Faculty of Information Technology, Metropolitan University, Belgrade, 11000, Serbia Received: June 18, 2013 /

More information

Pearson Education 2007 Chapter 9 (RASD 3/e)

Pearson Education 2007 Chapter 9 (RASD 3/e) MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Chapter 9 Quality and Change Management Pearson Education Limited 2007 Topics

More information

Practical Objects: Test Driven Software Development using JUnit

Practical Objects: Test Driven Software Development using JUnit 1999 McBreen.Consulting Practical Objects Test Driven Software Development using JUnit Pete McBreen, McBreen.Consulting petemcbreen@acm.org Test Driven Software Development??? The Unified Process is Use

More information

GerpavGrid: using the Grid to maintain the city road system

GerpavGrid: using the Grid to maintain the city road system GerpavGrid: using the Grid to maintain the city road system César A. F. De Rose Tiago C. Ferreto PUCRS 1 {derose,ferreto}@inf.pucrs.br Walfredo Cirne Milena P. M. Oliveira UFCG 3 walfredo@dsc.ufcg.edu.br,

More information

An Evaluation of Alternative Designs for a Grid Information Service

An Evaluation of Alternative Designs for a Grid Information Service An Evaluation of Alternative Designs for a Grid Information Service Warren Smith, Abdul Waheed *, David Meyers, Jerry Yan Computer Sciences Corporation * MRJ Technology Solutions Directory Research L.L.C.

More information

Chapter 9 Quality and Change Management

Chapter 9 Quality and Change Management MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Chapter 9 Quality and Change Management Pearson Education Limited 2007 Topics

More information

An Introduction to the Grid

An Introduction to the Grid 1 An Introduction to the Grid 1.1 INTRODUCTION The Grid concepts and technologies are all very new, first expressed by Foster and Kesselman in 1998 [1]. Before this, efforts to orchestrate wide-area distributed

More information

A Case Study on the Similarity Between Source Code and Bug Reports Vocabularies

A Case Study on the Similarity Between Source Code and Bug Reports Vocabularies A Case Study on the Similarity Between Source Code and Bug Reports Vocabularies Diego Cavalcanti 1, Dalton Guerrero 1, Jorge Figueiredo 1 1 Software Practices Laboratory (SPLab) Federal University of Campina

More information

A Resource Discovery Algorithm in Mobile Grid Computing Based on IP-Paging Scheme

A Resource Discovery Algorithm in Mobile Grid Computing Based on IP-Paging Scheme A Resource Discovery Algorithm in Mobile Grid Computing Based on IP-Paging Scheme Yue Zhang 1 and Yunxia Pei 2 1 Department of Math and Computer Science Center of Network, Henan Police College, Zhengzhou,

More information

First Steps Towards Conceptual Schema Testing

First Steps Towards Conceptual Schema Testing First Steps Towards Conceptual Schema Testing Albert Tort and Antoni Olivé Universitat Politècnica de Catalunya {atort,olive}@lsi.upc.edu Abstract. Like any software artifact, conceptual schemas of information

More information

HETEROGENEOUS COMPUTING

HETEROGENEOUS COMPUTING HETEROGENEOUS COMPUTING Shoukat Ali, Tracy D. Braun, Howard Jay Siegel, and Anthony A. Maciejewski School of Electrical and Computer Engineering, Purdue University Heterogeneous computing is a set of techniques

More information

Object Oriented Software Design - I

Object Oriented Software Design - I Object Oriented Software Design - I Unit Testing Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa November 28, 2011 G. Lipari (Scuola Superiore Sant Anna) Unit Testing November

More information

2014 Intelliware Development Inc.

2014 Intelliware Development Inc. What You ll Learn in this Presentation: The basics of user stories. How user stories fit into the overall Agile planning process. How to write a user story. A story card example 2 Why is it so Difficult

More information

GRID COMPUTING BASED MODEL FOR REMOTE MONITORING OF ENERGY FLOW AND PREDICTION OF HT LINE LOSS IN POWER DISTRIBUTION SYSTEM

GRID COMPUTING BASED MODEL FOR REMOTE MONITORING OF ENERGY FLOW AND PREDICTION OF HT LINE LOSS IN POWER DISTRIBUTION SYSTEM GRID COMPUTING BASED MODEL FOR REMOTE MONITORING OF ENERGY FLOW AND PREDICTION OF HT LINE LOSS IN POWER DISTRIBUTION SYSTEM 1 C.Senthamarai, 2 A.Krishnan 1 Assistant Professor., Department of MCA, K.S.Rangasamy

More information

San Jose State University - Department of Computer Science

San Jose State University - Department of Computer Science San Jose State University - Department of Computer Science CS 151, Section 4 - Object-Oriented Design Instructor:Cay S. Horstmann Email: cay.horstmann@sjsu.edu Telephone: +1-408-924-5060 Office Hours:

More information

Automating Regression Testing of Java Programs the JSnoopy Way

Automating Regression Testing of Java Programs the JSnoopy Way Automating Regression Testing of Java Programs the JSnoopy Way Theodore S. Norvell Electrical and Computer Engineering Memorial University of Newfoundland theo@engr.mun.ca Abstract As software systems

More information

Tuesday, November 15. Testing

Tuesday, November 15. Testing Tuesday, November 15 1 Testing Testing Waterfall model show testing as an activity or box In practice, testing is performed constantly There has never been a project where there was too much testing. Products

More information

Credit where Credit is Due. Goals for this Lecture. Introduction to Design

Credit where Credit is Due. Goals for this Lecture. Introduction to Design Credit where Credit is Due Lecture 17: Intro. to Design (Part 1) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2002 Some material presented in this lecture is taken

More information

Program Correctness and Efficiency. Chapter 2

Program Correctness and Efficiency. Chapter 2 Program Correctness and Efficiency Chapter 2 Chapter Objectives To understand the differences between the three categories of program errors To understand the effect of an uncaught exception and why you

More information

Performance Evaluation of A Testing Framework using QuickCheck and Hadoop

Performance Evaluation of A Testing Framework using QuickCheck and Hadoop Regular Paper Performance Evaluation of A Testing Framework using QuickCheck and Hadoop Yusuke Wada 1 and Shigeru Kusakabe 2 Formal methods are mathematically-based techniques for specifying, developing

More information

ANALYSIS OF PERFORMANCE BOTTLENECK OF P2P GRID APPLICATIONS

ANALYSIS OF PERFORMANCE BOTTLENECK OF P2P GRID APPLICATIONS Journal of the Applied Mathematics, Statistics and Informatics (JAMSI), 9 (2013), No. 2 ANALYSIS OF PERFORMANCE BOTTLENECK OF P2P GRID APPLICATIONS MAREK ŠIMON, LADISLAV HURAJ AND VLADIMÍR SILÁDI Abstract

More information

Chapter 14 Software Testing Techniques

Chapter 14 Software Testing Techniques Software Engineering: A Practitioner s s Approach, 6/e Chapter 14 Software Testing Techniques copyright 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY

More information

Distributed Testing with SmartFrog

Distributed Testing with SmartFrog Distributed Testing with SmartFrog Julio Guijarro Steve Loughran HP Laboratories, Bristol, UK julio.guijarro at hpl.hp.com steve.loughran at hpl.hp.com 2006-09-07 About Us Julio Guijarro Research scientist

More information

Partial Acquisition Prashant Jain and Michael Kircher

Partial Acquisition Prashant Jain and Michael Kircher 1 Partial Acquisition Prashant Jain and Michael Kircher {Prashant.Jain,Michael.Kircher}@mchp.siemens.de Siemens AG, Corporate Technology Munich, Germany Partial Acquisition 2 Partial Acquisition The Partial

More information

Lightweight Service-oriented Grid Application Toolkit *

Lightweight Service-oriented Grid Application Toolkit * JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 23, 1367-1378 (2007) Lightweight Service-oriented Grid Application Toolkit * SUNGJU KWON, JAEYOUNG CHOI AND KUMWON CHO + School of Computing Soongsil University

More information

Introduction to Grid Computing

Introduction to Grid Computing Milestone 2 Include the names of the papers You only have a page be selective about what you include Be specific; summarize the authors contributions, not just what the paper is about. You might be able

More information

Introduction. Software Trends. Topics for Discussion. Grid Technology. GridForce:

Introduction. Software Trends. Topics for Discussion. Grid Technology. GridForce: GridForce: A Multi-tier Approach to Prepare our Workforce for Grid Technology Bina Ramamurthy CSE Department University at Buffalo (SUNY) 201 Bell Hall, Buffalo, NY 14260 716-645-3180 (108) bina@cse.buffalo.edu

More information

A Compact Computing Environment For A Windows PC Cluster Towards Seamless Molecular Dynamics Simulations

A Compact Computing Environment For A Windows PC Cluster Towards Seamless Molecular Dynamics Simulations A Compact Computing Environment For A Windows PC Cluster Towards Seamless Molecular Dynamics Simulations Yuichi Tsujita Abstract A Windows PC cluster is focused for its high availabilities and fruitful

More information

Pearson Education 2005 Chapter 9 (Maciaszek - RASD 2/e) 2

Pearson Education 2005 Chapter 9 (Maciaszek - RASD 2/e) 2 MACIASZEK, L.A. (2005): Requirements Analysis and System Design, 2 nd ed. Addison Wesley, Harlow England, 504p. ISBN 0 321 20464 6 Chapter 9 Testing and Change Management Pearson Education Limited 2005

More information

THE VEGA PERSONAL GRID: A LIGHTWEIGHT GRID ARCHITECTURE

THE VEGA PERSONAL GRID: A LIGHTWEIGHT GRID ARCHITECTURE THE VEGA PERSONAL GRID: A LIGHTWEIGHT GRID ARCHITECTURE Wei Li, Zhiwei Xu, Bingchen Li, Yili Gong Institute of Computing Technology of Chinese Academy of Sciences Beijing China, 100080 {zxu, liwei, libingchen,

More information

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do? Topics 1) What is trying to do? Manifesto & XP Chapter 3.1-3.3 2) How to choose plan-driven vs? 3) What practices go into (XP) development? 4) How to write tests while writing new code? CMPT 276 Dr. B.

More information

A distributed computation of Interpro Pfam, PROSITE and ProDom for protein annotation

A distributed computation of Interpro Pfam, PROSITE and ProDom for protein annotation E.O. Ribeiro et al. 590 A distributed computation of Interpro Pfam, PROSITE and ProDom for protein annotation Edward de O. Ribeiro¹, Gustavo G. Zerlotini¹, Irving R.M. Lopes¹, Victor B.R. Ribeiro¹, Alba

More information

Performance Monitoring of Energy Flow in the Power Transmission and Distribution System Using Grid Computing

Performance Monitoring of Energy Flow in the Power Transmission and Distribution System Using Grid Computing Journal of Computer Science 3 (5): 323-328, 2007 ISSN 1549-3636 2007 Science Publications Performance Monitoring of Energy Flow in the Power Transmission and Distribution System Using Grid Computing 1

More information

Testing in the Agile World

Testing in the Agile World Testing in the Agile World John Fodeh Solution Architect, Global Testing Practice 2008 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Outline

More information

Infrastructure for Autonomous Mobile Robots Communication and Coordination

Infrastructure for Autonomous Mobile Robots Communication and Coordination 90 Work in Progress Session Infrastructure for Autonomous Mobile Robots Communication and Coordination Marcelo M. Sobral, Leandro B. Becker Dept of Automation and Systems Universidade Federal de Santa

More information

TEST DRIVEN DEVELOPMENT

TEST DRIVEN DEVELOPMENT PERSONAL SOFTWARE ENGINEERING PROJECT: TEST DRIVEN DEVELOPMENT Kirsi Männistö kirsi.mannisto@welho.com 60114V PSEA_Test_driven_development.rtf Page 1 of 1 RoadRunners Change history Version Description

More information

Automated Acceptance Testing

Automated Acceptance Testing Automated Acceptance Testing Björn Beskow Callista Enterprise AB bjorn.beskow@callista.se http://www.callista.se/enterprise CADEC 2004-01-28, Automated Acceptance Testing, Slide 1 Target audience and Objectives

More information

Supporting service management data composition in grid environments

Supporting service management data composition in grid environments Supporting service management data composition in grid environments Vitalian A. Danciu, Nils gentschen Felde Munich Network Management Team Ludwig-Maximilians-University of Munich Oettingenstr. 67, 80538

More information

Efficient Regression Test Model for Object Oriented Software

Efficient Regression Test Model for Object Oriented Software Efficient Regression Test Model for Object Oriented Software Swarna Lata Pati College of Engg. & Tech, Bhubaneswar Abstract : This paper presents an efficient regression testing model with an integration

More information

Testing Grid Application Workflows Using TTCN-3

Testing Grid Application Workflows Using TTCN-3 2008 International Conference on Software Testing, Verification, and Validation Testing Grid Application Workflows Using TTCN-3 Thomas Rings, Helmut Neukirchen, Jens Grabowski Software Engineering for

More information

Hierarchical Replication Control

Hierarchical Replication Control 1. Introduction Hierarchical Replication Control Jiaying Zhang and Peter Honeyman Center for Information Technology Integration University of Michigan at Ann Arbor jiayingz@eecs.umich.edu - 1 - honey@citi.umich.edu

More information

The TDAQ Analytics Dashboard: a real-time web application for the ATLAS TDAQ control infrastructure

The TDAQ Analytics Dashboard: a real-time web application for the ATLAS TDAQ control infrastructure The TDAQ Analytics Dashboard: a real-time web application for the ATLAS TDAQ control infrastructure Giovanna Lehmann Miotto, Luca Magnoni, John Erik Sloper European Laboratory for Particle Physics (CERN),

More information

2. Reasons for implementing clos-unit

2. Reasons for implementing clos-unit A CLOS Implementation of the JUnit Testing Framework Architecture: A Case Study Sandro Pedrazzini Canoo Engineering AG sandro.pedrazzini@canoo.com Abstract There are different reasons why you would like

More information

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017 San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017 Course and Contact Information Instructor: Dr. Kim Office Location:

More information

System Integration and Build Management

System Integration and Build Management System Integration and Build Management Christian Schröder and Roman Antonov May 29, 2006 1 Contents 1 Introduction 3 2 Continuous Builds 3 3 Continuous Tests 3 4 Continuous Integration 4 5 Conclusion

More information

Application of UniTESK Technology for Functional Testing of Infrastructural Grid Software

Application of UniTESK Technology for Functional Testing of Infrastructural Grid Software Application of UniTESK Technology for Functional Testing of Infrastructural Grid Software Sergey Smolov ISP RAS ssedai@ispras.ru Abstract In this article some questions of testing of infrastructural Grid

More information

An Experience in Accessing Grid Computing from Mobile Device with GridLab Mobile Services

An Experience in Accessing Grid Computing from Mobile Device with GridLab Mobile Services An Experience in Accessing Grid Computing from Mobile Device with GridLab Mobile Services Riri Fitri Sari, Rene Paulus Department of Electrical Engineering, Faculty of Engineering University of Indonesia

More information

So, You Want to Test Your Compiler?

So, You Want to Test Your Compiler? So, You Want to Test Your Compiler? Theodore S. Norvell Electrical and Computer Engineering Memorial University October 19, 2005 Abstract We illustrate a simple method of system testing by applying it

More information

Visual Modeler for Grid Modeling and Simulation (GridSim) Toolkit

Visual Modeler for Grid Modeling and Simulation (GridSim) Toolkit Visual Modeler for Grid Modeling and Simulation (GridSim) Toolkit Anthony Sulistio, Chee Shin Yeo, and Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS) Laboratory, Department of Computer Science

More information

To the Cloud and Back: A Distributed Photo Processing Pipeline

To the Cloud and Back: A Distributed Photo Processing Pipeline To the Cloud and Back: A Distributed Photo Processing Pipeline Nicholas Jaeger and Peter Bui Department of Computer Science University of Wisconsin - Eau Claire Eau Claire, WI 54702 {jaegernh, buipj}@uwec.edu

More information

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT PhD Summary DOCTORATE OF PHILOSOPHY IN COMPUTER SCIENCE & ENGINEERING By Sandip Kumar Goyal (09-PhD-052) Under the Supervision

More information

A grid representation for Distributed Virtual Environments

A grid representation for Distributed Virtual Environments A grid representation for Distributed Virtual Environments Pedro Morillo, Marcos Fernández, Nuria Pelechano Instituto de Robótica, Universidad de Valencia. Polígono Coma S/N. Aptdo.Correos 22085, CP: 46071

More information

Unit 1 Introduction to Software Engineering

Unit 1 Introduction to Software Engineering Unit 1 Introduction to Software Engineering João M. Fernandes Universidade do Minho Portugal Contents 1. Software Engineering 2. Software Requirements 3. Software Design 2/50 Software Engineering Engineering

More information

Functional Testing with Open Source Software. Quest Chris Kaufman April 2009

Functional Testing with Open Source Software. Quest Chris Kaufman April 2009 Functional Testing with Open Source Software Quest 2009 Chris Kaufman April 2009 Functional Testing of Equity Clearing System» Testing began in February 2005 and is still being used» Testing framework

More information

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER APPLICATIONS COURSE PLAN Course Code : MC0657 Course Title : Grid Computing Semester : III Course Time : July Nov 2011 Day Order

More information

How to implement NIST Cybersecurity Framework using ISO WHITE PAPER. Copyright 2017 Advisera Expert Solutions Ltd. All rights reserved.

How to implement NIST Cybersecurity Framework using ISO WHITE PAPER. Copyright 2017 Advisera Expert Solutions Ltd. All rights reserved. How to implement NIST Cybersecurity Framework using ISO 27001 WHITE PAPER Copyright 2017 Advisera Expert Solutions Ltd. All rights reserved. Copyright 2017 Advisera Expert Solutions Ltd. All rights reserved.

More information

An Active Resource Management System for Computational Grid*

An Active Resource Management System for Computational Grid* An Active Resource Management System for Computational Grid* Xiaolin Chen 1, Chang Yang 1, Sanglu Lu 2, and Guihai Chen 2 1 Department of Computer Science, Chuxiong Normal University, Chuxiong 675000,

More information

THEBES: THE GRID MIDDLEWARE PROJECT Project Overview, Status Report and Roadmap

THEBES: THE GRID MIDDLEWARE PROJECT Project Overview, Status Report and Roadmap THEBES: THE GRID MIDDLEWARE PROJECT Project Overview, Status Report and Roadmap Arnie Miles Georgetown University adm35@georgetown.edu http://thebes.arc.georgetown.edu The Thebes middleware project was

More information

Universal Communication Component on Symbian Series60 Platform

Universal Communication Component on Symbian Series60 Platform Universal Communication Component on Symbian Series60 Platform Róbert Kereskényi, Bertalan Forstner, Hassan Charaf Department of Automation and Applied Informatics Budapest University of Technology and

More information

Oracle and Tangosol Acquisition Announcement

Oracle and Tangosol Acquisition Announcement Oracle and Tangosol Acquisition Announcement March 23, 2007 The following is intended to outline our general product direction. It is intended for information purposes only, and may

More information

Hospital System Lowers IT Costs After Epic Migration Flatirons Digital Innovations, Inc. All rights reserved.

Hospital System Lowers IT Costs After Epic Migration Flatirons Digital Innovations, Inc. All rights reserved. Hospital System Lowers IT Costs After Epic Migration 2018 Flatirons Digital Innovations, Inc. All rights reserved. A large hospital system was migrating to the EPIC software product suite and as part of

More information

A Cloud Framework for Big Data Analytics Workflows on Azure

A Cloud Framework for Big Data Analytics Workflows on Azure A Cloud Framework for Big Data Analytics Workflows on Azure Fabrizio MAROZZO a, Domenico TALIA a,b and Paolo TRUNFIO a a DIMES, University of Calabria, Rende (CS), Italy b ICAR-CNR, Rende (CS), Italy Abstract.

More information

ARMSim: A Modeling and Simulation Environment for Agent-Based Grid Computing

ARMSim: A Modeling and Simulation Environment for Agent-Based Grid Computing ARMSim: A Modeling and Simulation Environment for Agent-Based Grid Computing Junwei Cao C&C Research Laboratories NEC Europe Ltd., Germany cao@ccrl-nece.de ARMS is an agent-based resource management system

More information

Simulation of a cost model response requests for replication in data grid environment

Simulation of a cost model response requests for replication in data grid environment Simulation of a cost model response requests for replication in data grid environment Benatiallah ali, Kaddi mohammed, Benatiallah djelloul, Harrouz abdelkader Laboratoire LEESI, faculté des science et

More information

EECS 4313 Software Engineering Testing

EECS 4313 Software Engineering Testing EECS 4313 Software Engineering Testing Topic 03: Test automation / JUnit - Building automatically repeatable test suites Zhen Ming (Jack) Jiang Acknowledgement Some slides are from Prof. Alex Orso Relevant

More information

Testing in Agile Software Development

Testing in Agile Software Development Testing in Agile Software Development T 76.5613, Software Testing and Quality Assurance Slides by Juha Itkonen Lecture delivered by 4.10.2006 V-model of testing Benefits of the V-model Intuitive and easy

More information

Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process

Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process Introduction System tests, often called slow tests, play a crucial role in nearly every Java development

More information

Grid Architectural Models

Grid Architectural Models Grid Architectural Models Computational Grids - A computational Grid aggregates the processing power from a distributed collection of systems - This type of Grid is primarily composed of low powered computers

More information

GUI framework communication via the WWW

GUI framework communication via the WWW GUI framework communication via the WWW Thomas Tilley, School of Information Technology, Griffith University, Australia 4215, T.Tilley@gu.edu.au Peter Eklund, School of Information Technology, Griffith

More information

Automated Testing of Tableau Dashboards

Automated Testing of Tableau Dashboards Kinesis Technical Whitepapers April 2018 Kinesis CI Automated Testing of Tableau Dashboards Abstract Companies make business critical decisions every day, based on data from their business intelligence

More information

On Supporting Disconnected Operation in Grid Computing

On Supporting Disconnected Operation in Grid Computing On Supporting Disconnected Operation in Grid Computing Pavan Konanki and Ali R. Butt Virginia Tech. Blacksburg, VA 246 {kpavan, butta}@cs.vt.edu Abstract In recent years, advancements in technology have

More information

Quality of Service Aspects and Metrics in Grid Computing

Quality of Service Aspects and Metrics in Grid Computing Quality of Service Aspects and Metrics in Grid Computing Daniel A. Menascé Dept. of Computer Science George Mason University Fairfax, VA menasce@cs.gmu.edu Emiliano Casalicchio Dipt. InformaticaSistemi

More information

Assignment 5. Georgia Koloniari

Assignment 5. Georgia Koloniari Assignment 5 Georgia Koloniari 2. "Peer-to-Peer Computing" 1. What is the definition of a p2p system given by the authors in sec 1? Compare it with at least one of the definitions surveyed in the last

More information

IPv6 Deployment in Africa

IPv6 Deployment in Africa IPv6 Deployment in Africa Adiel A. Akplogan CEO, AfriNIC INET Africa-2009 Spearheading Internet technology and policy development in the African Region The content IPv4 exhaustion Current situation IPv6

More information

SonarJ White Paper. Sonar stands for Software and Architecture. It is meant to support software developers and architects in their daily work.

SonarJ White Paper. Sonar stands for Software and Architecture. It is meant to support software developers and architects in their daily work. SonarJ White Paper Sonar stands for Software and Architecture. It is meant to support software developers and architects in their daily work. Software over its lifecycle needs to be changed, adapted, enhanced

More information

xtreme Programming (summary of Kent Beck s XP book) Stefan Resmerita, WS2015

xtreme Programming (summary of Kent Beck s XP book) Stefan Resmerita, WS2015 xtreme Programming (summary of Kent Beck s XP book) 1 Contents The software development problem The XP solution The JUnit testing framework 2 The Software Development Problem 3 Risk Examples delivery schedule

More information

Unit Testing with JUnit and CppUnit

Unit Testing with JUnit and CppUnit Unit Testing with JUnit and CppUnit Software Testing Fundamentals (1) What is software testing? The process of operating a system or component under specified conditions, observing or recording the results,

More information

Software Testing Lecture 1. Justin Pearson

Software Testing Lecture 1. Justin Pearson Software Testing Lecture 1 Justin Pearson 2017 1 / 50 Four Questions Does my software work? 2 / 50 Four Questions Does my software work? Does my software meet its specification? 3 / 50 Four Questions Does

More information

Enterprise Data Architecture: Why, What and How

Enterprise Data Architecture: Why, What and How Tutorials, G. James, T. Friedman Research Note 3 February 2003 Enterprise Data Architecture: Why, What and How The goal of data architecture is to introduce structure, control and consistency to the fragmented

More information

DISTRIBUTED DESIGN OF PRODUCT ORIENTED MANUFACTURING SYSTEMS

DISTRIBUTED DESIGN OF PRODUCT ORIENTED MANUFACTURING SYSTEMS 64 DISTRIBUTED DESIGN OF PRODUCT ORIENTED MANUFACTURING SYSTEMS Sílvio do Carmo-Silva a, A.C. Alves a C., P. Novais b, M. Costa c,, C. Carvalho b, J. Costa b, M. Marques b a Centre for Production Systems

More information

Web-based access to the grid using. the Grid Resource Broker Portal

Web-based access to the grid using. the Grid Resource Broker Portal Web-based access to the grid using the Grid Resource Broker Portal Giovanni Aloisio, Massimo Cafaro ISUFI High Performance Computing Center Department of Innovation Engineering University of Lecce, Italy

More information

An Architecture For Computational Grids Based On Proxy Servers

An Architecture For Computational Grids Based On Proxy Servers An Architecture For Computational Grids Based On Proxy Servers P. V. C. Costa, S. D. Zorzo, H. C. Guardia {paulocosta,zorzo,helio}@dc.ufscar.br UFSCar Federal University of São Carlos, Brazil Abstract

More information

TEST FRAMEWORKS FOR ELUSIVE BUG TESTING

TEST FRAMEWORKS FOR ELUSIVE BUG TESTING TEST FRAMEWORKS FOR ELUSIVE BUG TESTING W.E. Howden CSE, University of California at San Diego, La Jolla, CA, 92093, USA howden@cse.ucsd.edu Cliff Rhyne Intuit Software Corporation, 6220 Greenwich D.,

More information

Grid Computing. Grid Computing 2

Grid Computing. Grid Computing 2 Grid Computing Mahesh Joshi joshi031@d.umn.edu Presentation for Graduate Course in Advanced Computer Architecture 28 th April 2005 Objective Overview of the concept and related aspects Some practical implications

More information

Irbid National University, Irbid, Jordan. 1. The concept of distributed corporate systems

Irbid National University, Irbid, Jordan. 1. The concept of distributed corporate systems Developing Enterprise Systems with CORBA and Java Integrated Technologies Safwan Al Salaimeh, Amer Abu Zaher Irbid National University, Irbid, Jordan ABSTRACT: The questions of corporate systems development

More information

PARALLEL PROGRAM EXECUTION SUPPORT IN THE JGRID SYSTEM

PARALLEL PROGRAM EXECUTION SUPPORT IN THE JGRID SYSTEM PARALLEL PROGRAM EXECUTION SUPPORT IN THE JGRID SYSTEM Szabolcs Pota 1, Gergely Sipos 2, Zoltan Juhasz 1,3 and Peter Kacsuk 2 1 Department of Information Systems, University of Veszprem, Hungary 2 Laboratory

More information

The Grid Authentication System for Mobile Grid Environment

The Grid Authentication System for Mobile Grid Environment IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 02, 2014 ISSN (online): 2321-0613 The Grid Authentication System for Mobile Grid Environment A.Sudha 1 S.M.Karpagavalli

More information

Software Testing Prof. Meenakshi D Souza Department of Computer Science and Engineering International Institute of Information Technology, Bangalore

Software Testing Prof. Meenakshi D Souza Department of Computer Science and Engineering International Institute of Information Technology, Bangalore Software Testing Prof. Meenakshi D Souza Department of Computer Science and Engineering International Institute of Information Technology, Bangalore Lecture 04 Software Test Automation: JUnit as an example

More information

g-eclipse A Contextualised Framework for Grid Users, Grid Resource Providers and Grid Application Developers

g-eclipse A Contextualised Framework for Grid Users, Grid Resource Providers and Grid Application Developers g-eclipse A Contextualised Framework for Grid Users, Grid Resource Providers and Grid Application Developers Harald Kornmayer 1, Mathias Stümpert 2, Harald Gjermundrød 3, and Pawe l Wolniewicz 4 1 NEC

More information

WSRF Services for Composing Distributed Data Mining Applications on Grids: Functionality and Performance

WSRF Services for Composing Distributed Data Mining Applications on Grids: Functionality and Performance WSRF Services for Composing Distributed Data Mining Applications on Grids: Functionality and Performance Domenico Talia, Paolo Trunfio, and Oreste Verta DEIS, University of Calabria Via P. Bucci 41c, 87036

More information

Managing intranets: opportunities and challenges

Managing intranets: opportunities and challenges 1 Managing intranets: opportunities and challenges IN THIS CHAPTER: Life in a workflow world The intranet opportunity Life as an intranet manager The challenges of intranet management A framework for intranet

More information

Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept

Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept Philipp Meier Institute of Computer Science, Ludwig-Maximilians-Universität meierp@pst.informatik.uni-muenchen.de

More information

Introduction to GSI. SNIA Green Storage Overview

Introduction to GSI.  SNIA Green Storage Overview Introduction to GSI The Storage Networking Industry Association s (SNIA) Green Storage Initiative (GSI) is dedicated to advancing energy efficiency for networked storage systems through best practices

More information