시험/정보처리기사-실기

1. 요구사항 확인

pinetree25 2023. 3. 29. 22:02

1. 소프트웨어 개발 방법론

1-1. 소프트웨어 개발 방법론

(1) 소프트웨어 생명주기 모델 

요구분석~유지보수까지의 공정을 체계화한 절차

프로세스 : 요구사항분석-설계-구현-테스트-유지보수

모델 종류: 

폭포수 모델 각 단계를 확실히 마무리 후 다음단계로 넘어감
프로토타이핑 모델 고객이 요구한 주요 기능 구현하여 피드백 반영해 만들어 감
나선형 모델 점진적 개발
반복적 모델 일부분을 반복적 개발해 최종 완성 시킴

 

(2) 소프트웨어 개발 방법론 

개발시작 ~ 시스템 사용하지 않는 과정까지의 전 과정을 형상화한 방법론

종류 : 

구조적 방법론 전체 시스템을 기능에 따라 나눠 개발-> 이를 통합하는 분할과 정봅 접근 방식의 방법론
하향식 방법론
나씨-슈나이더만 차트 
정보공학 방법론 정보 시스템 개발에 필요한 관리 절차와 작업 기법을 체계화한 방법론
대형 프로젝트에 유용
객체 지향 방법론 객체를 기본단위로 시스템을 분석, 설계함
객체, 클래스, 메시지 사용

[구성요소]
- 클래스
- 객체
- 메서드
- 메시지
- 인스턴스
- 속성

[객체지향기법]
- 캡슐화
- 상속성
- 다형성
- 추상화
- 정보은닉
- 관계성

[객체지향설계원칙 solid]
- 단일 책임의 원칙
- 개방 폐쇄 원칙
- 리스코프 치환의 원칙
- 인터페이스 분리의 원칙
- 의존성 역전의 원칙

[객체지향 분석 방법론 종류]
- oose (object oriented software engineering) by 야콥슨 : 유스케이스를 모든 모델의 근간으로 활용
- omt (object modeling technolohy) by 럼바우: 객체모델링 -> 동적 모델링 -> 기능모델링(dfd활용)
- ood (objext oriented design) by 부치 : 설계 문서화 강조하여 다이어그램 중심 개발 
컴포넌트 기반 방법론 컴포넌트 조립해 하나의 응용프로그램 작성
애자일 방법론 절차보다 사람이 중심 되어 유연, 신속하게 효율적으로 시스템 개발 

[유형]

- xp
*5가지 가치
용기, 단순성, 의사소통, 피드백, 존중 
*12가지 기본 원리
짝 프로그래밍
공동 코드 소유
지속적인 통합
계획세우기
작은 릴리즈
메타포어
간단한 디자인
테스트 기반 개발
리팩토링
40시간 작업
고객 상주
코드 표준

- 스크럼 : 매일 정해진 시간, 장소에서 짧은 시간의 개발을 하는 팀을 위한 프로젝트 관리 중심 방법론

백로그: 요구사항
스프린트: 2-4주 짧은 개발 기간 반복적 수행- 개발품 질 상승
스크럼 미팅: 매일 15분  to-do-list, 데일리 미팅
스크럼 마스터: 프로젝트 리더
스프린트 회고: 스프린트 주기 되돌아보며 규칙 준수 여부, 개선적 확인 및 기록
번 다운 차트: 남아있는 백로그 대비 시간을 표현한 차트


- 린 : 도요타의 린 스스템 품질기법-> 소프트웨어 개발 프로세스에 적용한 방법론
jit(just in time), 칸반 보드 사용 

제품 개열 방법론  공통된 기능을 정의하여 개발
임베디드 소프트웨어 작성하는데 유용

 

1-2. 프로젝트 관리

(1) 프로젝트 관리

주어진 기간 내 최소의 비용으로 시스템 개발

관리 대상 : 계획 관리, 품질 관리, 범위 관리  

3대 요소 :

- 사람(인적자원)

- 문제(사용자 입장에서 문제 분석)

- 프로세스 (개발에 필요한 전체적인 작업 계획 및 구조)

 

(2) 비용산정 모형

분류 설명 종류
하향식 산정 방법 전문가가 산정 -전문가 판단
-델파이 기법
상향식 산정 방법 세부적 요구사항, 기능에 따라 필요 비용 계산 -loc (코드 라인 수) : 낙관치, 중간치, 비관치

-man month : 한 사람이 1개월 동안 할 수 있는 일의 양 기준으로 비용 산정

-cocomo 모형 by 보헴: 프로그램 규모에 따라 비용 산정
   조직형: 5만 라인 이흐
   반분리형: 30만 라인 이하
   임베디드형: 30만 라인 이상

-푸트남 모형 : 개발 주의 단개별 요구할 인력의 분포를 가정하는 방식 

-기능점수(fp)모형 : 

 

(3) 일정관리 모델

종류

주 공정법    
pert    
중요 연쇄 프로젝트 관리    

 

(4) 위험관리 

프로젝트에 내재된 위험 요소를 인식하고 그 영향을 분석하여 이를 관리

[종류]

- 알려진 위험

- 예측 가능한 위험

- 예측 불가능한 위험 

 

위험 대응 전략

-회피

-전가

-완화

-수용

 

 

2. 현행 시스템 분석

2-1. 현행 시스템 파악

2-2. 개발 기술 환경 정의

 

 

 

 

3. 요구사항 확인

3-1. 요구사항

3-2.요구사항의 시스템화 타당성 분