개발자 '쑥말고인절미'

[정보처리기사] 1 ~ 5과목 키워드 정리(시나공_2024 핵심요약(상세 116 page) 본문

STUDY/정보처리기사

[정보처리기사] 1 ~ 5과목 키워드 정리(시나공_2024 핵심요약(상세 116 page)

쑥말고인절미 2024. 2. 20. 16:31

교재 : 시나공_2024 핵심요약(상세 116 page)

1과목 소프트웨어 설계 1 ~72 / 72키워드
2과목 소프트웨어 개발 73 ~ 162 / 90키워드
3과목 데이터베이스 구축 163 ~ 231 / 69키워드
4과목 프로그래밍 언어 활용 232 ~ 314 / 83키워드
5과목 정보시스템 구축 관리 315 ~ 376 / 62키워드


             : 2023년도 출제개념


1과목 소프트웨어 설계 1 ~ 72 / 72 키워드
  • 001 소프트웨어 생명 주기 (Software Life Cycle)
  • 002 소프트웨어 공학
  • 003 폭포수 모형(Waterfall Model)
  • 004 나선형 모형(Spiral Model, 점진적 모형)
  • 005 애자일 모형
  • 006 애자일 개발 4가지 핵심 가치
  • 007 스크럼의 개요
  • 008 스크럼 개발 프로세스
  • 009 XP(eXtreme Programming)
  • 010 XP의 주요 실천 방법(Practice)
  • 011 현행 시스템 파악
  • 012 운영체제(OS, Operating System)
  • 013 데이터베이스 관리 시스템(DBMS)
  • 014 웹 애플리케이션 서버(WAS)
  • 015 요구사항 정의
  • 016 요구사항 개발 프로세스
  • 017 요구사항 명세 기법
  • 018 요구사항 분석의 개요
  • 019 자료 흐름도(DFD)
  • 020 자료 사전
  • 021 요구사항 분석을 위한 CASE(자동화 도구)
  • 022 HIPO
  • 023 UML(Unified Modeling Language)의 개요
  • 024 관계(Relationships)
  • 025 다이어그램(Diagram)
  • 026 스테레오 타입(Stereotype)
  • 027 유스케이스(Use Case) 다이어그램
  • 028 클래스(Class) 다이어그램
  • 029 순차(Sequence) 다이어그램
  • 030 사용자 인터페이스(UI)의 특징
  • 031 사용자 인터페이스의 구분
  • 032 사용자 인터페이스의 기본 원칙
  • 033 사용자 인터페이스의 설계 지침
  • 034 사용자 인터페이스 개발 시스템의 기능
  • 035 UI 설계 도구
  • 036 품질 요구사항
  • 037 UI 요소
  • 038 상위 설계와 하위 설계
  • 039 소프트웨어 아키텍처 설계의 기본 원리
  • 040 소프트웨어 아키텍처의 품질 속성
  • 041 소프트웨어 아키텍처의 설계 과정
  • 042 협약(Contract)에 의한 설계
  • 043 파이프-필터 패턴(Pipe-Filter Pattern)
  • 044 모델-뷰-컨트롤러 패턴(Model-View-Controller Pattern)
  • 045 기타 패턴
  • 046 객체(Object)
  • 047 클래스(Class)
  • 048 캡슐화(Encapsulation)
  • 049 상속(Ingeritance)
  • 050 다형성(Polymorphism)
  • 051 연관성(Relationship)
  • 052 객체지향 분석의 방법론
  • 053 럼바우(Rumbaugh)의 분석 기법
  • 054 객체지향 설계 원칙
  • 055 결합도(Coupling)
  • 056 응집도(Cohesion)
  • 057 팬인(Fan-In) / 팬아웃(Fan-Out)
  • 058 N-S 차트(Nassi-Schneiderman Chart)
  • 059 공통 모듈의 개요
  • 060 재사용(Reuse)
  • 061 효과적인 모듈 설계 방안
  • 062 코드(Code)의 개요
  • 063 코드의 종류
  • 064 디자인 패턴(Design Pattern)의 개요
  • 065 디자인 패턴 사용의 장단점
  • 066 생성 패턴(Creational Pattern)
  • 067 구조 패턴(Structural Pattern)
  • 068 행위 패턴(Behavioral Pattern)
  • 069 요구사항 검증 방법
  • 070 시스템 연계 기술
  • 071 연계 매커니즘 구성요소
  • 072 미들웨어(Middleware)

 


2과목 소프트웨어 개발 73 ~ 162 / 90 키워드
  • 073 자료 구조의 분류
  • 074 선형 리스트(Linear List)
  • 075 스택(Stack)
  • 076 큐(Queue)
  • 077 방향/무방향 그래프의 최대 간선 수
  • 078 트리의 개요
  • 079 트리의 운행법
  • 080 수식의 표기법
  • 081 삽입 정렬(Insertion Sort)
  • 082 선택 정렬(Selection Sort)
  • 083 버블 정렬(Bubble Sort)
  • 084 퀵 정렬(Quick Sort)
  • 085 힙 정렬(Heap Sort)
  • 086 2-Way 합병 정렬(Merge Sort)
  • 087 이분 검색
  • 088 해싱 함수(Hashing Function)
  • 089 DBMS(DataBase Management System; 데이터베이스 관리 시스템)
  • 090 DBMS의 장단점
  • 091 스키마
  • 092 절차형 SQL의 테스트와 디버깅
  • 093 단위 모듈(Unit Module)의 개요
  • 094 IPC(Inter-Process Communication)
  • 095 단위 모듈 테스트의 개요
  • 096 테스트 케이스(Test Case)
  • 097 통합 개발 환경(IDE; Integrated Development Environment)
  • 098 빌드 도구
  • 099 소프트웨어 패키징의 개요
  • 100 패키징 시 고려사항
  • 101 릴리즈 노트(Release Note)의 개요
  • 102 릴리즈 노트 초기 버전 작성 시 고려사항
  • 103 디지털 저작권 관리(DRM; Digital Right Management)
  • 104 디지털 저작권 관리(DRM)의 구성 요소
  • 105 디지털 저작권 관리(DRM)의 기술 요소
  • 106 소프트웨어 설치 매뉴얼의 개요
  • 107 소프트웨어 설치 매뉴얼의 기본 사항
  • 108 소프트웨어 사용자 매뉴얼의 개요
  • 109 소프트웨어 패키징의 형상 관리
  • 110 형상 관리의 중요성
  • 111 형상 관리 기능
  • 112 소프트웨어 버전 등록 관련 주요 기능
  • 113 공유 폴더 방식
  • 114 클라이언트/서버 방식
  • 115 분산 저장소 방식
  • 116 Subversion(서브버전, SVN)
  • 117 Git(깃)
  • 118 빌드 자동화 도구의 개념
  • 119 Jenkins
  • 120 Gradle
  • 121 애플리케이션 테스트의 개념
  • 122 애플리케이션 테스트 관련 용어
  • 123 프로그램 실행 여부에 따른 테스트
  • 124 테스트 기반(Test Bases)에 따른 테스트
  • 125 시각에 따른 테스트
  • 126 목적에 따른 테스트
  • 127 화이트박스 테스트(White Box Test)
  • 128 화이트박스 테스트의 종류
  • 129 화이트박스 테스트의 검증 기준
  • 130 블랙박스 테스트(Black Box Test)
  • 131 블랙박스 테스트의 종류
  • 132 개발 단계에 따른 애플리케이션 테스트
  • 133 단위 테스트(Unit Test)
  • 134 통합 테스트(Integration Test)
  • 135 시스템 테스트(System Test)
  • 136 인수 테스트(Acceptance Test)
  • 137 하향식 통합 테스트(Top Down Integration Test)
  • 138 상향식 통합 테스트(Botton Up Integration Test)
  • 139 테스트 드라이버와 테스트 스텁의 차이점
  • 140 회귀 테스팅(Regression Testing)
  • 141 애플리케이션 테스트 프로세스
  • 142 테스트 케이스(Test Case)
  • 143 테스트 시나리오(Test Scenario)
  • 144 테스트 오라클(Test Oracle)
  • 145 테스트 오라클의 종류
  • 146 테스트 자동화 도구
  • 147 테스트 하네스(Test Harmess)의 구성 요소
  • 148 결합(Fault)
  • 149 애플리케이션 성능 분석
  • 150 빅오 표기법(Big-O Notation)
  • 151 순환 복잡도
  • 152 소스 코드 최적화
  • 153 소스 코드 품질 분석 도구
  • 154 EAI(Enterprise Application Integration)
  • 155 ESB(Enterprise Service Bus)
  • 156 JSON(JavaScript Object Notation)
  • 157 XML(eXtensible Markup Language)
  • 158 AJAX(Asychronous JavaScript and XML)
  • 159 인터페이스 보안 기능 적용
  • 160 데이터 무결성 검사 도구
  • 161 인터페이스 구현 검증 도구
  • 162 APM(Application Performance Management/Monitoring)

 


3과목 데이터베이스 구축 163 ~ 231 / 69키워드
  • 163 데이터베이스 설계 순서
  • 164 개념적 설계(정보 모델링, 개념화)
  • 165 논리적 설계(데이터 모델링)
  • 166 물리적 설계(데이터 구조화)
  • 167 데이터 모델
  • 168 E-R 모델의 개요
  • 169 E-R 다이어그램
  • 170 관계형 데이터 모델
  • 171 관계형 데이터베이스의 Relation 구조
  • 172 릴레이션의 특징
  • 173 키(Key)
  • 174 무결성(Integrity)
  • 175 관계대수의 개요
  • 176 순수 관계 연산자
  • 177 일반 집합 연산자
  • 178 관계해석(Relational Calculus)
  • 179 정규화의 개요
  • 180 정규화의 목적
  • 181 이상(Anomaly)의 개념 및 종류
  • 182 정규화 과정
  • 183 이행적 종속 / 함수적 종속
  • 184 반정규화의 개념
  • 185 반정규화 방법
  • 186 시스템 카탈로그
  • 187 트랜잭션
  • 188 트랜잭션의 상태
  • 189 트랜잭션의 특정
  • 190 CRUD 분석
  • 191 인덱스(Index)
  • 192 인덱스의 종류
  • 193 뷰(View)
  • 194 파티션(Partition)
  • 195 분산 데이터베이스 정의 및 구성 요소
  • 196 분산 데이터베이스의 목표
  • 197 분산 데이터베이스의 장단점
  • 198 암호화(Encryption)
  • 199 접근통제 기술
  • 200 강제 접근통제(MAC)의 보안 모델
  • 201 DAS(Direct Attached Storage)
  • 202 NAS(Network Attached Storage)
  • 203 SAN(Storage Area Network)
  • 204 DDL(Data Define Language, 데이터 정의어)
  • 205 DML(Data Manipulation Language, 데이터 조작어)
  • 206 DCL(Data Control Language, 데이터 제어어)
  • 207 CREATE TABLE
  • 208 ALTER TABLE
  • 209 DROP
  • 210 DCL(Data Control Language, 데이터 제어어)의 개념
  • 211 GRANT / REVOKE
  • 212 COMMIT
  • 213 ROLLBACK
  • 214 삽입문(INSERT INTO~)
  • 215 삭제문(DELETE FROM~)
  • 216 갱신문(UPDATE~ SET~)
  • 217 데이터 조작문의 네 가지 유형
  • 218 SELECT 1 - 일반 형식
  • 219 조건 연산자 / 연산자 우선순위
  • 220 하위 질의
  • 221 SELECT 2 - 일반 형식
  • 222 그룹 함수
  • 223 집합 연산자를 이용한 통합 질의
  • 224 INNER JOIN
  • 225 트리거(Trigger)의 개요
  • 226 DBMS 접속 기술
  • 227 ORM(Object-Relational Mapping)의 개요
  • 228 쿼리 성능 최적화의 개요
  • 229 데이터 전환의 정의
  • 230 데이터 검증
  • 231 오류 데이터 정제

 


4과목 프로그래밍 언어 활용 232 ~ 314 / 83 키워드
  • 232 배치 프로그램
  • 233 C/C++의 데이터 타입 크기 및 기억 범위
  • 234 C언어의 구조체
  • 235 JAVA의 데이터 타입 크기 및 기억 범위
  • 236 Python의 시퀀스 자료형
  • 237 변수의 개요 / 변수명 작성 규칙
  • 238 가비지 콜렉터(Garbage Collector)
  • 239 산술 연산자
  • 240 관계 연산자
  • 241 비트 연산자
  • 242 논리 연산자
  • 243 대입 연산자
  • 244 조건 연산자
  • 245 연산자 우선순위
  • 246 scanf() 함수
  • 247 서식 문자열
  • 248 printf() 함수
  • 249 주요 제어문자
  • 250 JAVA에서의 표준 출력
  • 251 단순 if문
  • 252 다중 if문
  • 253 switch문
  • 254 for문
  • 255 while문
  • 256 do~while문
  • 257 break, continue
  • 258 배열
  • 259 2차원 배열
  • 260 배열의 초기화
  • 261 배열 형태의 문자열 변수
  • 262 포인터와 포인터 변수
  • 263 포인터와 배열
  • 264 Python의 기본 문법
  • 265 Python의 데이터 입출력 함수
  • 266 입력 값의 형변환(Casting)
  • 267 리스트(List)
  • 268 딕셔너리(Dictionary)
  • 269 슬라이스(Slice)
  • 270 Python - if문
  • 271 Python - for문
  • 272 Python - While문
  • 273 Python - 클래스
  • 274 클래스 없는 메소드의 사용
  • 275 절차적 프로그래밍 언어의 종류
  • 276 객체지향 프로그래밍 언어의 종류
  • 277 스크립트 언어의 종류
  • 278 선언형 프로그래밍 언어의 종류
  • 279 라이브러리
  • 280 C언어의 대표적인 표준 라이브러리
  • 281 예외 처리
  • 282 운영체제의 정의 및 목적
  • 283 운영체제의 구성
  • 284 운영체제의 기능
  • 285 Windows
  • 286 UNIX의 개요 및 특징
  • 287 UNIX 시스템의 구성
  • 288 파일 디스크립터(File Descriptor)
  • 289 기억장치 관리 - 배치(Placement) 전략
  • 290 페이징(Paging) 기법
  • 291 세그멘테이션(Segmentation) 기법
  • 292 페이지 교체 알고리즘
  • 293 페이지 크기
  • 294 Locality
  • 295 워킹 셋(Working Set)
  • 296 스래싱(Thrashing)
  • 297 프로세스(Process)의 정의
  • 298 PCB
  • 299 프로세스 상태 전이
  • 300 프로세스 상태 전이 관련 용어
  • 301 스레드(Thread)
  • 302 주요 스케줄링 알고리즘
  • 303 UNIX / LINUX의 주요 환경 변수
  • 304 UNIX / LINUX 기본 명령어
  • 305 IP 주소(Internet Protocol Address)
  • 306 서브네팅(Subnetting)
  • 307 IPv6(Inernet Protocol version 6)
  • 308 IPv6의 구성
  • 309 OSI 참조 모델
  • 310 네트워크 관련 장비
  • 311 응용 계층의 주요 프로토콜
  • 312 전송 계층의 주요 프로토콜
  • 313 인터넷 계층의 주요 프로토콜
  • 314 네트워크 엑세스 계층의 주요 프로토콜

 


5과목 정보시스템 구축 관리 315 ~ 376 / 62 키워드
  • 315 구조적 방법론
  • 316 정보공학 방법론
  • 317 컴포넌트 기반 방법론
  • 318 소프트웨어 재사용의 개요
  • 319 소프트웨어 재사용 방법
  • 320 소프트웨어 재공학의 개요
  • 321 CASE의 개요
  • 322 LOC(원시 코드 라인 수, source Line Of Code) 기법
  • 323 수학적 산정 기법의 개요
  • 324 COCOMO 모형 개요
  • 325 COCOMO의 소프트웨어 개발 유형
  • 326 Putnam 모형
  • 327 기능 점수(FP) 모형
  • 328 PERT
  • 329 CPM
  • 330 간트 차트
  • 331 프로젝트 관리(Project Management)
  • 332 ISO/IEC 12207
  • 333 CMMI(Capability Maturity Model Integration)
  • 334 SPICE(Software Process Improvement and Capability dEtermination)
  • 335 소프트웨어 개발 방법론 테일러링
  • 336 소프트웨어 개발 프레임워크
  • 337 프레임워크의 특성
  • 338 스프트웨어 정의 기술(SDE, SDx; Software-Defined Everything)
  • 339 네트워크 관련 신기술
  • 340 네트워크(Network) 설치 구조
  • 341 VLAN(Virtual Local Area Network)
  • 342 LAN의 표준안
  • 343 CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)
  • 344 경로 제어 프로토콜(Routing Protocol)
  • 345 흐름 제어(Flow Control)
  • 346 SW 관련 용어
  • 347 보안 관련 용어
  • 348 HW 관련 신기술
  • 349 Secure OS의 개요
  • 350 Secure OS의 보안 기능
  • 351 DB 관련 신기술
  • 352 회복(Recovery)
  • 352 병행제어(Concurrency Control)
  • 354 교착상태
  • 355 Secure SDLC의 개요
  • 356 보안 요소
  • 357 세션 하이재킹(Session Hijacking)
  • 358 입력 데이터 검증 및 표현의 보안 약점
  • 359 보안 기능의 보안 약점
  • 360 스택 가드(Stack Guard)
  • 361 접근 지정자(접근 제어자)
  • 362 개인키 암호화(Private Key Encryption) 기법
  • 363 공개키 암호화(Public Key Encryption) 기법
  • 364 양방향 알고리즘 종류
  • 365 해시(Hash)
  • 366 솔트(Salt)
  • 367 DDoS(Distributed Denial of Service, 분산 서비스 거부) 공격
  • 368 네트워크 침해 공격 관련 용어
  • 369 블루투스(Bluetooth) 관련 공격
  • 370 정보 보안 침해 공격 관련 용어
  • 371 인증(Authentication)
  • 372 관리적/물리적/기술적 보안
  • 373 리눅스의 커널 로그
  • 374 침입 탐지 시스템(IDS; Intrusion Detection System)
  • 375 VPN(Virtual Private Network, 가상 사설 통신망)
  • 376 SSH(Secure SHell, 시큐어 셸)