셤숌셤/정보처리기사 실기

1요구사항확인-1소프트웨어 개발방법론

moonday 2022. 4. 11. 20:41

소프트웨어 개발 방법론

소프트웨어 생명주기(SDLC; Software Development Life Cycle)

: 소프트웨어 생명주기는 시스템의 요구분석부터 유지보수까지 전 공정을 체계화한 절차

 

소프트웨어 생명주기 모델 프로세스

1요구사항분석 - 2설계 - 3구현 - 4테스트  - 5유지보수

 

소프트웨어 생명주기 모델 종류 (폭프나반)

1. 폭포수 모델

2. 프로토타이핑 모델

3. 나선형 모델

- 계위개고

4. 반복적모델

 

(제품 소프트웨어 패키징)은 개발이 완료된 제품 소프트웨어를 고객에게 전달하기 위한 형태의 문서

(모듈)은 소프트웨어 설계에서 기능단위로 분해하고 추상화되어 재사용 및 공유 가능한 수준으로 만들어진 단위

 

소프트웨어 개발 방법론

: 소프트웨어 개발의 전 과정에 지속적으로 적용할 수 있는 방법, 절차, 기법으로 개발 시작부터 시스템을 사용하지 않는 과정까지의 모든 과정을 형상화한 방법론

 

소프트웨어 개발방법론 종류

1. 구조적 방법론 Structured Debelopment 

2. 정보공학 방법론 Information Engineering Development

3. 객체지향 방법론 Object-Oriented Development

4. 컴포넌트 기반 방법론 CBD; Component Based Development

5. 애자일 방법론 Agile Development

6. 제품 계열 방법론 Product Line Development

 

애자일 방법론

: 절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템 개발할 수 있는 경량개발방법론으로 폭포수 모형에 대비되어 개발과함께 즉시 피드백을 받아서 유동적으로 개발 가능.

 

애자일 방법론 등장 배경

1. 소프트웨어 개발 환경의 변화

2. 기존 개발방법론의 한계

 

애자일 방법론의 유형 

1. XP

- xp의 5가지 가치

- xp의 12가지 기본원리

2. 린Lean

-lean의 7가지 원칙

3. 스크럼 SCRUM

 

(제품 소프트웨어 패키징 도구)는 배포를 위한 패키징 시에 디지털 콘텐츠의 지적재산권을 보호하고 관리하는 기능을 제공하며 안전한 유통과 배포를 보장하는 도구

(저작권 보호기술)은 콘텐츠 및 프로그램과 같이 복제가 용이한 저작물에 대해 불법 복제 및 배포 등을 막기 위한 기술적인 방법

(패키저)는 저작권 관리에서 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능을 수행

(보안 컨테이너)는 저작권 관리에서 원본을 안전하게 유통하기 위한 전자적 보안 장치

 

비용산정, 일정관리 모형

비용산정 모형 분류

1. 하향식 산정방법

- 전문가 판단

- 델파이 기법(=전문가 합의법)

2. 상향식 산정방법

- 코드 라인 수(LoC) : 사람까지 포함해서 계산

- Man Month :  한 사람이 1개월 동안 할 수 있는 일의 양을 기준으로 비용 산정 (사람명수는 제외하고 계산)

- COCOMO 모형(1. 조직형, 2. 반 분리형, 3. 임베디드형)

- 푸트남 모형

- 기능점수FP 모형

 

(클리어링 하우스)는 저작권 관리에서 키 관리 및 라이선스 발급 관리를 수행한다

(PKI)는 공개키 암호 방식기반으로 디지털 인증서를 활용하는 소프트웨어, 하드웨어, 사용자 정책 및 제도 등을 총치하는 암호 기술이다

(DOI)는 디지털 저작물에 특정한 번호를 부여하는 일종의 바코드 시스템으로 디지털 저작물의 저작권 보호 및 정확한 위치 추적이 가능한 시스템이다

 

일정관리 모델

: 프로젝트가 일정 기한 내 적절하게 완료될 수 있도록 관리하는 모델

 

일정관리 모델 종류

1. 주 공정법 CPM; Critical Path Method

* 주 공정(Critical Path; 임계경로) : 프로젝트의 시작에서 종료까지 가장 긴 시간이 걸리는 경로

2. PERT (Program Evaluation and Review Techique)

3. 중요 연쇄 프로젝트 관리 CCPM; Critical Chain Project Management

 

(XML)은 디지털 콘텐츠/ 웹 서비스 권리 조건을 표현한 XML기반의 마크업 언어

(MPEG-21)는 멀티미디어 관련 요소 기술들이 통일된 형태로 상호 운용성을 보장하는 멀티미디어 표준 규격 

 

TDD (Test Driven Development)는 작성해야 하는 프로그램에 대한 테스트를 먼저 수행하고 이 테스트를 통과할 수 있도록 실제 프로그램의 코드를 작성한다는 원리