본문 바로가기

과정평가형 정보처리산업기사

구조적 프로그래밍 언어 활용

1-1. 구조적 프로그래밍 설계 구조 및 절차

구조적 프로그래밍 : 구조화 프로그래밍으로 불리며 절차적 프로그래밍 아래 만들어진 프로그래밍 기법, 프로그램을 결합하는 순차, 분기, 반복 구조를 통하여 설계

  • 순차구조 : 프로그램 코드가 위에서 아래로만 실행되는 구조
  • 선택구조 : 분기형 구조로서, 주어진 조건 만족 여부에 따라 처리 대상과 순서를 전달하는 구조 (if, if-else)
  • 반복구조 : 조건이 만족할 때까지 동작을 반복하는 구조 (while, for)

 

구조적 프로그래밍 언어 개발 절차

  1. 요구사항 분석 : 고객이 원하는 요구사항을 수집하여 명세화
  2. 구조적 분석 :고객이 원하는 기능, 시스템 환경, 데이터를 종합하여 데이터 흐름도(Data Flow Diagram)를 작성 (ERD, DFD)
  3. 구조적 설계 : 모듈 중심으로 설계하는 단계, 재활용, 결합도를 낮춰 독립성을 높임
  4. 구조적 프로그래밍 : 순차, 선택, 반복의 논리 구조로 구성하여 프로그램 복잡성을 최소화하여 프로그래밍 함

 

1-2. 구조적 프로그래밍 설계서 구성요소

구조적 프로그램 구성요소

  1. 데이터 흐름도 DFD(Data Flow Diagram) : 데이터 각 기능을 분할하여 표현한 구조도 (최하위 프로세스 수준으로 작성된 DFD는 각 프로그래머가 모듈에 대응하여 개발, 시스템의 구조를 이해하고 설계하는 과정에서 사용)
  2. 자료사전 DD(Data Dictionary) : 자료의 의미나 자료의 단위 및 값에 대한 사항을 정의하며 DFD에 표현된 자료 저장소를 구체적으로 명시하기 위해 사용하는 도구 
  3. 상태 전이도 STD(State Transition Diagram) : 어떤 상태에서 다른 상태로 변경되는 과정 및 해당 과정의 프로세스 명세를 작성하는 다이어그램
  4. 소단위 명세 Minispec(Mini Specification) : 나눌 수 없는 부분까지 기능을 분리하여 작성한 명세서 (구조언어 사용, N-S Chart)

 

DFD 기반 구조적 프로그래밍 설계 요소

  • DFD 구성요소 (프로세스)
    • 프로세스
    • 프로세스는 원과 원 안의 이름으로 표현, 원하는 데이터로 변환하여 출력시키기 위함
    • 원안의 이름은 수행 프로세스, 일을 수행하는 행위자
    • 항상 입력되는 데이터를 입력할 수 있어야 함, 자체적 데이터 생성 불가
    • 항상 새롭게 개발할 수 있는 가치를 부가해야 함
  • DFD 구성요소 (데이터 흐름)
    • 데이터 흐름(Data Flow)
    • DFD의 구성요소들 간의 인터페이스를 나타냄
    • 대부분의 데이터 흐름은 프로세스들 사이를 연결하지 못하지만, 저장소로부터 데이터 흐름을 나타내기도 함
  • DFD 구성요소 (데이터 저장소)
    • 데이터 저장소(Data Store)
    • 데이터 저장소는 저장되어 있는 정보 집합
    • 저장되는 저장소 파일 등일 수 있으며, 때로는 휴지통일 수 있음
    • 데이터 변동을 표시하는 것이 아닌 단순한 데이터 저장을 나타냄
    • 데이터의 입출력을 나타냄
    • 데이터 저장소 표기법은 두 개의 직선인 평행선으로 나타내고, 평행선 안에 데이터 저장소의 명칭을 부여
  • DFD 구성요소 (외부 엔티티)
    • 외부 엔티티(External Entity)
    • 엑터는 데이터를 생성, 소비함으로써 데이터 흐름도를 주도하는 활성 객체 (입력과 출력에 붙음)
    • 프로세스 처리 과정의 데이터 발생의 시작 및 종료를 나타냄
    • 데이터 흐름도상에서 프로세스와의 상호관련성을 표시하고, DFD 범위 밖에 사각형 형태로 표시

 

 

2-1. 구조적 프로그래밍 언어 개요

구조적 프로그래밍 : 구조화된 조직 체계의 모양처럼 하나의 프로그램이 구조를 갖도록 만들어 나감

  1. 절차식 언어 : 프로그램이 실행될 때 위에서 아래로 순서대로 실행되는 방식 (Goto문을 사용함으로써 진행 방향이 일괄적이지 않았던 단점을 개선함)
  2. 명령어 언어 : 프로그램은 순차적으로 실행되면서 필요한 함수를 호출하거나, 실행을 시킬 수 있는데 명령어들을 이용하여 진행 (하양식 방식 이용)
  3. 함수 중심 언어 : 구조화를 시켜가면서 독립적인 행위를 할 수 있는 작은 단위로 나눔 (함수는 서브 프로그램이 될 수 있음)

 

2-2. 구조적 프로그래밍 유형

C 언어, 파스칼(Pascal), 에이다(Ada)

 

2-3. 주요 구현 언어 문법

  1. 조건문 : 명령어 흐름을 제어할 수 있는 역할을 하는 명령어 문장 (if, else if,  switch)
  2. 반복문 : (for, while, do while)