DevOps(Development operations)의 개발주기는 다음과 같이 나타낼수 있다.

Agile Development는 일관된 일정에 따라 사용 가능한 소프트웨어를 생산해서 개발 수명 주기를 단축 할 수있다. 그래서 최종 사용자에게 품질을 제공하는데 지속적으로 집중하며 client와 지속적인 colaboration을 하면서 진행하기 때문에 전체 프로젝트에 요구가 빠르게 적응될 수 있다.
Agile Development는 반복적인 소프트웨어 개발에서 사용한다. 반복 소프트웨어 개발을 위해 Sprint(스프린트)라는 개념을 사용한다.
Scrum이란 Agile의 하위 개발 방법론 중 하나로, 프로젝트를 진행하는데 사용되는 프레임워크다. 이는 팀이 제품 또는 서비스를 개발하고 제공하는 데 사용되는 일련의 지침, 규정 및 도구의 집합이다. Scrum은 특정한 방식으로 역할을 배치하고, 회의를 조직하고, 작업을 추적하고, 문제를 해결하는 등의 활동을 수행함으로 프로세스를 정의한다. Scrum은 팀이 작업을 관리하고 짧은 주기로 공동의 문제를 해결하는데 사용되고, Scrum 프레임워크는 개발 팀이 Sprint를 효율적으로 관리하고 실행할 수 있도록 지침을 제공한다. Agile의 원칙을 구체적인 artifact, Use case및 역할 집합으로 구현하는데 여기에는 일일 스탠드업 미팅, 백로그 관리, 스프린트 리뷰, 스프린트 회고 등이 포함된다. 따라서 Agile은 개발 방법론의 철학을 나타내고, Scrum은 이를 구체화하고 실행하는 하나의 방법이다.
Sprint란, Scrum 프로세스에서 사용되는 용어로, 고객에게 가치 있는 소프트웨어를 제공하기 위해 개발팀이 일정 기간 동안 집중하는 짧은 개발 주기이다. 보통 1주에서 4주 정도의 짧은 기간으로 설정되며, 이 기간 동안 개발 팀은 백로그에서 선택된 작업 항목을 완료하고, 고객에게 가치 있는 소프트웨어를 제공한다.
Sprint는 계획, 실행, 검토 및 회고 단계로 나뉜다. Sprint 계획 회의에서는 해당 Sprint 동안 수행할 작업을 선택하고 목표를 설정한다. Sprint 중에는 일일 스탠드업 미팅을 통해 팀원들은 작업 진행 상황을 공유하고 협력한다. Sprint가 끝날 때에는 스프린트 검토 회의를 통해 완료된 작업을 고객 또는 이해관계자에게 시연하고 피드백을 수렴한다. 마지막으로 스프린트 회고 회의에서는 팀이 스프린트 동안 경험한 것을 돌아보고 개선점을 도출한다.
이러한 Sprint 주기를 통해 Scrum은 빠른 반복과 지속적인 개선을 가능하게 하며, 팀은 빠르게 변화하는 요구 사항에 유연하게 대응할 수 있고 DevOps 수명주기를 단축한다. 대규모 프로젝트를 미리 계획하고 계획에 따라 완료하는 기존 방식이나 waterflow개발 방법론과 대조되는 개념이라고 할 수 있다.
위의 Agile, Sprint, Scrum과정을 그림으로 나타내면 이렇다.
