본문 바로가기

Tech Stack/정보처리기사

정보처리기사 필기 소프트웨어개발 정리

2-18

 

02 선형 비선형

선형 = 리스트 스택 큐 데크

비선형 = 트리 그래프

 

07 스택 자료삭제 알고리즘

삽입 Overflow

삭제 Underflow

 

10 정점(노드)

 

노드의 개수 5개. 최대 간선 수는?

 

5(5-1) = 20

 

중위순회 = Left Root Right

 

 

무방향 그래프는

n(n-1)/2

 

15 전위순회

root 좌 우

 

16 전위식을 후위식으로 표현

-/*A+BCDE

ABC+*D/E-

 

prefix = 전위식

 

postfix = 후위식

좌우root

 

18. 최악의 경우 검색 효율이 가장 나쁜 트리구조

 

트리의 경우 노드 왼쪽이나 오른쪽 한 곳만 노드가 존재하게 될 경우 효율이 매우 나쁨

AVL, 2-3, 레드 블랙 트리를 통해 전체트리의 균형을 맞춰주지만 이진탐색 트리는 균형을 맞추어주지 않음. 최악의 경우 이진탐색 트리의 검색 효율이 가장 나쁘다

 

2-30

06 소프트웨어 재 공학

Analysis = 기존 소프트웨어를 이해하고 재공학 대상을 선정

Restructuring = 재구조, 상대적으로 같은 추상적 수준에서 하나의 표현을 다른형태로 바꾸는 작업

ReverseEngineering = 기존 소프트웨어를 분석하여 설계도를 추출하거나 다시 만듦

Migration = 소프트웨어 재공학의 주요활동중 기존 시스템을 새로운 기술 또는 하드웨어 환경에서 사용 할 수 있도록 변환하는 작업

 

08 명백한 역할을 가지고 독립적으로 존재 할 수 있는 시스템의 부분으로 넓은 의미에서 재사용 되는 모든 단위라고 볼 수 있으며 인터페이스를 통해서만 접근 할 수 있는 것은?

Component

 

09 화이트박스 테스트

코드 분석과 프로그램 구조에 대한 지식을 바탕으로 문제가 발생할 가능성이 있는 모듈을 직접 관찰하고 테스트

블랙박스 테스트는 프로그램의 구조를 고려하지 않고 요구나 명세를 기초로 테스트하는 방법

 

2-37

01

소프트웨어 형상관리 = 개발 과정의 변화되는 사항을 관리하는 것

 

형상관리 도구 특징

인 아 커

체크인 체크아웃 커밋

 

형상관리 팀 CCB change control board

 

IDE compile

고급언어 - 저급언어

 

2-50 디지털 저작권 관리DRM

03 암키식저 파정크인

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

 

04 정적 분석도구

PMD, Cppchek, Checkstyle

 

06 콘텐츠를 메타 데이터와 함께 배포가능한 단위로 묶는 기능은 패키저 이다.

 

DRM구성요소

제소분 클콘패건보

콘텐츠 제공자 / 콘텐츠 소비자 / 콘텐츠 분배자 / 클리어링 하우스/ DRM콘텐츠 / 패키저 / DRM컨트롤러 / 보안컨테이너

 

2-63

 

03 제품소프트웨어 설치 매뉴얼 구성요소

개파절아 삭버고준

개요 / 설치관련 파일 / 설치 절차/ 설치 아이콘 / 삭제 방법 / 설치 버전 및 작성자 / 고객 지원 방법 / 설치 버전 및 작성자 / 고객 지원 방법 및 FAQ / 준수 정보 & 제한 보증

 

10 마지막 즈음에 팀원을 투입하면 더욱 루즈해진다는 법칙 - brooks법칙

 

전체 80 % 20 % 파레토 법칙

 

ISO/IEC 2502n에서는 내부측정 외부 사용품질 품질 측정 요소등을 다룸

 

국제 표준

ISO/IEC 12119

 

2- 27

공유 폴더 방식 - RCS

클라이언트 서버방식 - CVS, SVN

분산 저장소 방식 - git

 

2-84

 

03 검사 기법중 사용자가 개발자 앞에서 진행

알파검사

 

04 테스트는 경계값으로 진행

가운데 값은 x

 

 

05 base path testing = white box

boundery value analysis black box

 

09 알파검사 베타검사

알파 = 개발자 앞에 사용자

베타 = 개발자 없이

 

12 블랙박스 테스트 유형

동경결상 유분페원비오

 

동등 분할

경계값 분석

결정 테이블

상태전이

유스케이스

분류트리

페어와이즈

원인 결과 그래프

비교테스트

오류추정

 

15

테스트 오라클

참인지 거짓인지 판단

참, 샘플링, 휴리스틱, 일관성 검사가 존재

 

19 

파레토 법칙

결함 집중

 

20

테스트의 목표 및 테스트의 방법을 미리 설정 한 후 테스트케이스를 작성한다

 

22

화이트박스 테스트 유형

구결조 조변다 기제데루

구문 커버리지 / 결정 커버리지 / 조건 커버리지 / 조건-결정커버리지/ 변경 조건커버리지 / 다중 조건 커버리지 / 기본 경로 커버리지 / 제어 흐름 테스트 / 데이터 흐름 테스트 / 루프 테스트

 

2-99

소프트웨어 개발 활동을 수행함에 있어 일부로 고장, 오류

Fault

 

하향식 . 스텁을 드라이버보다 쉽게 작성

 

상향식 드라이버

 

2-113

외계인코드

아주 오래되거나 참고문서 또는 개발자가 없이 유지보수 작업이 어려운 프로그램

 

2.

O(1)

알고리즘 시간복잡도가 알고리즘 수행시간이 입력데이터 수와 관계없이 일정

 

O(NlogN)

퀵 정렬, 병합정렬, 힙 정렬

 

O(N^2)

거품정렬, 삽입정렬, 선택정렬

 

4. 해싱함수

제산법 = 나머지 연산자를 사용하여 테이블 주소 계산

폴딩법 = 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식

기수 변환 법 = 어떤 진법으로 표현된 주어진 레코드 키를 다른 진법으로 간주하고 키를 변환하여 홈 주소를 얻는 방식

숫자 분석법 = 레코드 키를 구성하는 수들이 모든 키들 내에서 자리별로 어떤 분포인지를 조사하여 비교적 고른 분포를 나타내는 자릿수를 필요한 만큼 선택하여, 레코드의 홈 주소로 사용하는 방법

 

산곱숫 폴기무

제산법 / 제곱법 / 숫자 분석법 / 폴딩법 / 기수 변환법 / 무작위 방법

 

 

2-114

 

07 퀵정렬

피벗을 두고 피벗의 왼쪽에는 피벗보다 작은 값, 오른쪽에는 큰값을 두는 과정을 반복

레코드의 많은 자료이동을 없애고 하나의 파일을 부분적으로 나누어 가면서 정렬

 

버블정렬

 

삽입정렬

선택정렬 예시

 

13 . 제어 흐름 그래프 McCabe의 Cyclomatic의 수

E-N+2

E선의 개수

N원의 개수

 

14. 알고리즘 설계 기법

분동탐백

분할과 정복 / 동적 계획법 / 탐욕법 / 백트래킹

 

16. 코드품질 분석 정적 분석 도구

 

pmd, checkstyle, cppcheck

 

이진검색 예시

EAI 구축 유형

포허메하

포인트 투 포인트 / 허브 앤 스포크 / 메시지 버스 / 하이브리드

 

미들웨어를 두고 처리

메세지 버스

 

2-128

06

서비스 호출, 컴포넌트 재사용 등 다양한 환경을 지원
각 테스트 대상 분산 환경에 데몬 사용
통합 자동화 검증도구

STAF

 

07 인터페이스 구현 검증도구

엑스피 엔셀웨

 

08 단위테스트 도구

CppUnit

JUnit

HttpUnit