정보시스템 구축 관리(소프트웨어 개발방법론 활용)

2025. 2. 16. 11:56자격증

반응형
1. 소프트웨어 개발방법론 선정 (1)소프트웨어 생명주기SDLC (Software Development Life cycle)
(2)소프트웨어 생명주기 모델 프로세스 (요설구테유 : ①요구사항 ②설계 ③구현 ④테스트 ⑤유지보수)
(3)소프트웨어 생명주기 모델 종류
①폭포수 모델 : 요구사항 변경이 어렵다. 고전적, 단계별 산출물이 정확
절차 : 타당성검토 à 계획 à 요구사항분석 à 설계 à 구현 à 테스트 à 유지보수
②프로토타입핑 모델 : 고객이 요구한 주요기능을 프로토타입(시제품)으로 구현, 고객(사용자)의 피드백을 반영
③나선형 모델 : 시스템 개발 시 위험을 최소화하기 위해 개발해 나가는 모델, 대규모 시스템에 적합
               절차 : (계위개고) 계획 및 정의 à 위험분석 à 개발 à 고객평가
④반복적 모델 : 구축대상을 나누어 병렬적으로 개발 후 통합, 반복적 개발하여 점증 완성
(4)소프트웨어 개발방법론 종류
①구조적 방법론 : 구조적 프로그래밍 표현을 위해 ‘나씨-슈나이더만 차트’ 사용, 정형화된 분석 절차에 따라 사용자 요구사항을 파악, 문서화하는 체계적 분석 방법으로 자료흐름도, 자료 사전, 소단위명세서의 특징을 갖는 방법론. 나씨-슈나이더만 차트 특징①논리적 기술에 중점②연속, 선택 및 다중선택,반복 제어 논리 구조③시각적으로 명확히 식별
②정보공학 방법론 : 기준이 자료DATA. )금융시스템구축 예금, 대출 기능을 자료(DATA)에 맞춰서 관련된 화면을 만든다.
구조공학과 정보공학으로 개발하면서 크기가 커질수록 복잡해져서 객체지향 방법론이 나왔다.
③객체 지향 방법론 : 객체라는 기본단위로 시스템을 분석 및 설계하는 방법론, 현실 세계의 개체(Entity)를 하나의 객체(Object)로 만들어서 소프트웨어를 개발할 때 조립하듯 이 객체들을 조립해서 소프트웨어 구현하는 방법론
④컴포넌트 기반 방법론 :컴포넌트를 조립해서 하나의 새로운 응용 프로그램 작성, 개발 기간 단축, 생산성 향상, 새로운 기능 추가 쉽다. 소프트웨어 재사용 가능, 생산성과 품질을 높이고 유지보수 비용 최소화. 컴포넌트 재사용성을 향상. 컴포넌트 단위의 관리로 복잡성 최소화.
⑤애자일 방법론 : 절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적 시스템 개발, 개발과정의 어려움을 극복
⑥제품 계열 방법론 : 영역공학과 응용공학으로 구분
(5)요구공학 방법론(공학=체계적)
1. 요구공학 특징: 구조적 요구분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구로 SADT(Structured Analysis and Design Technique)
2. 요구사항 (개발) 프로세스 도분명확
①도출 : 인터뷰, 설문조사, 브레인스토밍, 워크숍
②분석 : 자료 흐름 지향 분석 (DFD, 객체 지향분석(UML), 요구사항 체계화를 위한 분석
③명세 : 자연어에 의한 방법, 정형화 기법사용 방법
④확인 및 검증 : 리뷰, 워크스루, 인스펙션
3. 요구사항 (관리) 프로세스 협기변확
①요구사항 협상 ②요구사항 기준선 설정 ③요구사항 변경관리 ④요구사항 확인 및 검증
(6)비용산정 모델
1.하향식 산정방법 : 경험이 많은 전문가에게 비용 산정의뢰 – ①전문가 감정 기법 ②델파이 기법(전문가 여러명이 회의)
2.상향식 산정방법 : 세부적인 요구사항과 기능에 따라 비용 계산
①코드라인LOC(Lines of Code) : 원시 코드 라인수, 비관치, 중간치, 낙관치
Man Month : 1명이 개발할 때 몇 달이 걸리는지 계산, Man Month = (LOC) / (프로그래머의 월간 생산량)
                                                     프로젝트기간 = (Man Month) / (프로젝트 인력)
COCOMO(COnstructive COst MOdel) : 보헴이 제안한 모형으로 프로그램 규모에 따라 비용을 산정
오세임 : Organic Mode : 5만라인 이하, 소규모, 과학기술계산용, 비즈니스 자료 처리 개발
Semi-Detached mode : 30만라인 이하, DB관련, 컴파일러
Embedded Mode : 30만라인 이상, OS, 실시간처리 시스템
Putnam 모형 : 푸트남이 제안한 것으로 생명주기 예측 모형, 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력분포도를 기초
개발기간이 늘어날수록 프로젝트 적용 인원의 노력이 감소됨, 푸트남 예측 모델을 기초로 하여 개발된 자동화 추정 도구로서 SLIM이 있다.
⑤기능점수(FP; Function Point)모형 : 기능의 점수를 계산하여 비용을 산정하는 방식, 자동화 추정 도구인 ESTIMACS가 있다.
(7)일정관리 모델 종류
①주공정법 CPM : 모든 자원 제약사항을 배제한 상태로 프로젝트의 시작과 끝을 나타내는 노드와 노드간의 연결을 통해 공정 계산
                 CPM에서 임계 경로 기간 계산 : 가장 긴 경로를 찾는다.
PERT : 비관치, 중간치, 낙관치의 3점 추정방식을 통해 일정을 관리
③중요연쇄프로젝트관리 CCPM : 자원 제약사항을 고려하여 일정 작성
2. 소프트웨어 개발방법론 테일러링 (1)소프트웨어 개발 표준 개념 : 소프트웨어 개발 단계에서 품질 관리와 개발 표준을 위하여 국제적으로 정하는 표준
1. ISO/IEC 12207 표준 : 이해관계자들이 각자의 입장에서 수행해야 할 일을 정의하고 지속적으로 개선시키기 위한 활동.
(기조지 : ①기본 공정 프로세스 ②조직 공정 프로세스 ③지원 공정 프로세스)
(2)CMMI : 기존 능력 성숙도 모델(CMM)을 발전시킨 것이다.
1.CMMI 단계적 표현 모델의 성숙도 레벨 (초관 정관최)
①초기화 단계 ②관리 단계 ③정의 단계 ④정량적 관리 단계 ⑤최적화 단계
(3)SPICE : 소프트웨어 프로세스에 대한 개선능력 측정 기준에 대한 국제 표준 (불수관 확예최)
             S         P              I        C    E
①불안정 ②수행 ③관리 ④확립 ⑤예측 ⑥최적화
(4)테일러링(재단하다) 개념 : 조식의 표준 프로세스를 커스터마이징
1. 테일러링 프로세스 (정표상세문)
①프로젝트 특징 정의 ②표준프로세스 선정 및 검증 ③상위 수준의 커스터마이징 ④세부 수준의 커스터마이징 ⑤테일러링 문서화
2.테일러링 개발 방법론 기준 (목요프구 국법)
내부①목표환경 ②요구사항 ③프로젝트 특성 ④구성원 능력 외부⑤국제표준,품질기준 ⑥법적규제
(5)소프트웨어 개발 프레임워크 Software Development Framework
1. 반제품 상태로 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장 받을 수 있게 하는 개발 SW
2. 요구분석, 설계, 개발, 테스트 하는 과정에 대한 기본 골격() 이다.
3. 직접 코드의 흐름을 제어 할 수 있다.
4. 생산성 향상과 유지보수성 향상 등의 장점이 있다.
(6)소프트웨어 개발 프레임워크 적용 시 기대효과
1. 개발할 소프트웨어에 대한 품질 보증이 가능하다.
2. 소프트웨어 개발 용이성이 증가한다.
3. 소프트웨어 변경 사항 발생 시 대응이 용이 하다.
4. 소프트웨어의 복잡도가 감소한다.
5. 표준화된 연계모듈 활용으로 상호 운용성이 향상된다.
6. 개발표준에 의한 모듈화로 유지보수가 용이하다.
7. 공통 컴포넌트 재사용으로 중복 예산이 절감된다.
(7)소프트웨어 재사용 개념 : 이미 개발되어 인정받은 소프트웨어의 전체 혹은 일부분을 다른 소프트웨어 개발이나 유지보수에 사용하는 기법
1. 소프트웨어 재사용 방법 ①합성중심:블록(모듈)을 만들어서 끼워 맞춰서 소프트웨어를 완성 ②생성중심:

 

반응형