

계획 > 요구사항 분석 > 설계 > 구현 > 시험 및 유지 보수
1) 프로젝트 계획 : 문제 정의, 일정 계획

2) 요구사항 정의 : 사용자의 요구사항 및 시스템의 기능을 문서화하는 단계.
3) 설계 : 시스템 아키텍쳐 및 소프트웨어 아키텍쳐 설계.
4) 구현 : 실질적인 프로그래밍 단계. 전체 개발 기간의 20% 정도 차지.
5) 테스팅 : 요구사항과 설계에 맞는지 점검. 전체 개발 기간의 40% 정도 차지.
6) 유지보수 : 사용 중 발생하는 여러 변동사항에 적응하며 프로그램 추가 / 수정.

폭포수 모델 방법론 ↔ 애자일 방법론
개발자들이 좋은 것을 빠르고 낭비 없이 만들기 위해 경량화된 가벼운 방법이 애자일.
분석, 설계, 구현, 시험이 끊임없이 진행되는 반복 되는 순환적 개발과정.
요구사항의 변화가 자주 일어나거나 개발자가 소규모인 소형 ~ 중간 사이즈의 비즈니스 시스템, 게임 소프트웨어 개발이 적합.
애자일 방법론 중 하나로 스크럼(Scrum) 방식이 주로 사용. ⇒ 대표적 툴인 JIRA

PO(Product Owner. 전체 프로젝트 총괄), PM(Project Manager. 전체 프로젝트)(PL(Project Leader. 각 팀의 리더)), 기획자, 개발자, 디자이너 등이 스크럼의 참여자.애자일에서 나오는 아키텍처는 MSA

독립적이고 작은 서비스들로 구성된 시스템.
서비스는 저마다 데이터베이스를 가지며, 각 서비스마다 더 적합한 기술이 사용
⇒ 서비스의 수정이 발생하여도 다른 서비스로의 영향이 없거나 적기 때문에, 독립적인 개발 및 배포가 가능
대표적인 애자일 방법론인 스크럼을 JIRA 툴로 실습해보았다.
데이터베이스 프로젝트 팀원들과 함께 작성해보았는데, 혼자 정리해서 작성하는 것이 아닌
팀원들과 의견을 나눔과 동시에 작성하다보니 생각보다 정신이 없고 정리가 어려웠다🫠
실습해보면서 오프라인 부트캠프의 장점을 한 번 더 몸소 느꼈다..!
실무에서 아무 개념없이 마주쳤다면 얼렁뚱땅 익혔을 것 같다.
프로젝트를 진행하면서 이런 저런 기능들을 살펴보며 더 잘 활용할 수 있도록 해야겠다.