1. 소프트웨어 개발 방법론
● 목적 : 생산성, 품질 높임
● 구조적 방법론 : 정형화된 분석 절차 (분할과 정복 Divide and Conquer) 원리
● 정보 공학 방법론 : 자료(Data) 중심, 정보시스템 개발 => 대형 프로젝트
● 객체지향 방법론 : 객체를 부품 조립 ex) 캡슐화, 정보 은닉, 추상화, 상속성, 다형성
● 컴포넌트 기반(CBD) 방법론 : 컴포넌트 조립 => 재사용, 시간 노력 절감
● 애자일(민첩한, 기민한) 방법론 : 유연하게 대응 ex) 익스트림 프로그래밍, 스크럼, 칸반, 크리스탈
● 제품 계열 방법론 : 공통된 기능 정의 ex) 임베디드 SW
- 영역공학 : 영역 분석, 영역 설계, 핵심 자산을 구현하는 영역
- 응용공학 : 제품 요구 분석, 제품 설계, 제품을 구현하는 영역
- 영역공학과 응용공학의 연계를 위해 제품의 요구 사항, 아키텍처, 조립 생산이 필요
2. 비용 산정 기법
● 개요 : 필요한 비용 산정
- 너무 높게 산정할 경우 : 예산 낭비, 일의 효율성 저하
- 너무 낮게 산정할 경우 : 개발자의 부담 가중, 품질 문제
● 결정 요소
- 프로젝트 요소 : 제품 복잡도, 시스템 크기, 요구되는 신뢰도
- 자원 요소 : 인적, HW 자원, SW 자원
- 생산성 요소 : 개발자 능력, 개발 기간
3. 비용 산정 기법 - 하향식
● 개요 : 과거의 유사한 경험을 바탕, 비과학적인 방법
● 전문가 감정 기법 : 경험이 많은 두 명 이상의 전문가
- 가장 편리, 신속, 믿음
- 과거와 다른 요소 간과 가능, 경험이 없을 수 있음, 개인적이고 주관적
● 델파이 기법 : 주관적인 편견 보완 위해 많은 전문가의 의견 종합, 한 명의 조정자
- 순서
1. 시스템 정의서와 산정한 비용 내역 기록할 서식 제공
2. 정의서 분석하여 나름대로 비용 산정
3. 반응을 요약하여 배포
4. 이전에 산정한 결과 이용하여 다시 익명으로 산정
5. 견이 거의 일치할 때까지 이 과정 반복
4. 비용 산정 기법 - 상향식
● 개요 : 세부적인 작업 단위별로 비용 산정 후 집계하여 전체 비용 산정
● LOC(원시 코드 라인 수, Source Line Of Code) 기법 : 비관치, 낙관치, 기대치를 측정하여 예측치 구함
- 노력(인월) = 개발 기간 X 투입 인원 = LOC / 1인당 월평균 생산 코드 라인 수
- 개발 비용 = 노력 X 단위 비용(1인당 월평균 인건비)
- 개발 기간 = 노력 / 투입 인원
- 생산성 = LOC / 노력
● 개발 단계별 인월 수 기법(Effort Per Task) 기법 : LOC 기법 보완, LOC 보다 정확, 필요한 노력을 생명 주기의 각 단계별로 작성
5. 수학적 산정 기법 - 상향식
● 개요 : 경험적 실험적 추정 모형, 개발 비용 산정의 자동화를 목표
● COCOMO 모형 개요 : 보헴 제안, LOC에 의한 비용 산정 기법
- 개발할 SW의 규모(LOC)를 예측한 후 SW 별로 다르게 책정되는 비용 산정 방정식을 대입하여 비용 산정
- 유연성 높아 개발비 견적에 널리 통용, 같은 규모라도 성격에 따라 비용 다름, 결과는 노력(MAN-MONTH)로 나타남
● COCOMO의 SW 개발 유형 : 복잡도 or 원시 프로그램의 규모에 따라
- 조직형(Organic Mode) : 중소형, 5만 라인 이하, 과학용, 비즈니스 자료 처리용 SW에 적합
- 반 분리형(Self - detached) : 중간형, 30만 라인 이하, 컴파일러 인터프리터와 같은 유틸리티 개발에 적합
- 내장형(Embedded Mode) : 최대형, 30만 라인 이상, 신호기 제어, 미사일 유도, 실시간 처리 등의 시스템 프로그램에 적합
● COCOMO 모형의 종류 : 비용 산정 단계 및 적용 변수의 구체화에 따라
- 기본형(Basic) : SW 크기, 개발 유형만을 이용
- 중간형(Intermediate) : 기본형 보완, (제품, 컴퓨터, 개발 요원, 프로젝트)특성에 의해 비용 산정
- 발전형(Detailed) : 자세하고 정확하게 노력을 산출하여 비용 산정, SW 환경과 구성 요소가 사전에 정의되어 있어야 하며
제품 개발 과정의 후반부에 주로 적용, 중간형 보완
● Putnam 모형 : 전 과정에서 노력의 분포를 가정해 주는 모형, 푸트남이 제안, 생명 주기 예측 모형이라고도 함
- Rayleigh - Norden 곡선의 노력 분포도를 기초로 함, 대형 프로젝트에 이용
- 개발 기간 늘어날수록 프로젝트 적용 인원의 노력 감소 ex) SLIM
● 기능 점수(FP) 모형 : 알브레히트 제안, 가중치 부여하고 요인별 가중치 합산하여 총 기능 점수 산출
- 유용성과 간편성으로 최선의 평가받음, 언어에 독립적, UFP 계산 ex) ESTIMACS
6. SW 개발 방법론 결정
● 개요 : 프로젝트와 재사용 현황 반영하고 개발 단계, 활동, 작업 절차 정의
● 프로젝트 관리 유형 : (일정, 비용, 인원 위험, 품질) 관리
● 절차
- 반영(설명하고 설명한 후 결정)
- 수집((기본 지원 조직)생명 주기 별로 확인, 개발 프로세스, 개발 생명 주기, 프로세스 모형 정리)
- 매뉴얼 작성
7. SW 개발 표준
● 개요 : 품질 관리에 사용되는 국제 표준
● ISO/IEC 12207 : ISO에서 만든 표준 SW 생명 주기 프로세스로, SW의 개발, 운영, 유지 보수 등을 체계적으로 관리하기 위한 SW 생명 주기 표준(기본, 지원, 조직)을 제공
● CMMI(Capability Maturity Model Integration) : 업무 능력 및 조직의 성숙도를 평가하는 모델
● SPICE(Software Process Improvement and Capability dEtermination) : SW 품질 및 생산성 향상 위해 프로세스를 평가 및 개선하는 국제 표준, 공식 명칭: ISO/IEC 15504
- 목적 : 스스로 평가, 프로세스 평가
- 범주 : 고객-공급자, 공학, 지원, 관리, 조직 프로세스
- 단계
8. SW 개발 방법론 테일러링
● 개요 : 표준 기반으로 실제 업무 여건에 맞게 수정 및 보완하는 것
● 고려 사항
- 내부적 요건 : 목표 환경, 요구 사항, 프로젝트 규모, 보유 기술
- 외부적 요건 : 법적 제약사항, 표준 품질 기준
● 기법
- 프로젝트 규모와 복잡도에 따른 테일러링 기법
- 프로젝트 구성원에 따른 테일러링 기법
- 팀 내 방법론 지원에 따른 테일러링 기법
- 자동화에 따른 테일러링 기법
9. SW 개발 프레임워크
● 개요 : 특정 기능 수행 위해 필요한 클래스나 인터페이스 등을 모아둔 집합체 => 반제품 형태
- 일반화하여 손쉽게 구현 가능 기능 제공
● 주요 기능 : 예외 처리, 트랜잭션 처리, 메모리 공유, 데이터 소스 관리, 쿼리 서비스, 로깅 서비스, 사용자 인증 서비스
● 스프링 프레임워크 : 자바 플랫폼을 위한 오픈 소스 경량형 애플리케이션
- 동적인 웹 사이트 개발을 위해 다양한 플랫폼 제공, 전자정부 표준 프레임워크 기반 기술로 사용
● 전자정부 프레임워크 : 우리나라의 공공부문 정보화 사업 시 제공하는 프레임워크
- 표준화, 품질 및 재사용성의 향상을 목적
- 범용화, 종속성 배제, 중복 개발 방지
● 닷넷 프레임워크(.NET) : Windows의 프로그램의 개발 및 실행 환경을 제공하는 프레임워크로 Microsoft 사에서 통합 인터넷 전략을 위해 개발
- 코드 실행을 관리하는 CLR(공용 언어 런타임)이라는 이름의 가상머신 상에서 작동
- 메모리 관리, 유형 및 메모리 안정성, 보안, 네트워크 작업 등 여러 가지 서비스 제공
정보처리기사 5과목 정보시스템 구축 관리 - 3장 소프트웨어 개발 보안 구축 요점 정리 (0) | 2020.06.05 |
---|---|
정보처리기사 5과목 정보시스템 구축 관리 - 2장 IT 프로젝트 정보시스템 구축 관리 (0) | 2020.06.05 |
정보처리기사 4과목 프로그래밍 언어 활용 - 3장 응용 SW 기초 기술 활용 요점 정리 (0) | 2020.06.05 |
정보처리기사 4과목 프로그래밍 언어 활용 - 2장 프로그래밍 언어 활용 요점 정리 (0) | 2020.06.05 |
정보처리기사 4과목 프로그래밍 언어 활용 - 1장 서버 프로그램 구현 요점 정리 (0) | 2020.06.05 |
댓글 영역