[공부]/[정보처리기사]

[필기] 정보처리기사 20강

우주최강자맨키리 2021. 3. 18. 17:48
SMALL
TOPIC : 프로세스, 프로그램 설계 및 시스템 평가와 문서화
> 프로세스의 경우 전반적으로, 개략적으로
> 프로그램의 경우 상세하게, 자세하게

1. 프로세스 설계

1-1. 프로세스 설계의 개요

> 프로세스 설계 : 입력과 출력 사이의 일련된 처리과정을 설계하는 것

> 프로그래밍 하기에 앞서, 전반적으로 어떻게 다뤄야 하는지 살펴보는 것을 의미.

> 따라서 전체 기틀을 잡기 위해 설계도를 먼저 그려야한다.

 

 

1-2. 설계도

설계도의 종류는 다음과 같으며, 이 중 순서도에 무게를 실어야한다.

  • 블록 도표 (Block Chart)
  • 시스템 순서도 (System Flowchart)
  • 프로세스 순서도 (Process Flowchart)
    • > 컴퓨터로 문제를 처리하기 위해 자료가 입력, 처리, 출력되는 과정을 그림으로 표시
  • 프로그램 순서도 (Program Flowchart)
    • > 프로그램에서 사용될 입출력자료와 처리, 조건, 절차 등을 세부적으로 표시한 도형.
    • > 프로그래머가 작성하는 것이 특징이다.

설계도에서도 보이듯, 프로세스는 전반적인 처리과정을 살펴보는 반면, 프로그램의 경우 자료의 처리, 조건, 절차등을 상세하게 살펴보는 것이 특징이다. 굳이 따지자면 프로세스 설계 ⊃ 프로그램 설계 구조 인듯.

 

 

1-3. 프로세스 표준 패턴

> 포인트는 '반복적으로 이용되는 표준 패턴을 어떻게 이용할 것인가' 가 중점. 프로세스를 설계하기 위한 파일을 어떻게 작업하는 지 패턴 파악.

  1. 병합 (Merge) : 두 개이상의 파일을 정돈하여 하나의 파일을 만드는 작업
  2. 갱신 (Update) : 마스터파일의 내용을 트랜잭션 파일의 내용으로 변경시키는 작업 (마스터파일 = 원본)
  3. 분류 (Sort) : 정돈되지 않은 자료를 순서적으로 다시 재배열 하는 작업
  4. 대조 (Matching) : 두 개의 파일을 대조하여 순서나 기록 내용을 검사하는 작업
  5. 추출 (Extract) : 조건에 맞는 것을 파일 내에서 찾아내는 작업

 

 

1-4. 설계하는 것 까진 좋은데, 오류가 있는 지 없는지 확인하는 작업 : 체크 시스템코딩 다 짜고 오류 발견하기엔 너무 늦으니까 입력단계서부터 검사를 실시함.

  1. 순서검사 (Sequence Check) : 입력코드가 정해진 순서 (오름, 내림차순)으로 돼있는 지 검사
  2. 형태검사 (Mode Check) : 입력 코드가 정해진 형태 (문자형, 숫자형)에 맞게 돼있는 지 검사
  3. 한계검사 (Limit Check) : 입력 코드가 정해진 범위 (상한, 하한값)에 맞게 돼있는 지 검사
  4. 메아리검사 (Echo Check) : 입력 코드를 일차적으로 검사한 후, 수신측에서 오류 재확인후 송신
  5. 논리 검사 (Logical Check) 
  6. 형식 검사 (Format Check)
  7. 균형 검사 (Balance Check) : 대차 대조의 균형이나 좌변 우변의 균형이 일치하는 지 검사
  8. 합계검사 (Sum Check)

 


2. 프로그램 설계

2-1. 프로그램 설계의 개요

> 프로그램 설계는 프로세스 설계에 비해 좀 더 상세하게, 세부적인 작업.

> 시스템 설계의 마지막 단계, 프로그램에 포함될 세부 내용을 정리하는 작업을 의미한다.

> 시스템 구조설계, 흐름도 설계, 프로그램 설계, 문서화의 설계를 수행한다.

* 문서화 작업 중요함, 개발된 모든 사항을 문서화 시킴으로서 관리 및 유지보수의 용이성과 개발 중 추가 변경에 따른 혼란 방지 및 인수인계에 용이함을 제공함.

 

 

2-2. 프로그래밍의 순서

  1. 업무 분석
  2. 타당성 조사
  3. 입출력 설계
  4. 순서도 작성 (실기)
    1. 개략 순서도 : 시스템 도형을 통해 입출력 자료와 처리내용을 개략적으로 표시한 도형
    2. 상세 순서도 : 개략순서도 내용을 바탕으로 알고리즘에 관한 자세한 내용을 표현한 도형
  5. 코딩
  6. 실행
  7. 수정
  8. 문서화

3. 시스템 평가

3-1. 시스템 평가의 개요

> 시스템 평가는 시스템이 제대로 작동하는 지 아닌지 확인하는 작업. 평가 항목은 세 가지 이다.

  1. 기능 평가 : 사용자가 요구하는 기능을 시스템이 얼마나 잘 수행하는가?
  2. 성능 평가 : CPU 처리속도 및 메모리 용량, 입출력장치의 속도, 파일 편성과 접근방법 등을 평가
  3. 신뢰성 평가  : 시스템을 얼마나 믿을 수 있는 지 확인.

 

3-2. 신뢰성 (Reliablity)

> 시스템이 얼마나 고장없이, 고장이 난다면 얼마나 빠르게 복구되어 정확한 결과시간 내에 산출하는 지의 척도를 확인한다. 확인 척도는 두 가지를 통해 계산한다.

 

> 평균 가동 시간 (MTBF, Mean Time Between Failure) : 시스템 고장 발생 시점으로 부터 다음 고장 발생까지 평균시간

> MTBF = 작업한 시간의 총합 / 작업횟수 를 통해 계산한다.

 

> 평균 수리 시간 (MTTR, Mean Time To Repair) : 시스템이 고장나서 보수하느라 작업하지 못 한 평균 수리 시간 의미.

> MTTP = 수리한 시간의 총합 / 고장 횟수 를 통해 계산한다.

 

MTBF와 MTTP를 이용하여 신뢰율 Reliablity = MTBF / (MTBF + MTTP) * 100% 로 산출한다.

(= 가동시간 / 전체 시간) * 100%

 

 

 

3-3. 소프트웨어 비용 산정 방법

> 개발하는 데 소모되는 비용 (= 소프트웨어 비용)은 어떻게 산정하는가? 두 가지 방법이 존재한다.

  1. 하향식 방법
    1. 전문가 감정
    2. 델파이법
  2. 상향식 방법
    1. 원시 코드 라인 수 (LOC, Line Of Code) 기법
    2. 개발 단계별 인/월수 기법
  3. COCOMO (COnstructive COst MOdel)
    1. Boehmn이 제안한 방법으로, 제품의 복잡도에 따라 세 가지로 구분지음.
      1. 조직형 (Organic Mode) : 5만 라인 이하
      2. 반분리형 (Semidetached Mode) : 30만 라인 이하
      3. 내장형 (Embedded Mode) : 30만 라인 이상
LIST