일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 오라클
- 리눅스
- Database
- 정처기필기
- 5단원
- 인터페이스구현
- backend
- javascript
- Linux
- mybatis
- 자바스크립트
- Java
- 통합구현
- 정처기실기
- 요구사항확인
- 정보처리기사실기
- 스프링
- 1단원
- 제이쿼리
- 정보처리기사
- 자바
- spring
- 실기
- 정처기
- mapper
- 정보처리기사필기
- 데이터베이스
- 4단원
- jQuery
- DB
- Today
- Total
세라공원
[실기] 1.요구사항 확인 (1) 소프트웨어 개발 방법론 본문
1. 요구사항 확인
(1)소프트웨어 개발 방법론
<< 기출 >>
애자일 방법론
: 사람 중심, 변화에 유연, 신속하게 적응, 효율적으로 시스템 개발.
개발 기간이 짧고 신속, 워터폴에 대비. 최근 회사에서 각광받는 방법론.
Man Month : Loc / 월간 생산성
프로젝트 기간 : Man Month / 인력 수
럼바우 데이터 모델링 => 객/ 동/ 기
-Functional : 자료 흐름도(DFD) 활용, 프로세스들의 자료 흐름 중심으로 처리 과정 표현
-Dynamic : 동적인 행위 표현. 상태 다이어그램 활용
-Information(=object) : 객체 간 관계 정의. ER 다이어그램 만드는 과정까지의 모델링
-------------------------------------------------------------------------------------------------
소프트웨어 생명주기(SDLC)
:시스템 요구분석 ~ 유지보수 전 공정 체계화 절차
요구사항 분석 > 설계 > 구현 > 테스트 > 유지보수
설계: 소프트웨어 생명주기 모델 중 시스템 명세 단계에서 정의한 기능 실제 수행하도록 수행 방법 논리적으로 결정하는 단계.
폭포수 모델(waterfall) : 소프트웨어 개발 시 각 단계를 확실히 마무리 지은 후에 다음 단계로 넘어가는 모델.
구조적 방법론: 전체 시스템을 기능에 따라 나누어 개발, 이를 통합하는 분할과 정복 접근 방식의 방법론.
TDD(Test Drvien Development)
: 프로그램 테스트를 먼저 수행, 테스트 통과하도록 실제 프로그램의 코드를 작성.
지속적인 통합(CI) : 매일 여러 번 씩 소프트웨어를 통합하고 빌드해야 한다는 원리.
스크럼 : 애자일 방법론 中 매일 정해진 시간, 장소에서 짧은 시간의 개발을 하는 팀을 위한 프로젝트 관리 중심 방법론.
델파이 기법(Delphi Method) : 전문가 경험 지식 통해 문제 해결 & 미래예측
기능점수(FP) : 요구 기능 증가시키는 인자별로 가중치 부여, 요인별 가중치 합산하여 총 기능 점수 계산해 비용 산정
PERT : 일의 순서를 계획적으로 정리하기 위한 수렴 기법, 비관치,중간치,낙관치의 3점 추정방식 통해 일정 관리.
임계 경로 : 가장 오랜 기간이 걸리는 경로 찾기.
-------------------------------------------------------------------------------------------------
소프트웨어 생명주기 모델 프로세스
: 요구사항 분석 > 설계 > 구현 > 테스트 > 유지보수
요구사항 분석 : 기능 요구사항, 비기능 요구사항
설계 : 시스템 구조 설계, 프로그램 설계, 사용자 인터페이스 설계
구현 : 인터페이스 개발, 자료 구조 개발, 오류 처리
테스트 : 단위 테스트, 통합 테스트, 시스템 테스트, 인수 테스트
유지보수 : 예방, 완전, 교정, 적응 유지보수
소프트웨어 생명주기 모델 종류 => 폭/ 프/ 나/ 반
폭포수 모델 waterfall
: 개발 시 각 단계를 확실히 마무리 지은 후, 다음 단계로 넘어감. 가장 오래됨. 선형 순차적 모형. 고전적 생명주기 모형. 요구사항 변경이 어려움
타당성 검토 > 계획 > 요구사항 분석 > 설계 > 구현 > 테스트 > 유지보수
프로토타이핑 모델 prototyping
: 고객 요구 주요 기능을 프로토타입으로 구현, 고객 피드백 반영. 공동의 참조 모델 제공. 구현 단계의 구현 골격.
나선형 모델 spiral
: 위험 최소화 위해 점진적으로 완벽한 시스템으로 개발.
계획 및 정의 > 위험 분석 > 개발 > 고객 평가 ( => 계/ 위/ 개/ 고 )
반복적 모델 iteration
: 병렬적 개발 후 통합, 반복적 개발해 점증 완정. 요구사항이나 제품 일부분 반복적 개발해 최종 시스템 완성.
애자일 방법론 Agile
: 사람 중심, 변화 유연, 신속하게 적응, 효율적 시스템 개발.
애자일 방법론 유형 => XP, 린(lean), 스크럼(SCRUM)
XP eXtreme Programming : 의사소통 개선, 즉각적 피드백, 1~3주 반복 개발주기.
-XP 5가지 가치 : 용기courage, 단순성simplicity, 의사소통communication, 피드백feedback, 존중respect
-XP 12가지 기본원리
짝 프로그래밍 pair programming : 개발자 2명이서 짝으로 코딩
공동 코드 소유 collective ownership : 시스템 코드는 누구든지 언제라도 수정 가능
지속적인 통합 CI continuous integration : 매일 여러번 소프트웨어 통합, 빌드
계획 세우기 planning process : 고객 요구 비즈니스 가치 정의, 개발자 필요한 것은 무엇인지, 지연될 부분 알려주어야 함
작은 릴리즈 small release : 작은 시스템 먼저 만들기, 짧은 단위로 업데이트
메타포어 metaphor : 공통적인 이름 체계, 시스템 서술서 통해 고객과 개발자 간 의사소통 원활
간단한 디자인 simple design : 현재 요구사항에 적합한 가장 단순한 시스템 설계
테스트 기반 개발 TDD test driven develop : 작성해야 하는 프로그램 테스트 먼저 수행, 테스트 통과하도록 실제 프로그램 코드 작성
리팩토링 refactoring : 프로그램 기능 바꾸지 않으면서 중복제거, 단순화 등 위해 시스템 재구성
40시간 작업 40-hour work : 일주일에 40시간 이상 일하지 말아야 함
고객 상주 on site customer : 개발자 질문에 즉각 대답할 고객 프로젝트에 풀타임으로 상주
코드 표준 coding statement : 모든 코드에 대한 코딩 표준 정의
스크럼 SCRUM : 매일 정해진 시간, 장소에서 짧은 시간의 개발 '팀'을 위한 프로젝트 관리 중심 방법론
린 LEAN : 도요타 린 시스템 품질기법 적용. 낭비 요소 제거해 품질 향상. JIT(just in time), 칸반(kanban)보드 사용.
-7가지 원칙: 낭비 제거, 품질 내재화, 지식 창출, 늦은 확정, 빠른 인도, 사람 존중, 전체 최적화
객체 지향 분석 방법론 종류 中
OMT object modeling technology - 럼바우 Rumbaugh : 그래픽 표기법 이용해 소프트웨어 구성요소 모델링 => 객/ 동/ 기
객체 모델링(정보 모델링) > 동적 모델링 > 기능 모델링
객체 모델링 object modeling =정보 모델링 information modeling : 객체들 간의 관계 정의, ER다이어그램. 객체 다이어그램 활용
동적 모델링 dynamic modeling : 동적인 행위 표현. 상태 다이어그램 활용
기능 모델링 functional modeling : 자료 흐름 중심 처리 과정 표현. 자료 흐름도(DFD) 활용
비용 산정 모형 분류
-하향식 산정방법 : 전문가 판단, 델파이 기법(전문가 경험 지식 → 문제 해결 및 미래예측)
-상향식 산정방법 : 코드라인 수(LoC), Man Month, COCOMO, 푸트남(putnam), 기능점수(FP)
LoC Lines of Code : 각 기능의 원시 코드 라인 수의 낙관치, 중간치, 비관치 측정해 예측치 구함
Man Month : 한 사람이 1개월 동안 할 수 있는 일 기준 프로젝트 비용 산정 = LoC / 월간 생산성
-프로젝트 기간 : Man Month / 인력 수
COCOMO : 보헴Bohem 제안, 프로그램 규모. Man-Month로 비용산정.
푸트남 putnam : 소프트웨어 개발주기의 단계별로 요구할 인력 분포 가정. 생명주기 예측 모형.
기능점수(FP) : 인자별로 가중치 부여. 요인별로 가중치 합산.
일정관리 모델 종류
-주 공정법 CPM critical path method : 여러 작업의 수행 순서가 얽혀 있는 프로젝트의 일정 계산. 가장 긴 시간 걸리는 경로 계산 (=임계 경로)
-PERT program evaluation and review technique : 비관치, 중간치, 낙관치의 3점 추정방식
-중요 연쇄 프로젝트 관리 CCPM critical chain project management : 주 공정 연쇄법. 자원제약사항 고려.
'정보처리기사 > 실기' 카테고리의 다른 글
[실기] 4. 통합 구현 (1) 연계 데이터 구성 (0) | 2022.10.11 |
---|---|
[실기] 1. 요구사항 확인 (3) 요구사항 확인 & (4) 분석 모델 확인하기 (1) | 2022.10.11 |
[실기] 1. 요구사항 확인 (2) 현행 시스템 분석 ② (2) | 2022.10.10 |
[실기] 1. 요구사항 확인 (2) 현행 시스템 분석 ① (1) | 2022.10.10 |
[실기] 2022 2회 정보처리기사 실기 원서접수 (0) | 2022.05.24 |