본문 바로가기
테크

애자일(Agile) 개발이란?

by 힛스토리 2023. 7. 23.
728x90
반응형

애자일(Agile) 개발이란?

변화가 심한 비즈니스 환경에서 소프트웨어에 대한 요구 변화도 치열해지고 있습니다. 요구의 변화에 ​​따라 새로운 비즈니스 변화를 창출하기 위해 더 빠른 소프트웨어를 제공해야 합니다. 

 

소프트웨어를 신속하게 개발하는 기법으로 최근 애자일 개발이 점점 더 주목을 받고 있습니다. 이 논문에서는 민첩한 개발 프로세스의 개요를 제공합니다.

애자일-Agile
애자일 Agile

애자일 개발 프로세스 개요

애자일 개발에는 스크럼, 린 개발, XP 등 다양한 방법과 방법론이 있으며 프로세스도 다양합니다. 이 섹션에서는 각 개발 방법론에 공통적인 민첩한 개발 프로세스의 개요를 제공합니다.

 

반복 증가형 개발

애자일 개발은 1주에서 1개월의 반복 기간을 마련하고, 반복마다 기능의 추가를 계속하는 「반복 증가형」의 개발 프로세스에 의해 실현됩니다.

 

계획
반복 기간 내에 개발할 기능을 계획합니다. 개발 대상의 각 기능에 대해 우선순위 지정과 규모 추정을 실시합니다.

 

개발
기능별로 설계, 구현, 테스트를 수행합니다. 개발자는 테스트 전임, 구현 전임 등의 역할 분담은 없으며 모든 역할을 담당합니다.

 

릴리스
수락 테스트를 통과한 기능을 릴리스합니다.

 

개발 종료
추가 기능 향상을 위해 개발을 계속할지, 또는 기능 충분하다고 해서 개발을 종료할지가 소프트웨어를 이용하는 고객이나 제품 책임자 등 비즈니스 측에 의해 판단됩니다.

애자일 개발의 특징

보다 빠른 속도로 제공 ~ 순 현재 가치의 관점
짧은 사이클의 반복 증가형 개발에 의해 요구의 높은 기능이 반복마다 릴리스 됩니다. 요청부터 제공까지의 속도가 빠르기 때문에, 이용하고 싶은 기능을 적시에 이용할 수 있습니다.

 

요구의 변화에 ​​유연한 대응이 가능 ~ 변동 대응성의 시점
반복마다 개발 대상의 기능을 결정합니다. 확정되지 않은 요구나 변경 가능성이 높은 기능은 다음번 이후 반복에서 개발할지 여부가 결정되므로 요청의 변화에 ​​유연하게 대응할 수 있습니다. 또한 불필요한 기능을 만들지 않습니다.

 

품질과 고객 만족도 향상 - 위험 조기 감지
시점 기능을 하나씩 순서대로 이용 가능한 상태까지 완성합니다. 요구의 오해 기술적 실현 가능성 및 품질 검증이 조기에 실시되기 때문에 고장도 적고 만족도가 높은 소프트웨어가 제공됩니다.

 

개발자나 팀의 성장을 촉진 ~ 학습의 관점
기능을 하나하나 개발함으로써 설계, 구현, 테스트의 사이클을 반복합니다. 또한 구현 전임이나 테스트 전임 등의 역할 분담이 없습니다. 

 

다양한 작업을 여러 번 체험할 수 있기 때문에 '다능공화', '기술력 향상', '사기 향상' 등 '개발자의 성장'을 촉구함과 동시에 '프로세스 개선', '관리력 향상' 등 '팀 성장'을 촉구합니다.

애자일 개발이 가져오는 것 

애자일 개발은 민첩하게 신속하게 소프트웨어를 제공할 수 있는 반복 증가형 개발입니다. 반복 기간마다 현실적으로 작동하고 유용한 소프트웨어를 제공함으로써 개발 측과 비즈니스 측이 "현물 소프트웨어"를 통해 커뮤니케이션할 수 있습니다. 

 

함께 현물을 만져 개발 측은 즉시 피드백을 받을 수 있습니다. 비즈니스 측은 현물에 문자대로 영감을 받아 새로운 요구와 아이디어가 솟아납니다. 민첩한 개발은 요구의 변화를 따르는 것뿐만 아니라 새로운 변화를 스스로 가져옵니다.

 

 

[이전 글 읽어보기]

레거시 시스템이란?

 

레거시 시스템이란?

레거시 시스템이란? 레거시(legacy) 시스템은 일반적으로 오래된 기술과 구조로 구축된 시스템을 말합니다. IT 업계에서는 1980년대에 많은 기업들이 도입한 메인프레임이나 오피스 컴퓨터를 사용

heeestoryy.tistory.com

 

반응형

'테크' 카테고리의 다른 글

IT 용어 설명) IT 아키텍처란?  (0) 2023.07.25
워터폴형 개발 모델이란?  (0) 2023.07.24
레거시 시스템이란?  (0) 2023.07.21
IT 용어 설명) 마이그레이션이란?  (0) 2023.07.20
IT 용어 설명) 리팩토링이란?  (0) 2023.07.18

댓글