728x90
목차
- 1.소프트웨어 개발 방법론
- 2.비용 산정 기법
- 3.소프트웨어 비용 추정 모형
- 4.소프트웨어 개발 표준
1. 소프트웨어 개발 방법론
1-1. 개요
* 소프트웨어 개발, 유지보수등에 필요한 여러가지 일들의 수행방법
* 개발 수행과정중 필요한 각종 기법과 도구 표준화
* 소프트웨어 생상선과 품질향상 목적
1-2. 구조적 방법론
1. 졍형화된 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리중심 방법론
2. 정보의 구조 중심으로 분석,설계,구현
3. 순차,선택,반복으로 프로그램 흐름구성 복잡성 감소
4. 분할정복을 통해 프로그램 모듈화
1-3. 정보공학 방법론
1. 정보시스템 개발에 관리절차와 작업 기법을 체계화
2. 계획,분석,설계,구축에 대한 정형화된 기법을 전체적으로 적용
3. 데이터, 업무활동, 상호작용으로 구성
4. 정보전략계획수립 -> 업무영역분석 -> 업무시스템설계 -> 업무시스템구축
1-4. 객체지향 방법론
1. 현실세계 개체를 객체화
2. 구조적기법의 문제점 보완
3. 객체,클래스,속성,멤버,메시지 구성
4. 캡슐화,정보은닉,추상화,상속성,다형성
5. 요구분석 -> 설계 -> 구현 -> 테스트및 검증 -> 인도
1-5. 컴포넌트 기반 방법론
1. 재사용이 가능한 컴포넌트 기반의 개발 방법론
2. 개발기간 단축으로 생산성과 품질 향상
3. 유지보수비용 최소화
4. 시스템을 신속하게 구축, 새로운 기능 추가 및 확장 용이
5. 개발준비 -> 분석 -> 설계 -> 구현 -> 테스트 -> 전개 -> 인도
1-6. 애자일 방법론
1. 고객의 요구사항 변화에 민첩하고 유연하게 대응
2. 일정한 주기를 반복하면서 개발과정 진행
3. 소규모프로젝트, 숙련된 개발자
4. xp, Scrum, 기능중심개발(FDD), 동적시스템개발방법(DSDM)
5. 사용자 요구사항 -> (계획,개발,테스트)반복
1-7. 제품계열 방법론
1. 특정제품의 공통된 기능 중심
2. 공통된기능이 있어 개발비용 및 시간 단축
3. 임베디드 소프트웨어 개발 적합
4. 영역공학, 응용공학으로 구분
1-8. 테일러링 방법론
1. 소프트웨어 특성에 맞도록 사용기법들 수정 및 보완
2. 다양한 프로젝트의 하나의 방법론으로만 적용하기 어려워 등장
3. 커스터마이징 반복
4. ISO/IEC 12207, CMMI, SPICE
1-9. 보안 개발 방법론 종류
1. MS-SDL: MS사가 자체적으로 수립 (SDLC)
2. Seven Touchpoints: 소프트웨어 보안의 모범사례 통합
3. CLASP: 개발생명주기 초기단계의 보안을 강화하기 위해 정형화된 절차
4. CWE: 소프트웨어 보안 취약점을 유발하는 원인 7가지 정리한 방법론
2. 비용 산정 기법
2-1. 개요
* 소프트웨어 개발 규모 확인하여 필요한 비용 산정
* 소요되는 인원, 자원, 기간을 확인하여 실행가능한 계획 수립
* 비용산정이 너무 낮을경우 개발자 부담이 증가되며 품질은 낮아짐
* 하향식 비용 산정 기법과 상향식 비용 산정기법
2-2. 소프트웨어 비용 결정 요소
1. 프로젝트요소
2. 자원요소
3. 생산성요소
2-3. 하향식 비용 산정 기법
1. 과거의 유사한 경험 바탕
2. 전문가 측정 기법
3. 델파이 측정 기법: 주관적인 판단을 보완 (전문가 <> 중재자)
2-4. 상향식 비용 산정 기법
1. 프로젝트 세부적인 작업 단위별로 비용산정후 전체비용 측정
2. LOC 기법: 기능마다 원시코드라인수 예측하여 생산성, 개발기간 비용 산정
3. 예측치 측정 공식: (낙관치 + (4 * 기대치) + 비관치)/6
4. 노력 = 개발기간 * 투입인원 = LOC/1당 월평균 생산코드 라인수
3. 소프트웨어 비용 추정 모형
3-1. COCOMO 모델
1. 보헴이 제안한 LOC 비용산정기법
2. Organic: 중소규모, 5만라인이하
3. Semi-Detached: 중간형, 운영체제 데이터베이스 관리 시스템, 30만라인 이하
4. Embedded: 초대형, 신호제어 우주항공 실시간처리시스템, 30만라인 이상
3-2. Putnam 모델
1. 생명주기 예측모형 Putnam 제안
2. 대형 프로젝트 기법
3. 개발기간 연장될수록 프로젝트 적용인원 노력감소
4. SLIM: Putnam 모델을 기초로한 산출 자동화 측정도구
3-3. 기능 모델
1. 소프트웨어 기능을 증대시키는 요인별로 가중치 부여
2. 요인별 가중치를 합산하여 총 기능점수 산출
3. 논리적인 사용자의 기능 요구사항을 기초로 비용을 산정
4. 소프트웨어 개발 표준
4-1. 소프트웨어 개발 방법론 결정 절차
* 프로젝트 관리와 재사용 현황을 반영
* 개발 단계별 작업 및 절차를 수립
* 개발단계별 활동목적, 작업내용, 산출물에 대한 매뉴얼 작성
4-2. ISO/IEC 12207
1. 국제표준화기구에서 만든 표준 소프트웨어 생명주기 프로세스
2. 소프트웨어 개발,운영,유지보수 프로세스를 향상시키기 위한 표준제공
3. 기본,지원,조직 생명주기 프로세스로 나뉜다
4-3. ISO/IEC 12119
* 패키지 소프트웨어의 제품 품질 요구사항 및 테스트를 위한 국제표준
4-4. ISO/IEC 29119
* 소프트웨어 테스트 관련 국제 표준
4-5. ISO/IEC 9126
* 소프트웨어 품질특성과 평가에 관한 표준 지침서
* 기능성,신뢰성,사용성,효율성,유지보수성,이식성
4-6. CMM
1. 소프트웨어 유지보수, 개발에 대한 프로세스 개선과 능력향상
2. 단계별 핵심 프로세스: 초기화 -> 반복 -> 정의 -> 관리 -> 최적화
3. 평가기준: 혼돈,경험,정성,정량,최적
4. 소규모업체곤란, 조직자체 평가하므로 제품의 품질과는 연관성 x
4-7. CMMI
1. CMM 후속모델
2. 조직개발 프로세스 역량 성숙도 평가
3. 단계별 핵심 프로세스: 초기화 -> 관리 -> 정의 -> 정략적관리 -> 최적화
4. 어떤 모델이든 업무의 목적에 맞게 수정
4-8. SPICE
1. 소프트웨어 품질 및 생산성 향상을 위한 소프트웨어 프로세스 평가
2. 개발기간이 프로세스 개선을 위해서 스스로 평가
3. CMM 단점을 개선한 모델
4. 단계별 프로세스
LV0 불안정 -> LV1 수행 -> LV2 관리 -> LV3 확립 -> LV4 예측 -> LV5 최적화
참고자료: 이기적 환상콤비 정보처리기사
728x90
'자격증 > 정보처리기사' 카테고리의 다른 글
UML (0) | 2022.06.21 |
---|---|
요구사항 정의 (0) | 2022.06.21 |
소프트웨어 개발환경 분석 (0) | 2022.06.20 |
소프트웨어 생명주기 모델 (0) | 2022.06.20 |
소프트웨어 분류와 특성 (0) | 2022.06.18 |