요구사항 : 소프트웨어가 어떤 문제를 해결하기 위해 제공하는 서비스에 대한 설명과 정상적으로 운영되는데 필요한 제약 조건 등 - 시스템 개발 분야에서 어떤 과제를 수행하기 위하여 필요한 조건이나 능력 - 요구사항이 제대로 정립되어야 이를 토대로 이후 과정의 목표와 계획의 수립이 가능함 요구사항의 유형 1. 기능적 요구사항 - 시스템이 무엇을 하고 어떤 기능을 하는 지에 대한 사항 - 기능, 입력, 출력, 저장, 수행 등등 2. 비기능적 요구사항 - 성능, 장비구성 등 품질이나 제약사항에 대한 사항 3. 사용자 요구사항 : 사용자의 관점에서 본 시스템이 제공해야 할 사항 4. 시스템 요구사항 : 개발자의 관점에서 본 시스템 전체가 사용자와 다른 시스템에 제공해야 할 사항 요구사항 개발 프로세스 - 도출 →..
1) 운영체제(OS; Operating System) - 소프트웨어 - 고려사항 : 가용성, 성능, 기술 지원, 주변 기기, 구축 비용 - Windows, Unix, Linux 등 2) 미들웨어(Middleware) - 운영체제와 응용 프로그램 사이에서 추가적인 서비스를 제공하는 소프트웨어 3) 데이터베이스 관리 시스템(DBMS; Database Management System) - 사용자와 DB 사이에서 정보를 생성하고 관리하는 소프트웨어 - 고려사항 : 가용성, 성능, 기술 지원, 구축 비용, 상호 호환 4) 웹 어플리케이션(WAS; Web Application Server) - 동적인 컨텐츠를 처리하기 위해 사용되는 미들웨어 - 고려사항 : 가용성, 성능, 기술 지원, 구축 비용 - Tomcat, ..
1) 5가지 핵심 가치 a. 용기(Courage) b. 단순성(Simplicity) c. 의사소통(Communication) d. 피드백(Feedback) e. 존중(Respect) 용단의피존 2) 개발 프로세스 a. 사용자 스토리 : 고객의 요구사항을 간단한 시나리오로 표현한 것 b. 릴리즈 계획 수립 c. 스파이크 : 요구사항의 신뢰성을 높이고 기술 문제에 대한 위험을 감소시키기 위해 별도로 만드는 프로그램 d. 이터레이션(Iteration) : 하나의 릴리즈를 더 세분화한 단위 [뜻 : 반복] e. 승인 검사 : 일종의 테스트(고객이 직접 수행) f. 소규모 릴리즈 : 고객 반응 확인 및 대응 3) 주요 실천 방법 a. Pair Programming 짝 프로그래밍 : 다른 사람과 함께 프로그래밍 수..
팀끼리 협업하면서 개발 애자일 중의 하나 팀이 중심이 됨 팀원 스스로 모든 것을 해결해야 함 스프린트는 2 ~ 4주 정도의 기간으로 진행됨 1) 제품 책임자(PO; Product Owner) - 요구 사항이 담긴 백로그(Backlog)를 작성 - 백로그에 대한 우선 순위를 지정 2) 스크럼 마스터(SM; Scrum Master) - 팀을 위해 조언을 해주는 가이드 역할 - 일일 스크럼 회의 주관 3) 개발팀(DT; Development Team) - PO와 SM을 제외한 모든 팀원 - 최대 인원 7 ~ 8명이 적당 4) 제품 백로그 - 개발에 필요한 요구사항을 우선수위에 따라 나열한 목록이며 지속적으로 업데이트됨 - 작성된 사용자 스토리를 기반으로 릴리즈 계획 수립 5) 스크럼 개발 프로세스 a. 스프린..
애자일 Agile : 민첩함, 기민함 변화에 유연하게 대응하기 위함 일정한 주기(Iteration, Sprint)를 반복하면서 개발 고객과의 소통에 중점 ex) XP(eXtreme Programming), 스크럼(Scrum), 칸반(Kanban), 크리스탈(Crystal), 린(LEAN)
폭포수 모형 가장 오래되고 폭넓게 사용된 생명 주기 모형 선형 순차적 모형 매뉴얼 작성 필요 단계를 끝내고 다음 단계로 가기 위해서는 결과물이 명확히 나와야함 프로토타입 모형(Prototype Model) 폭포수 모형의 단점을 보완하기 위해 만들어짐 사용자와 시스템 사이 인터페이스에 중점을 두어 개발 나선형 모형(Spiral Model) 폭포수 + 프로토타입 + 위험 분석 기능 나선을 따라 돌 듯 여러 번의 개발 과정을 거쳐 점진적으로 최종 버전을 개발 위험 관리 및 이를 최소화하는 것이 목적 누락되거나 추가된 요구사항 첨가 가능 정밀하며 유지보수 과정 필요 X 대규모 프로젝트에 주로 쓰임 프로세스 과정 : 1) 목표설정 2) 위험분석 3) 개발과 검증 4)고객평가/다음단계수립