엔지니어 블로그

정보처리기사 실기 내용 정리-1 본문

자격증/정보처리기사

정보처리기사 실기 내용 정리-1

안기용 2022. 3. 30. 22:26

1. 소프트웨어 생명주기

  • 시스템의 요구사항 분석부터 유지 보수까지의 전과정을 체계화한 철차를 뜻한다.
  • 요구분석 - 설계 - 구현 - 테스트 - 유지보수 총 5단계로 진행된다.

1-1. 소프트웨어 생명주기의 종류

  1. 폭포수 => 각 단계를 확실히 마무리 지은 후 다음 단계로 넘어가는 모델이다.
  2. 프로토타이핑 => 프로토타입을 제작하여 고객의 피드백을 받고 반영하여 소프트웨어를 만드는 모델이다.
  3. 나선형 => 계획-위험분석-개발-고객평가 4단계가 반복적으로 시행되는 모델이다.
  4. 반복적 모델 => 구축 대상을 병렬 개발 후 통합하여 완성시키는 모델이다.

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

  • 소프트웨어 개발 전과정에 지속적으로 적용 가능한 방법 철차
  1. 구조적 방법론 => 전체 시스템을 기능에 따라 분리 개발하고 통합하는 분할과 정복 방식의 방법론이다.
  2. 정보공학적 방법론 => 정보 시스템 개발에 필요한 관리 절차와 작업을 체계화하는 방법론이다.
  3. 객체지향적 방법론 => 객체 단위로 시스템을 설계하는 방법론이다.
  4. 컴포넌트 기반 방법론 => 컴포넌트를 조립해서 하나의 소프트웨어를 만드는 방법론이다.
  5. 에자일 => 절차보다는 사람 중심의 유연한 경량 개발 방법론이다.
  6. 제품 계열 방법론

1-2-1.에자일

  • 에자일에는 XP와 SCRUM이 있다.
1-2-1-1.XP
  • XP는 의사소통 개선과 즉각적 피드백으로 품질을 높이기 위한 방법론이다.
5대 정신
  1. 용기
  2. 단순성
  3. 의사소통
  4. 피드백
  5. 존중
12개 기본 원리
  1. 짝프로그래밍 - 개발자 둘이서 짝으로 코딩하는 원리
  2. 코드 공동 소유 - 시스템 내의 코드는 누구든 수정이 가능하다는 원리
  3. 지속적인 통합 - 매일 여러번 작업을 통합해야 한다는 원리
  4. 계획세우기 - 고객의 요구를 정의하고 개발자에게 필요한것과 지연가능성을 알려주어야 한다는 원리
  5. 테스트 주도 개발 - 테스트를 먼저 수행하고 통과할 수 있도록 코딩해야한다는 원리
  6. 소규모 릴리즈 - 작은 시스템을 먼저 만들고, 짧은 단위로 업데이트 한다는 원리
  7. 메타포어 - 공통적인 이름 체계를 바탕으로 고객과 개발자간 의사소통을 원활하게 한다는 원리
  8. 간단한 디자인 - 요구사항에 적합한 가장 단순한 설계를 해야한다는 원리
  9. 리팩토링 - 프로그램의 기능을 변경하지 않으면서 코드 중복제거,단순화 등을 위해 시스켐 재구성한다는 원리
  10. 40시간 작업 - 40시간 이상 작업하지 말아야 한다는 원리
  11. 고객상주 - 개발자의 질문에 즉각 답할 수 있는 고객을 프로젝트에 풀타임 상주시켜야 한다는 원리
  12. 코드표준 - 모든 코드에 대한 코딩 표준을 정해야 한다는 원리
1-2-1-2 SCRUM

매일 정해진 시간,장소에서 짧은시간 개발을 하는 팀을 위한 프로젝트 관리 방법론

스크럼 주요 구성 개념
  1. 백로그 - 요구사항
  2. 스프린트
  3. 스크럼 미팅
  4. 스크럼 마스터
  5. 일일 스프린트 회고
  6. 번 다운. 차트

1-3. 객체지향 분석 방법론

사용자의 요구사항을 분석하여 요구된 문제와 관련된 모든 클래스,속성,연산,관계를 정의하여 모델링하는 기법이다.

1-3-1. 객체지향 분석 방법론 종류

  1. OOSE
    • 야콥슨, 유스케이스를 모든 모델의 근간으로 활용되는 방법론
  2. OMT
    • 럼바우, 그래픽 표기법을 이용해 소프트웨어 구성요소를 모델링 하는 방법론, 절차는 객->동->기
  3. OOD
    • 부치, 설계 문서화를 중시하여 다이어그램 중심으로 개발하는 방법론

2. 비용산정, 일정관리 모형

2-1. 비용산정 모형

소프트웨어 소프트웨어 개발에서 실행 가능한 계획을 수립하기 위해 비용을 산정하는 방식이다.

2-1-1. 비용산정 모형 분류

분류 설명 종류
하향식 전문가에게 비용산정을 의뢰하거나 전문가와 조정자를 통해 산정하는 방식 델파이 기법
상향식 세부적인 요구사항과 기능에 따라 필요한 비용을 계산하는 방식 LOC
Man Month
COCOMO
푸트남
FP

2-1-2. 비용산정 모형 종류

  1. LOC 모형
    • 각 기능의 원시코드 라인 수의 '낙관치','비관치','중간치'를 측정하여 예측치를 통해 비용을 산정하는 방식이다.
  2. Man Month 모형
    • 사람이 1개월동안 가능한 작업량을 기준으로 프로젝트 비용을 산정하는 방식이다.
    • ManMonth = Loc/1달 가능 작업량
  3. COCOMO
    • 프로그램 규모에 따라 비용을 산정하는 방식, 보헴 제안
    • 규모에 따라 3가지로 나뉜다.
    유형 설명
    조직형 5만라인 이하의 소프트웨어(5KDSI)
    반 분리형 30만 라인 이하의 소프트웨어(30KDSI)
    임베디드형 30만 라인 초과의 소프트웨어
  4. 푸트남
    • Rayleigh Norden 곡선의 노력분포를 기준으로 비용을 산정하는 방식이다.
  5. FP
    • 요구 기능을 증가시키는 인자별로 가중치를 부여하고, 가중치를 합산하여 비용을 산정하는 방식이다.

2-2. 일정관리 모델

프로젝트가 기한 내에 완료될 수 있도록 관리하는 모델이다.

2-2-1. 일정관리 모델의 종류

  1. 주공정법
    • 여러 작업의 수행 순서가 얽혀 있는 프로젝트의 일정을 계산하는 기법
  2. PERT
    • 3점 추정박식을 통해 일정을 관리하는 기법
  3. 중요 연쇄 프로젝트 관리
    • 주 공정 연쇄법으로 자원제약사항을 고려하여 일정을 작성하는 기법