6.정보처리기사 필기 [ 요구사항 확인]
1. 소프트웨어 공학
-소프트웨어의 위기를 극복하기 위한 방아능로 연구된 학문.
-소프트웨어의 개발,운영,유지보수에 대한 체계적인 접근방법.
-품질과 생산성을 향상시킬 목적.
2. 소프트웨어 공학의 기본 원칙
-현대적인 프로그래밍 기술을 계속적으로 적용해야함.
-품질이 유지되도록 지속적인 검증 필요.
3. 폭포수 모형
-이전 단계로 돌아갈 수 없다는 전제하에 다음 단계를 진행하는 개발 방법론.
-개발 과정에서 발생하는 요구사항을 반영하기 어려움.
가장 오래된 생명주기 모형.
4. 프로토타입 모형
-사용자의 요구사항을 정확히 파악하기 위해 견본품을 만들어 결과물을 예측하는 모형
-새로운 요구사항이 도출될 때마다 이를 반영한 프로토 타입을 새롭게 만든다.
-단기간 제작 목적으로 비효율적인 언어나 알고리즘이 사용될 수 있음.
5. 나선형 모형
-여러 번의 소프트웨어 개발 과정을 거쳐 점진적으로 최종 소프트웨어를 개발.
-계획수립>위험분석>개발 및 검증>고객평가 과정이 반복적으로 수행
-핵심 기술에 문제가 있거나 요구사항이 이해하기 어려운 경우에 적합.
6.애자일 모형
-고객의 요구사항에 유연하게 대응할 수 있도록 일정한 주기를 반복하면서 개발 과정을 진행.
-개발 모형 종류 (스크럼,xp,칸반,린,크리스탈,ASD,기능중심개발,DSDM,DAD등)
-핵심 가치 - 개인과 상호작용하며 계획을 따르기보다 변화에 반응하는것에 더 가치를 둠.
7. 스크럼 개발 프로세스
-제품 백로그: 제품 개발에 필요한 모든 요구사항을 우선순위에 따라 나열한 목록
-스프린트 계획 회의: 제품 백로그 중 수행할 작업의 단기 일정 수립
-스프린트: 실제 개발작업 진행 보통 2~4주
-일일 스크럼 회의: 약 15분 정도의 짧은 시간동안 진행 상황 점검
-스프린트 검토 회의 : 제품이 요구사항에 잘 부합되는지 참석자 앞에서 테스트
-스프린트 회고: 개선할 점은 없는지 등을 확인하고 기록
8.XP기법
-고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상시키는 방법
-애자일 개발 방법론을 기반으로 함
-핵심가치 : 의사소통,단순성,용기,존중,피드백
9.XP개발 프로세스
-사용자 스토리 : 고객의 요구사항을 간단한 시나리오로 표현
-릴리즈 계획 수립: 몇 개의 스토리가 적용되어 기능이 완료된 제품을 제공하는 것을 릴리즈라고 함
-스파이크: 요구사항의 신뢰성을 높이고 위험을 감소시키기 위해 별도로 만드는 간단한 프로그램
-이터레이션 하나의 릴리즈를 더 세분화 한 단위를 이터레이션 이라고 함.
-승인검사: 하나의 이터레이션 안에서 계획된 릴리즈 단위의 부분 완료 제품이 구현되면 수행하는 테스트
-소규모 릴리즈 : 릴리즈를 소규로 하게되면 요구사항에 좀 더 유연하게 대응할 수 있음
10.XP의 주요 실천 방법
-짝 프로그래밍: 다른 사람과 함께 프로그래밍을 수행함으로 책임을 나눠같는 환경을 조성
-공동 코드 소유: 개발 고트에 대한 권한과 책임을 공동으로 소유
-계속적인 통합: 모듈 단위로 나눠서 개발된 코드는 하나의 작업이 마무리될 떄마다 지속적으로 통합
-리팩토링: 프로그램 기능변경 없이 단순화, 유연성 강화등을 통해 시스템의 내부 구조를 재 구성함.
*인터넷에서는 하루 이틀만 공부하면 된다고 하는데.. 자격증만을 위한다면 물론 기출 위주로
공부해도 되겠지만, 기초를 다지는 제 입장에서는 조금 더 세세하게 공부해 봐야겠습니다.
주말에만 공부하게되면 아마 2달정도 걸릴것 같네요.