정보처리기사[필기] 2021.08.14 기출 오답노트

조영문·2025년 1월 16일
0

정보처리기사

목록 보기
12/17

9. 마스터-슬레이브 아키텍처

마스터 : 작업을 분리, 배포
슬레이브 : 요청 작업 처리

슬레이브는 마스터의 작업 요청을 처리하고, 처리된 결과를 되돌려준다.

마스터는 슬레이브가 반환한 결과값으로부터 최종결과값을 계산한다.

15. 럼바우 분석기법

객체 모델링 - 객체 다이어그램

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

기능 모델링 - 자료흐름도

17. 객체지향 분석

동적모델링 / 상향식
하향식 : 절차지향 분석

미들웨어

복잡한 이기종 환경에서 응용프로그램과 운영환경 강에 원만한 통신을 이룰 수 있게 해주는 SW

파이프 필터 아키텍처

데이터는 파이프를 통해 단방향으로 흐르고, 필터 이동 시 오버헤드가 발생될 수 있음.
데이터 통로인 파이트를 이용해 컴포넌트인 필터 간에 데이터를 전송하는 구조, 단방향, 양방향 모두 구현가능 , 필터 간 이동 시 오버헤드가 발생

검증 / 확인

검증(Verification)

소프트웨어가 요구사항에 부합하게 구현되었음을 보장하는 활동(개발자)

확인(Validation)

소프트웨어가 고객의 의도에 따라 구현되었음을 보장하는 활동(사용자)

테스트 케이스 자동 생성 도구

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

테스트 스텁(Stub)

  • 하향식
  • 제어 모듈이 호출하는 타 모듈의 기능을 단순히 수행

테스트 드라이버(Driver)

  • 상향식
  • 테스트 대상 하위 모듈을 호출하고, 파라미터 전달, 모듈 테스트 수행 후의 결과 도출

저작권 관리 구성 요소

패키저: 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능

디지털 저작권 관리(DRM) 구성요소

  • 콘텐츠 제공자 : 콘텐츠를 제공하는 저작권자
  • 콘텐츠 분배자 : 암호화된 콘텐츠 제공
  • 패키저 : 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능
  • 보안 컨테이너 : 원본을 안전하게 유통하기 위한 전자적 보안장치
  • DRM 컨트롤러 : 배포된 콘텐츠의 이용 권한을 통제
  • 클리어링 하우스 : 소비자와 유통업자 사이에 발생하는 거래에 대해 디지털 저작권 라이선싱을 중개하고 라이선스 발급을 수행하는 장소

데이터베이스 키

슈퍼키

유일성을 만족하는 속성 또는 속성들의 집합

후보키

유일성과 최소성을 만족하는 속성 또는 속성들의 집합

대체키

기본키로 선택되지 못한 후보키

외래키

다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합

직렬화 기법

로킹 기법

같은 자원을 엑세스하는 다중 트랜잭션 환경에서 DB의 일관성과 무결성을 유지하기 위해 트랜잭션의 순차적 진행을 보장

타임스탬프 기법

트랜잭션과 트랜잭션이 읽거나 갱신한 데이터에 대해 트랜잭션이 실행을 시작하기 전에 타임스탬프를 부여하여 부여된 시간에 따라 트랜잭션 작업을 수행하여 트랜잭션 간의 처리순서를 미리 정하는 기법

프로세스

준비 -> 실행 : 디스패치(Dispatch)
실행 -> 준비 : 할당시간초과(Time Run Out)
실행 -> 대기 : 대기(Block)
대기 -> 준비 : 깨움(Wake up)

접근 제어 방법

강제 접근 통제(Mandatory Access Control)

주체와 객체의 등급을 비교하여 접근 권한을 부여하는 방식

임의 접근 통제(Discretionary Access Control)

접근하는 사용자의 신원에 따라 접근 권한을 부여하는 방식

사용자 계정 컨트롤(User Access Control)

프로그램에서 관리자 수준의 권한이 필요한 작업을 수행할 때 사용자에서 알려서 제어할 수 있도록 돕는 기능

자료별 접근 통제(Data-Label Access Control > Label-Based Access Control)

개별 행, 열에 대해 쓰기 권한, 읽기 권한을 가졌는지를 명확하게 결정하는 제어 방식

요구사항 검증

요구사항 검증

실제로 고객이 원하는 바를 정의했는지를 보이는 것

요구사항 체크리스트

  1. 유효성(Validity) : 고객의 필요를 충족하는 기능을 제공하는지(요구한 것이 맞는지)
  2. 일관성(Consistency) : 충돌하는 요구사항이 존재하는지
  3. 완결성(Completeness) : 고객이 요구한 모든 기능이 포함되었는지
  4. 현실성(Realism) : 예산과 기술적으로 실행 가능한지(일정 포함)
  5. 검증 가능성(Verifiability) : 만들고 난 뒤 요구사항들을 검증할 수 있는지

정보은닉

다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통해 접근을 허용하는 것
클래스 외부에서 특정 정보에 접근을 막는다

장점

  1. 기능의 교체나 변경에 대한 유연성을 제공
  2. 동일한 타입의 다른 구현 객체
  3. 구체적인 구현이 없는 상태(인터페이스)로도 정확한 연동 코드의 생성 가능
  4. 모듈화하여 코드의 가독성 증가
  5. 개발기간 단축

GoF(Gang of Four) 디자인 패턴

에리히 감마, 리저드 헬름, 랄프 존슨, 존 블리시데스가 같이 고안한 디자인 패턴
23가지 디자인 패턴을 3가지 분류로 정리한 디자인 패턴

  • 생성 패턴: Abstract Factory, Builder, Factory Method, Prototype, Singleton
  • 구조 패턴: Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy
  • 행위 패턴: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategty, Template Method, Visitor

데이터 구조

선형 구조

리스트, 스택, 큐, 데큐

비선형 구조

트리, 그래프

파일 구조

순차파일, 색인파일, 직접파일

무결성 규정

개체 무결성

모든 테이블이 기본키를 가져야함 / 기본키는 NULL이 될 수 없음

참조 무결성

참조관계의 두 테이블의 데이터가 항상 일관된 값을 갖도록 유지 / 외래키는 참조할 수 없는 값을 가질 수 없음

도메인무결성

테이블에 존재하는 필드의 무결성을 보장하기 위한것 / 특정 속성값은 그 속성이 정의된 도메인에 속한 값이어야 함

트랜잭션 주요 특성

1. 원자성(Atomicity)

  1. 트랜잭션의 연산은 DB에 모두 반영되던지, 전혀 반영되지 않아야한다.
  2. 완벽 수행, 아님 모두 취소

2. 일관성(Consistency)

  1. 트랜잭션이 실행이 성공적으로 완료되면 언제나 일관성 있는 데이터베이스 상태로 변환되어야한다.
  2. 트랜잭션 수행 전과 후의 상태가 같아야한다.

3. 독립성(Isolation)

  1. 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없다.
  2. 수행 중인 트랜잭션은 완전히 완료될 때까지 다른 트랜잭션에서 수행 결과를 참조할 수 없다.

4. 영속성(Durablility)

  1. 성공적으로 완료된 트랜잭션의 결과는 시스템이 고장나더라도 영구적으로 반영되어야 한다.

0개의 댓글