case의 주요 기능
- 소프트웨어 생명주기 전 단계의 연결
- 그래픽 지원
- 다양한 소프트웨어 개발 모형 지원
비용 산정 기법 - 상향식 : 프로젝트의 세부적인 작업 단위별로 비용을 산정한 후 집계하여 전체 비용을 산정하는 방법
LOC 기법 : 소프트웨어 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정하는 기법, 예측치를 이용하여 생산성, 노력, 개발기간 등의 비용을 산정 (예측치 = (낙관치 + 4*기대치 + 비관치) / 6 )) (노력 = 개발기간 * 투입인원 = LOC / 1인당 월 평균 생산 코드라인수) (개발기간 = 노력 * 단위비용(1인당 월 평균 인건비), 개발기간 = 노력/투입인원) (생산성 = LOC/노력)
COCOMO 모형 : 원시프로그램의 규모인 LOC(원시코드라인수)에 의한 비용산정 기법(Boehm이 제안)
COCOMO의 소프트웨어 개발 유형
- 조직형 : 기관 내부에서 개발된 중소규모의 소프트웨어, 5만라인 이하의 소프트웨어를 개발하는 유형
- 반분리형 : 컴파일러, 인터프리터 같은 유틸리티 개발에 적합, 30만라인 이하의 소프트웨어를 개발하는 유형
- 내장형 : 신호제어시스템, 미사일 유도시스템 등의 시스템 프로그램 개발에 적합(트랜잭션 처리, 운영체제), 30만라인 이상의 소프트웨어를 개발하는 유형
Putnam 모형 : 소프트웨어 생명주기 전 과정 동안에 사용될 노력의 분포를 예상하는 모형
기능 점수 모형(fp : function point) : 소프트웨어의 기능을 증대시키는 요인별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능 점수를 산출하며, 총 기능 점수와 영향도를 이용하여 기능점수를 구한 뒤 이를 이용하여 비용을 산정하는 기법(알브레히트가 제안)
비용 산정 자동화 추정 도구
- SLIM : Rayleigh - Norden 곡선과 Putnam 예측 모델을 기초로 하여 개발된 자동화 추정도구
프로젝트 일정 계획
- PERT : 프로젝트에 필요한 전체 작업의 상호 관계를 표시하는 네트워크, 낙관적인 경우, 가능성이 있는 경우, 비관적인 경우 (작업예측치 = (비관치 + (4*기대치) + 낙관치 / 6))
- CPM(임계경로기법) : 프로젝트 완성에 필요한 작업을 나열하고 작업에 필요한 소요 기간을 예측하는데 사용하는 기법(가장 긴 시간을 구함)
- 간트차트 : 프로젝트의 각 작업들이 언제 시작하고 언제 종료되는지에 대한 작업 일정을 막대 도표를 이용하여 표시하는 프로젝트 일정표
소프트웨어 개발 표준
- ISO/IEC 12207 : 표준 소프트웨어 생명주기 프로세스, 소프트웨어의 개발, 운영, 유지보수 등을 체계적으로 관리하기 위한 소프트웨어 생명주기 표준 제공
- CMMI : 소프트웨어 개발 조직의 업무 능력 및 조직의 성숙도를 평가하는 모델 (초기 > 관리 > 정의 > 정량적 관리 > 최적화)
- SPICE(ISO/IEC 15504) : 정보시스템분야에서 소프트웨어의 품질 및 생산성 향상을 위해 소프트웨어 프로세스를 평가 및 개선하는 국제 표준
- 불완전 : 프로세스가 구현되지 않았거나 목적을 달성하지 못한 단계
- 수행 : 프로세스가 수행되고 목적이 달성된 단계
- 관리 : 정의된 자원의 한도 내에서 그 프로세스가 작업 산출물을 인도하는 단계
- 확립 : 소프트웨어 공학 원칙에 기반하여 정의된 프로세스가 수행되는 단계
- 예측 : 프로세스가 목적 달성을 위해 통제되고 양적인 측정을 통해서 일관되게 수행되는 단계
- 최적화 : 프로세스 수행을 최적화하고, 지속적인 개선을 통해 업무 목적을 만족시키는 단계
소프트웨어 개발 프레임워크 : 소프트웨어 개발에 공통적으로 사용되는 구성요소와 아키텍처를 일반화하여 손쉽게 구현할 수 있도록 여러가지 기능들을 제공해주는 반제품 형태의 소프트웨어 시스템
프레임워크의 종류
- 스프링 프레임워크 : 자바 플랫폼을 위한 오픈소스 경량형 애플리케이션 프레임워크
- 전자정부 프레임워크 : 공공부문 정보화 사업시 효율적인 정보시스템의 구축을 지원하기 위해 필요한 기능 및 아키텍처를 제공하는 프레임워크
- 닷넷 프레임워크 : 윈도우 프로그램의 개발 및 실행 환경을 제공하는 프레임워크
소프트웨어 개발 프레임워크의 특성
- 모듈화 : 프레임워크는 캡슐화를 통해 모듈화를 강화하고 설계 및 구현의 변경에 따른 영향을 최소화함으로써 소프트웨어의 품질을 향상시킴
- 재사용성 : 프레임워큰느 재사용 가능한 모듈들을 제공함으로써 예산절감, 생산성 향상, 품질 보증이 가능함
- 확장성 : 프레임워크는 다형성을 통한 인터페이스 확장이 가능하여 다양한 형태와 기능을 가진 애플리케이션 개발이 가능
- 제어의 역흐름 : 개발자가 관리하고 통제해야하는 객체들의 제어를 프레임워크에 넘김으로써 생산성을 향상시킴
'정보처리기사' 카테고리의 다른 글
데이터베이스 개념(2) (0) | 2023.08.27 |
---|---|
데이터베이스 개념(1) (0) | 2023.08.26 |
요구사항 확인 (0) | 2023.08.20 |
데이터베이스(2) (0) | 2023.08.20 |
데이터 베이스(1) (0) | 2023.08.19 |