[SK shieldus Rookies 19기] 애자일(Agile) 방법론

Sungwuk·2024년 3월 19일
0
post-thumbnail

Agile 이란?

애자일 방법론은 반복적인 개발, 점진적인 전달, 다양한 기능을 갖춘 팀 간의 협력, 그리고 고객 피드백에 중점을 둔 소프트웨어 개발 접근 방식이다. 이는 전통적인 "폭포수" 개발 방법의 한계에 대한 대응으로 파생되었다. 폭포수 방법론은 종종 긴 개발 주기, 엄격한 요구 사항, 그리고 변화하는 고객 요구에 적응하기 어려워 애자일 방법론이 대두 되었다.

폭포수 방법론 - 장점

  • Simple - 단순한 선형 모델
  • Systematic -단계별 정형화된 접근
  • Clarity - 명확환 진행 상황 파악

폭포수 방법론 - 단점

  • Parallel 각 단계 병행이 불가능
  • Issue Check - 중요 결함에 대한 대응이 어려움
  • flexible - 떨어지는 유연성

자 그럼 agile alliance에서 공표한 애자일 선언문을 알아보자

  • 공정과 도구보다 개인과 상호작용
  • 포괄적인 문서보다 작동하는 소프트웨어
  • 계약 협상보다 고객과의 협력
  • 계획을 따르기 보다 변화에 대응하기

애자일 방법론은 DevOps, XP, Lean Startup, Kaizen, DaD, Kaniban, Product Development, Scrum이 있지만, 이 포스트는 DevOps과 Scrum에 대해 다룬다.

DevOps

DevOps는 소프트웨어 개발(Dev)과 IT 운영(Ops) 팀 간의 협업, 소통 및 통합을 향상시키는 일련의 실천 방법과 문화 철학이다. 이것은 이 두 그룹 간의 전통적인 격리를 허물고 보다 간결하고 효율적인 소프트웨어 제공 파이프라인을 만드는 것을 목표로 한다.

개발자과 운영자의 책임

개발자

  • 애플리케이션 성능
  • 사용자 분석
  • 성능 향상
  • 에러 제거

운영자

  • 애플리케이션 배포
  • 인프라 관리
  • 사용자 관리
  • 성능 분석 및 문제 해결

각종 협업 툴

기획

  • draw.io
  • google drive
  • trllo

기록, 테스트 및 배포

  • git
  • docker
    -kunernetes

CI/CD

  • Jenkins
  • circleci
  • Travis CI

클라우드

  • google cloud platform
  • amazon web services
  • MS Azure
  • argo

프로젝트 관리

  • slack
  • datadog
  • SENTR
    New Relic

Scrum

Scrum은 애자일 소프트웨어 개발 방법론 중 하나로, 프로젝트를 작은 반복 주기인 스프린트로 나누어 관리한다.

  • 스프린트(Sprint): 일정 기간 동안 개발 작업을 완료하기 위한 시간 상자로, 보통 2주에서 4주 사이의 짧은 기간으로 설정

  • 스크럼 팀(Scrum Team): 스프린트를 수행하는 팀으로, 일반적으로 개발자, 테스터, 디자이너 등 다양한 역할이 포함

  • 제품 백로그(Product Backlog): 제품에 대한 모든 요구사항이 우선순위에 따라 정리된 목록

  • 일일 스크럼(Daily Sccrum): 매일 진행되는 짧은 회의로, 팀원들은 어제 한 일, 오늘 할 일, 그리고 장애물을 공유

  • 스프린트 리뷰(Sprint Review): 스프린트가 끝난 후에 제품을 검토하고, 스프린트 동안 수행한 작업을 고객이나 이해관계자와 함께 검토하는 회의

  • 스프린트 회고(Sprint Retrospective): 스프린트가 끝난 후에 팀이 스프린트 동안의 활동을 반성하고, 개선할 점을 찾는 회의

회고(Retrospective): 가장 중요한 스크럼 과정

미래형 회고: 미래도 같이 예측
현재형 회고: 이번에 수행한 내용만 집중

profile
https://github.com/John-Jung

0개의 댓글

관련 채용 정보