본문 바로가기

미래를 위한 준비/정보처리기사

정보처리기사 1일차

maintenance = 유지

 

브릿지 패턴 (Bridge Pattern)

 

구현부에서 추상층을 분리하여 각자 독립적으로 변형이 가능하고 확장이 가능하도록 합니다. 즉 기능과 구현에 대해서 두 개를 별도의 클래스로 구현을 합니다.

 

 

 

 

 

1. 럼바우(Rumbaugh) 객체지향 분석 기법

- 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 객체지향 분석(Object-oriented Analysis) 기법

  • 체 모델링(Object Modeling): 객체 다이어그램, 정보 모델링이라고도 하며 시스템에서 요구하는 객체를 찾고 객체들 간의 관계를 정의, 가장 중요하며 선행되어야 함
  • 적 모델링(Dynamic Modeling): 상태 다이어그램, 시간의 흐름에 따라 객체들 사이의 제어 흐름, 동작 순서 등의 동적인 행위를 표현
  • 능 모델링(Functional Modeling): 자료 흐름도(DFD), 프로세스들의 자료 흐름을 중심으로 처리 과정 표현

- 럼바우 객체지향 분석 기법의 절차는 객체 모델링 -> 동적 모델링 -> 기능 모델링 순서로 진행된다.

 

==> 럼바우 - 객동기 

 

 

 

Dependency - 의존, 종속

Realization - 자각, 인식

Generalization - 일반화

Association - 연계, 연관

 

UML은 네가지 관계가 있습니다.(★★★)

  1. 의존 관계(Dependency Relationship) : 두 사물 간의 의미적 관계로, 한 사물의 명세서가 바뀌면 그것을 사용하는 다른 사물에게 영향을 끼치는 것을 말합니다. 예시) TV와 리모컨의 관계가 있습니다.
  2. 연관 관계(Association Relationship) : 두 사물 간의 구조적 관계로, 어느 한 사물 객체가 다른 사물 객체와 연결되어 있음을 말합니다. 연관을 표현할 때는 이름과 역할 그리고 다중성을 표기합니다. ('has-a')관계라고도 합니다. 예시) 자동차와 부품들의 관계가 있습니다.
  3. 일반화 관계(Generalization Relationship) : 일반화된 사물과 좀 더 특수화된 사물 사이의 관계를 말합니다. ('is-a')관계라고도 합니다. 예시) 부모 클래스로서의 자동차와 자식클래스로서의 택시, 버스, 트럭 등
  4. 실체화 관계(Realization Relationship) : 한 객체가 다른 객체에 의해 오퍼레이션을 수행하도록 지정하는 것 입니다. 예시) TV의 행동중 일부가 리모컨의 행동을 실체화 함 클래스(TV)와 인터페이스(리모컨)가 가지는 관계가 실체화 관계


출처: https://hyun-am-coding.tistory.com/entry/Chapter-14-UML-모델링 [현암 코딩]

 

기초 경로 검사
(Base Path Testing)
- 대표적인 화이트박스 테스트 기법이다.
- 테스트 케이스 설계자가 절차적 설계의 논리적 복잡성을 측정할 수 있게 해주는 테스트 기법, 테스트 측정 결과는 실행 경로의 기초를 정의하는 데 지침으로 사용된다.
제어 구조 검사
(Control Structure Testing)
- 조건 검사(Condition Testing): 프로그램 모듈 내에 있는 논리적 조건을 테스트하는 테스트 케이스 설계 기법
- 루프 검사(Loop Testing): 프러그램의 반복(Loop) 구조에 초점을 맞춰 실시하는 테스트 케이스 설계 기법
- 데이터 흐름 검사(Data Flow Testing): 프로그램에서 변수의 정의와 변수 사용의 위치에 초점을 맞춰 실시하는 테스트 케이스 설계 기법

4번이 틀렸다고하는데 어떤부분이 틀렸는지 모르겠다.

 

기본경로(Basis path)는 실행 경로의 기초를 정의하는 지침으로 사용된다고 합니다.

 

아, 정의를 지침하는 것은 결과가 1개가 나와야하니 서로 독립된 경로가 많이 나오면 안되나?

 

 

 

 

 

distribute - 분배하다.

2. 디지털 저작권 관리(DRM) 구성 요소, 흐름도

2020 시나공 정보처리기사 필기 책의 DRM 흐름도

  • 클리어링 하우스(Clearing House): 저작권에 대한 사용 권한, 라이선스 발급, 사용량에 따른 관리 등을 수행하는 곳
  • 콘텐츠 제공자(Contents Provider): 콘텐츠를 제공하는 저작권자
  • 패키저(Packager): 콘텐츠를 메타 데이터(데이터의 속성 정보를 설명하는 데이터)와 함께 배포 가능한 형태로 묶어 암호화하는 프로그램
  • 콘텐츠 분배자(Contents Distributor): 암호화된 콘텐츠를 유통하는 곳이나 사람 - ex) 멜론
  • 콘텐츠 소비자(Customer): 콘텐츠를 구매해서 사용하는 주체 - ex) 멜론 이용자
  • DRM 컨트롤러(DRM Controller): 배포된 콘텐츠의 이용 권한을 통제하는 프로그램 - ex) 멜론 플레이어
  • 보안 컨테이너(Security Container): 콘텐츠 원본을 안전하게 유통하기 위한 전자적 보안 장치

https://devinus.tistory.com/19

 

 

버블 정렬(bubble sort) 알고리즘의 예제
배열에 7, 4, 5, 1, 3이 저장되어 있다고 가정하고 자료를 오름차순으로 정렬해 보자.


https://gmlwjd9405.github.io/2018/05/06/algorithm-bubble-sort.html

 

 

 

 

  • 삽입 정렬(Insertion Sort)
    • 이미 순서화된 파일에 새로운 레코드를 추가하여 순서에 맞게 배치 (2번째 값부터 시작한다)
    • 시간 복잡도: O(n²)
  • 셸 정렬(Shell Sort)
    • 시간 복잡도: O(n^1.5)
  • 선택 정렬(Select Sort)
    • 레코드의 최소값을 찾아 첫번째 위치에 놓고 다음 최소값을 찾아 두번째 위치에 놓는 방법을 반복하여 정렬
    • 시간 복잡도: O(n²)
  • 버블 정렬(Bubble Sort)
    • 인접한 값과 비교하여 정렬하는 방식. 끝에 값부터 정해진다.
    • 시간 복잡도: O(n²)
  • 퀵 정렬(Quick Sort)
    • 시간 복잡도: O(nlog₂n)
  • 힙 정렬(Heap Sort)
    • 시간 복잡도: O(nlog₂n)
  • 병합 정렬(Merge Sort)
    • 시간 복잡도: O(nlog₂n)
  • 기수 정렬(Radix Sort)
    • 시간 복잡도: O(n)

 

 

선택 정렬(selection sort) 알고리즘의 예제
배열에 9, 6, 7, 3, 5가 저장되어 있다고 가정하고 자료를 오름차순으로 정렬해 보자.


https://gmlwjd9405.github.io/2018/05/06/algorithm-selection-sort.html

 

 

 

 

 

  • 개체(Entity)
    • 행, 튜플
    • 카디날리티(Entity): 개체의 수
  • 속성(Attribute)
    • 열, 필드
    • 디그리(Degree): 속성의 수
  • 관계(Relation)

 

 

제 1 정규형 (1NF; First Normal Form)

제1정규형에 대한 정의는 조금 모호 한 것 같다. 위키 를 읽어보면 학자들끼리 지나친 논쟁을 하고 있는 것 같다는 생각이 든다.

 

제 2 정규형 (2NF; Second Normal Form)

제1정규형만 만족시키는 릴레이션에서 부분 함수 종속성을 가지게 되는 경우 삽입이상, 갱신이상, 삭제이상 세가지 이상현상이 모두 나타나게 된다.

제1정규형에 속하면서,
기본키가 아닌 모든 속성이 기본키에 완전 함수 종속되면 제2정규형이다.

제 3 정규형 (3NF; Third Normal Form)

제 2 정규형에 속하면서,
기본키가 아닌 모든 속성이 기본키에 이행적 함수 종속이 되지 않으면 제 3 정규형이다.

 

common - 공동

content - 내용

external - 외부

stamp - 스탬프

 

 

 

 

페이징(Paging)은 프로세스를 일정 크기인 페이지(page)로 잘라서 메모리에 적재하는 방식을 말합니다.

 

 

 

SAN은 스토리지를 전용 네트워크로 연결해 스토리지에 담긴 데이터를 통합·관리할 수 있는 기술이다.

즉 서버는 서버끼리 한 곳에 통합관리하고 스토리지는 별도의 장소에 설치 관리할 수 있다.

 

기본 포트는 22번이다.

서버에 접속할때 비밀번호 대신 key를 제출하는 방식이다. 비밀번호보다 높은 수준의 보안요건을 필요로 할때 사용된다.

 

https://velog.io/@hyeseong-dev/%EB%A6%AC%EB%88%85%EC%8A%A4-ssh%EB%9E%80

 

 

 

 

 

 

 

 

728x90

'미래를 위한 준비 > 정보처리기사' 카테고리의 다른 글

정보처리기사 6일차  (0) 2021.07.31
정보처리기사 5일차  (0) 2021.07.30
정보처리기사 4일차  (0) 2021.07.29
정보처리기사 3일차  (0) 2021.07.28
정보처리기사 2일차  (0) 2021.07.27