반응형
기출문제는 첨부파일을 확인하세요.
1. 소프트웨어 설계 및 개발
소프트웨어 아키텍처 설계 시 고려사항
- 개발자와 사용자 간 원활한 의사소통을 지원해야 한다.
- 이해하기 쉽고 명확하게 작성되어야 한다.
- 품질 속성을 반영하여 이해 관계자의 요구사항을 충족해야 한다.
- 재사용성을 고려하여 설계해야 한다.
객체지향 개념
- 캡슐화(Encapsulation): 데이터와 메서드를 하나의 단위로 묶어 외부로부터 보호.
- 상속(Inheritance): 상위 클래스의 속성과 메서드를 하위 클래스가 물려받음.
- 다형성(Polymorphism): 같은 이름의 메서드가 서로 다른 동작을 수행할 수 있음.
2. 운영체제 및 네트워크
운영체제의 기능
- 프로세스 관리: 실행 중인 프로그램(프로세스)을 관리하고 스케줄링.
- 메모리 관리: 가상 메모리, 페이징 기법 등을 활용하여 효율적인 자원 관리.
- 파일 시스템 관리: 트리 구조 및 비순환 그래프 디렉터리 구조 등 다양한 구조 제공.
- 입출력 관리: 디바이스 드라이버를 통해 하드웨어와 소프트웨어 간의 연결 역할.
CPU 스케줄링 알고리즘
- FCFS(First Come First Serve): 먼저 도착한 프로세스를 먼저 실행.
- SJF(Shortest Job First): 실행 시간이 짧은 프로세스부터 실행.
- RR(Round Robin): 일정한 시간 할당을 통해 프로세스를 순환하며 실행.
메모리 관리
- 페이징(Paging): 고정된 크기의 페이지 단위로 메모리를 관리.
- 세그멘테이션(Segmentation): 논리적인 크기로 세그먼트를 나누어 관리.
네트워크 및 보안
- OSI 7계층: 물리, 데이터 링크, 네트워크, 전송, 세션, 표현, 응용 계층으로 구성.
- TCP/IP 프로토콜: 네트워크의 기본 통신 규약, 신뢰성 있는 데이터 전송 보장.
- 보안 위협: 스니핑, 스푸핑, DDoS 공격 등이 있으며, 방화벽 및 암호화를 통해 대응 가능.
3. 데이터베이스 관리
데이터베이스 개념
- DBMS(Database Management System): 데이터 저장, 검색, 갱신, 삭제를 관리하는 소프트웨어.
- 정규화(Normalization): 1NF, 2NF, 3NF, BCNF 등의 과정을 통해 데이터 중복 제거 및 무결성 보장.
SQL 기본 명령어
- DML(Data Manipulation Language): SELECT, INSERT, UPDATE, DELETE.
- DDL(Data Definition Language): CREATE, ALTER, DROP.
- DCL(Data Control Language): GRANT, REVOKE.
트랜잭션(Transaction) 개념
- 원자성(Atomicity): 트랜잭션이 모두 수행되거나 모두 취소되는 성질.
- 일관성(Consistency): 트랜잭션 수행 후 데이터베이스 상태가 일관성을 유지해야 함.
- 격리성(Isolation): 동시에 여러 트랜잭션이 수행될 때 서로 영향을 주지 않아야 함.
- 지속성(Durability): 트랜잭션이 성공적으로 수행되면 결과가 영구적으로 반영됨.
4. 알고리즘 및 자료구조
자료구조
- 배열(Array): 동일한 타입의 데이터를 연속적으로 저장.
- 연결 리스트(Linked List): 동적으로 할당된 노드들의 집합.
- 스택(Stack): 후입선출(LIFO) 방식.
- 큐(Queue): 선입선출(FIFO) 방식.
- 트리(Tree): 계층적인 데이터 구조.
- 그래프(Graph): 정점과 간선으로 구성된 네트워크 구조.
정렬 알고리즘
- 버블 정렬(Bubble Sort): 인접한 두 개의 데이터를 비교하여 정렬.
- 선택 정렬(Selection Sort): 가장 작은 값을 찾아서 정렬.
- 삽입 정렬(Insertion Sort): 적절한 위치에 삽입하여 정렬.
- 퀵 정렬(Quick Sort): 피벗을 기준으로 데이터를 분할하여 정렬.
- 병합 정렬(Merge Sort): 데이터를 절반으로 나누어 정렬 후 병합.
탐색 알고리즘
- 순차 탐색(Sequential Search): 처음부터 끝까지 하나씩 탐색.
- 이진 탐색(Binary Search): 정렬된 데이터에서 반씩 줄여가며 탐색.
5. 소프트웨어 테스트 및 품질 관리
소프트웨어 테스트
- 화이트박스 테스트(White Box Test): 내부 코드 분석을 기반으로 테스트.
- 블랙박스 테스트(Black Box Test): 입력과 출력 값만을 확인하여 테스트.
- 단위 테스트(Unit Test): 개별 모듈을 독립적으로 검증.
- 통합 테스트(Integration Test): 모듈 간의 결합을 검증.
소프트웨어 품질 모델
- ISO/IEC 9126 품질 기준:
- 기능성(Functionality): 올바르게 동작하는가?
- 신뢰성(Reliability): 장애 없이 작동하는가?
- 사용성(Usability): 사용하기 쉬운가?
- 이식성(Portability): 다른 환경에서도 실행 가능한가?
6. 최신 IT 기술
클라우드 컴퓨팅
- IaaS(Infrastructure as a Service): 서버, 스토리지 등의 인프라를 제공.
- PaaS(Platform as a Service): 개발 환경 및 도구를 제공.
- SaaS(Software as a Service): 웹 기반 소프트웨어를 제공.
가상화 기술
- 하이퍼바이저(Hypervisor): 가상 머신을 실행하는 소프트웨어.
- 컨테이너(Containerization): 도커(Docker) 등의 기술을 활용한 경량 가상화.
빅데이터 및 인공지능
- 빅데이터(Big Data): 대량의 데이터를 저장, 분석하여 가치를 추출하는 기술.
- 머신러닝(Machine Learning): 데이터를 기반으로 학습하고 패턴을 인식하는 알고리즘.
반응형
'IT > 정보처리산업기사' 카테고리의 다른 글
(2024년) 기출문제 2 - 정보처리 산업기사 (0) | 2025.03.14 |
---|---|
(2024년) 기출문제 1 - 정보처리 산업기사 (0) | 2025.03.14 |
(2023년) 기출문제 3 - 정보처리 산업기사 (0) | 2025.03.14 |
(2023년) 기출문제 2 - 정보처리 산업기사 (0) | 2025.03.14 |
(2023년) 핵심요약 - 정보처리 산업기사 (0) | 2025.03.14 |