소프트웨어 개발에서 사용하는 형상관리 도구의 종류
(형상관리란? - 소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것)
- CVS (Concurrent Version System)
- SVN (Subversion)
- GIT
형상 통제 - 소프트웨어 형상 변경 요청을 검토하고 승인하여 현재의 베이스라인에 반영될 수 있도록 통제
디자인 패턴의 분류

Bridge - 구현부에서 추상층을 분리하여 각자 독립적으로 변형이 가능하고 확장이 가능하도록 한다. 즉 기능과 구현에 대해서 두 개를 별도의 클래스로 구현한다.
Observer - 한 객체의 상태가 바뀌면 그 객체의 의존하는 다른 객체들한테 연락이 가고, 자동으로 내용이 갱신되는 방식의 패턴이다.
UML 관계
일반화 관계
- 한 클래스가 다른 클래스를 포함하는 상위 개념일 때의 관계
연관 관계
- 한 클래스가 다른 클래스에서 제공하는 기능을 사용할 때 표시
의존 관계
- 클래스의 관계가 한 메소드를 실행하는 동안과 같이 매우 짧은 시간만 유지
실체화 관계
- 인터페이스를 구현받아 추상 메소드를 오버라이딩하는 것을 의미
집약 관계
- 전체 객체의 라이프타임과 부분 객체의 라이프타임은 독립적
합성 관계
- 부분 객체가 전체 객체에 속하는 관계로 긴밀한 필수적 관계
객체지향 프로그래밍(OOP)의 특성
- 상속성
- 추상화 (공통의 성질을 모아놓는 것)
- 캡슐화 (DTO, VO와 같은 정보은닉화)
- 다형성 (오버로딩과 오버라이딩)
소프트웨어 테스트 종류
단위 테스트
- 정적 테스트
- 동적 테스트
통합 테스트 (단위 모듈을 테스트해 통합하는 과정에서의 테스트)
- 상향식 테스트 (Driver 이용, 점진적)
- 하향식 테스트 (Stub 이용, 점진적)
- 빅뱅 테스트 (비점진적)
시스템 테스트
- 기능 테스트 (사용자가 요구하는 기능들이 동작하는지 테스트)
- 비기능 테스트 (기능테스트를 하면서 성능, 안정성, 보안, 효율성 등을 테스트)
인수 테스트
- 알파 테스트 (개발자와 사용자가 같이)
- 베타 테스트 (사용자만 테스트)
어플리케이션 테스트 유형 분류
프로그램 실행 여부
- 정적 테스트 (소스코드 내부를 확인)
- 동적 테스트 (소스코드의 수행 상태를 확인)
테스트 기법
- 화이트 박스 테스트 (내부 소스 코드를 테스트하는 기법으로 사용자가 들여다 볼 수 없는 구간의 코드 단위를 테스트)
- 블랙박스 테스트 (소프트웨어의 내부 구조나 작동 원리를 모르는 상태에서 소프트웨어의 동작을 검사하는 방법)
테스트에 대한 시각
- 검증 테스트
- 확인 테스트
블랙박스 기법 (명세 기반, 경험 기반 기법) - 완성 제품
- 테스트 대상의 내부구조를 참조하지 않고 테스트 베이스 그리고 개발자와 테스터, 사용자들의 경험을 바탕으로 기능적 혹은 비기능적 테스트 케이스를 도출하고 선택하는 방법
화이트박스 기법(구조 기반 기법) - 소스 대상
- 컴포넌트 또는 소프트웨어의 구조를 중심으로 테스트 케이스를 도출
테스트 설계의 근원을 기준
명세 기반 기법-블랙박스
- 테스트 대상에 관한 공식적/비공식적 모델(명세)사용
- 모델로부터 테스트 케이스를 체계적으로 도출
구조 기반 기법-화이트박스
- SW코드나 설계 등 구조를 보여주는 정보로 부터 테스트 케이스 도출
- 작성한 테스트 케이스로부터 커버리지를 측정할 수 있으며, 커버리지를 높이기 위해 테스트 케이스 쳬계적으로 추가할 수 있다.
경험 기반 기법-탐색적테스트
- 테스터, 개발자, 사용자 등의 지식 활용
- 발생 가능한 결함과 그 분포 등에 대한 지식 활용
- 문서화 필요하다.
블랙박스 테스트
| 유형 | 설명 |
| 동등 분할 기법 (Equivalence partitioning) |
입력 자료에 초점을 맞춰 테스트 케이스를 만들어 검사하는 방법 |
| 경계값 분석 (Boundary value analysis) |
동등 분할의 경계에서 결함이 발견될 확률이 높기 때문에 결함을 예방하기 위해 경계값까지 포함하여 테스트하는 기법 |
| 원인-효과 그래프 검사 (Cause-effect Graphing) |
입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석한 다음 효용성이 높은 테스트 케이스를 선정하여 검사하는 기법 |
| 오류 예측 검사 (Error Guessing) |
과거의 경험이나 테스터의 감각으로 테스트하는 기법 |
| 비교 검사 (Comparison Testing) |
여러 버전의 프로그램에 동일한 테스트 자료를 제공하여 동일한 결과가 출력되는지 테스트하는 기법 |
SSO (Single Sign-On)
- 여러 개의 사이트에서 한번의 로그인으로 여러가지 다른 사이트들을 자동적으로 접속하여 이용하는 방법
- 하나의 시스템에서 인증을 할 경우 타 시스템에서는 인증 정보가 있는지 확인하고 있으면, 로그인 처리를 하도록 하고, 없는 경우, 다시 통합 인증을 할 수 있도록 만드는 것을 의미
프로세스 스케줄링
| 선점형 기법 | 비 선점형 기법 |
| RR (Round Robin) | FCFS (First Come First Served) (== FIFO) |
| SRT (Shortest Remaining Time) | SJF (Shortest Job First) |
| MLQ (Multi-Level Queue 다단계 큐) | HRN (Highest Response ratio Next) |
| MLFQ (Multi-Level Feedback Queue 다단계 피드백 큐) | 우선순위 (Priority) |
| 기한부 (Deadline) |
| 선점형 기법 | 설명 |
| RR (Round Robin) | 시간 단위를(시분할) 정해서 프로세스를 순서대로 CPU를 할당하는 방식 |
| SRT (Shortest Remaining Time) | 선점형 스케줄링 기법으로 CPU 점유 시간이 가장 짧은 프로세스에 CPU를 먼저 할당하는 방식 (실행시간이 짧은 것을 먼저 할당하는 것) |
| MLQ (Multi-Level Queue) | 여러개의 큐를 두고 프로세스가 어디에 적합한지 판단하여 실행 |
| MLFQ (Multi-Level Feedback Queue) | MLQ + RR이 합쳐진 형태 |
| 비 선점형 기법 | 설명 |
| FCFS (First Come First Served) | 먼저 들어온 프로세스를 먼저 처리해주는 기법 특별한 경우 효율이 떨어질 수 있다 |
| SJF (Shortest Job First) | 비 선점형 스케줄링 기법으로 실행시간이 가장 짧은 프로세스에게 CPU를 할당하는 방식 (SRT와 동일) |
| HRN (Highest Response ratio Next) | SJF 기법의 약점인 긴 작업과 짧은 작업 사이의 불평등을 보완하기 위한 방법으로 시스템 응답시간이 커질수록 우선순위가 높아진다. (대기시간이 높은 것을 먼저 처리하는) (우선순위 : (대기시간 + 서비스(실행)시간) / 서비스(실행)시간 = 시스템 응답시간) |
| 우선순위 (Priority) | 프로세스마다 우선순위를 부여하여 높은 순서대로 작업을 처리하는 기법 |
| 기한부 (Deadline) | 시간을 정해놓고 시간안에 완료하지 못하면 다시 수행될 수 있는 위험성이 있는 스케줄링 기법 |
※ 기아상태(기아현상) 이란 ?
프로세스 실행의 무기한 연기로 인해 아무리 기다려도 자신의 차례가 돌아오지 않는 것을 말한다.
(실행시간이 짧은 것을 먼저 실행하는 SRT, SJF, MLQ, 우선순위 등의 기법이 발생할 수 있다)
이것을 방지하기 위해 만든 기법을 에이징 기법이라 한다. (MLFQ, HRN 등이 있다)

사회공학기법
- 기술적인 방법이 아닌 사람들간의 기본적인 신뢰를 기반으로 사람을 속여 비밀정보를 획득하는 기법
다크 데이터
- 기업이 정보를 수집한 후, 저장만 하고 분석에 활용하고 있지 않은 다량의 데이터
SIEM
- 네트워크 하드웨어 및 응용 프로그램에 의해 생성된 보안 경고의 실시간 분석을 제공한다.
- 빅데이터 수준의 데이터를 장시간 심층 분석한 인덱싱 기반이다.
- 주요기능은 데이터 통합, 상관관계, 알림, 대시보드
Trust Zone
- 독립적인 보안 구역을 따로 두어 중요한 정보를 보호하는 하드웨어 기반의 보안 기술
타이포스쿼팅 (Typosquatting)
- 사용자가 사이트의 URL 주소를 입력할 때 철자를 잘못 입력하거나 빠뜨리는 실수를 이용하여, 해커가 만들어 놓은 유사한 URL로 접속하도록 유도하는 공격
'기타 (Etc..) > 정보처리기사' 카테고리의 다른 글
| 정보처리기사 실기 - 정리 (4) (2021년 1회, 2회) (0) | 2023.07.21 |
|---|---|
| 정보처리기사 실기 - 정리 (3) (2021년 3회) (0) | 2023.07.19 |
| 정보처리기사 실기 - 정리 (2) (2022년 2회) (0) | 2023.07.18 |