Skip to main content
오픈소스를 활용한 DevOps 환경 이해 동영상

오픈소스를 활용한 DevOps 환경 이해




강좌 소개

수업내용/목표

오픈소스를 활용한 DevOps 환경을 이해할 수 있고, 최근 가장 많이 활용되는 도구를 활용한 개발/통합/테스트/배포 환경 구축과 사용법을 습득하여 자동화된 정적분석과 테스트 환경을 구축할 수 있습니다.

홍보/예시 영상

강좌 운영 계획

강의계획서
주차 주차명 주차별 학습목표 차시명
1 DevOps와 오픈소스 소프트웨어 DevOps와 오픈소스 소프트웨어의 주요 개념 및 주요 활동과 사례를 통해 DevOps 공정을 이해 할 수 있고, DevOps 영역 별 대표적인 오픈소스 도구에 대해서 파악할 수 있다. 1-1. DevOps와 오픈소스 이해
1-2. DevOps 공정
1-3. DevOps 사례
1-4. 오픈 소스 DevOps 도구
2 DevOps의 기초, 로컬 개발 이해 간단한 형태의 로컬 개발 및 환경을 이해할 수 있고, 깃헙과 깃 사용을 통해서 분산 환경에서의 소스코드 관리 개념 및 아파치 메이븐을 사용한 로컬 환경 프로젝트 관리 개념을 이해할 수 있다. 2-1. 로컬 개발환경 이해
2-2. 소스코드 관리(1)
2-3. 소스코드 관리(2)
2-4. 프로젝트 빌드관리
3 지속적 통합- 지속적 통합의 개념과 Open Source를 통한 지속적 통합환경을 구축할 수 있다. 3-1. 지속적통합의 정의 및 필요성에 대해 이해한다.
3-2. Jenkins를 활용한 지속적 통합 환경 구성
3-3. 개발/빌드(컴파일)/바이너리 관리방안
3-4. 형상관리 시스템과의 연계방안
3-5. 자동화 빌드환경 구현
3-6. SW 산업현장에서의 Jenkins를 활용한 지속적 통합 환경 활용 사례
4 지속적 배포 지속적 배포의 개념과 주요 구현 방안을 습득할 수 있다. 4-1. 지속적 배포의 정의 및 필요성
4-2. Jenkins를 활용한 배포 파이프라인 구성
4-3. 클라우드 환경에서의 개발을 위한 빌드/배포 환경 구성
4-4. Docker에 배포하기
4-5. 대량의 컨테이너의 운영을 위한 Kubernetes Docker이미지 배포 방법
5 정적분석과 소스 품질 정적 분석의 개념과 필요성에 대해 설명할 수 있고, 자동화된 정적 분석 도구를 활용한 소스코드 품질을 관리할 수 있다. 5-1. 정적 분석의 이해와 관련 도구 소개
5-2. SW 구조 분석 도구
5-3. SonarQube의 특징
5-4. SonarQube 사용
6 소스코드리팩토링 소스코드 리팩토링의 개념과 필요성에 대해 설명할 수 있고, 리팩토링 방법을 적용하여 소스코드의 실질적 품질을 높일 수 있다. 6-1. 리팩토링 개념과 필요성
6-2. 리팩토링 개념 및 기법(1)
6-3. 리팩토링 개념 및 기법(2)
6-4. 리팩토링 개념 및 기법(3)
7 자동화 테스트 오픈소스를 활용하여 자동화된 테스트환경을 구축할 수 있다. 7-1. 테스트 자동화 도구 활용동향
7-2. Junit을 활용한 단위테스트 수행 방법
7-3. Postman를 활용한 API 테스트 수행 방법
7-4. Katalon를 활용한 UI 테스트 수행 방법
7-5. jmeter를 활용한 애플리케이션 성능 테스트 방법
7-6. SW 산업현장에서 테스트 자동화 활용 사례
기말시험

 

강좌운영팀 소개

교수자

이정민 수석
이정민 수석
현) SK주식회사 C&C 통합품질혁신팀 수석
SK주식회사 표준 개발방법론 제정(Cloud Native Application Development
Methodology)
방위사업청 육군KCTC체계 개발사업 등 다수의 IT서비스 개발 프로젝트(CBD, MSA) 수행
차일환 수석
차일환 수석
현) SK주식회사 C&C 통합품질혁신팀 수석
SK주식회사 표준 개발방법론 제정(Cloud Native Application Development
Methodology)
JCB카드, MUFJ은행, 한국증권금융 등 다수의 ITS 개발 프로젝트 수행 (한국/일본)

강좌지원팀

장미
장미
KAIST 문화기술대학원 박사과정
E-mail: rosechang@kaist.ac.kr

강좌 수강 정보

이수/평가정보

이수/평가정보
과제명 퀴즈 토론 중간고사 기말고사
반영비율 60% 0% 20% 20%

※ 평가는 퀴즈 60%와 기말고사 40%로 이루어져 있으며, 총 60% 이상 점수 획득 시, 이수증을 발급받을 수 있습니다.

강좌 수준 및 선수요건

이 강좌는 유익한 내용이 다수 포함되어 있습니다. 소프트웨어에 관심이 있거나 소프트웨어를 개발하는 실무자들에게 유익한 강좌입니다. 이 강좌는 "소프트웨어 공학: 왜, 무엇을, 어떻게?" 강좌, "클라우드 서비스 아키텍처" 강좌, "소프트웨어 테스팅", "Microservice 설계 및 구현" 강좌를 선수학습하시면 더욱 수월하게 수강하실 수 있습니다.

교재 및 참고문헌

이 강좌는 교안을 제공합니다.

자주 묻는 질문

강좌 교재가 따로 있나요?

교안을 제공합니다.

질문(강의 내용 및 수강 문의, 기술적 문제 등)은 어떻게 하나요?

게시판이나 조교 이메일, 운영팀 이메일로 문의주시면 24시간 내에 답변 드리겠습니다.

제목

소제목

내용

관련 강좌

  1. major

    Engineering
    (Computers & Communication)
  2. 강좌 내용의 어려운 수준을 의미합니다. 교양, 전공기초, 전공심화 순으로 난이도가 증가합니다.

    Course difficulty

    intermediate
  3. 강좌를 개발하고 운영하는 기관입니다. 컨소시엄으로 운영 시, 대표기관의 명칭이 나타납니다

    Institution

    Korea Advanced Institute of Science and Technology
  4. 강좌의 구성 주차 수를 의미합니다. (강좌를 충실히 학습하기 위해 필요한 주당 학습시간을 의미합니다.)

    Course Week
    (Estimated Effort)

    08week
    (주당 03시간 00분)
  5. 본 강좌 이수자에게 인정되는 학습시간으로 해당 강좌의 동영상, 과제, 시험, 퀴즈, 토론 등의 시간을 포함합니다. (강의 내용과 관련된 동영상 재생 시간의 총 합계입니다.)

    Accredited learning time
    (Video Duration)

    12시간 00분
    (10시간 00분)
  6. 수강신청이 가능한 기간으로 해당 기간 내에만 수강신청이 가능합니다.

    Course Registration Period

    2019.02.11 ~ 2019.02.24
  7. 강좌가 운영되고 교수지원이 이루어지는 기간입니다. 이수증은 강좌운영기간이 종료된 이후에 발급받을 수 있습니다.

    Classes Period

    2019.02.18 ~ 2019.04.28