Collaborative Software Development

Size: px
Start display at page:

Download "Collaborative Software Development"

Transcription

1 Collaborative Software Development and what we can learn from F/OSS development Martin Kropp Instute for Mobile and Distributed Systems Swisslog, Grindelwald, 28. Mai 2009

2 Objectives Some term clarifications Show how F/OSS development is organized Show how we can profit from F/OSSD CSD practices Describe some ingredients needed for effective CSD Institut für Mobile und Verteilte Systeme 2

3 l Agenda About Me CSD and GSD - What does that mean? GSD - Why should we care? F/OSSD The mother of CSD How does it work? Ingredients for CSD Communication, Process, Project Management, CI, Summary Institut für Mobile und Verteilte Systeme 3

4 About Me! Who am I? Institut für Mobile und Verteilte Systeme 4

5 l Agenda About Me CSD and GSD - What does that mean? GSD - Why should we care? F/OSSD The mother of CSD How does it work? Ingredients for CSD Summary Communication, Process, Project Management, CI, Institut für Mobile und Verteilte Systeme 5

6 Collaborative Software Development From Wikipedia, : The collaborative software development model is a style of software development whose focus is on public availability and communication, usually via the Internet. The software development model began widespread adoption with the Linux kernel in It is the dominant model used in development of free software. It is very compatible with free software because free software projects publish the source code of any published programs, so they do not have the secrecy reason for hiding their communications and in-progress development. Institut für Mobile und Verteilte Systeme 6

7 Global Software Development Software work undertaken at geographically separated locations across national boundaries in a coordinated fashion involving real time (synchronous) and asynchronous interaction [Sundeep Sahay, University of Oslo] Institut für Mobile und Verteilte Systeme 7

8 Why should I do GSD? To Access to the world wide talent pool Cost savings Focus on where you get the best ROI Market presence understanding local needs being close to the customer Mergers and acquisitions Improved quality? Follow-the-sun / -seasons development gaining competitive advantage Budget Buyers & Project Proxies End Users Business Subject Matter Experts Project Team Technical Collaborators i.e. because you are a global company Institut für Mobile und Verteilte Systeme 8

9 Some reasons you might not want to do it Strategic choices timing, partners, how to maintain and gain competitive advantage? Management / comms overhead complexity Cultural issues Command chains in the org chart, attitude, individualism / collectivism, religions, politics, Communication issues time zones, distance, lack of informal communications, different backgrounds different language information systems Technical issues does your software architecture support distributed development model? see it rather as challenges Institut für Mobile und Verteilte Systeme 9

10 Challenge Matrix distance temporal geographical sociocultural communication X X X coordination X X control X X Institut für Mobile und Verteilte Systeme 10

11 And how does this relate to CSD? Institut für Mobile und Verteilte Systeme 11

12 l Agenda About Me CSD and GSD - What does that mean? GSD - Why should we care? F/OSSD The mother of CSD How does it work? Ingredients for CSD Summary Communication, Process, Project Management, CI, Institut für Mobile und Verteilte Systeme 12

13 F/OSSD - The Mother of CSD Plublic availability Communication and there is more! Institut für Mobile und Verteilte Systeme 13

14 A Short History of F/OSSD 1984 Richard Stallman founds the Free Software Foundation ( FSF ) (www.fsf.org) in 1985 to develop free version of a UNIX operating system Promulgates GNU Public License ( GPL ) 1994 Linux 1.0 is release under the GPL by Linus Torvalds 1998 Open Source Initiative ( OSI ) is founded Coins term Open Source Certifies and lists open source licenses that conform to the OSD 2003 Linux OS/Apache Web Server are mainstream (27% and 70% of markets, respectively) Institut für Mobile und Verteilte Systeme 14

15 Open Source Software A Success Story? How many successful projects can you name? How many OS projects do exist? Institut für Mobile und Verteilte Systeme 15

16 Open Source Software A Success Story! Collaborative Development Distributed Development Institut für Mobile und Verteilte Systeme 16

17 F/OSSD (and CSD) How it works? Requirements and design Configuration management and work coordination Maintenance and Evolution Project management/career development Development Paradigm Institut für Mobile und Verteilte Systeme 17

18 F/OSSD Requirements and Design F/OSS Requirements/Designs not explicit not formal F/OSS Requirements/Designs are embedded within informalisms F/OSS Requirements/Design processes are different from their SE counterparts. Institut für Mobile und Verteilte Systeme 18

19 F/OSSD informalisms Project digests Project repositories Issue tracking databases lists Software bug News postings IM/Internet Discussion reports Relay Chat forums To-do lists Scenarios of usage How-to guides FAQ s and item lists Project Wikis Architecture diagrams System documentation Plug-ins External publications Intra-app scripting Copyright licenses Code from other projects Project Web site Multi-project Web sites Project source code etc. Institut für Mobile und Verteilte Systeme 19

20 Configuration Mgmt and Work Coordination Use CM to coordinate and control who gets to update what part of the system/online artifacts Most F/OSSD projects use version control systems and frequent releases (daily releases on active projects) Apache: Single major release, with frequent patch releases (e.g., A patchy server ) Institut für Mobile und Verteilte Systeme 20

21 Maintenance and Evolution Overall evolutionary dynamic of F/OSSD is reinvention Reinvention enables continuous improvement F/OSS evolve through minor mutations Expressed, recombined, redistributed via incremental releases F/OSS systems co-evolve with their development community Success of one depends on the success of the other Institut für Mobile und Verteilte Systeme 21

22 Project Management and People F/OSSD projects self-organize as a pyramid meritocracy via virtual project management Ad hoc alliances, free participation, work is not assigned, Main motivation is learning and creation Status by the practice of using F/OSS developers want to have fun learn about new stuff (tools, techniques, skills, etc.), exercise their technical skill, try out new kinds of systems to develop, interconnect multiple F/OSSD projects (freedom of choice and expression) exchange with others Institut für Mobile und Verteilte Systeme 22

23 F/OSSD Roles and Pyramid Meritocracy Project Leader Core members (<15) Active developers Peripheral developers Bug reporters Readers Passive users (99% in Apache) Bug fixers Institut für Mobile und Verteilte Systeme 23

24 Characteristics Summary of F/OSSS and CSD Extensive involvement of user/developer community Forums, mails, issues trackings, wiki The developers must be users Bug finding and fixing is done by users -> low post-release defect density and high productivity due to independence of tasks. early and often Releases Nightly builds Very lightweight Intensive use of informalism High modularized software Common Code ownership Automation Self-organizing Institut für Mobile und Verteilte Systeme 24

25 F/OSSD CSD vs. Closed Source CSD Public availability (May be) a roadmap Feature requests Users Losely organized Closed source Tight schedule Strong requirements A client Strict organization Institut für Mobile und Verteilte Systeme 25

26 l Agenda About Me CSD and GSD - What does that mean? GSD - Why should we care? F/OSSD The mother of CSD How does it work? Ingredients for CSD Summary Communication, Process, Project Management, CI, Institut für Mobile und Verteilte Systeme 26

27 Ingredients For Effective CSD In distributed teams Good Communication Strong Development Process Good Project Management Continuous Integration Institut für Mobile und Verteilte Systeme 27

28 Good Communication Skype IM Wikis Web Plattform Conference Calls Video Conferencing Direct Meeting Exchange programs Travelling Institut für Mobile und Verteilte Systeme 28

29 Strong Development Process TDD Code Reviews Teams-of-Teams Sprints Mentoring Discipline Institut für Mobile und Verteilte Systeme 29

30 Project Management Bug Tracking Feature Planning Release Planning Version Management Cross Training Institut für Mobile und Verteilte Systeme 30

31 Continuous Integration CSD in practice Continuous integration is the strategy of making sure that changes to the project s code base are built, tested and reported on as soon as possible after they are introduced Institut für Mobile und Verteilte Systeme 31

32 CI Prerequisites Your code is maintained in a central repository You have automated the complete build of your system You have included regression tests in the codebase as part of the project. you have included automated reporting about build success you have a CI infrastructure with build server, test server, deployment server Institut für Mobile und Verteilte Systeme 32

33 Practices of Continuous Integration Maintain a Single Source Repository. Automate the Build Make Your Build Self-Testing Everyone Commits Every Day Every Commit Should Build the Mainline on an Integration Machine Keep the Build Fast Test in a Clone of the Production Environment Make it Easy for Anyone to Get the Latest Executable Everyone can see what's happening Automate Deployment From Institut für Mobile und Verteilte Systeme 33

34 CI Infrastructure Monitors projects/paths in source repository Development Deployment Server build server vcs server Build Script Executes tasks on schedule/event -Get latest version - Build - Code Audit -Unit Test -Code Coverage -Deploy build report developers Get local copies / Commit changes Institut für Mobile und Verteilte Systeme 34

35 CI Benefits Finding Bugs is easier Self-testing builds Diff debugging Less cumulative bugs Reduced Risks Easier predictions Avoid blind spots in the project Developers can concentrate on coding Encourage more frequent deployment Institut für Mobile und Verteilte Systeme 35

36 Automate The Build It s not just compiling The entire set of ALL steps needed to obtain the software product Use Tools like Maven, ant, Institut für Mobile und Verteilte Systeme 36

37 When To Build l Every successful change causes a commit Of course, after testing Every commit triggers a build Partial builds any time Full builds nightly builds Institut für Mobile und Verteilte Systeme 37

38 Build Resources Input Anything that s needed for the product? Output Anything that s needed for Installation Execution Documentation Institut für Mobile und Verteilte Systeme 38

39 Self-Testing Builds Automated tests No manual execution No clicks on dialog boxes No config editing Test on all levels Unit test (use mocks for isolated tests) Junit, easymock Db test - dbtest Integration test Fit/Fitness, Selenium Acceptance test Fit/Fitnesse GUI test FEST Web Test WebTest Institut für Mobile und Verteilte Systeme 39

40 Build Tasks Not just build and test code Include auditing Metrics Code quality analysis Code coverage Test analysis Statistics Institut für Mobile und Verteilte Systeme 40

41 Provide Feedback Everybody sees what s going on Institut für Mobile und Verteilte Systeme 41

42 Summary GSD is a must in any global acting company It comes with a lot of challenges and issues distance, culture, CSD provides some very helpful practices to address challenges Common code owenship Using informalism Providing feedback Establish automation and Mr Brooks is still right there is no silver bullet! Institut für Mobile und Verteilte Systeme 42

43 Resources Books Eric S. Raymond, The Cathedral & the Bazaar. O Reilly, 2001 Musings on Linux and Open Source by an Accidental Revolutionary James A. Highsmith III: Adaptive Software Development: A Collaborative Approach to Managing Complex Systems- Dorset House Publishing Company, Erran Carmel: Global Software Teams: Collaborating Across Borders and Time Zones. Prentice Hall, Dean Leffingwell: Scaling Software Agility: Best Practices for Large Enterprises. Addison- Wesley, Edward Yourdon: Competing in the Global Productivity Race. Prentice Hall, Dale Walter Karolak, Global Software Development: Managing Virtual Teams and Environments. Wiley-IEEE Computer Society, Raghvinder Sangwan, Matthew Bass, Neel Mullick, Daniel J. Paulish, Juergen Kazmeier, Global Software Development Handbook. AUERBACH, Institut für Mobile und Verteilte Systeme 43

44 Design and programming are human activities; forget that and all is lost. Bjarne Stroustrup, 1991 Thank you very much for your attention! You can reach me under: Institut für Mobile und Verteilte Systeme 44

Software Construction

Software Construction Software Construction Martin Kropp University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Learning Target You can explain the importance of continuous integration

More information

Understanding Best Practices in Free/Open Source Software Development

Understanding Best Practices in Free/Open Source Software Development Understanding Best Practices in Free/Open Source Software Development Walt Scacchi Institute for Software Research School of Information and Computer Science University of California, Irvine Irvine, CA

More information

Modern practices 2.3.2015 02.03.2015 TIE-21100/21106 1

Modern practices 2.3.2015 02.03.2015 TIE-21100/21106 1 Modern practices 2.3.2015 1 Today s lecture Learn what some modern SW engineering topics are about A peek to some research topic of our department 2 3 4 5 6 How the lectures continue? 02.03 Modern practices

More information

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation Practicing Continuous Delivery using Hudson Winston Prakash Oracle Corporation Development Lifecycle Dev Dev QA Ops DevOps QA Ops Typical turn around time is 6 months to 1 year Sprint cycle is typically

More information

SOFTWARE DEVELOPMENT BASICS SED

SOFTWARE DEVELOPMENT BASICS SED SOFTWARE DEVELOPMENT BASICS SED Centre de recherche Lille Nord Europe 16 DÉCEMBRE 2011 SUMMARY 1. Inria Forge 2. Build Process of Software 3. Software Testing 4. Continuous Integration 16 DECEMBRE 2011-2

More information

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited Continuous Integration: Improving Software Quality and Reducing Risk Preetam Palwe Aftek Limited One more title Do you love bugs? Or Are you in love with QC members? [Courtesy: Smita N] Agenda Motivation

More information

Traditional Commercial Software Development. Open Source Development. Traditional Assumptions. Intangible Goods. Dr. James A.

Traditional Commercial Software Development. Open Source Development. Traditional Assumptions. Intangible Goods. Dr. James A. Open Source Development Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar Traditional Commercial Software Development Producing consumer-oriented software is often done in

More information

Continuous Integration on System z

Continuous Integration on System z Continuous Integration on System z A Proof of Concept at Generali Deutschland Informatik Services GmbH Enterprise Modernization GSE Frankfurt, 14th October 2013 Markus Holzem, GDIS-AS mailto: markus.holzem@generali.de

More information

Modeling and Simulating Free/Open Source Software Development Processes

Modeling and Simulating Free/Open Source Software Development Processes Modeling and Simulating Free/Open Source Software Development Processes Walt Scacchi Institute for Software Research School of Information and Computer Science University of California, Irvine Irvine,

More information

Continuous Integration: A case study

Continuous Integration: A case study Continuous Integration: A case study Vaibhav Kothari Talentica Software (I) Pvt ltd 1 Abstract Developer s dilemma QA s dilemma Continuous Integration? Case study What is accomplished? Benefits of CI Recommended

More information

ALM: Continuous Integration. José Almeida, Microsoft

ALM: Continuous Integration. José Almeida, Microsoft ALM: Continuous Integration José Almeida, Microsoft Agenda Issues Addressed Getting Started What is CI? CI Practices About Continuous Integration What is Continuous Integration? CI is the thread that ties

More information

Upping the game. Improving your software development process

Upping the game. Improving your software development process Upping the game Improving your software development process John Ferguson Smart Principle Consultant Wakaleo Consulting Email: john.smart@wakaleo.com Web: http://www.wakaleo.com Twitter: wakaleo Presentation

More information

Continuous Integration: Put it at the heart of your development

Continuous Integration: Put it at the heart of your development Continuous Integration: Put it at the heart of your development Susan Duncan Tools Product Manager, Oracle 1 Program Agenda What is CI? What Does It Mean To You? Make it Hudson Evolving Best Practice For

More information

Introduction and Agenda

Introduction and Agenda Continuous Integration a brief introduction to creating quality software continuously presented by Introduction and Agenda Andy Painter, Davisbase Consulting 15+ years in software development. 5+ years

More information

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Leveraging Rational Team Concert's build capabilities for Continuous Integration Leveraging Rational Team Concert's build capabilities for Continuous Integration Krishna Kishore Senior Engineer, RTC IBM Krishna.kishore@in.ibm.com August 9-11, Bangalore August 11, Delhi Agenda What

More information

Delivering Quality Software with Continuous Integration

Delivering Quality Software with Continuous Integration Delivering Quality Software with Continuous Integration 01 02 03 04 Unit Check- Test Review In 05 06 07 Build Deploy Test In the following pages we will discuss the approach and systems that together make

More information

What You Should Know About Open Source Software

What You Should Know About Open Source Software What You Should Know About Open Source Software J.D. Marple Silicon Valley Latham & Watkins operates as a limited liability partnership worldwide with an affiliate in the United Kingdom and Italy, where

More information

An Open Source Work Shop. Luciano Resende (lresende@apache.org) Haleh Mahbod (hmahbod@gmail.com) Aug. 2008

An Open Source Work Shop. Luciano Resende (lresende@apache.org) Haleh Mahbod (hmahbod@gmail.com) Aug. 2008 An Open Source Work Shop Luciano Resende (lresende@apache.org) Haleh Mahbod (hmahbod@gmail.com) Aug. 2008 1 Topics General knowledge about open source Importance of Open Source What is Open Source License

More information

Continuous Integration. CSC 440: Software Engineering Slide #1

Continuous Integration. CSC 440: Software Engineering Slide #1 Continuous Integration CSC 440: Software Engineering Slide #1 Topics 1. Continuous integration 2. Configuration management 3. Types of version control 1. None 2. Lock-Modify-Unlock 3. Copy-Modify-Merge

More information

Continuous Integration and Bamboo. Ryan Cutter CSCI 5828 2012 Spring Semester

Continuous Integration and Bamboo. Ryan Cutter CSCI 5828 2012 Spring Semester Continuous Integration and Bamboo Ryan Cutter CSCI 5828 2012 Spring Semester Agenda What is CI and how can it help me? Fundamentals of CI Fundamentals of Bamboo Configuration / Price Quick example Features

More information

The Unix-like Build Pattern

The Unix-like Build Pattern The Unix-like Build Pattern Bruno P. Kinoshita 1, Eduardo Guerra 2 1 TupiLabs Sao Paulo SP Brazil 2 Instituto Nacional de Pesquisas Espaciais (INPE) Sao Jose dos Campos SP Brazil bruno@tupilabs.com, guerraem@gmail.com

More information

Effektiver Tool-Einsatz

Effektiver Tool-Einsatz Effektiver Tool-Einsatz für Scrum-Projekte im Java-Umfeld Agile Softwareentwicklung Werte, Prinzipien, Methoden und Prozesse 13. OBJEKTspektrum Information Days 29. April 2010, München Gerhard Müller,

More information

Global Software Development: Issues, Solutions, Challenges

Global Software Development: Issues, Solutions, Challenges Global Software Development: Issues, Solutions, Challenges Parastoo Mohagheghi Dept. Computer and Information Science (IDI) University of Science and Technology (NTNU) Trondheim, Norway parastoo@idi.ntnu.no

More information

Free/Open Source Software Development: Recent Research Results and Emerging Opportunities

Free/Open Source Software Development: Recent Research Results and Emerging Opportunities Free/Open Source Software Development: Recent Research Results and Emerging Opportunities Walt Scacchi Institute for Software Research University of California, Irvine ESEC-FSE07 State of the Art Seminar

More information

Best Practices for Java Projects Horst Rechner

Best Practices for Java Projects Horst Rechner Best Practices for Java Projects Horst Rechner Abstract: The combination of automated builds with module and integration tests and centralized bug and work tracking using a combination of Eclipse, Mylyn,

More information

Successfully managing geographically distributed development

Successfully managing geographically distributed development IBM Rational SCM solutions for distributed development August 2004 Successfully managing geographically distributed development Karen Wade SCM Product Marketing Manager IBM Software Group Page 2 Contents

More information

We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and

We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and software design and development. We will be presenting a

More information

Some thoughts about FOSS

Some thoughts about FOSS Free and Open Source Software (FOSS) Part II presented by Wolfgang Leister INF 5780 Høstsemester 2009 Ifi Universitetet i Oslo Some thoughts about FOSS Open Source Software (1) 1. Free Redistribution The

More information

Introduction to Agile Software Development Process. Software Development Life Cycles

Introduction to Agile Software Development Process. Software Development Life Cycles Introduction to Agile Software Development Process Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 AGENDA Software Development Life Cycles Waterfall Model Iterative

More information

About Me Developer Workspaces Enable Agile Teams

About Me Developer Workspaces Enable Agile Teams About Me Developer Workspaces Enable Agile Teams Steve Berczuk Cyrus Innovation New England Agile Bazaar March 2008 Software Developer Certified Scrum Master Author (SCM Patterns Book, CM Crossroads) Technical

More information

Finally, an agile test strategy (that works)! AS OW Test Model, Objectware

Finally, an agile test strategy (that works)! AS OW Test Model, Objectware Finally, an agile test strategy (that works)! AS OW Test Model, Objectware Who is Erik Drolshammer? Consultant Objectware AS erik.drolshammer@objectware.no Master in Computer Science from NTNU Master thesis

More information

Software Configuration Management. Slides derived from Dr. Sara Stoecklin s notes and various web sources.

Software Configuration Management. Slides derived from Dr. Sara Stoecklin s notes and various web sources. Software Configuration Management Slides derived from Dr. Sara Stoecklin s notes and various web sources. What is SCM? SCM goals Manage the changes to documents, programs, files, etc. Track history Identify

More information

Continuous Integration Optimizing Your Release Management Process

Continuous Integration Optimizing Your Release Management Process Continuous Integration Optimizing Your Release Management Process Continuous Integration? Why should I care? What s in it for me? Continuous Integration? Why should I care? What s in it for me? The cost

More information

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8 dt08ps5]@student.lth.

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8 dt08ps5]@student.lth. 1 Continuous Integration with Jenkins Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8 dt08ps5]@student.lth.se Faculty of Engineering, Lund Univeristy (LTH) March 5, 2013 Abstract

More information

CHAPTER 7 Software Configuration Management

CHAPTER 7 Software Configuration Management CHAPTER 7 Software Configuration Management ACRONYMS CCB CM FCA MTBF PCA SCCB SCI SCM SCMP SCR SCSA SEI/CMMI SQA SRS USNRC INTRODUCTION Configuration Control Board Configuration Management Functional Configuration

More information

MANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info

MANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info MANUAL TESTING (Complete Package) WEB APP TESTING DB TESTING MOBILE APP TESTING We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info START DATE : TIMINGS : DURATION :

More information

Kevin Lee Technical Consultant kevin.lee@uk.ibm.com. As part of a normal software build and release process

Kevin Lee Technical Consultant kevin.lee@uk.ibm.com. As part of a normal software build and release process Agile SCM: Realising Continuous Kevin Lee Technical Consultant kevin.lee@uk.ibm.com Agenda What is Continuous? Continuous in Context As part of a normal software build and release process Realising Continuous

More information

Continuous Integration. bjorn.boisschot@ctg.com

Continuous Integration. bjorn.boisschot@ctg.com Continuous Integration bjorn.boisschot@ctg.com 1. It works on my machine. Risk 1 Lack of Deployable Software Risk 2 Lack of project visibility 2011 CTG, Inc. 9 2011 CTG, Inc. 10 Risk 3 Low quality

More information

Introduction to Open Source. Marco Zennaro mzennaro@ictp.it Carlo Fonda cfonda@ictp.it

Introduction to Open Source. Marco Zennaro mzennaro@ictp.it Carlo Fonda cfonda@ictp.it Introduction to Open Source Marco Zennaro mzennaro@ictp.it Carlo Fonda cfonda@ictp.it Agenda Open Source Linux Linux history Distributions License Types OS and Development OS Definition Why is it called

More information

Bridging the Gap Between Acceptance Criteria and Definition of Done

Bridging the Gap Between Acceptance Criteria and Definition of Done Bridging the Gap Between Acceptance Criteria and Definition of Done Sowmya Purushotham, Amith Pulla sowmya.sudha@gmail.com, amith.pulla@intel.com Abstract With the onset of Scrum and as many organizations

More information

Selection and Management of Open Source Software in Libraries.

Selection and Management of Open Source Software in Libraries. Selection and Management of Open Source Software in Libraries. Vimal kumar V. Asian School of Business Padmanabha Building Technopark, Trivandrum-695 581 vimal0212@yahoo.com Abstract Open source software

More information

Testing Tools Content (Manual with Selenium) Levels of Testing

Testing Tools Content (Manual with Selenium) Levels of Testing Course Objectives: This course is designed to train the fresher's, intermediate and professionals on testing with the concepts of manual testing and Automation with Selenium. The main focus is, once the

More information

Jenkins User Conference Herzelia, July 5 2012 #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP http://hp.

Jenkins User Conference Herzelia, July 5 2012 #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP http://hp. Testing a Large Support Matrix Using Jenkins Amir Kibbar HP http://hp.com/go/oo About Me! 4.5 years with HP! Almost 3 years System Architect! Out of which 1.5 HP OO s SA! Before that a Java consultant

More information

Software Development In the Cloud Cloud management and ALM

Software Development In the Cloud Cloud management and ALM Software Development In the Cloud Cloud management and ALM First published in Dr. Dobb's Journal, February 2009: http://www.ddj.com/development-tools/212900736 Nick Gulrajani is a Senior Solutions Architect

More information

Free software GNU/Linux TOR project

Free software GNU/Linux TOR project Fair Young Sustainable Inclusive and Cooperative (FYSIC) @ Modica Sicily Free software GNU/Linux TOR project Solira Software Libero Ragusa What is Solira? We promote the Free Software philosophy on local

More information

Global Software Development

Global Software Development Global Software Development Ita Richardson, University of Limerick, Ireland Tutorial at University of Tampere, Finland, August 2007 1 Overview Process Management Effective Partitioning Skills Management

More information

Two case studies of Open Source Software Development: Apache and Mozilla

Two case studies of Open Source Software Development: Apache and Mozilla 1 Two case studies of Open Source Software Development: Apache and Mozilla Audris Mockus, Roy Fielding, and James D Herbsleb Presented by Jingyue Li 2 Outline Research questions Research methods Data collection

More information

Software Configuration Management and Continuous Integration

Software Configuration Management and Continuous Integration 1 Chapter 1 Software Configuration Management and Continuous Integration Matthias Molitor, 1856389 Reaching and maintaining a high quality level is essential for each today s software project. To accomplish

More information

SOA-14: Continuous Integration in SOA Projects Andreas Gies

SOA-14: Continuous Integration in SOA Projects Andreas Gies Distributed Team Building Principal Architect http://www.fusesource.com http://open-source-adventures.blogspot.com About the Author Principal Architect PROGRESS - Open Source Center of Competence Degree

More information

ICAgile Learning Roadmap Agile Testing Track

ICAgile Learning Roadmap Agile Testing Track International Consortium for Agile ICAgile Learning Roadmap Agile Testing Track Learning Objectives Licensing Information The work in this document was facilitated by the International Consortium for Agile

More information

"Build and Test in the Cloud "

Build and Test in the Cloud W5 Class 11/17/2010 10:00:00 AM "Build and Test in the Cloud " Presented by: Darryl Bowler CollabNet Brought to you by: 330 Corporate Way, Suite 300, Orange Park, FL 32073 888 268 8770 904 278 0524 sqeinfo@sqe.com

More information

On the Influence of Free Software on Code Reuse in Software Development

On the Influence of Free Software on Code Reuse in Software Development On the Influence of Free Software on Code Reuse in Software Development Marco Balduzzi Abstract Software reuse has become a topic of much interest in the software community due

More information

Modernizing enterprise application development with integrated change, build and release management.

Modernizing enterprise application development with integrated change, build and release management. Change and release management in cross-platform application modernization White paper December 2007 Modernizing enterprise application development with integrated change, build and release management.

More information

Agile Systems Engineering: What is it and What Have We Learned?

Agile Systems Engineering: What is it and What Have We Learned? Agile Systems Engineering: What is it and What Have We Learned? March 2012 Dr. Suzette S. Johnson Agile Engineering Northrop Grumman Suzette.Johnson@ngc.com Getting To Know You! Dr. Suzette Johnson Northrop

More information

What is meant by the term, Lean Software Development? November 2014

What is meant by the term, Lean Software Development? November 2014 What is meant by the term, Lean Software Development? Scope of this Report November 2014 This report provides a definition of Lean Software Development and explains some key characteristics. It explores

More information

Continuous Integration (CI)

Continuous Integration (CI) Introduction A long standing problem for software development teams has been to maintain the stability of an application while integrating the changes made by multiple developers. The later that integration

More information

http://www.wakaleo.com john.smart@wakaleo.com Java Software Quality Tools and techniques

http://www.wakaleo.com john.smart@wakaleo.com Java Software Quality Tools and techniques Wakaleo Consulting O p t i m i z i n g y o u r s o f t w a r e d e v e l o p m e n t http://www.wakaleo.com john.smart@wakaleo.com Java Software Quality Tools and techniques 1 Introduction Agenda tools

More information

Continuous Integration

Continuous Integration Continuous Integration Collaborative development issues Checkout of a shared version of software ( mainline ) Creation of personal working copies of developers Software development: modification of personal

More information

Controlling Software Product Line Evolution

Controlling Software Product Line Evolution Controlling Software Product Line Evolution An infrastructure on top of configuration management Michalis Anastasopoulos michalis.anastasopoulos@iese.fraunhofer.de Outline Foundations Problem Statement

More information

WHITE PAPER. Getting started with Continuous Integration in software development. - Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi

WHITE PAPER. Getting started with Continuous Integration in software development. - Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi WHITE PAPER Getting started with Continuous Integration in software development - Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi Introduction DevOps culture is gaining rapid momentum in the IT

More information

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture Pipeline Orchestration for Test Automation using Extended Buildbot Architecture Sushant G.Gaikwad Department of Computer Science and engineering, Walchand College of Engineering, Sangli, India. M.A.Shah

More information

Meister Going Beyond Maven

Meister Going Beyond Maven Meister Going Beyond Maven A technical whitepaper comparing OpenMake Meister and Apache Maven OpenMake Software 312.440.9545 800.359.8049 Winners of the 2009 Jolt Award Introduction There are many similarities

More information

FSW QA Testing Levels Definitions

FSW QA Testing Levels Definitions FSW QA Testing Levels Definitions 1. Overview This document is used to help determine the amount and quality of testing (or its scope) that is planned for or has been performed on a project. This analysis

More information

Software Configuration Management Best Practices for Continuous Integration

Software Configuration Management Best Practices for Continuous Integration Software Configuration Management Best Practices for Continuous Integration As Agile software development methodologies become more common and mature, proven best practices in all phases of the software

More information

FOSSBazaar A Governance Initiative to manage Free and Open Source Software life cycle

FOSSBazaar A Governance Initiative to manage Free and Open Source Software life cycle FOSSBazaar A Governance Initiative to manage Free and Open Source Software life cycle Table of contents Executive summary......2 What is FOSS Governance 3 The importance of open source governance...3 Why

More information

Open Source Software Development

Open Source Software Development Open Source Software Development OHJ-1860 Software Systems Seminar, 3 cr Imed Hammouda Institute of Software Systems Tampere University of Technology Course Information Open Source Software Development

More information

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS @huibschoots & @mieldonkers INTRODUCTION Huib Schoots Tester @huibschoots Miel Donkers Developer @mieldonkers TYPICAL Experience with Continuous Delivery?

More information

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery!

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery! Continuous Delivery for Alfresco Solutions Satisfied customers and happy developers with!! Continuous Delivery! About me Roeland Hofkens #rhofkens roeland.hofkens@westernacher.com http://opensource.westernacher.com

More information

T14 Thursday, November 4, 1999 1:30 PM

T14 Thursday, November 4, 1999 1:30 PM Presentation Notes Paper Bio Return to Main Menu PRESENTATION T14 Thursday, November 4, 1999 1:30 PM SYSTEM TESTING STRATEGIES FOR HIGHLY AVAILABLE CLUSTERED SYSTEMS Subbarao Jagannatha Sun Microsystems

More information

101-301 Guide to Mobile Testing

101-301 Guide to Mobile Testing 101-301 Guide to Mobile Testing Perfecto Mobile & Toronto Association of System and Software Eran Kinsbruner & Joe Larizza 2014 What To Do? Great News Your first Mobile Project has arrived! You have been

More information

Free and Open Source Business Applications. Presentation to Young Professionals CPA Discussion Group. 8 October 2014, 2014 http://levlafayette.

Free and Open Source Business Applications. Presentation to Young Professionals CPA Discussion Group. 8 October 2014, 2014 http://levlafayette. Free and Open Source Business Applications Presentation to Young Professionals CPA Discussion Group 8 October 2014, 2014 http://levlafayette.com About Free and Open Source Software Some definitions of

More information

Impact of cloud computing

Impact of cloud computing EOLE European Open source & free software Law Event Brussels 06/12/2013 Impact of cloud computing...on FOSS users Benjamin Jean bjean@inno3.fr 1 Plan 0. Definition : who are the users? 1. Questions: is

More information

Software infrastructure for Java development projects

Software infrastructure for Java development projects Tools that can optimize your development process Software infrastructure for Java development projects Presentation plan Software Development Lifecycle Tools What tools exist? Where can tools help? Practical

More information

Continuous Integration

Continuous Integration Continuous Integration WITH FITNESSE AND SELENIUM By Brian Kitchener briank@ecollege.com Intro Who am I? Overview Continuous Integration The Tools Selenium Overview Fitnesse Overview Data Dependence My

More information

Presentation. Open Source is NOT Free. For ISACA. By Dave Yip / Gamatech Ltd. Agenda

Presentation. Open Source is NOT Free. For ISACA. By Dave Yip / Gamatech Ltd. Agenda Presentation Open Source is NOT Free For ISACA By Dave Yip / Gamatech Ltd Agenda Gamatech Introduction to Open Source Open Source and Enterprises Open Source Licensing Open Source Risks Open Source Management

More information

Software configuration management

Software configuration management Software Engineering Theory Software configuration management Lena Buffoni/ Kristian Sandahl Department of Computer and Information Science 2015-09-30 2 Maintenance Requirements System Design (Architecture,

More information

DevOps Course Content

DevOps Course Content DevOps Course Content INTRODUCTION TO DEVOPS What is DevOps? History of DevOps Dev and Ops DevOps definitions DevOps and Software Development Life Cycle DevOps main objectives Infrastructure As A Code

More information

Improvement Opportunities for the Open Source Software Development Approach and How to utilize them

Improvement Opportunities for the Open Source Software Development Approach and How to utilize them Improvement Opportunities for the Open Source Software Development Approach and How to utilize them Paper for the OSSIE 03 Workshop Stefan Dietze Fraunhofer ISST, Mollstr. 1 10178 Berlin, Germany stefan.dietze@isst.fhg.de

More information

a new generation software test automation framework - CIVIM

a new generation software test automation framework - CIVIM a new generation software test automation framework - CIVIM Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the

More information

Implementing Continuous Integration Testing Prepared by:

Implementing Continuous Integration Testing Prepared by: Implementing Continuous Integration Testing Prepared by: Mr Sandeep M Table of Contents 1. ABSTRACT... 2 2. INTRODUCTION TO CONTINUOUS INTEGRATION (CI)... 3 3. CI FOR AGILE METHODOLOGY... 4 4. WORK FLOW...

More information

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms NXTware Remote Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms Gerrit Woertman CTO OpenVMS Business Generating Software gerrit@bgsoftware.nl +31 6 51341600 Introduction

More information

Continuous Integration Processes and SCM To Support Test Automation

Continuous Integration Processes and SCM To Support Test Automation Continuous Integration Processes and SCM To Support Test Automation SIGIST Conference, July 2013 Gal Fatal Gal.fatal@ATT.com 054-342-3864 AT&T Israel Center of Excellence AT&T Worldwide One of the largest

More information

Agile Requirements Definition for Software Improvement and Maintenance in Open Source Software Development

Agile Requirements Definition for Software Improvement and Maintenance in Open Source Software Development Agile Requirements Definition for Software Improvement and Maintenance in Open Source Software Development Stefan Dietze Fraunhofer Institute for Software and Systems Engineering (ISST), Mollstr. 1, 10178

More information

Agile ALM. Lightweight tools and Agile strategies MANNING MICHAEL HUTTERMANN. Shelter Island

Agile ALM. Lightweight tools and Agile strategies MANNING MICHAEL HUTTERMANN. Shelter Island Agile ALM Lightweight tools and Agile strategies MICHAEL HUTTERMANN II MANNING Shelter Island contents preface xv acknowledgments about this book xix xvii about the cover illustration xxv *art 1 Introduction

More information

Introduction to Automated Testing

Introduction to Automated Testing Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases

More information

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

Enabling Continuous Delivery by Leveraging the Deployment Pipeline Enabling Continuous Delivery by Leveraging the Deployment Pipeline Jason Carter Principal (972) 689-6402 Jason.carter@parivedasolutions.com Pariveda Solutions, Inc. Dallas,TX Table of Contents Matching

More information

Test Driven Development Part III: Continuous Integration Venkat Subramaniam venkats@agiledeveloper.com http://www.agiledeveloper.com/download.

Test Driven Development Part III: Continuous Integration Venkat Subramaniam venkats@agiledeveloper.com http://www.agiledeveloper.com/download. Test Driven Development Part III: Continuous Integration Venkat Subramaniam venkats@agiledeveloper.com http://www.agiledeveloper.com/download.aspx Abstract In this final part of the three part series on

More information

Continuous Delivery. Alejandro Ruiz

Continuous Delivery. Alejandro Ruiz Continuous Delivery Alejandro Ruiz True reality How the customer explained it How the project leader understood it How the analyst designed it How the programmer wrote it What the customer really needed

More information

Agile Methods and Open Source Software Development

Agile Methods and Open Source Software Development Agile Methods and Open Source Software Development Prof. Dr. Dirk Riehle Lecture 9/15 of 21.12.2009 Winter Semester Winter Semester 2009/2010 2009/2010 Lecture Lecture Agile Methods Agile and Open Source

More information

Open-source business models: Creating value from free stuff'

Open-source business models: Creating value from free stuff' Best Practice in Innovation, Entrepreneurship & Design Open-source business models: Creating value from free stuff' 31 March 2010-18.00 to 19.30 Panellists: Prof. Bart Clarysse - Chair in Entrepreneurship,

More information

Unit 10 : An Introduction to Linux OS

Unit 10 : An Introduction to Linux OS Unit 10 : An Introduction to Linux OS Linux is a true 32/64-bit operating system that run on different platforms. It is a multi-user, multi-tasking and time sharing operating system. Linux is a very stable

More information

Nazanin Hajimirarab. Master s Thesis

Nazanin Hajimirarab. Master s Thesis The Integration and Collaboration of Open Source Communities into Software Development Process of Commercial Companies: A Case Study on Sailfish Operating System Nazanin Hajimirarab Master s Thesis Faculty

More information

Introduction to Programming Tools. Anjana & Shankar September,2010

Introduction to Programming Tools. Anjana & Shankar September,2010 Introduction to Programming Tools Anjana & Shankar September,2010 Contents Essentials tooling concepts in S/W development Build system Version Control System Testing Tools Continuous Integration Issue

More information

Week Overview. Installing Linux Linux on your Desktop Virtualization Basic Linux system administration

Week Overview. Installing Linux Linux on your Desktop Virtualization Basic Linux system administration ULI101 Week 06b Week Overview Installing Linux Linux on your Desktop Virtualization Basic Linux system administration Installing Linux Standalone installation Linux is the only OS on the computer Any existing

More information

Introducing Linux and open source

Introducing Linux and open source Introducing Linux and open source Lotte Mygind, Rune Hylsberg Jacobsen and Oskar Swirtun Ericsson is adapting its products and work processes to take advantage of opportunities afforded by open-source

More information

Management of the Open Source Software Requirements. Kati Koistinen

Management of the Open Source Software Requirements. Kati Koistinen 1 Management of the Open Source Software Requirements Kati Koistinen 2 Table of Contents Abstract 1. Introduction 2. The Proprietary vs. Open Source Software Requirements Engineering Process 2.1 Requirements

More information

Atomate Development Process. Quick Guide

Atomate Development Process. Quick Guide Development Process Quick Guide METHODOLOGY Every project is unique You know your business inside out. You have thought and planned your ideas carefully and are keen to see it live as soon as possible.

More information

Barely Sufficient Software Engineering: 10 Practices to Improve Your Research CSE Software

Barely Sufficient Software Engineering: 10 Practices to Improve Your Research CSE Software Barely Sufficient Software Engineering: 10 Practices to Improve Your Research CSE Software Special Thanks: LDRD NNSA ASC SAND#: 2009-0579 C Michael A. Heroux James M. Willenbring Sandia National Laboratories

More information