본문 바로가기
정보처리기사

2020 정보처리기사 3차 필기 복습 겸 정리

by mihsyeh 2020. 9. 16.

비전공 노베이스, 한 달 동안 시나공 3회독했지만

너무 오래 걸려 기출 많이 못 풀어보고 시험 본 뒤 그대로 삽 광탈함

 

느낀 점 ) 기출 많이 풀기, 생각보다 영문명을 많이 외워야 함

의외로 공부 못했어도 문제 읽다보면 눈칫껏 풀 수 있는 문제가 꽤 있음 하지만 난 틀림 ㅋ

 

오답 정리할 겸 제대로 외우려고 쓰는 글

 

2020년 정기 기사 3회 필기 - 정보처리기사 1교시 B형 답안

더보기
1 2 3 4 5 6 7 8 9 10
3 2 3 4 1 3 4 3 2 2
11 12 13 14 15 16 17 18 19 20
3 3 1 1 3 2 3 2 1 4
21 22 23 24 25 26 27 28 29 30
1 3 3 4 4 2 1 2 2 2
31 32 33 34 35 36 37 38 39 40
3 4 3 4 4 4 3 1 4 3
41 42 43 44 45 46 47 48 49 50
4 1 4 4 4 4 2 1 4 4
51 52 53 54 55 56 57 58 59 60
3 2 3 3 3 4 2 1 1 4
61 62 63 64 65 66 67 68 69 70
1 3 3 1 3 1 3 2 3 4
71 72 73 74 75 76 77 78 79 80
4 1 1 3 3 3 3 4 3 3
81 82 83 84 85 86 87 88 89 90
2 2 3 2 2 1 4 1 1 4
91 92 93 94 95 96 97 98 99 100
4 3 1 2 3 1 3 4 3 4

 


[ 1과목 소프트 웨어 설계 ]

1. UML 모델

일반화 (Generalization) 관계

차 : 일반적인 개념 (상위, 부모)

버스, 트럭, 택시 : 구체적인 개념 (하위, 자식)


2. 인터페이스 요구 사항 검토 방법

- 동료 검토 (Peer Review) : 요구 사항 명세서 작성자의 설명을 이해관계자들이 들으며 결함을 발견

- Inspection : 작성자 이외의 전문 검토 그룹이 요구 사항 명세서를 상세히 조사하여 결함 발견

- Work through : 검토 자료를 회의 전에 미리 배포하여 사전 검토 후 짧은 회의를 통해 결함 발견

 

/ Case 도구 : 일관성 분석을 통해 요구사항 변경사항의 추적, 분석, 관리, 표준 준수 여부 확인


3. 누구나 쉽게 이해하고 사용할 수 있어야 한다는 UI 설계 원칙

= 직관성

/ 유연성


4. UML 다이어그램

행위 다이어그램 (동작) 구조적 다이어그램 (정적)
Use case
Sequence
Activity
Communication
State (상태)
Interaction Overview (상호작용 개요)
Timing
Class
Object
Deployment (배치)
Component
Composite Structure (복합체 구조)
Package

5. 객체 지향에서 정보 은닉과 가장 밀접한 관계가 있는 것

= 캡슐화 ( Encapsulation)

 

/ Class, Method

/ Instance : 클래스에 속하는 객체


6. 객체지향 설계 원칙

ISP DIP LSP SRP OCP
인터페이스 분리 원칙 의존 역전 원칙 리스코프 치환 원칙 단일 책임 원칙 개방-폐쇄 원칙
사용하지 않는 인터페이스는 구현하지 않음 변화하기 어렵거나 거의 없는 것에 의존
인터페이스나 추상 클래스와 관계
자식 클래스는 언제나 부모 클래스를 대체할 수 있다는 원칙 모든 클래스는 각 하나의 책임만 가져야 하며 클래스는 그 책임을 완전히 캡슐화함 기존의 코드를 변경하지 않으면서 기능을 추가할 수 있도록 설계

7. 럼바우 (Rumbaugh)

- 객체지향 분석 방법론 중 하나

- 모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 기법

- 럼바우의 객체지향 분석 절차 : 객체 모형 > 동적 모형 > 기능 모형

객체 모델링 =정보모델링, 요구되는 객체를 찾아 관계를 규정하여 객체 다이어그램으로 표시
동적 모델링 객체의 흐름, 상태, 행위
기능 모델링 자료의 흐름을 중심으로 처리 과정 표현

8. 디자인 패턴

행위 패턴 구조 패턴 생성 패턴
Chain of Responsibillty
Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Abstract Factory
Builder
Factory Method
Prototype
Singleton

9. 객체 지향 소프트웨어 공학 특성

- 클래스 : 하나 이상의 유사한 객체들을 묶어서 하나의 공통된 특성을 표현한 것

/트랜잭션 : 데이터베이스 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위

또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미

/시퀀스

/서브 루틴


10. 자료 흐름도 구성요소

구성 요소 의미 표기법
Process 자료를 변환시키는 시스템의 처리 과정 둥근 원이나 사각
Data flow (자료 흐름) 자료의 이동, 연관관계 화살표
Date store (자료 저장소) 자료 저장소(파일,DB) 수평선 두줄
Terminator (단말) 외부 개체, 입력 데이터 생성, 출력 데이터 받음 직사각형

11. UML 시퀀스 다이어그램 구성 항목

- Life line, Messeage, Activation


12. 디자인 패턴 중 행위적 패턴

- 클래스나 객체들이 서로 상호작용 하는 방법, 책임 분배하는 방법을 정의하는 패턴

- 하나의 객체로 수행할 수 없는 작업을 여러 객체로 분배하면서 결함도를 최소화

Command 패턴 필요한 정보 저장, 로그에 남기는 패턴
Observer 패턴 객체들에게 변화된 객체의 상태를 전달
State (상태) 패턴 객체 상태에 따라 동일한 동작을 다르게 처리
Chain of Responsibility (책임 연쇄) 요청이 해결 될 때까지 고리를 따라 책임이 넘어감
Interpreter 언어에 문법 표현을 정의 SQL, 통신 프로토콜 개발 시 사용
Iterator (반복자) 동일한 인터페이스 사용
Mediator (중재자) 객체 간 복잡한 상호작용을 캡슐화하여 객체 정의
Memento 해당 시점의 상태로 돌릴 수 있는 기능 제공
Strategy (전략) 동일 계열 알고리즘을 개별적 캡슐화하여 상호교환 정의
Template Metod 상위 클래스에서 골격 정의, 하위 클래스에서 세부처리 구체화
Visitor 처리 기능 분리하여 별도의 클래스로 구성

13. 디자인 패턴 구성요소

- 패턴의 이름과 구분

- 문제 및 배경 : 패턴이 사용되는 분야, 배경

- 솔루션 : 패턴을 이루는 요소들, 관계, 협동과정

- 사례 : 적용 사례

- 결과 : 패턴의 이점과 영향

- 샘플 코드 : 예제 코드


14. 협약에 의한 설계 (Design by contract)

- 클래스 안에 있는 속성 값의 범위, 오퍼레이션의 파라미터 값 범위, 리턴 값의 범위 등 클래스의 개발자, 사용자, 확장자가 알아두어야 할 제약사항이 많음. 클래스에 대한 이러한 가정을 공유할 수 있도록 명세한 것.

1) 선행조건 (Precondition) : 컴포넌트의 퍼레이션 사용 전에 참이 되어야 함
2) 결과조건 (Postcondition) : 사용 후 만족되어야 함
3) 불변조건 (Invariant) : 오퍼레이션이 실행되는 동안 항상 만족되어야 함


15. 요구사항 분석 시 필요한 기술

- 청취와 인터뷰 질문 기술

- 분석과 중재기술

- 관찰 및 모델 작성 기술


16. 애자일 기법

- 고객의 요구사항 변화에 유연하게 대응하기 위해 일정한 개발 주기를 반복함

- 고객과의 소통(요구사항, 피드백)에 중점

애자일 개발 4가지 핵심 가치
1) 프로세스 도구 < 개인과 상호작용
2) 방대한 문서 < 실행되는 소프트웨어
3) 계약 협상 < 고객과 협업
4) 계획 < 변화에 반응

17. 자료 사전 표기법

= 정의 + 연결 ( ) 생략 [ | ] 선택 { } 반복 ** 설명

18. 미들웨어 솔루션의 유형 (Middle + Software = Middleware)

- OS가 제공하는 서비스 이외에 추가적인 서비스 제공

- 원활하게 데이터가 오갈 수 있도록 도와주는 중계자의 역할 수행

WAS (Web Applicaiton Server) 사용자의 요구에 따라 변하는 동적인 콘텐츠 처리
RPC (Remote Procedure Call) 원격 프로시저를 로컬 프로시저처럼 호출하는 방식
ORB (Object Request Broker) 객체 지향 미들웨어
DB 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어
MOM (Message Oriented Middleware) 메세지 기반의 비동기형 메세지를 전달하는 방식
TP-Monitor 항공기, 철도 예약 업무와 같은 온라인 트랜잭션 업무와, 빠른 응답 속도 유지

19. 코드의 기본 기능

- 식별기능, 분류기능, 배열기능


20. CASE 도구 (Computer Aided Software Engineering)

- 소프트웨어 개발 과정의 전체 또는 일부를 자동화하기 위한 도구

- 작업 과정 및 데이터 공유를 통해 작업자 간의 커뮤니케이션을 증대

- 소프트웨어 개발 기간을 단축하고 개발 비용 절감

- 소프트웨어 개발의 모든 단계에 걸친 표준화 확립

 


[ 2과목 소프트 웨어 개발 ]

 

21. Preoder 운행법 

Root > Left > Right 순으로 운행

 

/ Inorder : Left > Root > Right

/ Postorder : Left > Right > Root


22. 인터페이스 보안

-IPSec

-SSL

-S-HTTP

 

/ SMTP는 이메일을 보내기 이용되는 프로토콜 (간이 전자 우편 전송 프로토콜)


23. 제품 소프트웨어 형상 관리 역할


24. 제품 소프트웨어 패키징 도구 화용 시 고려사항

- 제품 소프트웨어의 종류에 적합한 암호와 알고리즘을 적용

- 다른 여러 콘텐츠 및 단말기 간 연동을 고려

- 사용자의 편의성을 위한 복합성 및 비효율성 문제 고려

- 내부 콘텐츠에 대한 보안 및 암호화 고려


25. 선택정렬

- 제자리 정렬 알고리즘의 하나로 가장 작은 값을 찾아 첫번째 값과 교환한 후 정렬된 값을 제외한 나머지 인덱스 중 가장 작은 값을 찾아 정렬되지 않은 인덱스 중 가장 처음 값과 교환해 나가는 방식

37, 14, 17, 40, 35


1회전 : 14, 37, 17, 40, 35

2회전 : 14, 17, 37, 40, 35

3회전 : 14, 17, 35, 40, 37

/버블정렬, 삽입정렬


26. 제어흐름 그래프 McCabe의 Cyelomatic (순환 복잡도) 수

V(G) = Edge - Node + 2
Edge (화살표) = 6
Node (원) = 4
6 - 4 + 2
= 4


27. 형상 관리 도구의 주요 기능

Check-In 체크아웃 한 파일 수정 완료 > 저장소 갱신
Check-Out 저장소에서 파일 받기
Commit 체크인 수행 시 이전 내용과의 충돌 알림
Import 처음 파일 복사
Repository 최신 버전 파일, 변경 내역 정보 저장
Update 저장소 최신 버전 = 내 작업 공간 동기화

 


28. Tree 

용어 의미
Node 트리의 기본 요소 A B C D E F G H I
Root Node  맨 위 노드 A
Degree  차수, 각 노드의 가지 수 A = 2, B = 3, C = 1, F = 2
Terminal Node 디그리가 0인 노드 D E G H I
Son Node 어떤 노드에 연결된 다음 레벨의 노드들 B의 Son Node : D E F
Parent Node 어떤 노드에 연결된 이전 레벨의 노드들 H, I의 부모 노드 : F
Brother Node 동일한 부모를 갖는 노드들 B의 형제 노드 : C
Tree의 Degree 노드들의 디그리 중 가장 많은 수 3개 (B)

 


29. 인수 테스트 Acceptance Test

- 사용자의 요구사항을 충족하는지에 중점

- 사용자 직접 테스트 > 문제가 없을 시 소프트웨어 인수 > 프로젝트 종료

사용자 인수 테스트 사용자가 시스템 사용의 적절성 여부 확인
운영상의 인수 테스트 시스템 인수 시 수행하는 테스트 기법
계약 인수 테스트 계약상의 인수.검수 조건 준수 여부 확인
규정 인수 테스트 SW가 정부 지침, 법규, 규정에 맞게 개발되었는지 확인
알파 테스트 사용자가 개발자 앞에서 테스트
베타 테스트 선정된 최종 사용자가 여러 사용자 앞에서 테스트

30. 클린 코드 작성 원칙

- 누구나 쉽게 이해하는 코드 작성

- 중복이 최소화된 코드 작성

- 다른 모듈에 미치는 영향 최소화

- 단순, 명료한 코드 작성


31. DRM(디지털 저작권 관리) 기술

콘텐츠 암호화 키 관리 식별 기술 암호화 파일 생성
정책 관리 크랙 방지 인증  저작권 표현

32. 소프트웨어 재공학 장점

- 위험부담 감소, 비용 절감, 시스템 명세의 오류억제


33. 소프트웨어 품질 목표

정확성 (Correctness) 사용자의 요구 기능을 충족시키는 정도
신뢰성 (Reliability) 정확하고 일관된 결과를 얻기 위해 요구된 기능을 오류 없이 수행하는 정도
효율성 (Efficiency) 요구되는 기능을 수행하기 위해 필요한 자원의 소요 정도, 자원의 낭비정도
무결성 (Integrity) 허용되지 않는 사용이나 자료의 변경을 제어하는 정도
사용용이성 (Usability) 사용에 필요한 노력을 최소화하고 쉽게 사용할 수 있는 정도 
적절한 사용자 인터페이스와 문서를 가지고 있는 정도
유지보수성 (Maintainability) 사용자의 기능 변경의 필요성을 만족하기 위하여 소프트웨어를 진화하는 것이 가능한 정도
유연성 (Flexibility) 소프트웨어를 얼마만큼 쉽게 수정할 수 있는가 하는 정도
시험역량 (Testability) 의도된 기능을 수행하도록 보장하기 위해 프로그램을 시험 할 수 있는 정도
이식성 (Portability) 다양한 하드웨어 환경에서도 운용 가능하도록 쉽게 수정 될 수 있는 정도
재사용성 (Reusability) 전체나 일부 소프트웨어를 다른 목적으로 사용 할 수 있는가 하는 정도
상호운용성 (Interoperability) 다른 소프트웨어와 정보를 교환할수 있는 정도

34. 소프트웨어 공학 기본 원칙

- 품질 높은 소프트웨어 상품 개발

- 지속적인 검증 시행

- 결과에 대한 명확한 기록 유지


35. AJAX

- 인터페이스 구현 시 사용하는 기술 중 JavaScript를 사용한 비동기 통신기술로 클라이언트와 서버 간 XML 데이터를 주고 받는 기술

 

/ Procedure

/ Trigger

/ Greedy


36. 블랙박스 테스트

특징 테스트 유형
- 소프트웨어가 수행할 특정 기능이 완전히 작동되는 것을 입증
- 사용자 요구사항 명세를 보면서 주로 구현된 기능을 테스트
- 입력 데이터가 블랙박스를 통과하여 출력될 때 결과물이 정확한지 검사함
= 기능테스트
동치분할검사 (동등 분할 기법)
경계값 분석
Cause-Effect Graphing Testing
Error Guessing
Comparison Testing

37. ISO/IEC 12119

패키지 소프트웨어의 일반적인 제품 품질 요구사항 및 테스트를 위한 국제 표준

/ISO/IEC 9126 : 소프트웨어 품질 특성 및 척도에 대한 표준화

/ISO/IEC 14598 : 소프트웨어 제품 평가 


38. 하향식 통합 테스트

하향식 통합 테스트 상향식 통합 테스트
상위 모듈 -> 하위모듈 방향
깊이 우선 통합법 / 넓이 우선 통합법
Stub으로 대체
하위 모듈 -> 상위 모듈 방향
Cluster 필요

39. 파티셔닝

- DB에서 파티션은 대용량의 테이블이나 인덱스를 작은 논리적 단위인 파티션으로 나누는 것

- 성능 저하 방지, 데이터 관리가 쉬워짐

- 물리 데이터 베이스

Range Partitioning (범위 분할) 지정한 열의 값을 기준으로 분할 (일별, 월별, 분기별)
Hash Partittioning (해시 분할) 해시 함수를 적용한 결과 값에 따라 분할
Composite Partitioning (조합 분할) 범위 분할 후 해시 분할 하는 방식

40. 알고리즘 설계 기법

Divide and Conquer (분할 정복)

- 어떤 문제를 해결하는 알고리즘에서 원래 문제를 성질이 똑같은 여러 개의 부분 문제로 나누어 해결하여 원래 문제의 해를 구하는 방식

Greedy

- 다음을 생각하지 않고 현재 단계에서 최선의 선택을 하는 알고리즘

Backtracking

- 가능한 모든 경우를 탐색하여 답을 찾아내는 알고리즘

 

/Static Block


[ 3과목 데이터 베이스 구축]

41. Deivision 연산 수행 결과

42. 정규화 작업


43. 분산 데이터 베이스의 투명성 (Transparency)

- Location Transparency 지역 투명성

- Replication Transparency 중복 투명성

- Failure Transparency 장애 투명성

- Concurrency Transparency 병행 투명성


44. 릴레이션 조작

45. 관계형 데이터 모델

- Relation 관계

- Attribute 속성

- tuple 기수 : relation에 속하는 각각의 행


46. SQL문에서 문법적 오류가 있는 부분 수정하기

(1) SELECT player_name, height
(2) FROM player
(3) WHERE team_id = 'korea'
(4) AND height BETWEEN 170 OR 180;
(1) Player_name, height 컬럼에서 검색하기
(2) Player 테이블 중
(3) Team_id가 'korea'이며
(4) height이 170과 180 사이인 튜플

(4) 170 OR 180을 170 AND 180으로 수정 (조건지정 방법 중 범위 지정)


47. 함수 종속의 추론 규칙

X→Y이고 Y→Z이면 X→Z이다.

= 이행 규칙


48. 관계 데이터 모델의 무결성 제약

- 개체 무결성 : 기본키 값의 속성 값이 null값이 아닌 원자 값을 갖 

- 참조 무결성

- 도메인 무결성


49. DCL (Data Control Language) 명령어

- COMMIT

- ROLLBACK

- SAVEPOINT

- GRANT, REVOKE

 

/SELECT는 DLM 명령어


50. 릴레이션 Relation

- tuple들의 삽입, 삭제 등의 작업으로 인해 Relation은 시간에 따라 변한다.

- 한 Relation에 포함된 tuple들은 모두 상이하다.

- Attribute는 논리적으로 쪼갤 수 없는 원자값으로 저장

- 한 Relation에 포함된 tuple 사이에는 순서가 없다.


51. 릴레이션 R의 모든 결정자가 후보키이면 그 릴레이션 R은 어떤 정규형에 속하는가?

= 보이스/코드 정규형


52. SQL

SELECT DISTINCT 학년 FROM R1;

DISTINCT : 중복된 튜플 중 첫번째만


53. DML (Data Manipulation Language) 명령어

- INSERT 삽입문

- UPDATE 갱신문

- DELETE 삭제문

 

/ALTER : DDL명령어


54. 정규화의 목적

- 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능

- 데이터 삽입시 릴레이션을 재구성할 필요성을 줄임

- 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생 방지 및 저장 공간 최소화

- 효과적인 검색 알고리즘 생성


55. 트랜잭션 특성 : ACID

- 데이터의 무결성을 보장해야 함

Atomicity (원자성) Commit, Rollback
Consistency (일관성) 고정요소의 상태는 트랜잭션 수행 전/후 같음
Isolation (독립성, 격리성, 순차성) 트랜잭션 실행 중 다른 트랜잭션이 끼어들 수 없음
Durability (영속성, 지속성) 완료된 트랜잭션 결과는 시스템이 고장나더라도 영구적 반영

56. 로킹

- 데이터 베이스, 파일, 레코드 등은 로킹 단위가 될 수 있음

- 로킹의 단위가 작아지면 로킹 오버헤드 증가

- 로킹의 단위가 커지면 데이터베이스 공유도 증가


57. 관계대수의 순수 관계 연산자

  연산 기호 의미
Select 시그마(σ)  
Division    
Project 파이(π)  
Join ▷◁  

/Cartesian Product : 곱집합

 


58. View의 장단점

장점 단점
- 논리적 데이터 독립성을 제공한다.
- 사용자 데이터 관리 용이
- 접근 제어를 통한 자동 보안 제공
- 동일 데이터 동시 여러 사용자 요구 지원
- 독립적인 인덱스를 가질 수 없다.
- 뷰의 정이 변경 불가능
- 뷰로 구성된 내용에 대한 제약

59. 데이터 베이스 회복 기법

- 즉각 갱신 기법 : 갱신한 모든 내용을 로그 (Log)에 보관


60. SQL의 집계 함수 (그룹 함수)

- 이미 기록된 정보를 모아서 계산하는 함수

COUNT 카운트, 데이터의 개수를 세는 집계 함수
DISTINCT를 사용하여 중복된 값 제외
SUM 수치 데이터 칼럼의 합계 출력
AVG 수치 데이터 칼럼의 평균 출력
MAX, MIN 수치 데이터 칼럼의 최대,최소값을 출력

[ 4과목 프로그래밍 언어 활용]

61. C 언어의 정수 자료형

62. C 프로그램 결과 값

63. Unix 명령어


64. OSI-7 Layer에서 링크의 설정과 유지 및 종료를 담당하며 노드 간의 오류제어와 흐름제어 기능을 수행하는 계층
= 데이터 링크 계층

OSI 참조 모델 (응표세전네데물)
- 하위계층 : 물리계층 → 데이터 링크 계층 → 네트워크 계층
- 상위 계층 : 전송 계층 → 세션 계층 →표현 계층 → 응용계층


65. 결합도 (자스제외공내)

- 두 모듈 간의 상호 의존도

- 결합도가 약할 수록 모듈의 독립성이 높아 품질이 좋음

결합도 낮음 ←         → 결합도 높음
Data Coupling
(료 결합도)
Stamp Coupling
(탬프 결합도)
Control Coupling
(어 결합도)
External Coupling
(부 결합도)
Common Coupling (통 결합도) Content Coupling
(용 결합도)

66. 서브네팅 IP주소

67. 소프트웨어 취약점


68. TCP 프로토콜

- 신뢰성 있는 연결 지향형 전달 서비스 (경로 확립, 메시지 전송 감독)

- 스트림 위주의 전달

- 순서, 오류, 흐름 제어 기능

- 패킷 분실, 손상, 지연 등이 발생할 때 투명성이 보장되는 통신 제공


69. 파이썬 변수 작성 규칙


70. 배치 프로그램 필수요소

자동화 심각한 오류 상황 외에는 사용자의 개입 없이 수행 되어야 함
안정성 / 신뢰성 오류가 발생하면 오류의 발생 위치, 시간 등을 추적 할 수 있어야 함
대용량 데이터 대용량 데이터의 처리가 가능해야 함
견고성 잘못된 데이터나 데이터 중복 등의 상황으로 중단 되는 일 없어야 함
성능 다른 응용 프로그램 수행을 방해하지 않고 지정된 시간 내에 완료 되어야 함

71. 응집도

절차적 응집도 (Procedural Cohesion) 모듈이 다수의 관련 기능을 가질 때 모듈 안의 구성 요소들이 그 기능을 순차적으로 수행할 경우의 응집도
기능적 응집도 (Functional Cohesion) 모듈 내부 모든 기능 요소가 단일 문제와 연관 되어 수행
논리적 응집도 (Logical Cohesion) 유사한 성격, 특정 형태로 분류되는 처리 요소들로 하나의 모듈이 형성
우연적 응집도 (Coincidental Cohesion) 서로 관련 없는 요소들로만 구성
순차 응집도(Sequential Cohesion) 모듈 내 하나의 활동에서 나온 출력 데이터를 다음 활동의 입력 데이터로 사용할 경우의 응집도

72. IPv6

- 128비트의 주소체계

- 멀티미디어의 실시간 처리 가능

- IPv4보다 보안성 강화

- 자동으로 네트워크 환경구성 가능


73. 자바 조건문 삼항 조건 연산자

if 조건문 int i = 7, j = 9;
int k;
if (i > j)
 k = i - j;
else
 k = i + j;
elsa 실행
삼항 조건 연산자 int i = 7, j = 9;
int k;
k = (i > j)?(i - j):(i + j);
거짓 실행

74. 파이썬 코드 출력


75. 효과적인 모듈 설계를 위한 유의사항

- 독립성이 높을 수록 모듈을 수정하더라도 다른 모듈들에게 영향이 거의 미치지 않으며 오류가 발생해도 쉽게 해결

- 모듈간의 결합도를 약하게, 응집도는 강하게, 모듈의 크기는 작게 만들면 독립성이 향상됨

- 유지보수가 용이해야 함

- 복잡도와 중복성을 줄이고 일관성 유지


76. HRN 방식의 스케줄링

- 비선점 스케줄링

- 짧은 작업을 우선으로 처리하는 SJF의 단점을 개선한 기법

- 각 작업의 우선순위를 정해 처리하는 스케줄링

- 오랫동안 대기하는 프로세스의 우선순위를 증가시키는 방법

- (대기시간+서비스 시간)/서비스 시간

작업 대기시간 서비스(실행)시간 계산 우선순위
A 5 20 (5+20)/20=1.25 4
B 40 20 (40+20)/20=3 2
C 15 45 (15+45)/45=1.333 3
D 20 2 (20+2)/2=11 1

77. 운영체제

- 다중 사용자와 다중 응용프로그램 환경 하에 자원의 현재 상태를 파악하고 자원 분배를 위한 스케줄링을 담당함

- CPU, 메모리 공간, 기억 장치, 입출력 장치 등의 자원 관리

- 입출력 장치와 사용자 프로그램 제어


78. 메모리 기법

- Best-fit 최적 적합 : 빈 영역 중 단편화를 가장 작게 남기는 공간

- Worst-fit 최악 적합 : 프로세스 보다 큰 메모리 공간 중 단편화를 가장 많이 남기는 공간

- First-fit 최초 적합: 빈 영역 중 첫 번째로 배치 시키는 공간

영역번호 메모리 크기 사용 여부 10K 프로그램 실행 했을 때
No.1 8K Free  
No.2 12K Free First fit, Best fit
No.3 10K In use  
No.4 20K In use  
No.5 16K Free Worst fit

79. Control Coupling 제어 결합도

- 어떤 모듈이 다른 모듈의 내부 논리 흐름을 제어하기 위해 제어 신호를 이용하여 통신 하는 경우

- 하위 모듈에서 상위 모듈로 제어 신호가 이동하여 상위 모듈에게 처리 명령을 내리는 권리 전도현상이 발생


80. Bash 쉘 스크립트


[ 5과목 정보시스템 구축관리 ]

81. 블록 암호화 방식

- DES, AES, SEED

/스트림 암호화 방식 - RC4, LFSR


82. Putnam 모형

- 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 가정하는 모형

- 개발 기간이 늘어날수록 프로젝트 적용 인원의 노력이 감소

- SLIM : Putnam 모형을 기초로 해서 만든 자동화 추정 도구


83. RIP (Routing Information Protocol)

- 거리 벡터 라우팅 프로토콜 / 내부 라우팅 프로토콜

- 최대 홉 카운트는 15이며 홉수가 16을 초과할 때는 통신할 수 없다.

- 최단경로탐색에는 Bellman-Ford 알고리즘 사용


84. 정보보안 3대요소

- 기밀성 (Confidentiality) : 허용된 사용자만 접근, 사용할 수 있도록 하는 것 (=비밀성)

- 무결성 (Integrity) : 정보가 제 3자에 의하여 변경되지않고 본래의 내용대로 유지하는 것

- 가용성 (Availability) : 허용된 사용자가 필요할때마다 이용할 수 있도록 하는 것


85. 나선형 모델의 주요활동 순서

- 계획 및 정의 →위험분석 → 공학적 개발 및 검증 → 고객 평가

 


86. 빅데이터 분석 기술

Data Mining 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관례를 규명하여 일정한 패턴을 찾아내는 기법

/Wm-Bus

/Digital Twin : 현실 속의 사물을 소프트웨어로 가상화한 모델인 SW 신기술. 다양한 상황을 모의실험하기 위한 용도

/Zigbee


87. Seven Touchpoint

- 실무적으로 검증된 개발보안 방법론 중 하나로써 SW 보안의 모범 사례를 SDLC에 통합한 방법론

/CLASP

- 소프트웨어 개발 생명주기 초기단계에 보안강화를 목적으로 하는 정형화된 프로세스

- 활동 중심, 역할 기반의 프로세스로 구성된 집합체로, 이미 운영중인 시스템에 적용하기 좋음


88. 폭포수 모형

- 소프트웨어 생명주기 모형 중 고전적 생명주기 모형

- 전 단계가 완료되어야만 다음 단계로 넘어갈 수 있는 선형 순차적 모델

- 타당성 검토 → 계획 → 요구사항 분석 → 구현 → 테스트 → 유지보수

 

/애자일 방법론

- 고객의 요구사항 변화에 유연하게 대응할 수 있도록 일정한 주기를 반복하며 개발 과정 진행하는 방법론

/컴포넌트 기반 방법론 (CBD)

- 컴포넌트 : 문서, 소스코드, 파일, 라이브러리를 모듈화한 자원

- 컴포넌트를 조합하여 하나의 새로운 애플리케이션을 만드는 방법론

- 재사용이 가능하여 시간, 노력 절감, 유지보수 비용 최소화, 생산성 및 품질 향상


89. 기능점수 (FP) 모형

- 알브레히트가 제안한 수학적 산정 기법 (상향식 비용 산정 기법)

- 소프트웨어의 기능을 증대시키는 요인별로 가중치 부여, 합산하여 총 기능 점수 산출

- 비용산정요인 : 명령어, 데이터 파일, 출력 보고서, 입력 양식, 필요한 외부 루틴과의 인터페이스


90. SW 신기술

Mashup 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어나 서비스, 데이터베이스 등을 만드는 기술로, 다수의 정보원이 제공하는 콘텐츠를 조합하여 하나의 서비스로 제공하는 웹/앱 서비스
Quantum Key Distribution (양자 키 분배)  양자통신을 위해 비밀키를 분배하여 관리하는 기술
DRM (Digital Rights Management) 인터넷이나 디지털 매체를 통해 유통되는 데이터의 저작권 보호를 위해 데이터의 안전한 배포를 활성화하거나 불법 배포 방지 하는 시스템
Grayware 사용자 입장에서는 유용할 수도, 악의적일 수도 있는 공유웨어

그 외 / AI, Neuralink, Deep Learning, Expert System, AR, Blockchain, DLT, Hash, PET, CC, PIA, RIA 등


91. RSA 공개키 암호

- 1978년 MIT의 3인이 공동 개발한 암호화 알고리즘을 사용하는 공개키 암호방식

- 큰 숫자를 소인수 분해하면 많은 시간이 소요되지만 소인수 분해의 결과를 알면 원래의 수는 곱셈으로 간단히 구함


92. 

93. LAN 네트워크 토폴로지

94. DDoS

95. CPM 네트워크


96. 소프트웨어 재사용 (Software Reuse)

-이미 개발되어 인정받은 소프트웨어의 전체 혹은 일부분을 다른 소프트웨어 개발이나 유지에 사용하는 것

-소프트웨어 개발의 품질과 생산성을 높이기 위한 방법

- 기존에 개발된 소프트웨어와 경험, 지식 등을 새로운 소프트웨어에 적용

합성 중심 (Composition based)
= 블록 구성 방법
전자 칩과 같은 소프트웨어 부품, 즉 블록(모듈)을 만들어서 끼워 맞추는 방법
구조 중심 (Generation based)
= 패턴 구성 방법
추상화 형태로 쓰여진 명세를 구체화하여 프로그램을 만드는 방법

 


97. 가상 모델


98. Mesh Network

- 모든 지점의 컴퓨터와 단말장치를 서로 연결한 형태의 네트워크

- 대규모 디바이스의 네트워크 생성에 최적화

- 차세대 이동통신, 홈네트워킹, 공공 안전 등 특수목적을 위한 방식의 네트워크 기술


99. 국제 표준

100. COCOMO 모델

댓글