TSSG Case Study: Using Free & Open Source Tools to Manage Software Quality EECS811: Software/IT Project Management Agile Integration Management Case Study.

Slides:



Advertisements
Similar presentations
Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
Advertisements

StratusLab is co-funded by the European Community’s Seventh Framework Programme (Capacities) Grant Agreement INFSO-RI Work Package 4 Software Integration.
HP Quality Center Overview.
Eralp Erat Senior Software Developer MCP,MCAD.NET,MCSD.NET.
By SAG Objectives Cross platform QA Automation for web applications Scheduling the automation Automatically build the test scripts Generate the.
2004 Cross-Platform Automated Regression Test Framework Ramkumar Ramalingam, Rispna Jain IBM Software Labs, India.
Visual Studio Online. What it Provides Visual Studio Online, based on the capabilities of Team Foundation Server with additional cloud services, is the.
Validata Release Coordinator Accelerated application delivery through automated end-to-end release management.
SOFTWARE PRESENTATION ODMS (OPEN SOURCE DOCUMENT MANAGEMENT SYSTEM)
Roadmap to Continuous Integration Testing and Benefits Gowri Selka, Walgreens Natalie Koltun, Walgreens May 20th, 2014 ©2013 Walgreen Co. All rights reserved.
DEPARTMENT OF COMPUTER ENGINEERING
Agile Testing with Testing Anywhere The road to automation need not be long.
© copyright 2014 BMC Software, Inc. DevOps consultant Niek Bartholomeus Going DevOps with BMC.
Chapter 13 Web Application Infrastructure. Objectives Explain the components and purpose of a web application platform Describe several common webapp.
Improving Software Quality with Continuous Integration
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
© 2013 Jones and Bartlett Learning, LLC, an Ascend Learning Company All rights reserved. Security Strategies in Linux Platforms and.
PopMedNet Software Development Life Cycle Chayim Herzig-Marx Harvard Pilgrim Health Care Institute Daniel Dee Lincoln Peak Partners.
Continuous Integration after Hudson, CruiseControl, and Home Built Mile High Agile 2011 – Mark Waite.
- Chaitanya Krishna Pappala Enterprise Architect- a tool for Business process modelling.
CSCI ClearQuest 1 Rational ClearQuest Michel Izygon - Jim Helm.
Configuration Management Process and Environment MACS Review 1 February 5th, 2010 Roland Moser PR a-RMO, February 5 th, 2010 R. Moser 1 R. Gutleber.
COMPARISON STUDY BETWEEN AGILEFANT AND XPLANNER PLUS Professor Daniel Amyot Ruijun Fan Badr Alsubaihi Submitted to Professor Daniel Amyot.
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Automation Fundamental Concepts &
QWise software engineering – refactored! Testing, testing A first-look at the new testing capabilities in Visual Studio 2010 Mathias Olausson.
Time Matters ® A Practice Management, Client Relationship Management, and Document Management System Presented by Alana Seibert.
October 30, 2008 Extensible Workflow Management for Simmod ESUG32, Frankfurt, Oct 30, 2008 Alexander Scharnweber (DLR) October 30, 2008 Slide 1 > Extensible.
Manage Engine: Q Engine. What is it?  Tool developed by Manage Engine that allows one to test web applications using a variety of different tests to.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
Article: Source Code Review Systems Author: Jason Remillard Presenter: Joe Borosky Class: Principles and Applications of Software Design Date: 11/2/2005.
Sumedha Rubasinghe October,2009 Introduction to Programming Tools.
© Copyright , Inflectra CorporationPage: 1 Product Overview Test Automation Integration for SpiraTest® and SpiraTeam®
Sri Lanka Institute of Information Technology Software Engineering Project – I Clone of Rally GROUP NO : WD-SEP-002 | PROJECT NO :25 PROJECT : CLONE OF.
1 Lecture 19 Configuration Management Software Engineering.
MAE Continuous Integration Administration guide July 8th, 2013.
1 SEG4912 University of Ottawa by Jason Kealey Software Engineering Capstone Project Tools and Technologies.
1 Performance Optimization In QTP Execution Over Video Automation Testing Speaker : Krishnesh Sasiyuthaman Nair Date : 10/05/2012.
© 2004, The Trustees of Indiana University Kuali Project Development Methodology, Architecture, and Standards James Thomas, Kuali Project Manager Brian.
Continuous Integration and Code Review: how IT can help Alex Lossent – IT/PES – Version Control Systems 29-Sep st Forum1.
Perforce Software Version Everything.. Visual Studio Industry Partner Perforce Software NEXT STEPS Contact us at: Perforce products.
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
Confidential Continuous Integration Framework (CIF) 5/18/2004.
Software Development A Proposed Process and Methodology.
Visual Studio Online Visual Studio.NET Work BuildTest Deploy Insights Code Visual Studio Online.
Isolated Database Environments Kevin Howell February 2014.
© 2010 Marcato Partners, LLC Scrum Experience Group Team Foundation Server (TFS) Marcato / Kardia Health Systems April 27, 2010.
Lecture XIII: Continuous Integration CS 4593 Cloud-Oriented Big Data and Software Engineering.
Neil Kidd Developer Tools Technical Specialist Microsoft UK.
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
CS223: Software Engineering Lecture 18: The XP. Recap Introduction to Agile Methodology Customer centric approach Issues of Agile methodology Where to.
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
ECpE Student Database Team 21 Adviser: Tien Nguyen ECpE and Tony Moore.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Chapter 13 Web Application Infrastructure
Real Testing Scenario Strategy: A Real-life TestOps Environment
Software Engineering “Practical Approach”
Web Programming Language
Joonas Sirén, Technology Architect, Emerging Technologies Accenture
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Leverage your Business with Selenium Automation Testing
External Web Services Quick Start Guide
Test Driven Development 1 November Agenda  What is TDD ?  Steps to start  Refactoring  TDD terminology  Benefits  JUnit  Mocktio  Continuous.
Selenium Automation Framework
RemoteLaunch - Overview
Real Testing Scenario Strategy: Bringing this all together – Success!
Automated Testing and Integration with CI Tool
Patricia NXT.
Continuous Integration
VIRBank Kristina Naudžiūnaitė Rita Birgelytė
Node.js Test Automation using Oracle Developer Cloud- Simplified
Presentation transcript:

TSSG Case Study: Using Free & Open Source Tools to Manage Software Quality EECS811: Software/IT Project Management Agile Integration Management Case Study Ben Underwood 2/5/2016

Resource(s) used This presentation primarily uses a case study by Phelim Dowling and Kevin McGrath called “Using Free and Open Source Tools to Manage Software Quality,” which appeared in the July 2015 issue of Communications of the ACM. This is a good case study for agile integration management because many agile shops are smaller companies with limited budgets. 2

Organization Introduction TSSG Successes Agile Development Project Management & Issue Tracking Code Repository Continuous Integration Testing Tools Conclusions References 3

Introduction The Telecommunications Software & Systems Group (TSSG) is a research and innovation group based at the Waterford Institute of Technology in Ireland. TSSG’s work is project-based, with all projects being funded separately. Thus with little or no baseline funding, teams must make liberal use of free and open source software tools. 4

TSSG Successes TSSG has had many successes while using freeware tools. Most notably, in 2014, Red Hat acquired a mobile application platform developed by TSSG for $82 million in cash (FeedHenry). At any one time, TSSG may have 30 to 40 research projects going concurrently, with partners in industry, government, and academia. 5

Agile Development 1 of 2 TSSG views each project like an early-stage start-up. Therefore, they use agile development methods to stay lean and flexible, and react efficiently to change. Free and open source tools fit well with the agile ethos. They are plentiful, customizable, and able to contribute organization or automation in place of formal documentation. 6

Agile Development 2 of 2 TSSG’s agile process is as follows: – Document requirements as user stories. – Create a Project Plan composed of Engineering Releases (ER), with each ER composed of 2-week iterations (IR). – Assign stories to an IR, then break them down into subtasks and subfeatures. – Test-driven development, and continuous integration to allow time for extensive testing. 7

Project Management & Issue Tracking 1 of 3 They use one software tool for documenting requirements, project planning, and defect/issue tracking. Integrating these three areas helps to streamline the workflow. Redmine ( Written in the Ruby on Rails web application framework Currently on version

Project Management & Issue Tracking 2 of 3 TSSG installed Redmine on a Ubuntu virtual machine paired with a MySQL database, and they use an Apache web server to allow users to access it from any web browser. Has templates for many common agile practices such as user stories, task boards, sprint cards, gantt charts, time tracking, defect reports, and more. 9

Project Management & Issue Tracking 3 of 3 Integration of requirements documentation and defect tracking is key. Defect reports can be tracked back to original feature requirements. Developers have one place to go to see defects to fix and new features to develop. Also integrates with the project’s code repository 10

Code Repository A source code control framework is a necessity Central location for team members to check in code and have it get backed up, and version control to allow rollbacks if necessary TSSG locally hosts Git ( Currently on version Integrates with Redmine. The repository, commits and stats are viewable from Redmine. 11

Continuous Integration 1 of 2 A key component of TSSG’s agile process is frequent builds. This ensures frequent testing, since automated tests run at build time, and it makes regular builds available for further testing in their test environment. Apache Ant ( and Apache Maven ( generate the buildshttp://ant.apache.org/ 12

Continuous Integration 2 of 2 Jenkins ( manages the automation. Written in Java, current version is Builds can be triggered by code check-ins or at regular intervals. Web-based interface for viewing list of builds, changes in each build, and test results. Can be configured to send notices. 13

Testing Tools 1 of 4 The choice of tool for unit testing varies with the technologies being tested, but TSSG’s most frequently used is JUnit ( For testing Java code. Current version is Cobertura ( is used to measure the test coverage. Version Integrates with Jenkins to show results there. 14

Testing Tools 2 of 4 Selenium ( is used to automate regression testing. It is essentially used to record and replay browser sessions to test web applications. It is installed as a Firefox browser add-on, though it can emulate most major browsers for browser compatibility testing. Current version is

Testing Tools 3 of 4 Apache Jmeter ( is used for load testing, using multiple threads to emulate multiple users. It is a Java application, current version NetSparker ( is used for security testing. Free community edition can show vulnerabilities to cross-site scripting, SQL injection, etc. 16

Testing Tools 4 of 4 Not all testing activities are automated. For creating and executing manual test cases, TSSG uses a free community edition of Klaros. Klaros ( testmanagement.com/en/), version testmanagement.com/en/ Integrates with both Redmine and Jenkins, so that test results can be viewed in multiple places. 17

18 Review of TSSG Processes & Tools

Conclusions Free and open source software tools can meet the needs of professional development teams, and may fit especially well within agile processes. Thank you for your time. Questions and feedback are welcome. 19

References Apache Ant (2016). Retrieved from Apache Jmeter (2016). Retrieved from Apache Maven (2016). Retrieved from Cobertura (2016). Retrieved from Dowling, P. and McGrath, K. (July 2015). Using Free and Open Source Tools to Manage Software Quality. Communications of the ACM (Vol. 58, No. 7, pp ). Git (2016). Retrieved from Jenkins (2016). Retrieved from Junit (2016). Retrieved from Klaros Test Management (2016). Retrieved from testmanagement.com/en/ testmanagement.com/en/ NetSparker (2016). Retrieved from Redmine (2016). Retrieved from Selenium (2016). Retrieved from TSSG About Us (2016). Retrieved from 20