정보처리기사/필기

필기 1과목 기출 오답노트

bumm 2024. 3. 29. 16:22
  1. 설계 기법 중 하향식 설계 방법과 상향식 설계 방법에 대한 비교 설명으로 가장 옳지 않은 것은?

    ① 하향식 설계에서는 통합 검사 시 인터페이스가 이미 정의 되어 있어 통합이 간단하다.
    ② 하향식 설계에서 레벨이 낮은 데이터 구조의 세부 사항은 설계초기 단계에서 필요하다.
    ③ 상향식 설계는 최하위 수준에서 각각의 모듈들을 설계하고 이러한 모듈이 완성되면 이들을 결합하여 검사한다.
    ④ 상향식 설계에서는 인터페이스가 이미 성립되어 있지 않더라도 기능 추가가 쉽다.
         ☞ 하향식 설계 방법의 장점
    *** 설명
    상향식 설계

    : 구체적이고 작은 것부터 만드는 설계 방식 
      개별 알고리즘이나 전체 프로그램의 구성 요소를 설계할 때 유용
      문제를 관리하기 쉬운 작은 덩어리로 나누면 각 부분을 개별적으로 작업하고 최종적으로 완전한 프로그램으로 병합    하기가 더 쉬워짐
      변경이 쉬움

    하향식 설계

    : 추상적이고 큰 것부터 설계하는 설계 방식 
      프로그래머가 단일 컴포넌트를 다루기 전에 전체 프로젝트를 미리 계획할 수 있으므로 처음에 프로그램을 정확하고    효율적으로 설계하는 데 도움


  2. 다음의 설명에 해당하는 언어는?" 객체 지향 시스템을 개발할 때 산출물을 명세화, 시각화, 문서화하는데 사용된다. 즉, 개발하는 시스템을 이해하기 쉬운 형태로 표현하며 분석가, 의뢰인, 설계자가 효율적인 의사소통을 할 수 있게 해준다. 따라서, 개발 방법론이나 개발 프로세스가 아니라 표준화된 모델링 언어이다. "
    ① JAVA
    ② C
    ③ UML
      ☞ UML은 표준화된(범용) 모델링 언어이다.
    ④ Python
  3. UML 다이어그램 중 정적 다이어그램이 아닌 것은?
    ① 컴포넌트 다이어그램
    ② 배치 다이어그램
    ③ 순차 다이어그램

       ☞ 정적/구조 다이어그램 종류 : class, object(객체), component, deployment(배치), complex structure(복합체 구조), package
       ☞ 동적/행위 다이어그램 종류 : Use case, Sequence(순차), Communication, Interaction Overview(상호작용 개요), State(상태), Activity(활동), Timing
    ④ 패키지 다이어그램 

  4. 클래스 설계 원칙에 대한 바른 설명은?
    단일 책임 원칙 : 하나의 클래스만 변경 가능 해야한다.
       ☞ 인터페이스 분리 원칙(Interface Segregation Principle)
    ② 개방-폐쇄의 원칙 : 클래스는 확장에 대해 열려 있어야 하며 변경에 대해 닫혀 있어야 한다. 
    리스코프 교체의 원칙 : 여러 개의 책임을 가진 클래스는 하나의 책임을 가진 클래스로 대체되어야 한다.
       ☞ 단일 책임 원칙(Single Responsibility Principle)
    의존관계 역전의 원칙 : 클라이언트는 자신이 사용하는 메소드와 의존관계를 맺지 않도록 해야 한다.
       ☞ 의존 역전 원칙(Dependency Inversion Principle)
  5. GoF(Gangs of Four) 디자인 패턴에서 생성(Creational) 패턴에 해당하는 것은?
    ① 컴퍼지트(Composite)
    ② 어댑터(Adapter)
    ③ 추상 팩토리(Abstract Factory)
    ④ 옵서버(Observer)
       ☞ 1, 3번은 구조 패턴 / 4번은 행위 패턴
  6. 아키텍처 설계과정이 올바른 순서로 나열된 것은?
    • 설계 목표 설정
    • 시스템 타입 결정
    • 스타일 적용 및 커스터마이즈
    • 서브시스템의 기능, 인터페이스 동작 작성
    • 아키텍처 설계 검토
  7. 입력되는 데이터를 컴퓨터의 프로세스가 처리하기 전에 미리 처리하여 처리하는 시간을 줄여주는 프로그램이나 하드웨어를 말하는 것은?
    ① EAI

       ☞ Enterprise Architecture Integration(기업 어플리케이션 통합) : 여러 앱이 상호 연동 가능하게 통합
    ② FEP
       ☞ Front End Processor(전처리기) : 호스트 컴퓨터와 단말기 사이에서 전송 처리를 먼저 하여 컴퓨터의 부하를 줄임

    ③ GPL
       ☞ GNU General Public License(GNU 일반 공중 사용 허가서) : 자유 소프트웨어 재단에서 만든 자유 소프트웨어 라이센스
    ④ Duplexing
       ☞ 양방향 통신