Delivering Quality Software with Continuous Integration
|
|
|
- Kellie Taylor
- 10 years ago
- Views:
Transcription
1 Delivering Quality Software with Continuous Integration Unit Check- Test Review In Build Deploy Test In the following pages we will discuss the approach and systems that together make up the process called Continuous Integration. This document is written for IT management who are looking to improve the quality of the software product or application their teams build. Introduction Software development continues to grow increasingly more complex. Even when dealing with dynamic languages like PHP, the systems being built today dwarf the systems of even five years ago. Many development teams however have not upgraded their development process and systems to meet the new demands. Today s teams must be well versed in the best practices of software development like source code control, unit testing, integration testing and documentation. These practices, when coupled together, form the basis of a Continuous Integration (CI) system. Continuous Integration is a term coined by Martin Fowler in a paper by the same name. Continuous Integration is a software development practice where members of a team integrate their work frequently; usually each person integrates at least daily - leading to multiple integrations per day. Every integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly"- Martin Fowler When multiple developers work in an integrated environment for the same software, it is obvious that the code can be messed up or overwritten by other people and hence the functionality can be broken. The developers will generally take a copy of source code into their systems for further development. On a defined timeframe developers will check in their files. This may result in code complication problems, source code conflict and unit test failure in the repository. Ideally each developer should check-out the latest code from repository, integrate it with their source code, build and run all unit tests before they check-in any code into the repository to ensure the stability of the build. This is an unorganized process with respect to the developers. They may miss to do the build every time. To avoid the manual errors, automated builds have been introduced.
2 CI helps in such scenario to ensure that the checked-in source code doesn't make any problems like broken code, unit test failure etc. Below are the potential problems that may occur if CI is not there in a project: Broken code injection there may be broken code in the repository which may merge to the developer s machine while synchronize with repository and this results in injection of defects. Unit Test Unit test failure Test cases fail if somebody check-in improper code. Synchronization Merge Developer may not realize the code checked-in by them is having compilation error. Build Broken build It is a serious issue when there is code checked-in to repository with compilation errors. Nobody will be able to run the application unless and until the compilation issue is resolved. But they will only come to know when individual do the build. The diagram below shows the product life cycle after the successful implementation of Continuous Integration Quality Product Stability Product Version Cost per feature Development Product Complexity Cost per Bug Availability of Latest Build Frequency of Realease Productivity Product Size (KLOC) Agile Development and CI In agile development, developers develop and check-in very frequently and it demands availability of working software every time. Agile equip to build the product incrementally and improve it as move on. CI is more suitable for agile development and is introduced to address few problems in agile development. CI in Agile development is helpful to minimize the duration and effort required by each integration episode and will be able to deliver "at any moment" a product version suitable for release.
3 Key Elements of CI A CI system usually consists of the following key elements: Maintain a single repository All developers check in code to a single repository from where the build has been taken periodically and look for errors. Automate the build The build process is automated to avoid manual errors in taking build. This helps people to get a better, faster and periodic build. Dashboard display on build reports to everybody All the builds happening on the server will be tracked and logged along with build report. This can be made available on a public dashboard where all the relevant people can have look at the reports. Self-tested builds A good way to catch bugs more quickly and efficiently is to include automated tests in the build process. The automated tests will run along with the build so that the builds become self-tested. Each developer commits the code to main repo every day The developers practice daily check-in to the repository at the end of the day. This helps other developers to integrate the code on a daily basis which more efficient than one time integration. Latest deployable build is available to everyone all the time A periodic build happens from the latest available source code and it creates deployable build which is available to everyone. The Add-on s of CI Automated review quality is one of the major areas of concern in many of the software products. The quality issues results in huge maintenance activities which consumes lot of time and cost. To resolve this, code review is being practiced in the development phase of software. However, manual review has its own disadvantages like issues in documentation of code, lack of visibility of the code issues to all stakeholders, challenges in maintaining history of code quality and last but not the least the time consuming process which leads to delay in delivery. To avoid the above stated problems, continuous code review process can be automated. There are tools like PMD, FindBugs available in the market to automate code review. This can be plugged into the CI process so that source code will be automatically reviewed along with build process. Automated test case execution Test driven development is one the important factor of extreme programming. Developers write test first and then develop code until all the written test cases are passed. This improves the code quality to a great extent and ensures that all the developed functionalities in the software are fully functional. TDD also helps to identify the defects faster. Automated test cases can be hooked into the CI process and it runs on every build. Release Automation The working software should be released on the desired environments properly with all the parameters accurately configured. This is another error-prone area where deployment can be broken because of the wrong configuration of parameters or improper deployment.
4 The deployment process can be automated and plugged to the CI so that once after the successful build, it will be deployed into the provided environment. Tools and frameworks that supports CI Hudson Hudson is a continuous integration (CI) tool written in Java, which runs in a servlet container, such as Apache Tomcat or the Glass- Fish application server. It supports SCM tools including CVS, Subversion, Git, Perforce, Clearcase and RTC, and can execute Apache Ant and Apache Maven based projects, as well as arbitrary shell scripts and Windows batch commands. CruiseControl CruiseControl is a Java-based framework for a continuous build process. It includes, but is not limited to, plugins for notification, Ant, and various source control tools. A web interface is provided to view the details of the current and previous builds. It allows one to perform a continuous integration of any software development process. Jenkins Jenkins provides continuous integration services for software development. It is a server-based system running in a servlet container such as Apache Tomcat. The project was forked from Hudson. CI - Aspire s approach Aspire follows an approach called Producteering TM to build products better, faster and innovate continuously. CI is one of the elements of Producteering that helps the team to excel on the engineering side. Producteering TM approach has a set of principles and practices, driven by the right people and supported by the right platforms. Aspire uses CI for the projects effectively. We also integrate automated code review, test cases and deployment along with CI. We ensure that every deliverable to the customer is processed through CI. Aspire uses the following tools to perform Continuous Integration: Jenkins - Using as CI Tool and integration platform for all other tools for code review, unit test etc., Jenkins also provides plugins to deploy the build to different servers. Sonar JUnits - Sonar is the automated code review tool which has built-in PMD and FindBugs tools integrated. Sonar generates an extensive code review report and dashboard of information about code quality and test coverage. - Creates unit tests using JUnits and automate it along with build process to ensure the functional coverage. The diagram below represents the process of Aspire s approach to CI using the tools mentioned above and our Technical Health Index process. Build Review CI THI Unit Testing
5 Conclusion From a technical perspective, CI helps teams work more efficiently. These teams can be cross-functional and develop software that works together. They can be geographically distributed, because the constant integration work will ensure that you don't get deviating codes. People can work on a large team, because the different components of a complex system will more assuredly work together. It solves many of the early pitfalls that these non-traditional agile teams might have experienced without CI. From a business perspective, CI offers better business results by allowing teams to have their cake and eat it too. That is, they can bring products to market faster, by finding issues early rather than at a later stage when they are large and more difficult to fix. They can also respond better to requirements that are introduced while the product is being developed. This creates a better product for the customer, which is the real promise of agility. About Author Sajeev Sreekantan is part of Java delivery unit. He has over 10 years of experience in IT industry and has performed various roles that cover complete software development life-cycle, and has also been consultant on Java/J2EE solutions to multinational companies. He is highly passionate about technologies and tools. About Aspire Aspire Systems is a global technology services firm serving as a trusted technology partner for our customers. We work with some of the world's most innovative enterprises and independent software vendors, helping them leverage technology and outsourcing in our specific areas of expertise. Our services include Product Engineering, Enterprise Transformation, Independent Testing Services and IT Infrastructure Support services Our core philosophy of "Attention. Always." communicates our belief in lavishing care and attention on our customers and employees. USA Aspire Systems, Inc Harger Road Suite 602,Oak Brook, IL , USA Tel: , Fax: [email protected] INDIA Aspire Systems (India) Pvt. Ltd. 1/D-1, SIPCOT IT PARK Siruseri, Chennai Tamil Nadu, India Tel: Fax: [email protected] UK Aspire Systems 1, Lyric Square, Hammersmith London - W6 0NB, UK Tel: [email protected]
Test Automation Tool comparison HP UFT/QTP vs. Selenium - Prashant Malhotra
Test Automation Tool comparison HP UFT/QTP vs. Selenium - Prashant Malhotra Test Automation Tool comparison HP UFT/QTP vs. Selenium This whitepaper has been created as a guide to help QA Heads understand,
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
Jenkins Continuous Build System. Jesse Bowes CSCI-5828 Spring 2012
Jenkins Continuous Build System Jesse Bowes CSCI-5828 Spring 2012 Executive summary Continuous integration systems are a vital part of any Agile team because they help enforce the ideals of Agile development
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...
Software Continuous Integration & Delivery
November 2013 Daitan White Paper Software Continuous Integration & Delivery INCREASING YOUR SOFTWARE DEVELOPMENT PROCESS AGILITY Highly Reliable Software Development Services http://www.daitangroup.com
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
Build management & Continuous integration. with Maven & Hudson
Build management & Continuous integration with Maven & Hudson About me Tim te Beek [email protected] Computer science student Bioinformatics Research Support Overview Build automation with Maven Repository
Global Software Change Management for PVCS Version Manager
Global Software Change Management for PVCS Version Manager... www.ikanalm.com Summary PVCS Version Manager is considered as one of the leading versioning tools that offers complete versioning control.
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
CONTINUOUS INTEGRATION
CONTINUOUS INTEGRATION REALISING ROI IN SOFTWARE DEVELOPMENT PROJECTS In the following pages we will discuss the policies and systems that together make up the process called Continuous Integration. This
Reduced 30% of IT infrastructure & operations costs by automating infrastructure monitoring for a global wireless distributor
Reduced 30% of IT infrastructure & operations costs by automating infrastructure monitoring for a global wireless distributor Our Customer One of the world's largest distributors of mobile phones, supporting
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
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
Continuous Integration
LT-QAI Torch Talk: Continuous Integration Marc @dfki.de DFKI Language Technology Lab, Saarbrücken and Berlin, Germany What do I mean by Torch Talk? Idea to increase the frequency of
Continuous Integration Multi-Stage Builds for Quality Assurance
Continuous Integration Multi-Stage Builds for Quality Assurance Dr. Beat Fluri Comerge AG ABOUT MSc ETH in Computer Science Dr. Inform. UZH, s.e.a.l. group Over 8 years of experience in object-oriented
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 [email protected] August 9-11, Bangalore August 11, Delhi Agenda What
<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style
Introducing Hudson Click to edit Master subtitle style Winston Prakash What is Hudson? Hudson is an open source continuous integration (CI) server. A CI server can do various tasks
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
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
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
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
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
Continuous Integration
Continuous Integration Improving Software Quality with Continuous Integration Continuous Integration In a nutshell Continuous Integration (CI) is: Assembling software every time code changes CI is important
Kevin Lee Technical Consultant [email protected]. As part of a normal software build and release process
Agile SCM: Realising Continuous Kevin Lee Technical Consultant [email protected] Agenda What is Continuous? Continuous in Context As part of a normal software build and release process Realising Continuous
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
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
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
Continuous Integration in Kieker
28. November 2014 @ Stuttgart, Germany Continuous Integration in Kieker (Experience Report) Nils Christian Ehmke, Christian Wulf, and Wilhelm Hasselbring Software Engineering Group, Kiel University, Germany
Jenkins: The Definitive Guide
Jenkins: The Definitive Guide John Ferguson Smart O'REILLY8 Beijing Cambridge Farnham Koln Sebastopol Tokyo Table of Contents Foreword xiii Preface xv 1. Introducing Jenkins 1 Introduction 1 Continuous
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
Beginners guide to continuous integration. Gilles QUERRET Riverside Software
Beginners guide to continuous integration Gilles QUERRET Riverside Software About the speaker Working with Progress and Java since 10 years Started Riverside Software 7 years ago Based in Lyon, France
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
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
GECKO Software. Introducing FACTORY SCHEMES. Adaptable software factory Patterns
Introducing FACTORY SCHEMES Adaptable software factory Patterns FACTORY SCHEMES 3 Standard Edition Community & Enterprise Key Benefits and Features GECKO Software http://consulting.bygecko.com Email: [email protected]
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
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: [email protected]
White Paper. CCRM Services on Cloud Benefits of Private Cloud for CCRM Services. Abstract. - Krishna Vaddadi
White Paper CCRM Services on Cloud Benefits of Private Cloud for CCRM Services - Krishna Vaddadi Abstract Configuration, Change and Release Management (CCRM) activities are the primary deliverables in
Hudson Continous Integration Server. Stefan Saasen, [email protected]
Hudson Continous Integration Server Stefan Saasen, [email protected] Continous Integration Software development practice Members of a team integrate their work frequently Each integration is verified by
Continuous Integration For Real: The Perforce Java Platform. Hamish Reid Perforce Software Inc.
Continuous Integration For Real: The Perforce Java Platform Hamish Reid Perforce Software Inc. OVERVIEW What do we mean by Agile? Continuous Integration? Product line highlights: P4Eclipse + Mylin + MergeQuest
Aspire's Approach to Test Automation
WHITE PAPER Aspire's Approach to Test Automation by Ujjawal Bagaria, Aspire Systems Automation has been seen as the long term solution for cost reduction of manual testing across the globe. A successfully
http://www.wakaleo.com [email protected] 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 [email protected] Java Software Quality Tools and techniques 1 Introduction Agenda tools
IKAN ALM and Collabnet TeamForge
IKAN ALM and Collabnet TeamForge Where Development, Testing and Operations meet Table of contents Executive summary...3 Problem statement...4 Solution Description...4 TeamForge and IKAN ALM...5 Versioning...5
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
Continuous integration End of the big bang integration era
Continuous integration End of the big bang integration era Patrick Laurent Partner Technology & Enterprise Applications Deloitte Mario Deserranno Manager Technology & Enterprise Applications Deloitte The
Improving your Drupal Development workflow with Continuous Integration
Improving your Drupal Development workflow with Continuous Integration Peter Drake Sahana Murthy DREAM IT. DRUPAL IT. 1 Meet Us!!!! Peter Drake Cloud Software Engineer @Acquia Drupal Developer & sometimes
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 [email protected] http://opensource.westernacher.com
Continuous Integration
Continuous Integration Sébastien Besson Open Microscopy Environment Wellcome Trust Centre for Gene Regulation & Expression College of Life Sciences, University of Dundee Dundee, Scotland, UK 1 Plan 1.
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
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
Java Power Tools. John Ferguson Smart. ULB Darmstadt 1 PI. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo
Java Power Tools John Ferguson Smart ULB Darmstadt 1 PI O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Foreword Preface Introduction xvii xix xxxiii Parti. Build
Distributed Agile Development in the Cloud
W H I T E PA P E R Distributed Agile Development in the Cloud A new development process using the Power of Cloud and combining the merits of Agile, Feature Branching, Continuous Integration, Continuous
Accelerate Software Delivery
Accelerate Software Delivery with Continuous Integration and Testing Kevin Lawrence [email protected] Agitar Software, 2009 1 Agenda What is Continuous Integration Continuous Integration Practices Impact
HP SAP. Where Development, Test and Operations meet. Application Lifecycle Management
HP SAP Where Development, Test and Operations meet Application Lifecycle Management 1 Introduction 1.1 ALM CONCEPTS Application Lifecycle Management (ALM) empowers IT to manage the core application life-cycle,
Software Engineering I (02161)
Software Engineering I (02161) Week 8 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2015 Last Week State machines Layered Architecture: GUI Layered Architecture: Persistency
GENiC. Deliverable D5.1 Development & Integration guidelines including integration environment & means. Dissemination Level: Public
GENiC Deliverable D5.1 Development & Integration guidelines including integration environment & means This project has received funding from the European Union s Seventh Framework Programme for research,
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
How Silk Central brings flexibility to agile development
How Silk Central brings flexibility to agile development The name agile development is perhaps slightly misleading as it is by its very nature, a carefully structured environment of rigorous procedures.
Beginner s guide to continuous integration. Gilles QUERRET Riverside Software
Beginner s guide to continuous integration Gilles QUERRET Riverside Software About the speaker Working with Progress and Java since 10 years Started Riverside Software 5 years ago Based in Lyon, France
Nexus Professional Whitepaper. Repository Management: Stages of Adoption
Sonatype Nexus Professional Whitepaper Repository Management: Stages of Adoption Adopting Repository Management Best Practices SONATYPE www.sonatype.com [email protected] +1 301-684-8080 12501 Prosperity
Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014
This presentation was originally given at DrupalCamp Scotland, 2014. http://camp.drupalscotland.org/ The University of Edinburgh 1 We are 2 of the developers working on the University s ongoing project
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,
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
Coverity Services. World-class professional services, technical support and training from the Coverity development testing experts
Coverity Services World-class professional services, technical support and training from the Coverity development testing experts Coverity has helped over 1,100 customers around the globe assure the quality,
Continuous Integration Processes and SCM To Support Test Automation
Continuous Integration Processes and SCM To Support Test Automation SIGIST Conference, July 2013 Gal Fatal [email protected] 054-342-3864 AT&T Israel Center of Excellence AT&T Worldwide One of the largest
IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management
IKAN ALM Architecture Closing the Gap Enterprise-wide Application Lifecycle Management Table of contents IKAN ALM SERVER Architecture...4 IKAN ALM AGENT Architecture...6 Interaction between the IKAN ALM
Software Configuration Management (SCM)
Software Configuration Management (SCM) SCM actually consists of several separate yet cumulative disciplines. Version Management is an entry point for SCM T M Abstract : Software Configuration Management
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
Continuous integration with Jenkins CI
Continuous integration with Jenkins CI Vojtěch Juránek JBoss - a division by Red Hat 17. 2. 2012, Developer conference, Brno Vojtěch Juránek (Red Hat) Continuous integration with Jenkins CI 17. 2. 2012,
Achieving Rolling Updates & Continuous Deployment with Zero Downtime
+1 800-825-0212 WHITEPAPER Achieving Rolling Updates & Continuous Deployment with Zero Downtime Get started with ANSIBLE now: /get-started-with-ansible or contact us for more information: info@ INTRODUCTION
Efficient Automated Build and Deployment Framework with Parallel Process
Efficient Automated Build and Deployment Framework with Parallel Process Prachee Kamboj 1, Lincy Mathews 2 Information Science and engineering Department, M. S. Ramaiah Institute of Technology, Bangalore,
Visual Studio - Continuous Integration
www..org 67 Visual Studio - Continuous Integration Rama Murari 1, Veerabhadraiah Sandru 2 1,2 HiTech ISU Assurance CoE TATA CONSULTANCY SERVICES LIMITED Deccan Park, Hi-Tech City, Madhapur, Hyderabad,
Content. Development Tools 2(63)
Development Tools Content Project management and build, Maven Version control, Git Code coverage, JaCoCo Profiling, NetBeans Static Analyzer, NetBeans Continuous integration, Hudson Development Tools 2(63)
The Importance of Continuous Integration for Quality Assurance Teams
The Importance of Continuous Integration for Quality Assurance Teams Without proper implementation, a continuous integration system will go from a competitive advantage for a software quality assurance
Continuous Integration Just another buzz word?
Continuous Integration Just another buzz word? Brad Appleton, Steve Konieczka, Steve Berczuk September 2003 Last month we wrote that we would be addressing some questions and concerns raised by readers
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
INTRODUCING CONTINUOUS DELIVERY IN THE ENTERPRISE
INTRODUCING CONTINUOUS DELIVERY IN THE ENTERPRISE The situation Today Not too long ago customers and prospects had to find a computer to visit your site. In stark contrast with just a few years ago, this
Application Lifecycle Management White Paper. Source Code Management Best Practice: Applying Economic Logic to Migration ALM
ALM Application Lifecycle Management White Paper Source Code Management Best Practice: Applying Economic Logic to Migration Summary: Is there a Business Case for Migration? Ultimately, what is the value
Jenkins on Windows with StreamBase
Jenkins on Windows with StreamBase Using a Continuous Integration (CI) process and server to perform frequent application building, packaging, and automated testing is such a good idea that it s now a
Upping the game. Improving your software development process
Upping the game Improving your software development process John Ferguson Smart Principle Consultant Wakaleo Consulting Email: [email protected] Web: http://www.wakaleo.com Twitter: wakaleo Presentation
LECTURES NOTES Organisational Aspects of Software Development
LECTURES NOTES Organisational Aspects of Software Development Pedro Contreras Department of Computer Science Royal Holloway, University of London Egham, Surrey TW20 0EX, UK [email protected] 1. Introduction
Automated build service to facilitate Continuous Delivery
MASTER S THESIS LUND UNIVERSITY 2015 Automated build service to facilitate Continuous Delivery Ture Karlsson Department of Computer Science Faculty of Engineering LTH ISSN 1650-2884 LU-CS-EX 2015-27 Automated
Continuous Integration: Aspects in Automation and Configuration Management
Context Continuous Integration: Aspects in and Configuration Management Christian Rehn TU Kaiserslautern January 9, 2012 1 / 34 Overview Context 1 Context 2 3 4 2 / 34 Questions Context How to do integration
Automated performance testing using Maven & JMeter. George Barnett, Atlassian Software Systems @georgebarnett
Automated performance testing using Maven & JMeter George Barnett, Atlassian Software Systems @georgebarnett Create controllable JMeter tests Configure Maven to create a repeatable cycle Run this build
Maven the Beautiful City. Healthy, Viable, and Productive Build Infrastructures
Maven the Beautiful City Healthy, Viable, and Productive Build Infrastructures What is Maven? Build tool Similar to Ant but fundamentally different which we will discuss later Dependency management tool
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 [email protected] Master in Computer Science from NTNU Master thesis
Continuous Integration Comes to China. www.electric-cloud.com
Continuous Integration Comes to China www.electric-cloud.com Agenda Time Topic Presenter 2:00 Introduction Tracy Shi Emdoor Technology 2:15 Continuous Integration Anders Wallgren, Electric Cloud 3:00 Practical
"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 [email protected]
IBM Rational Software
IBM Rational Software Development Conference 2008 Collaborative Software Development An Introduction to Rational Team Concert Erich Gamma Distinguished Engineer, Jazz Technical Lead IBM Rational Zurich
CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)
Today: Source code control CPSC 491 Source Code (Version) Control Exercise: 1. Pretend like you don t have a version control system (e. g., no git, subversion, cvs, etc.) 2. How would you manage your source
Software Configuration Management. Context. Learning Objectives
Software Configuration Management Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Context Requirements Inception Elaboration Construction Transition
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
