내용을 정리하기 전에 앞서
정보처리기사 암기만을 위해서라면 블로그에 적어서 남기는 것보다는
무식하게 외우고 단어 단위로 어거지로 외우는 것이 더 효율적인 공부 방법이겠지만 공부의 목적도 결국은 제대로 알고 현업에 적용하기 위함이므로
블로그에 중점적으로 기록하여 남겨 나중에라도 다시 볼 수 있게 하고자 함이다.
- 사용자의 요구사항이 빈번하게 변경됨에 따라 새로운 방법론이 필요해짐
- 계획이 없는 개발 방법의 경우,
선행 작업을 예측하기 힘들고 효율적이지 못하다는 점에서 취약점을 가지고 있음.
- 계획이 지나치게 많은 개발 방법론의 경우,
형식적인 절차를 따르는 비용과 전체적인 개발의 흐름을 느리게 하는 단점을 가지고 있음.
- 애자일은 개발 과정의 어려움을 극복하기 위해 적극적으로 모색한 방법론이다.
[현재 단계에서 끝맺음 없이는 다음 단계로 넘어가지 않고
한번 넘어간 단계에서 이전 단계로 돌아가지 않음
구조적 개발 방법론에서 사용되는 모델
]
[시스템 개발 초기에 사용자의 요구 기능을 시제품으로 만들어
사용자로 하여금 기능과 사용성 등에 대해 검증시켜 가면서
시스템을 개발하는 기법이다
]
[폭포수 모형과 프로토 타임 모형의 장점을 살린 모형
사용자 요구 확인의 의한 시스템 개발이 가능함
나선형 모형은 위험 분석을 해나가면서 시스템을 개발한다
]
1 차적으로 정리하면서 맺는 말
애자일 방법론의 종류는
익스트림 프로그래밍, 스크럼, 린, DSDM, FDD 등
여러가지가 있지만 하나의 글에 모든 것을 담아내면
가독성이 떨어지므로 다음 블로그 글에서 마저 정리하고자 한다
요지는 애자일이 뭔지
애자일의 기본적인 원칙과 가치 선언등을 통해서
앞으로 어떤 식으로 개발을 해야 할치
혹은 개발을 하게 되는 와중에 마음을 다잡을 때
찾아서 다시 읽어보기 위함이며
지금까지 일해왔던 분야에서는 애자일 보다는
구조적 방법론 방식의 폭포수형 모델로 개발을 해왔다고 보는게 맞다.
그도 그럴 것이 기간이 정해진 단기 프로젝트를
여러건을 동시에 진행함도 있고
스마트 팩토리 관련 정부 사업 산출물이나 요구 문서에서도 볼 수 있듯이
- 타당성 검토
- 계획 수립
- 고객사 요구사항 분석
- 시스템 설계
(여기에는 화면 설계나 기능 설계 등도 포함 되어 있었다.)
- 시스템 구현
- 테스트(단위 / 통합 테스트 포함)
- 운영지원 밎 시스템 안정화
단계를 거쳐왔다.
그래서 전형적인 폭포수 모델 처럼
도중에 다시 이전 단계로 회귀할 수 없었고
도중에 잘못되더라도 바꿀 수 없었다.
사용자의 요구사항 역시 이 단계에서는 구현할 수 없었다.
나중에 애자일을 적용한 업체에서 개발을 하게 된다면 달라지겠지만
아직은 애자일을 경험한 적이 없고
또한 많은 개발사들이 면접 때
애자일을 경험한 적이 있는지 물어 보았었지만
애자일을 정확하게 실현하고 있는 회사인지 역시 들어가 봐야 알 것 같다.