[FrontEnd] CI/CD

부주용·2022년 10월 12일
0

개발 프로세스의 단계

  • 요구분석 및 시스템 명세 작성
  • 설계
  • 구현
  • 테스트
  • 배포 및 유지보수
  • 개발 프로세스의 종류

  • 워터폴(전통적인 개발 프로세스)
  • 애자일(모던 개발 프로세스)
  • 개발 프로세스의 차이

    워터폴

    요구분석부터 유지보수까지 한방향으로만 프로세스가 진행되는 개발 과정이며 유지보수까지 끝나면 다시 처음 단계로 돌아가 시작하는것이 가장 기본적인 모델이다.
    실제 출시 기한을 정해놓고 순차적으로 프로세스가 진행시켜 어플리케이션(소프트웨어)를 완성해 배포하기 때문에 실제로 배포되어 유저에게 전달되는 시간이 오래 걸린다.

    애자일

    짧은 주기의 개발 사이클을 계속해서 반복하는 개발 프로세스
    요구사항이 변하는 것을 당연한 전제로 두고 있다.

    CI/CD

    CI

    개발자를 위한 자동화 프로세스인 지속적인 통합(Continuous Integration)을 의미합니다.
    "CI"는 Code - Build - Test 단계에서 꾀할 수 있습니다.

  • Code : 개발자가 코드를 원격 코드 저장소 (Ex. github repository)에 push하는 단계입니다.
  • Build : 원격 코드 저장소로부터 코드를 가져와 유닛 테스트 후 빌드하는 단계입니다.
  • Test : 코드 빌드의 결과물이 다른 컴포넌트와 잘 통합되는 지 확인하는 과정입니다.
  • CD

    지속적인 서비스 제공(Continuous Delivery) 및/또는 지속적인 배포(Continuous Deployment)를 의미하며 이 두 용어는 상호 교환적으로 사용됩니다.
    "CD"는 Release - Deploy - Operate 단계에서 꾀할 수 있습니다.

  • Release : 배포 가능한 소프트웨어 패키지를 작성합니다.
  • Deploy : 프로비저닝을 실행하고 서비스를 사용자에게 노출합니다. 실질적인 배포 부분입니다.
  • Operate : 서비스 현황을 파악하고 생길 수 있는 문제를 감지합니다.
  • github action으로 클라이언트 CI/CD를 구축한 배포 링크

    0개의 댓글