[Jenkins] CI와 젠킨스
기존 소프트웨어 개발 사이클은 위와 같다.
요구 사항 분석 -> 설계 -> 구현 -> 테스트 -> 유지보수
워터폴 모델이라고 불리는 이 사이클은 수십 년 동안 원활하게 작동했지만, 몇 가지 단점이 있다.
- 새로운 요구 사항이 자주 발생하는 영역에 적합하지 않다.
- 개발이 끝난 후 통합이 진행돼 통합 관련 이슈들이 마지막 단계에서 발견된다
- 각 단계에서 진행 상황을 파악하기 쉽지 않다.
이런 단점을 극복하기 위해 새로운 개발 사이클인 애자일 방법론이 도입됐다.
애플리케이션을 여러 기능으로 분류하고 개발을 진행한다.
계획 -> 요구사항 분석-> 설계 -> 개발 -> 테스트 -> 배포
위의 사이클을 각 기능별로 수행해 기능을 빠르게 구현하고 고객에게 피드백을 받는 구조이다.
요구 사항이 자주 변경되는 프로젝트에 적합하고, 각 기능을 빠르게 개발할 수 있어 효과적이다.
CI는 Continuous Integration의 약자로 빠른 주기로 작업한 내용을 main 브런치에 통합하고 빌드하는 개발 방식이다.
빠른 주기로 통합이 이루어지기 때문에 그 과정에서 발생하는 이슈들을 빠르게 발견할 수 있고, 더 견고한 코드를 작성할 수 있다.
코드를 반영하고 단위 테스트를 진행하고 정상적으로 빌드되는지 확인하는 과정을 거칠 때 각각의 과정에서 알람을 추가해 팀원들의 상황을 알 수 있게 되면 더욱 빠르게 대응할 수 있다.
CI 작업에 젠킨스를 도입하면 빌드, 테스트, 컴파일 오류, 코딩 컨벤션 검사 등을 자동화할 수 있다.
애플리케이션 개발에 CI 방식을 도입해 견고하고 일관성 있는 코드를 작성할 수 있고, CI 방식을 도입할 때 젠킨스를 도입해 CI 과정을 자동화하는게 전체적인 흐름이다.
'DevOps > Jenkins' 카테고리의 다른 글
[Jenkins] Pipeline Script (0) | 2023.03.22 |
---|---|
[Jenkins] Docker + Jenkins + SVN Pipeline 구축 (0) | 2023.03.21 |
[Jenkins] SVN과 Jenkins 연결 (0) | 2023.03.20 |
댓글
이 글 공유하기
다른 글
-
[Jenkins] Pipeline Script
[Jenkins] Pipeline Script
2023.03.22 -
[Jenkins] Docker + Jenkins + SVN Pipeline 구축
[Jenkins] Docker + Jenkins + SVN Pipeline 구축
2023.03.21 -
[Jenkins] SVN과 Jenkins 연결
[Jenkins] SVN과 Jenkins 연결
2023.03.20