정보처리기사 개념 정리
한국산업인력공단(Q-Net) · 개념 56개
소프트웨어 설계
요구사항 확인
- 정처기 첫걸음: 먼저 알아야 할 말정보처리기사는 소프트웨어를 만드는 전 과정을 묻는 시험이에요. 무엇을 만들지 정하고(요구사항), 어떻게 만들지…
- 소프트웨어 생명 주기 모델소프트웨어를 만드는 순서를 정해 둔 틀을 생명 주기 모델이라고 해요. 폭포수는 한 단계를 끝내야 다음으로 넘어가는…
- 애자일 방법론애자일은 '처음에 다 계획하지 말고, 짧게 만들어 보여 주고 고치기를 반복하자'는 개발 방식이에요. 2~4주 단위로 실제로…
- 요구사항 분석과 명세요구사항은 '이 프로그램이 무엇을 해야 하나'예요. 로그인, 결제처럼 하는 일은 기능 요구사항, 3초 안에 열려야 한다거나…
- UML 다이어그램UML은 소프트웨어 설계도를 그리는 공통 그림 문법이에요. 개발자끼리 같은 기호로 그리니 말이 잘 통해요. 그림은 크게 두…
화면·애플리케이션 설계
- UI 설계 원칙과 화면 설계UI는 사용자가 프로그램과 만나는 화면과 조작 방법이에요. 좋은 UI는 설명서 없이도 바로 알 수 있고(직관성), 원하는…
- 소프트웨어 아키텍처소프트웨어 아키텍처는 프로그램 전체의 큰 뼈대예요. 어떤 부분으로 나누고, 그 부분들이 어떻게 이어질지 정해요. 자주 쓰는…
- 객체지향 개념과 설계 원칙객체지향은 프로그램을 '물건(객체)'들의 모임으로 보는 방식이에요. 자동차 객체는 색깔·속도 같은 데이터와 달리기·멈추기…
- 모듈화: 결합도와 응집도프로그램을 기능 단위 조각(모듈)으로 나눌 때 좋은 기준이 두 가지 있어요. 결합도는 모듈끼리 얼마나 얽혀 있는지예요.…
- 디자인 패턴 (GoF)디자인 패턴은 개발자들이 자주 만나는 설계 문제에 대한 검증된 해법 모음이에요. GoF라 불리는 네 저자가 23개를…
인터페이스 설계
- 인터페이스 설계와 연계 기술회사 안의 여러 시스템(회계, 인사, 쇼핑몰)이 서로 데이터를 주고받으려면 연결 통로가 필요해요. 이 통로를 설계하는 게…
- 코드 설계회사에서 상품이나 거래처에 붙이는 번호 체계가 '코드'예요. 코드를 잘 설계하면 물건을 헷갈리지 않고(식별), 종류별로…
소프트웨어 개발
자료 구조와 알고리즘
- 자료 구조: 스택·큐·리스트·그래프자료 구조는 데이터를 담는 그릇의 모양이에요. 한 줄로 늘어선 선형 구조(배열, 리스트, 스택, 큐)와 가지를 치거나…
- 트리와 운행법, 수식 표기트리는 뿌리(루트)에서 가지가 뻗어 나가는 모양의 자료 구조예요. 자식이 최대 둘인 트리를 이진 트리라고 해요. 트리의…
- 정렬·검색과 시간 복잡도정렬은 데이터를 크기 순서로 줄 세우는 일이에요. 방법마다 속도가 달라요. 삽입·선택·버블 정렬은 이해하기 쉽지만 데이터가…
통합 구현과 패키징
- 패키징과 형상 관리다 만든 프로그램을 사용자에게 건네려면 설치하기 좋게 묶어야 해요. 이걸 패키징이라 해요. 불법 복제를 막으려고…
- 소프트웨어 품질 특성과 표준좋은 소프트웨어인지 따질 때 쓰는 잣대가 품질 특성이에요. '잘 돌아가나(기능성)', '고장 안 나나(신뢰성)', '쓰기…
애플리케이션 테스트
- 테스트 원리와 분류테스트는 프로그램의 결함을 찾는 일이에요. 그런데 아무리 테스트해도 '결함이 하나도 없다'는 걸 증명할 수는 없어요.…
- 화이트박스·블랙박스 테스트프로그램 속을 들여다보며 테스트하면 화이트박스, 속은 모르는 채 입력과 출력만 보고 테스트하면 블랙박스예요. 화이트박스는…
- 테스트 레벨과 통합 테스트테스트는 작은 것부터 큰 것으로 올라가요. 모듈 하나를 시험하는 단위 테스트, 모듈을 이어 붙여 시험하는 통합 테스트,…
- 코드 품질과 성능 개선코드는 동작만 하면 끝이 아니라 다른 사람이 읽고 고치기 쉬워야 해요. 그래서 코드가 얼마나 복잡한지 숫자로 재는 방법이…
데이터베이스 구축
데이터베이스 설계
- 데이터베이스 설계 단계와 스키마데이터베이스는 여러 사람이 함께 쓰려고 모아 둔 데이터예요. 설계는 '무엇을 담을지'(요구 분석)에서 시작해 '개념도를…
- E-R 모델과 관계 데이터 모델관계형 데이터베이스는 데이터를 표(릴레이션)로 담아요. 표의 가로줄 하나가 튜플(행), 세로 칸 하나가 속성(열)이에요.…
- 관계 대수와 관계 해석관계 대수는 표를 다루는 계산법이에요. 조건에 맞는 행만 고르는 셀렉트(σ), 원하는 열만 뽑는 프로젝트(π), 두 표를…
- 정규화와 이상 현상한 표에 이것저것 다 넣으면 같은 정보가 여러 번 들어가요. 그러면 하나를 고칠 때 다른 줄을 빠뜨리거나, 지우다가 필요한…
SQL 응용
물리 DB와 데이터베이스 활용
- 인덱스·뷰·파티션책 뒤의 찾아보기처럼, 인덱스는 데이터를 빨리 찾게 해 주는 목록이에요. 대신 데이터를 넣고 고칠 때마다 인덱스도 고쳐야…
- 분산 DB와 데이터 분석데이터베이스를 여러 지역 서버에 나눠 두고도 하나처럼 쓰는 게 분산 데이터베이스예요. 사용자는 데이터가 어디 있는지 몰라도…
프로그래밍 언어 활용
프로그래밍 언어
- C 언어 기초: 연산자와 제어문4과목에는 짧은 코드를 보고 출력값을 맞히는 문제가 나와요. 가장 중요한 건 값이 어떻게 바뀌는지 종이에 적어 가며…
- C 배열·문자열·포인터배열은 같은 종류의 값을 줄지어 담는 상자 묶음이고, 첫 칸 번호는 0이에요. 포인터는 값이 아니라 '값이 있는 주소'를…
- Java 클래스·상속·다형성Java 코드 문제는 주로 상속과 오버라이딩을 물어요. 자식 객체를 부모 타입 변수에 담아도, 메서드를 부르면 자식이 다시…
- Python 자료형과 문법Python은 들여쓰기로 블록을 나누는 간결한 언어예요. 시험에는 리스트를 자르는 슬라이싱과 리스트 메서드가 자주 나와요.…
- 언어의 분류와 예외 처리프로그래밍 언어는 만드는 방식에 따라 나뉘어요. 순서대로 명령을 적는 절차적 언어(C), 객체로 만드는 객체지향…
운영체제와 네트워크 기초
- 운영체제와 프로세스운영체제는 컴퓨터의 관리자예요. CPU, 메모리, 파일 같은 자원을 프로그램들에 나눠 주고 사용자가 편하게 쓰게 해 줘요.…
- CPU 스케줄링CPU는 하나인데 일하려는 프로세스는 여럿이라 순서를 정해야 해요. 이걸 스케줄링이라 해요. 온 순서대로(FCFS), 짧은…
- 교착 상태교착 상태는 두 프로세스가 서로 상대가 가진 자원을 기다리며 꼼짝 못 하는 상태예요. 좁은 골목에서 차 두 대가 마주 보고…
- 기억장치 관리와 페이지 교체메모리는 한정돼 있어서 운영체제가 프로그램을 어디에 둘지, 꽉 차면 무엇을 빼낼지 정해야 해요. 빈자리를 고르는 방법으로…
- OSI 7계층과 프로토콜컴퓨터끼리 통신하는 과정을 일곱 층으로 나눈 게 OSI 7계층이에요. 아래에서부터 전기 신호(물리), 이웃끼리 전달(데이터…
- IP 주소와 서브네팅IPv4 주소는 192.168.1.10처럼 0~255 숫자 네 개(32비트)예요. 앞부분은 어느 네트워크인지, 뒷부분은 그…
정보시스템 구축 관리
개발 방법론과 프로젝트 관리
- 개발 방법론과 비용 산정개발 방법론은 소프트웨어를 만드는 '공식 레시피'예요. 기능을 위에서 아래로 쪼개는 구조적 방법, 데이터 중심의 정보공학,…
- 일정 관리와 프로세스 품질프로젝트 일정은 작업들의 순서와 기간을 그림으로 그려 관리해요. 작업을 막대로 늘어놓은 간트 차트, 작업 순서를 화살표…
IT 신기술과 시스템 구축
소프트웨어 개발 보안
- 시큐어 코딩과 보안 약점시큐어 코딩은 해킹당하지 않도록 처음부터 안전하게 코드를 짜는 거예요. 가장 많이 당하는 건 사용자 입력을 그대로 믿는…
- 암호 알고리즘암호화는 남이 못 읽게 데이터를 바꾸는 거예요. 잠그는 열쇠와 여는 열쇠가 같으면 대칭 키(빠르지만 열쇠를 안전하게 건네기…
- 인증과 접근 통제인증은 '당신이 누구인지' 확인하는 거고, 접근 통제는 '무엇을 할 수 있는지' 정하는 거예요. 인증에는 아는…
- 공격 기법과 보안 솔루션공격 기법 이름을 주고 설명을 고르는 문제가 매번 나와요. 서버에 요청을 퍼부어 마비시키는 서비스 거부(DoS), 그걸…
실기 필답형
실기 준비와 코드 읽기
실기 SQL과 용어 쓰기