What Is Continuous Integration?

Instructor: Jagina McIntyre

Jagina has conducted professional training in communications and analytics for 12 plus years, with a a degree from Kent State University in Journalism and Communications.

Welcome to continuous integration, where you will learn how to successfully create a process of introducing software changes quickly while providing a quality product.

Continuous Integration

Have you ever experienced a major software upgrade that does not even work? Do you wonder if there is a better way to execute software changes? Are you interested in making real time changes to software releases? Well continuous integration might be right up your alley.

Continuous integration (CI) is an agile process of making small code changes that will be submitted daily. These small changes are reviewed daily by a program to determine if the new code is compatible with the existing software code. All programmers who work on that software submit their code changes daily to a shared repository. The new code is tested immediately to address any problems. The team has visibility to all current programming, creating a much more cohesive product.

The Process

Continuous integration is a process that can be split into two separate phases: continuous builds and test automation. A continuous build contains the code change. This occurs in the programmers individual work station. It is a simple code change and is submitted to a shared environment where the team's larger code set is stored. The test automation then occurs in two separate steps: compile and design. The compile portion of the test pulls together all the code. Imagine this as a jigsaw puzzle to make sure all the pieces fit together. The second set design makes sense of the picture. This phase test to make sure that overall code is cohesive. At this point code can be flagged for review or rejected completely.

Pros to continuous integration:

  1. less backtracking - errors can be located quickly.
  2. more feature building - time can be invested in building rather than error tracking.
  3. shorter integration - new features can be pushed out quickly.
  4. frequent testing- automated process delivers faster identification of issues.
  5. stronger communication- shared repository creates a common programming language among the team.

Cons of continuous integration:

  1. costly - with initial testing setup and resources.
  2. committed resources - need programmers to address issues daily.

Testing

There are primarily two types of testing: unit testing and application program interface testing (API testing). Unit testing is used to understand how the code should work. View unit testing like a car wheel. You test the wheel by rolling and bouncing it to make sure it has the proper air to function correctly. Unit tests are easy to write, as they are contained to a small segment of code. API testing is the testing of how the units or modules will communicate with each other. Imagine you have two car wheels and join them by a tire rod. The API test would be similar to the process of testing how this rod will communicate with the wheels.

Unit testing is self contained within a small set of code, while API testing addresses how those units communicate with each other.

Team Process

A team that works on using continuous improvement has stronger and ongoing communication because of the daily activities in a shared work environment. There are several process requirements from the team:

  1. the consistent timing - there has to be a rule around how often issues are resolved.
  2. the programming pause - daily time allocated to fix issues before new code is added.
  3. the deployment policy around how often the changes will be released to the software consumer.

To unlock this lesson you must be a Study.com Member.
Create your account

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use Study.com

Become a Study.com member and start learning now.
Become a Member  Back
What teachers are saying about Study.com
Try it risk-free for 30 days

Earning College Credit

Did you know… We have over 200 college courses that prepare you to earn credit by exam that is accepted by over 1,500 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.

To learn more, visit our Earning Credit Page

Transferring credit to the school of your choice

Not sure what college you want to attend yet? Study.com has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.

Create an account to start this course today
Try it risk-free for 30 days!
Create an account
Support