비전공 노베이스, 한 달 동안 시나공 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) : 컴포넌트의 퍼레이션 사용 전에 참이 되어야 함 |
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 |
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 모델
'정보처리기사' 카테고리의 다른 글
정보처리기사 실기 17-21년도 프로그래밍 문제 정리 (0) | 2021.05.07 |
---|---|
비전공자 2020 정보처리기사 4회 필기 합격 후기 (0) | 2020.10.09 |
정보처리기사 실기 2020년 제 1 · 2회 기출 (0) | 2020.10.05 |
정보처리기사 2020년 제 4회 필기 기출 오답정리 (0) | 2020.10.05 |
정보처리기사 2020 1·2차 통합 필기 시험 오답 노트 (0) | 2020.09.18 |