출처 : https://cafe.naver.com/soojebi, https://gm-yeom.tistory.com/19
1. XML(eXtensible Markup Language)
: HTML과 SGML의 단점을 보완한 특수한 목적을 갖는 마크업 언어이다.
2. WSDL(Web Services Description Language)
: 웹 서비스에 대한 상세 정보가 기술된 XML 형식의 언어이다.
3. 데이터 마이닝(Data Mining)
: 대규모 데이터 안에서 통계적 규칙이나 데이터 간의 관계, 패턴, 추세를 발견하고, 이를 의미 있는 정보로 변환하여 기업 의사결정에 활용하는 기술이다.
4. 인스펙션(Inspection)
: 저작자 외의 다른 전문가 또는 팀이 검사하여 문제를 식별하고 올바른 해결을 찾아내는 형식적, 공식적 검토 기법이다.
5. 워크스루(Walkthrough)
: 검토 자료를 회의 전에 배포하여 사전에 검토를 진행한 후, 짧은 시간 동안 회의를 통해 코드의 오류를 검출하고 문서화하는 비공식적 기법이다.
6. ESB(Enterprise Service Bus)
: 서로 다른 플랫폼 및 애플리케이션 간을 연계해서 관리, 운영할 수 있도록 서비스 중심의 통합을 지향하는 기술이다.
7. 정규화(Normalization)
: 관계형 데이터베이스 설계에서 중복을 최소화하여 이상 현상을 방지하는 데이터 모델링 기법이다.
8. 티어드롭(Teardrop)
: IP 패킷의 재조합 과정에서 잘못된 Fragment Offset 정보로 인해 수신 시스템에 문제를 일으키는 Dos 공격이다.
9. 로킹(Locking) 기법
: 하나의 트랜잭션이 데이터를 액세스하는 동안 다른 트랜잭션이 그 데이터 항목을 액세스할 수 없도록 제어하는 기법이다.
10. 병행 제어(Concurrency Control)
: 동시에 여러 트랜잭션을 수행할 때, 데이터베이스의 일관성 유지를 위해 트랜잭션 간 상호작용을 제어하는 기법이다.
11. 살충제 패러독스(Pesticide Paradox)
: 동일한 테스트 케이스로 반복적인 테스트를 수행하면 더 이상 결함을 발견할 수 없다는 테스트의 원리이다.
12. 트랜잭션(Transaction)
: 하나의 논리적 기능을 수행하기 위한 작업의 기본 단위이자 한꺼번에 모두 수행되어야 할 일련의 연산이다.
13. 테일러링(Tailoring)
: 소프트웨어 개발 프로세스, 기법, 산출물 등을 비즈니스적으로 또는 기술적인 요구에 맞게 최적화하는 과정 및 방법론이다.
14. 시맨틱 웹(Semantic Web)
: 온톨로지를 활용하여 서비스를 기술하고, 이를 자동화된 기계가 처리하도록 하는 지능형 웹이다.
15. 트리거(Trigger)
: 데이터 변경 이벤트 발생 시 DBMS에서 자동적으로 실행되도록 구현된 프로그램이다.
16. 프로시저(Procedure)
: 일련의 SQL 쿼리의 집합으로 마치 하나의 함수처럼 쿼리의 집합을 실행하여 데이터를 조작하는 프로그램이다.
17. CSRF(Cross-Site Request Forgery)
: 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격이다.
18. 파티셔닝(Partitioning)
: 대용량의 데이터베이스를 파티션이라는 보다 작은 단위로 분할함으로써 관리 용이성, 성능 향상, 가용성 등을 용이하게 하는 기술이다.
19. 테스트 오라클(Test Oracle)
: 테스트 수행 결과가 참인지 거짓인지 판단하기 위해 미리 정의된 참 값을 대입하여 비교하는 기법이다.
20. 동등 분할 테스트(Equivalence Partitioning Test)
: 입력 데이터의 영역을 유사한 도메인별로 유효값/무효값을 그룹핑하여 대표값을 테스트 케이스로 도출하여 테스트하는 기법이다.
21. NoSQL(Not Only SQL)
: 전통적인 RDBMS와 다른 DBMS를 지칭하기 위한 용어로 데이터 저장에 고정된 테이블 스키마가 필요하지 않고 조인 연산을 사용할 수 없으며, 수평적으로 확장이 가능한 DBMS이다.
22. VPN(Virtual Private Network)
: 인터넷과 같은 공중망에서 마치 사설망과 같은 서비스를 제공하는 가상의 네트워크이다.
23. REST(Representational State Transfer)
: 웹과 같은 분산 하이퍼미디어 환경에서 자원의 존재/상태 정보를 표준화된 HTTP 메서드로 주고받는 웹 아키텍처이다.
24. Alien Code
: 배드 코드의 유형으로 아주 오래되거나 참고문서 또는 개발자가 없어서 유지보수 작업이 어려운 응용프로그램의 소스코드이다.
25. 시스템 카탈로그(System Catalog)
: 데이터베이스에 저장되어 있는 모든 데이터 개체들에 관한 정보나 명세에 대한 정보가 수록되어 있는 테이블들의 집합체이다.
26. 스머프(Smurf) 공격
: 출발지 주소를 공격 대상의 IP로 설정하여 네트워크 전체에 ICMP Echo 패킷을 직접 브로드캐스팅하여 타켓 시스템을 마비시키는 공격기법이다.
27.
알파 테스트
: 선택된 사용자가 개발자 환경에서 통제된 상태로 개발자와 함께 수행하는 인수 테스트이다.
베타 테스트
: 실제 환경에서 일정 수의 사용자에게 대상 소프트웨어를 사용하게 하고 피드백을 받는 인수 테스트이다.
28. XSS [↔ 17. CSRF]
: 검증되지 않은 외부 입력 데이터가 포함된 웹페이지가 전송되는 경우, 사용자가 해당 웹페이지를 열람함으로써 웹페이지에 포함된 부적절한 스크립트가 실행되는 공격이다.
29.
IPSec(IP Security)
: IP 계층에서 무결성과 인증을 보장하는 인증헤더와 기밀성을 보장하는 암호화를 이용하여 양 종단 간 구간에 보안 서비스를 제공하는 터널링 프로토콜이다.
SSL(Secure Sockets Layer)/TLS(Transport Layer Security)
: 전송 계층과 응용 계층 사이에서 클라이언트와 서버 간의 웹 데이터 암호화, 상호 인증 및 전송 시 데이터 무결성을 보장하는 보안 프로토콜이다.
30.
타임스탬프 오더링(Timestamp Ordering)
: 타임스탬프를 트랜잭션에 부여하는 것으로, 트랜잭션 간의 순서를 미리 선택하고 동시성 제어의 기준으로 사용하는 기법이다.
낙관적 검증(Validation)
: 트랜잭션을 수행하는 동안 어떠한 검사도 하지 않고, 트랜잭션 종료 시 일괄적으로 검증을 수행하여 데이터베이스에 반영하는 기법이다.
31.
옵티마이저(Optimizer)
: SQL을 수행할 최적의 처리경로를 생성해 주는 DBMS 내부의 핵심엔진이다.
보안 운영체제(Secure OS)
: 커널에 보안 기능 및 참조 모니터를 추가하여 운영체제의 보안상 결함으로 인해 발생 가능한 각종 해킹으로부터 시스템을 보호하기 위한 운영체제이다.
32.
SDN(Software Defined Network)
: 오픈 API 기반으로 컨트롤 플레인과 데이터 플레인을 분리하여 네트워크 트래픽을 중앙 집중적으로 관리하는 소프트웨어 기반의 네트워크 기술이다.
NFV(Network Function Virtualization)
: 범용 하드웨어에 가상화 기술을 적용하여 네트워크 기능을 가상 기능으로 모듈화하고, 필요한 곳에 기능을 제공하는 네트워크 가상화 기술이다.
33.
BCP(Business Continuity Planning)
: 각종 재해, 장애, 재난으로부터 위기 관리를 기반으로 재해 복구, 업무 복구 및 재개, 비상 계획 등을 통해 비즈니스 연속성을 보장하는 체계이다.
RTO(Recovery Time Objective)
: 업무 중단 시점부터 업무가 복구되어 다시 가동될 때까지의 시간이다.
RPO(Recovery Point Objective)
: 업무 중단 시점부터 데이터가 복구되어 다시 정상 가동될 때까지의 데이터 손실 허용 시점이다.
BIA(Business Impact Analysis)
: 장애나 재해로 운영상의 손실을 입을 것을 가정하여 시간 흐름에 따른 영향도 및 손실 평가를 조사하는 BCP를 구축하기 위한 비즈니스 영향 분석이다.
DRS(Disaster Recovery System)
: 재해 복구 계획의 원활한 수행을 지원하기 위해 평상시에 확보하여 두는 인적, 물적 자원 및 이들에 대한 지속적인 관리 체계가 통합된 재해 복구 센터이다.
34.
결합도(Coupling)
: 외부 모듈과의 연관도 또는 모듈 간의 상호의존성을 나타내는 정도이다.
응집도(Cohesion)
: 모듈의 독립성을 나타내는 개념으로, 모듈 내부 구성요소 간의 연관 정도이다.
데이터 흐름도(Data Flow Diagram; DFD)
: 데이터가 각 프로세스를 따라 흐르면서 변환되는 모습을 나타낸 그림으로, 시스템 분석과 설계에서 유용하게 사용되는 다이어그램이다.
자료 사전(Data Dictionary; DD)
: 자료 요소, 자료 요소들의 집합, 자료의 흐름, 자료 저장소의 의미와 관계 등을 구체적으로 명시하는 사전이다.
HIPO(Hierarchy Input Process Output)
: 시스템의 분석 및 설계나 문서화를 할 때 사용되는 하향식 소프트웨어 개발을 위한 문서화 도구이다.
35. 고가용성(HA; High Availability)
: 정보시스템이 장애에 대응하여 긴 시간 동안 지속적으로 정상 운영이 가능한 성질이다.
36. tpmC(Transaction Processing Performance Council)
: 특정 서버에 대해 자체 기준으로 테스트를 수행하여 나온 결과 중 1분간 최대 처리건수를 나타낸 수치로, 가장 객관적으로 하드웨어 성능을 나타내는 지표로 사용된다.
37. 객체지향 설계 원칙(SOLID)
단일 책임의 원칙(SRP; Single Responsibility Principle)
: 하나의 클래스는 하나의 책임만을 가져야 한다.
개방-폐쇄 원칙(OCP; Open Closed Principle)
: 코드의 수정 없이 기능을 추가할 수 있어야 한다.
리스코프 치환 원칙(LSP; Liskov Substitution Principle)
: 자식 클래스는 언제든지 부모 클래스를 대체할 수 있어야 한다.
인터페이스 분리 원칙(ISP; Interface Segregation Principle)
: 자신이 사용하지 않는 인터페이스와는 의존 관계를 맺어도 영향을 받아서는 안된다.
의존 역전 원칙(DIP; Dependency Inversion Principle)
: 구체적인 클래스보다는 추상적인 클래스와 의존 관계를 맺어야 한다.
38. CRUD Matrix
: 프로세스와 데이터 사이의 관계 의존성을 CRUD(Create, Read, Update, Delete)로 표현한 매트릭스이다.
39. 인덱스(Index)
: 검색 연산의 최적화 및 테이블에 대한 동작 속도를 높이기 위해 데이터베이스 내 열(컬럼)에 대한 정보를 구성해놓은 자료구조이다.
40. 메타데이터(Metadata)
: 데이터 그 자체가 아닌 자료의 속성, 구조 등을 설명하는 데이터의 데이터이다.
41. 테스트 케이스(Test Case)
: 응용 소프트웨어가 사용자 요구사항을 준수하는지 확인하기 위해 설계된 입력값, 실행 조건, 기대 결과로 구성된 테스트 항목의 명세서이다.
42. 기능 점수(FP; Function Point) 방식
: 요구 기능을 증가시키는 인자별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능의 점수를 계산해서 비용을 산정하는 방식이다.
43. 소프트웨어 아키텍처(Software Architecture)
: 여러 가지 소프트웨어 구성요소와 외부에 드러나는 특성, 구성요소 간의 관계를 표현하는 시스템 구조로, 소프트웨어를 설계하고 전개하기 위한 지침과 원칙이다.
44. API(Application Programming Interface)
: 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스이다.
45. IGMP(Internet Group Management Protocol)
: 호스트 컴퓨터와 인접 라우터가 멀티캐스트 그룹 멤버십을 구성하는 데 사용하는 통신 프로토콜이다.
46. 오류-부재의 궤변(Absence of Error Fallacy)
: 요구사항을 충족시키지 못한다면, 결함이 없어도 품질이 높다고 볼 수 없는 소프트웨어 테스트 원리이다.
47. 슈퍼키(Super Key)
: 데이터베이스에서 릴레이션에 있는 모든 튜플에 대해 유일성은 만족시키지만, 최소성은 만족시키지 못하는 키이다.
48.
관계 대수
: 원하는 정보가 무엇인가를 정의하고, 원하는 정보를 유도하기 위한 과정을 정의한 절차적 정형 언어이다.
관계 해석
: 원하는 정보가 무엇인지만을 정의하는 비절차적 언어이다.
49. 맵리듀스(MapReduce)
: 구글에서 대용량 데이터를 분산 병렬 컴퓨팅에서 처리하기 위해 제작한 소프트웨어 프레임워크이다.
50. 그룹 함수(Group Function)
: 테이블의 전체 행을 하나 이상의 컬럼을 기준으로 컬럼값에 따라 그룹화하여 그룹별로 결과를 출력하는 함수이다.
51.
스레싱(Thrashing)
: 어떤 프로세스에 계속적으로 페이지 부재가 발생하여 프로세스의 실제 처리 시간보다 페이지 교체 시간이 더 많아지는 현상이다.
워킹 세트(Working Set)
: 프로세스가 많이 참조하는 페이지들의 집합을 주기억장치에 계속 상주하게 하여 빈번한 페이지 교체 현상을 줄이는 기법이다.
PFF
: 페이지 부재율의 상한과 하한을 정해서 직접적으로 페이지 부재율을 예측하고 조절하는 기법이다.
52. LoC(Lines of Code)
: 소프트웨어 각 기능의 원시 코드 라인 수의 낙관치, 중간치, 비관치를 측정하여 예측치를 구하고, 이를 이용해서 비용을 산정하는 비용산정 모델이다.
53. 은행가 알고리즘(Banker's Algorithm)
: 사전에 작업에 필요한 자원의 수를 제시하고, 안정 상태일 때만 자원을 프로세스에게 할당하는 교착상태 회피기법이다.
54. 링크 상태 알고리즘(Link State Algorithm)
: 다익스트라 알고리즘을 이용하여 링크 상태 정보를 모든 라우터에 전달해서 최단 경로 트리를 구성하는 라우팅 프로토콜 알고리즘이다.
55.
와이어 프레임(Wireframe)
: 이해관계자들과의 UI 화면 구성을 협의하거나, 서비스의 간략한 흐름을 공유하기 위해 화면 단위의 레이아웃을 설계하는 작업이다.
스토리보드(Storyboard)
: UI 화면 설계를 위해 정책, 프로세스, 콘텐츠의 구성 등 구축하는 서비스를 위한 대부분의 정보가 수록된 문서이다.
56. UML(Unified Modeling Language)
: 객체지향 소프트웨어 개발 과정에서 산출물을 명세화, 시각화, 문서화할 때 사용되는 모델링 기술과 방법론을 통합해서 만든 표준화된 범용 모델링 언어이다.
57. 드라이브 바이 다운로드(Drive By Download)
: 불특정 웹 서버와 웹 페이지에 악성 스크립트를 설치하고, 불특정 사용자 접속 시 사용자 동의 없이 프로그램이 실행되어 의도된 멀웨어 서버로 연결되어 사용자를 감염시키는 공격 기법이다.
58. 멀티캐스트 프로토콜(Multicast Protocol)
: 인터넷에서 같은 내용의 데이터를 여러 명의 특정한 그룹의 수신자들에게 동시 전송할 수 있는 프로토콜이다.
59. 제어 흐름 테스트(Control Flow Testing)
: 프로그램 제어 구조를 그래프 형태로 나타내어 내부 로직을 테스트하는 기법이다.
60. UDDI(Universal Description, Discovery and Integration) [← 2. WSDL]
: WSDL을 등록하고 검색하기 위한 저장소로 공개적으로 접근, 검색이 가능한 레지스트리이자 표준이다.
61. 애자일 방법론(Agile Development)
: 절차보다 사람이 중심이 되어 변화에 유연하고, 프로젝트의 생명주기 동안 반복적으로 시스템을 개발할 수 있는 신속 적응적 경량 개발 방법론이다.
62. 유스케이스 다이어그램(Usecase Diagram)
: 시스템이 제공하고 있는 기능 및 외부 요소를 유스케이스, 액터, 시스템 등을 활용하여 사용자의 관점에서 표현한 다이어그램이다.
63. RIP(Routing Information Protocol)
: AS 내에서 사용하는 거리 벡터 알고리즘에 기초하여 개발된 15홉 제한의 특징이 있는 내부 라우팅 프로토콜이다.
64. 랜섬웨어(Ransomware)
: 악성 코드의 한 종류로 감염된 시스템의 파일들을 암호화하여 복호화할 수 없도록 하고, 피해자로 하여금 암호화된 파일을 인질처럼 잡고 값을 요구하는 악성 소프트웨어이다.
65. SQL 힌트(HINT)
: SQL 문에 액세스 경로 및 조인 순서 등의 정보를 사전에 주어서 SQL 문 실행에 빠른 결과를 가져오는 효과를 만드는 기법이다.
66. 방화벽(Firewall)
: 미리 정의된 보안 규칙을 기반으로 외부의 불법 침입과 내부의 불법 정보 유출을 방지하고, 내/외부 네트워크의 상호 간 영향을 차단하기 위한 보안 시스템이다.
67. 스레드(Thread)
: 프로세스에서 실행 제어만 분리한 실행 단위로 프로세스보다 가볍고, 독립적으로 수행되는 흐름의 단위이다.
68. 델파이 기법(Delphi Method)
: 전문가의 경험적 지식을 통한 문제 해결 및 미래 예측을 위한 방법이다.
69. 객체지향
상속(Inheritance)
: 부모 클래스의 필드와 메소드를 자식 클래스에서 사용할 수 있게 하는 객체지향 기법이다. (JAVA : extends)
다형성(Polymorphism)
: 프로그래밍 언어의 각 요소들이 다양한 자료형에 속하는 것이 허가되는 성질이다.
클래스(Class)
: 객체지향 프로그래밍에서 특정 객체를 생성하기 위해 변수와 메소드를 정의하는 일종의 틀이다.
70. 브로드캐스트 프로토콜(Broadcast Protocol)
: 하나의 송신자가 같은 서브 네트워크 상의 모든 수신자에게 데이터를 전송하는 프로토콜이다.
71. 트로이 목마(Trojan Horses)
: 악성 루틴이 숨어있는 프로그램으로 겉보기에는 정상적인 프로그램으로 보이지만 실행하면 악성 코드를 실행하는 프로그램이다.
72. 코드 난독화(Code Obfuscation)
: 역공학을 통한 공격을 막기 위해 프로그램의 소스 코드를 알아보기 힘든 형태로 바꾸는 기술이다.
73. DHCP(Dynamic Host Configuration Protocol)
: TCP/IP 통신을 실행하기 위해 DHCP 서버를 사용하여 IP 주소 및 설정 정보를 클라이언트에게 동적으로 할당해주는 프로토콜이다.
74. NAT(Network Address Translation)
: 사설 네트워크에 속한 IP를 공인 IP 주소로 바꿔주는 네트워크 주소 변환 기술이다.
75. SAN(Storage Area Network)
: 광채널 스위치 및 멀티 프로토콜 기능을 활용하여 각기 다른 운영체제를 가진 여러 기종들이 네트워크 상에서 동일 저장장치의 데이터를 공유하게 함으로써, 여러 개의 저장장치나 백업 장비를 단일화시킨 시스템이다.
76. 형상 관리의 절차 [수제비 8-6]
형상 관리(Configuration Management)
: 소프트웨어의 SDLC 전 단계에서 소프트웨어의 변경을 통제하고 변경 요구를 제도적으로 수렴하는 일련의 활동이다.
형상 식별
: 형상 관리 대상을 정의 및 식별하는 활동으로 추적성 부여를 위해 ID와 관리번호를 부여한다.
형상 통제
: 형상 항목의 버전 관리를 위한 형상통제위원회를 운영하고, 베이스라인에 대한 관리 및 형상 통제를 수행한다.
형상 감사(Configuration Audit)
: 소프트웨어 베이스라인의 무결성을 평가하고, 베이스라인 변경 시 요구사항과 일치 여부를 검토한다. [수제비]
/ 형상 관리 계획대로 형상 관리가 진행되고 있는지, 형상 항목의 변경이 요구사항에 맞게 제대로 이루어졌는지 등을 살펴보는 활동이다. [약술형 뽀개기]
형상 기록
: 소프트웨어 형상 및 변경관리에 대한 각종 수행결과를 기록한다.
77. 오버라이딩
: 하위 클래스에서 상위 클래스의 메서드를 재정의할 수 있는 기능이다.
78. 캡슐화
: 객체지향 프로그래밍에서 객체의 데이터와 기능을 하나로 묶고, 외부에 노출되지 않도록 숨김 처리하는 것이다.
79. 커밋(COMMIT)
: 트랜잭션을 메모리에 영구적으로 저장하는 제어어이다.
80. 추상 클래스(Abstract Class) [수제비 2-34]
: 객체 인스턴스를 생성하지 않고 단지 유사 클래스들의 공통된 특징을 정의하고, 하나 이상의 추상 메서드와 일반 필드 및 일반 메서드를 포함하는 클래스이다. (UML : <<abstract>>)
81. 격리성(Isolation)
: 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우, 하나의 트랙잭션 실행 중 다른 트랜잭션이 연산의 중간 결과에 접근하거나 끼어들 수 없는 특성이다.
82. S-HTTP
: 클라이언트와 서버 간에 전송되는 모든 메시지를 각각 암호화하여 전송하고, 메시지 보호는 HTTP를 사용한 애플리케이션에 대해서만 가능하게 하는 보안 기술이다.
83. 클라우드 컴퓨팅(Cloud Computing)
: 인터넷을 통해 가상화된 컴퓨터 시스템 리소스를 제공하고, 정보를 클라우드에 연결된 다른 컴퓨터로 처리하는 기술이다.
84. 메타버스(Metaverse)
: 가상·초월과 세계·우주의 합성어이자 3차원 가상 세계를 뜻하는 용어로, 정치·경제·사회·문화의 전반적 측면에서 현실과 비현실 모두 공존할 수 있는 생활형·게임형 가상 세계라는 의미로 폭넓게 사용되고 있다.
'Note' 카테고리의 다른 글
[정보처리기사] 정보처리기사 디자인 패턴 및 예상문제 (0) | 2021.10.15 |
---|---|
[정보처리기사] 실기 예상문제 100제 (0) | 2021.10.15 |
[정보처리기사] 정보처리기사 실기 기출문제 오답노트 - 5 (0) | 2021.10.14 |
[정보처리기사] 정보처리기사 실기 기출문제 오답노트 - 4 (0) | 2021.10.14 |
[정보처리기사] 정보처리기사 실기 기출문제 오답노트 - 3 (0) | 2021.10.14 |