Learn & Record

[시나공 정보처리기사 필기] 46. 객체 ~ 95. 단위 모듈 테스트의 개요 본문

Certificate/정보처리기사

[시나공 정보처리기사 필기] 46. 객체 ~ 95. 단위 모듈 테스트의 개요

Walker_ 2024. 2. 1. 23:42

2023-정보처리기사필기.pdf
2.57MB

 

46. 객체

 - 데이터와 데이터를 처리하는 함수를 묶어 놓은 하나의 소프트웨어 모듈

 - 데이터, 함수 등

 

47. 클래스

 - 공통된 속성과 연산을 갖는 객체의 집합으로, 객체의 일반적인 타입

 - 클래스에 속한 각각의 객체를 인스턴스라 하며, 새로운 객체를 생성하는 것을 인스턴스화 라고 한다.

 

48. 캡슐화

 - 데이터와 데이터를 처리하는 함수를 하나로 묶는 것을 의미한다.

 

49. 상속

 - 이미 정의된 상위클래스의 모든 속성과 연산을 하위 클래스가 물려받는 것이다.

 

50. 다형성

 - 객체가 연산을 수행하게 될 때 각각의 객체가 가지고 있는 고유한 방법으로 응답할 수 있는 능력

 

51. 연관성 

 - 두 개 이상의 객체들이 상호 참조하는 관계

 - 연관화, 분류화, 집단화, 일반화, 특수화/상세화

 

52. 객체지향 분석의 방법론

 - 럼바우 방법, 부치 방법, Jacobson 방법, Coad와 Yourdon 방법, wirfs-Brock 방법

 

53. 럼바우의 분석 기법

 - 모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 기법, 객체 모델링 기법이라고도 한다.

 - 순서 [객체 모델링 -> 동적 모델링 -> 기능 모델링]

 

54. 객체지향 설계 원칙

 - 단일책임원칙, 개방-폐쇄 원칙, 리스코프 치환 원칙, 인터페이스 분리 원칙, 의존 역전 원칙

 

55. 결합도

 - 모듈 간에 상호 의존하는 정도 또는 두 모듈 사이의 연관 관계 의미

 - 자료 결합도 < 스탬프 결합도 < 제어 결합도 < 외부 결합도 < 공통 결합도 < 내용 결합도

 

56. 응집도

 - 모듈이 독립적인 기능으로 정의되어 있는 정도

 - 기능적응집도 > 순차적응집도 > 교환적응집도 > 절차적응집도 > 시간적응집도 > 논리적응집도 > 우연적응집도

 

57. 팬인 / 팬아웃

 - 팬인 : 어떤 모듈을 제어하는 모듈의 수

 - 팬아웃 : 어떤 모듈에 의해 제어되는 모듈의 수

 

58. N-S차트

 - 논리의 기술에 중점을 둔 도형을 이요한 방법 (박스 다이어그램 또는 chapin chart 라고도 함)

 

59. 공통 모듈의 개요

 - 여러 프로그램에서 공통적으로 사용할 수 있는 모듈을 의미

 - 정확성, 명확성, 완전성, 일관성, 추적성

 

60. 재사용

 - 비용과 개발 시간을 절약하기 위해 기존 기능 파악 및 재구성하여 새롭게 적용 및 최적화 시키는 작업

 

61. 효과적인 모듈 설계 방안

 - 결합도 줄이고, 응집도 높힌다. 

 

62. 코드의 개요

 - 특정 자료의 추출을 쉽게 하기 위해서 사용하는 기호

 - 식별, 분류, 배열, 표준화, 간소화 기능

 

63.  코드의 종류

 - 순차 코드, 블록 코드, 10진 코드, 그룹 분류 코드, 연상 코드, 표의 숫자 코드, 합성 코드

 

64. 디자인 패턴의 개요

 - 각 모듈의 세분화된 역할이나 모듈들 간의 인터페이스나 구조 설계 할 때 참조할 수 있는 해결 방식 또는 예제

 

65. 디자인 패턴 사용의 장단점

 - 객체지향 외에 다른 기반 개발에는 적합하지 않다

 

66. 생성패턴 

 - 추상팩토리, 빌더, 팩토리메소드, 프로토타입, 싱글톤

 

67. 구조패턴

 - 어댑터, 브리지, 컴포지트, 데코레이터, 퍼싸드, 플라이웨이트, 프록시

 

68. 행위패턴 

 - 책임연쇄, 커맨드, 인터프리터, 반복자, 중재자, 메멘토, 옵서버, 상태, 전략, 템플릿메소드, 방문자

 

69. 요구사항 검증 방법

 - 요구사항 검토, 프로토타이핑, 테스트 설계, CASE 도구 활용

 

70. 시스템 연계 기술

 - DB Link, API/Open API, 연계솔루션, Socket, Web Service

 

71. 연계 매커니즘 구성요소

 - 송신 시스템, 수신 시스템, 연계 서버

 

72. 미들서버

 - DB, RPC, MOM, TP-Monitor, ORB, WAS


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

 

73. 자료 구조의 분류

 - 선형구조 : 배열, 선형리스트(연속, 연결), 스택, 큐, 테크

 - 비선형구조 : 트리, 그래프

 

74. 선형 리스트 

 - 연속 리스트 : 배열과 같이 연속되는 기억장소에 저장되는 자료구조이다.

 - 연결 리스트 : 자료들을 임의의 기억공간에 기억시키되, 포인터 부분을 이용해 서로 연결시킨 자료 구조

 

75. 스택 

 - 리스트의 한쪽 끝으로만 자료의 삽입, 삭제 작업의 자료 구조

 - 후입선출 : 나중 삽입 자료, 가장 먼저 삭제

 

76. 큐

 - 한쪽에서 삽입작업이 이루어지고, 한쪽에서 삭제가 되는 자료 구조

 - 선입선출 : 먼저 삽입 자료, 가장 먼저 삭제

 

77. 방향/무방향 그래프의 최대 간선 수

 - n개의 정점으로 구성된 무방향 그래프에서 최대 간선 수 = n(n-1)/2

 - 방향 그래프에서 최대 간선 수 = n(n-1)

 

78. 트리의 개요

 - 정점과 선분을 이용하여 사이클을 이루지 않도록 구성한 그래프의 특수한 형태

 

79. 트리의 운행법

 - Preorder 운행 [ Root > Left > Right ], Inorder 운행 [Left > Root > Right ], Postorder 운행 [Left > Right > Root ]

 

80. 수식의 표기법

 - 전위 표기법 [ 연산자 > Left > Right, +AB ] 중위 표기법 [ Left > 연산자 > Right , A+B] 후위 표기법 [Left > Right > 연산자, AB+]

 

81. 삽입 정렬

 - 앞에서 부터 뒤에 자리와 비교하며 정렬

 

82. 선택 정렬

 - 첫번째자리 수 모두 비교 > 두번째 자리 수 모두 비교 ..  모두 비교

 

83. 버블 정렬

 - 삽입 + 선택 정렬

 

84. 퀵 정렬

 - 키를 기준으로 작은 값은 왼쪽에, 큰 값은 오른쪽 서브파일로 분해시키는 방식 정렬

 

85. 힙 정렬

 - 전이진 트리를 이용한 정렬

 

86. 2-Way 합병 정렬

 - 이미 정렬된 두 개의 파일을 한 개의 파일로 합병하는 정렬 방식

 

87. 이분 검색 

 - 전체 파일을 두 개의 서브파일로 분리해 가면서 Key 레코드를 검색하는 방식

 

88. 해싱 함수

 - 제산법, 제곱법, 폴딩법, 기수 변환법, 대수적 코딩법, 숫자 분석법, 무작위법

 

89. DBMS

 - 사용자와 데이터베이스 사이에서 편의를 제공하는 소프트웨어

 - 필수 기능 : 정의, 조작, 제어

 

90. DBMS의 장단점

 - 장점 : 논리적, 독립성, 무결성, 일관성, 실시간 처리, 표준화 등

 - 단점 : 전문가 부족, 전산화 비용, 과부화, 복잡 등

 

91. 스키마 

 - 데이터베이스의 구조와 제약 조건에 전반적인 명세를 기술한 메타데이터 집합

 

92. 절차형 SQL의 테스트와 디버깅

 - 기능의 적합성 여부를 검증하고, 실행을 통해 결과를 확인하는 과정 수행

 

93. 단위 모듈의 개요

 - 여러 동작 중 한가지 동작을 수행하는 기능을 모듈로 구현한 것

 

94. IPC

 - 모듈 간 통신 방식을 구현하기 위해 사용되는 대표적인 프로그래밍 인터페이스 집합

 - 대표 메소드 : Shared Memory, Socket, Semaphores, Pipes&named Pipes, Message Queueing

 

 95. 단위 모듈 테스트의 개요

 - 단위 기능을 구현하는 모듈이 정해진 기능을 정확히 수행하는지 검증하는 것