정보처리기사 필기 - 자주 틀린 문제, 개념 정리 (업뎃중)
my code archive
article thumbnail
반응형

디자인 패턴

-각 모듈의 세분화된 역할이나 모듈들 간의 인터페이스와 같은 코드를 작성하는 수준의 세부적인 구현 방안을 설계할 때 참조할 수 있는 전형적인 해결 방식 또는 예제

 

생성 패턴

  • 추상 팩토리(Abstract Factory)
  • 빌더(Builder)
  • 팩토리 메소드(Factory Method)
  • 프로토타입(Prototype)
  • 싱글톤(Singleton)

구조 패턴

  • 어댑터(Adapter)
  • 브리지(Bridge)
  • 컴포지트(Composite)
  • 데코레이터(Decorator)
  • 퍼싸드(Facade)
  • 플라이웨이트(Flyweight)
  • 프록시(Proxy)

행위 패턴

  • 책임 연쇄(Chain of Responsibility)
  • 커맨드(Command)
  • 인터프리터(Interpreter)
  • 반복자(Iterator)
  • 중재자(Mediator)
  • 메멘토(Memento)
  • 옵서버(Observer)
  • 상태(State)
  • 전략(Strategy)
  • 템플릿 메소드(Template Method)
  • 방문자(Visitor)

비용 산정 기법 - 상향식

-상향식 비용 산정 기법은 세부적인 작업 단위별로 비용 산정 후 집계하여 전체 비용을 산정하는 방법

 

LOC(원시코드 라인 수, source Line Of Code) 기법

  • 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 기대치를 측정
  • 측정이 용이하고 이해하기 쉬워 가장 많이 사용됨

개발 단계별 인월수(Effort Per Task) 기법

  • LOC 기법을 보완하기 위한 기법

 

수학적 산정 기법

 

COCOMO

  • 보헴(Boehm)이 제안
  • 개발 소프트웨어의 규모(LOC)를 예측한 후 이를 소프트웨어 종류에 따라 다르게 책정되는 비용 산정 방정식에 대입
  • 조직형(Organic Mode) : 중, 소규모의 소프트웨어, 5만 라인 이하
  • 반분리형(Semi-Detached Mode) : 트랜잭션 처리 시스템, 운영 체제, 데이터베이스 관리 시스템, 30만 라인 이하
  • 내장형(Embedded Mode) : 초대형 규모, 30만 라인 이상
  • 비용 산정 단계 및 적용 변수의 구체화 정도에 따라 기본(Basic), 중간(Intermediate), 발전(Detailed)형으로 구분

Putnam 모형

  • 소프트웨어 생명 주기 전 과정 돈안에 사용될 노력의 분포를 가정해 주는 모형
  • 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로함
  • 생명주기 예측 모형이라고도 함
  • 대형 프로젝트의 노력 분포 산정에 이용되는 기법

기능 점수(FP) 모형

  • 알브레히트가 제안
  • 소프트웨어의 기능을 증대시키는 요인별로 가중치를 부여, 요인별 가중치를 합산하여 총 기능 점수를 산출

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

 

화이트박스 테스트

  • 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트
  • 설계된 절차에 초점을 둔 구조적 테스트
  • 듈 안의 작동을 직접 관찰
  • 원시 코드(모듈)의 모든 문장을 한 번 이상 실행함으로써 수행됨
  • 기초 경로 검사, 제어 구조 검사(조건 검사, 루프 검사, 데이터 흐름 검사)★

블랙박스 테스트

  • 소프트웨어가 수행할 특정 기능을 알기 위해 각 기능이 완전히 작동되는 것을 입증하는 테스트(=기능 테스트)
  • 사용자 요구 사항 명세를 보며 테스트
  • 소프트웨어 인터페이스에서 실시되는 테스트
  • 테스트 과정의 후반부에 적용
  • 동치 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사★

테스트 케이스

  • 구현된 소프트웨어가 사용자 요구 사항을 정확하게 준수했는지 확인하기 위해 설계된 입력값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서
  • 명세 기반 테스트의 설계 산출물
  • 테스트 계획 검토 및 자료 확보 -> 위험 평가 및 우선순위 결정 -> 테스트 요구사항 정의 -> 테스트 구조 설계 및 테스트 방법 결정 -> 테스트 케이스 정의 -> 테스트 케이스 타당성 확인 및 유지 보수

테스트 시나리오

  • 테스트 케이스를 적용하는 순서에 따라 여러 개의 테스트 케이스들을 묶은 집합

테스트 오라클

  • 테스트 결과가 올바른지 판단하기 위해 사전에 정의된 참 값을 대입하여 비교하는 기법
  • 결과를 판단하기 위해 테스트 케이스에 대한 예상 결과를 계산하거나 확인
  • 참(True) 오라클, 샘플링(Sampling) 오라클, 추정(Heuristic) 오라클, 일관성(Consistent) 오라클

데이터베이스 뷰(View)

  • 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된 가상 테이블
  • 논리적 존재(O), 물리적(X)!!!
  • 뷰가 정의된 기본 테이블이 삭제되면 뷰도 자동으로 삭제됨
  • 삽입, 삭제, 갱신 연산에 제약이 따름

RIP 라우팅 프로토콜

  • 최단 경로 탐색에는 Bellman-Ford 알고리즘을 사용하는 거리 벡터 라우팅 프로토콜
  • 라우팅 프로토콜은 IGP와 EGP로 분류했을 때 IGP에 해당함
  • 소규모 네트워크 환경에 적합
  • 최대 홉 카운트를 15홉 이하로 한정하고 있음

 

반응형
profile

my code archive

@얼레벌레 개발자👩‍💻

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

반응형