정보처리기사 기출틀린문제

최명수·2023년 3월 2일

1과목

에자일 모형

  • 소규모 프로젝트 적합

xp(eXtreme Programming)

  • 사용자 스토리
  • 릴리즈 계획 수립
  • 스파이크 : 간단한 프로그램
  • 이터레이션 : 릴리즈를 더 세분화 한 단위
  • 승인 검사(인수테스트) : 하나의 이터레이션안에 계획된 릴리즈 단위인 부분 완료 제품이 구현되면 수행하는 테스트, 고객이 직접 수행 , 새로운 요구사항 작성되어 변경될수 있음 , 테스트 완료되면 다음 이터레이션 진행
    소규모 릴리즈 : 이터레이션이 모두 완료되면 고객 최종테스트 수행 후 최종 결과물을 전달

기능적 요구사항, 비기능적 요구사항

  • 기능적 요구사항 : 시스템이 실제로 어떻게 동작하는지에 관점을 둔 요구사항
  • 비기능적 요구사항 : 품질, 제약사항, 성능

요구사항 분석

  • 요구사항 개발 프로세스 : 도출 -> 분석 -> 명세 -> 확인
  • 요구의 타당성을 조사하고 비용과 일정에 대한 제약 설정, 분석은 요구사항을 문서화 하는 활동, 목표를 정하고 어떤 방식으로 해결할 것인지를 결정, 요구사항을 정확하고 일관성있게 분석하여 문서화 , 분석을 위해 uml, 자료흐름도(dfd), 자료사전(dd) 등의 도구를 이용

자료흐름도(dfd)

  • 프로세스, 자료흐름, 자료저장소, 단말로 구성
  • 프로세스는 원이나 둥근 사각형으로 표시

HIPO(Hierachy Input Process Output)

  • 시스템의 분석 및 설계나 문서화할때 사용되는 기법, 입력처리출력의 기능을 나타냄
  • 하향식 소프트웨어 개발
  • 체계적 관리, 변경유지보수 용이, 이해하기 쉬워

hipo차트 종류

  • 가시적 도표:전체적인 기능 흐름
  • 총체적 도표:입력 처리 출력에 대한 정보
  • 세부적 도표:총체적도표에 표시된기능 상세히 기술

관계

  • 연관(Association)
  • 집합(Aggregation)
  • 포함(Composition) : 변화가 영향을 미친다
  • 일반화(g..
  • 의존(D) :짧은시간동안
  • 실체화(Real..) : 사물이 할수있거나 해야하는 기능

다이어그램

  • 구조적다이어그램 : 클래스, 객체, 컴포넌트, 배치, 복합체 구조, 패키지 다이어그램
  • 행위다이어그램 : 유스케이스,순차,커뮤니케이션,상태,활동,상호작용,타이밍

유스케이스 다이어그램

  • 시스템, 액터, 유스케이스, 관계로 구성
  • 연관관계, 포함관계, 확장관계, 일반화 관계

클래스 다이어그램

  • 클래스, 제약조건, 관계 등으로 구성
  • 연관, 집합, 포함, 일반화, 의존관계

순차 다이어그램

  • 메시지, 시간의 흐름
  • 액터, 객체, 생명선, 실행상자, 메시지

사용자 인터페이스의 기본원칙

  • 직관성, 유효성, 학습성, 유연성

사용자 인터페이스의 설계지침

  • 사용자중심, 사용성, 심미성, 오류발생해결

객체지향 설계원칙

  • 단일 책임원칙 : 하나의 객체는 하나의 동작만의 책임을 가짐
  • 개방-폐쇄의 원칙 : 클래스는 확장에 대해 열려 있어야 하며 변경에 대해 닫혀 있어야 한다.
  • 리스코프 교체의 원칙 : 특정 메소드가 상위 타입을 인자로 사용할 때, 그 타입의 하위 타입도 문제 없이 작동해야 함
  • 인터페이스 분리 원칙 : 자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 한다는 원칙
  • 의존관계 역전의 원칙 : 상위 계층이 하위 계층에 의존하는 전통적인 의존관계를 반전(역전)시킴으로써 상위 계층이 하위 계층의 구현으로부터 독립되게 할 수 있음, 추상성이 높은 클래스와 의존관계를 맺어야 한다는 원칙

객체지향 분석기법

  • Rumbaugh(럼바우) 방법 : 모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 기법으로, 객체 모델링 기법(Object Modeling Technique) 라고도 한다. 분석활동은 객체모델링
    -> 동적 모델링 -> 기능 모델링 순으로 통해 이루어진다

  • 객체모델링 = 객체 다이어그램 객2

  • 동적모델링 = 상태 다이어그램 동상

  • 기능 모델링 = 자료흐름도 기자

  • Booch(부치) 방법 : 미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용

  • Jacobson 방법 :Use Case를 강조하여 사용하는 분석 방법이다.

  • Coad와 Yourdon 방법 : E-R 다이어그램을 사용

  • Wirfs-Brock 방법 : 분석과 설계 간의 구분이 없고, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법

N-S 차트

  • 논리적 기술에 중점을 둔
  • GOTO나 화살표 사용X
  • 이해하기 쉽고 코드변환 용이하고 복잡한걸 시각적으로 표현한다
  • 작성이 어렵고 임의로 제어를 전이하는 것이 불가능
  • 총체적인 구조표현과 인터페이스를 나타내기 어렵다
  • 단일입구, 단일출구 표현

디자인패턴

  • 디자인패턴 : 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴

  • 생성패턴: 객체를 생성하는 것에 대한 패턴
    추상팩토리 패턴, 빌더 패턴, 팩토리 메소드 패턴, 프로토타입 패턴, 싱글톤 패턴

  • 구조 패턴: 구조를 통해 확장성을 꾀하는 패턴
    어댑터 패턴, 브릿지 패턴, 컴포지트 패턴, 데코레이터 패턴, 퍼사드 패턴, 플라이웨잇 패턴, 프록시 패턴

  • 행위 패턴: 행위의 변경, 수정 등을 위한 패턴
    역할 사슬 패턴, 커맨드 패턴, 인터프리터 패턴, 이터레이터 패턴, 미디에이터 패턴, 메멘토 패턴, 옵저버 패턴, 스테이트 패턴, 스트래티지 패턴, 템플릿 메소드 패턴, 비지터 패턴

메세지 지향 미들웨어(mom)

  • 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어
  • 온라인 업무보다는 이기종 분산 데이터 시스템의 데이터 동기를 위해 많이 사용한다.
  • 느리고 안정적인 응답을 필요로 할때 사용

미들웨어

  • 클라이언트와 서버간의 통신을 담당하는 시스템 소프트웨어이다
  • 시스템 간의 표준화된 연결을 도와주는 소프트웨어이다.

요구사항 검증 방법

  • 동료검토 : 작성자가 직접 설명하고 동료들이 이를 들으면서 결함 발견
  • 워크스루: (미리배포)요구사항 명세서 작성자를 포함하여 사전 검토한 후에 짧은 검토 회의를 통해 결함을 발견
  • 인스펙션: 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 요구사항 명세서를 확인하면서 결함을 발견.

테스트케이스

  • 테스트의 목표 및 테스트 방법을 결정하고 테스트 케이스를 작성해야 한다.

인스펙션

  • 계획 -> 사전교육 -> 준비 -> 인스펙션 회의 -> 수정 -> 후속조치

EAI

  • EAI(Enterprise Application Integration): 기업 응용 프로그램 통합으로 기업용 응용 프로그램의 구조적 통합 방안을 가리킴

상향식 , 하향식 통합테스트

  1. 하향식 통합 테스트 ( Top Down Integration Test )
    a. 깊이 우선 통합법, 넓이 우선 통합법 사용
    b. 테스트 초기 부터 사용자에게 시스템 구조 보여줄 수 있다.
    c. 상위 모듈에서 하위 모듈 방향으로 통합하면서 테스트하는 기법
    d. 절차

    • 주요 제어 모듈은 작성된 프로그램을 사용하고, 주요 제어 모듈의 종속 모듈들은 스텁 ( stub )로 대체 한다.
    • 깊이우선 or 넓이 우선 등의 통합방식에 따라, 하위 모듈인 스텁들이 한 번에 하나씩 실제모듈로 교체된다.
    • 모듈이 통합될 때마다 테스트 실시
    • 새로운 오류가 발생하지 않음을 보증 하기 위해 회귀 테스트 실시
  2. 상향식 통합 테스트 ( Bottom Up Integration Test )
    a. 하위 모듈에서 상위 모듈 방향으로 통합하면서 테스트 하는 방법
    b. 가장 하위 단계의 모듈부터 통합 및 테스트가 수행되므로 스텁은 필요하지 않다.
    c. 하나의 주요 제어 모듈과 관련된 종속 모듈의 그룹인 클러스터( cluster )는 필요하다.
    d. 절차

    • 하위 모듈을 클러스터로 결합
    • 상위 모듈에서 데이터의 입출력을 확인하기 위해, 모듈인 드라이버 작성
    • 통합된 클러스터 단위로 테스터
    • 테스트가 완료되면 클러스터는 프로그램 구조의 상위로 이동 하여 결합하고, 드라이버는 실제 모듈로 대체

-하향식 설계에서는 통합 검사 시 인터페이스가 이미 정의되어 있어 통합이 간단하다.
-하향식 설계에서 레벨이 낮은 데이터 구조의 세부 사항은 설계초기 단계에서 필요하다.

2과목

정형기술검토(FTR)의 지침

  • 오류 검출에 초점을 두고 해결책을 나중으로 미룸(제품 검토의 집중성)
  • 검토를 위한 자료를 사전에 배포하여 검토하도록 한다(사전 준비성)
  • 의견을 제한하되 충분히 받아들인다(의제의 제한성)
  • 안건을 세우면 고수한다(안건 고수성)
  • 논쟁과 반박을 제한한다(논쟁 반박의 제한성)
  • 문제 영역을 공개한다(문제 공개성)
  • 참가자의 수를 제한한다(참가 인원의 제한성)
  • 발견된 오류는 문서화한다(문서성)

MIgration

  • Analysis: 기존 소프트웨어를 분석하여 재공학 대상을 선정하는 것
  • Migration: 기존 소프트웨어를 다른 운영체제나 하드웨어 환경에서 사용할 수 있도록 변환하는 작업
  • Restructuring: 기존 소프트웨어를 향상시키기 위하여 코드를 재구성하는 작업(기능과 외적 동작은 변하지 않음)
  • Reverse Engineering: 기존 소프트웨어를 분석하여 소스코드를 얻어내는 작업(소스코드로 소프트웨어를 만드는 작업의 역작업)

화이트박스 , 블랙박스 테스트 종류

화이트박스 테스트의 종류

  • 기초 경로 검사(Basic Path Testing)
  • 조건 검사(Condition Testing)
  • 루프 검사(Loop Testing)
  • 데이터 흐름 검사(Data Flow Testing)

화이트박스 테스트 검증 기준

  • 문장 검증 기준
  • 분기 검증 기준
  • 조건 검증기준
  • 분기/조건 기준

블랙박스 테스트의 종류

  • 동치(동등)분할 검사
  • 경계값 분석
  • 원인-효과 검사
  • 오류 예측 검사
  • 비교검사

테스트케이스 생성 도구종류

  • 자료 흐름도, 기능 테스트, 입력 도메인 분석, 랜덤 테스트

3 과목

정규화 과정

정규화 과정 [도부이결다조]

  • 1NF : 모든 메인이 원자 값으로만 구성
  • 2NF : 기본키가 아닌 속성이 기본키에 대한 완전 함수적 종속을 만족, 분적 함수 종속을 제거한 정규형
  • 3NF : 기본키가 아닌 모든 속성이 기본키에 대해 행적 함수 종속 관계를 만족하지 않는 정규형
  • BCNF : 모든 정자가 후보키인 정규형, 종속성 보존X
  • 4NF : 치 종속이 성립하는 경우, R의 모든 속성이 A에 함수적 종속 관계를 만족
  • 5NF : 모든 인 종속이 R의 후보키를 통해서만 성립되는 정규형

데이터 모델의 구성요소

  • 개체(Entity) : 사람이 생각하는 개념 or 정보 같은 현실 세계의 대상체
  • 속성(Attribute) : 데이터의 가장 작은 논리적 단위 , 데이터 항목 또는 필드에 해당
  • 관계(Relationship) : 개체 간의 관계 또는 속성 간의 논리적 연결
  • 구조(Structure) : 개체 타입들 간의 관계(논리적) , 데이터 구조 및 정적 성질
  • 연산(Operation) : 데이터베이스 조작 기본 도구
  • 제약 조건(Constraint) : 저장될 수 있는 실제 데이터의 논리적 제약 조건

데이터베이스 설계

  • 개념적 설계 : 트랜잭션 모델링/ 독립적인 개념 스키마 모델링/ 개념스키마 설계/ E-R 다이어그램
  • 논리적 설계 : 트랜잭션 인터페이스 설계/ DBMS에 맞는 논리스키마 설계/ 테이블 설계/ 논리적 매핑/ 스키마 평가 및 정제
  • 물리적 설계 : 레코드 집중의 분석,설계/ 저장레코드 양식 설계 / 저장 구조 및 액세스 경로 설정

이행적 종속, 함수적 종속

  • 이행적 종속 : A->B이고 B->C일때 A->C
  • 함수적 종속 : 학번에 따라 이름이 결정될때 학번 -> 이름

4과목

IP프로토콜

  • 데이터 체크섬은 제공하지 않고, 헤더 체크섬만 제공한다.

인터넷 계층의 주요 프로토콜

IP(Internet Protocol)

  • 전송할 데이터에 주소를 지정하고, 경로를 설정하는 기능을 함
  • 비연결형인 데이터그램 방식을 사용하는 것으로 신뢰성이 보장되지 않음

ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)

  • IP와 조합하여 통신중 발생하는 오류 처리와 전송 경로 변경등을 위한 제어 메시지를 관리하는 역할을 하며 헤더는 8Byte로 구성됨

IGMP(Internet Group Management Protocol, 인터넷 그룹 관리 프로토콜)

  • 멀티캐스트를 지원하는 호스트나 라우터 사이에서 멀티캐스트 그룹 유지를 위해 사용됨

ARP(Address Resolution Protocol, 주소 분석 프로토콜)

  • 호스트의 IP주소를 호스트와 연결된 네트워크 접속 장치의 물리적 주소(MAC Address)로 바꿈

RARP(Reverse Address Resolution Protocol)

  • ARP와 반대로 물리적 주소를 IP주소로 변환하는 기능을 함

파이썬 print

  • print() : 자동으로 개행된다.

커널 , 쉘

커널

  • 컴퓨터가 부팅될때 주기억장치에 적재된 후 상주하면서 실행된다, - 하드웨어를 보호하고 프로그램과 하드웨어 간의 인터페이스 역할을 담당한다
  • 프로세스관리,기억장치관리,파일관리,입출력관리 등 수행

  • 사용자의 명령어를 인식하여 프로그램을 호출하고 명령을 수행하는 명령어 해석기이다
  • 시스템과 사용자간의 인터페이스를 제공
  • 주기억장치에 상주하지 않고 명령어가 포함된 파일 형태로 존재하며 보조 기억장치에서 교체 처리가 가능
  • 파이프라인기능 지원
  • 자신이 만든 shell 사용가능

IP주소

  • A CLASS : 0~127
  • B CLASS : 128~191
  • C CLASS : 192~223
  • D CLASS : 224~239
  • E CLASS : ..

5과목

대칭 암호 알고리즘, 비대칭 암호 알고리즘

  • 대칭 암호화 알고리즘은 키 교환이 필요하기 때문에 키를 교환하는 중 키가 탈취될 수 있다는 문제가 있다.
  • 공개 암호화 방식에 비해 속도가 빠르다.

접근 통제

  • DAC 임의접근통제 사용자또는 신분
  • MAC 강제접근통제 미리 정해진 정책과 보안 등급
  • 역할 기반 접근통제(Role Based Access Control)
    권한이 있는 사용자들만 접근할 수 있는 보안 방법

COCOMO 모델

  • 보헴이 고안한 소프트웨어 개발비용 산정 방법.
  • man-month = 투입 노력
  • 개발 유형에 따른 3종류 - organic, semidetached, embedded
    (기본, 중간, 내장형 모드)

소프트웨어 재공학

  • 분석 Analysis: 기존 소프트웨어를 분석하여 재공학 대상을 선정하는 것
  • 재구성 Restructuring: 기존 소프트웨어를 향상시키기 위하여 코드를 재구성하는 작업(기능과 외적 동작은 변하지 않음)
  • 역공학 Reverse Engineering: 기존 소프트웨어를 분석하여 소스코드를 얻어내는 작업(소스코드로 소프트웨어를 만드는 작업의 역작업)
  • 이식 Migration: 기존 소프트웨어를 다른 운영체제나 하드웨어 환경에서 사용할 수 있도록 변환하는 작업

IPv4 , IPv6

IPv4

  • 32비트 주소
  • 유니캐스트/멀티캐스트/브로드캐스트 사용

IPv6

  • 128비트 주소
  • 기존 IPv4의 주소 부족 문제를 해결하기 개발
  • 인증성/기밀성/무결성 지원 (=보안성 강화)
  • 유니캐스트, 애니캐스트, 멀티캐스트 사용
  • 유니캐스트 : 단일 송신자 : 단일 수신자
  • 멀티캐스트 : 단일 송신자 : 다중 수신자
  • 애니캐스트 : 단일 송신자 : 가장 가까이 있는 단일 수신자

소프트웨어 정의 기술(SDE, Software-Defined Everything)

소프트웨어 정의 네트워킹(SDN)

  • 네트워킹을 가상화

소프트웨어 정의 데이터 센터(SDDC)

  • 데이터 센터의 모든 자원을 가상화

소프트웨어 정의 스토리지(SDS)

  • 물리적인 데이터 스토리지를 가상화하여 여러 스토리지를 하나처럼 관리

0개의 댓글