하향식 통합 테스트 ( Top Down Integration Test )
- 깊이 우선 통합법, 넓이 우선 통합법 사용
- 테스트 초기 부터 사용자에게 시스템 구조 보여줄 수 있다.
- 상위 모듈에서는 tc를 사용하기 어렵다.
- 상위 모듈에서 하위 모듈 방향으로 통합하면서 테스트하는 기법
- 절차
- 주요 제어 모듈은 작성된 프로그램을 사용하고, 주요 제어 모듈의 종속 모듈들은 스텁 ( stub )로 대체 한다.
- 깊이우선 or 넓이 우선 등의 통합방식에 따라, 하위 모듈인 스텁들이 한 번에 하나씩 실제모듈로 교체된다.
- 모듈이 통합될 때마다 테스트 실시
- 새로운 오류가 발생하지 않음을 보증 하기 위해 회귀 테스트 실시
- 계층 구조상에서 시스템의 주요 컴포넌트들을 찾고 그것을 낮은 수준의 컴포넌트들로 분해하는 것으로 단계적 정제라 하며 메인 모듈의 설계에서 시작하여 단계적으로 구체화시키는 것
- 하향식 설계에서는 통합 검사 시 인터페이스가 이미 정의되어 있어 통합이 간단하다.
- 하향식 설계에서 레벨이 낮은 데이터 구조의 세부 사항은 설계초기 단계에서 필요하다.
상향식 통합 테스트 ( Bottom Up Integration Test )
- 하위 모듈에서 상위 모듈 방향으로 통합하면서 테스트 하는 방법
- 가장 하위 단계의 모듈부터 통합 및 테스트가 수행되므로 스텁은 필요하지 않다.
- 하나의 주요 제어 모듈과 관련된 종속 모듈의 그룹인 클러스터( cluster )는 필요하다.
- 절차
- 하위 모듈을 클러스터로 결합
- 상위 모듈에서 데이터의 입출력을 확인하기 위해, 모듈인 드라이버 작성
- 통합된 클러스터 단위로 테스터
- 테스트가 완료되면 클러스터는 프로그램 구조의 상위로 이동 하여 결합하고, 드라이버는 실제 모듈로 대체
- 가장 기본적인 컴포넌트를 먼저 설계한 다음 이것을 사용하는 상위 수준의 컴포넌트를 설계하는 것
- 상향식 설계는 최하위 수준에서 각각의 모듈들을 설계하고 이러한 모듈이 완성되면 이들을 결합하여 검사한다.
- 기존 컴포넌트들을 조합하여 시스템을 개발하는 경우에는 상향식이 적합
시스템 명세가 명확한 경우와 모든 것을 새로 개발하는 작업에는 하향식이 적합하다.
- 상향식 설계는 최하위 수준에서 각각의 모듈들을 상세하게 설계하고 이러한 모듈이 완성되면 전체적으로 이들을 결합하여 설계하는 방식으로 인터페이스가 이미 성립되어 있어야지 기능 추가가 쉽다.
럼바우 분석기법
- 객,동,기
- 객체모델링 = 객체 다이어그램
- 동적모델링 = 상태 다이어그램
- 기능 모델링 = 자료흐름도
디지털 저작권 관리의 기술요소
- 암호화
- 키관리
- 암호화 파일생성
- 식별기술
- 저작권 표현
- 정책관리
- 크랙방지
- 인증
관계대수란?
- 관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는가를 기술하는 절차적인 언어이다.
- 릴레이션을 처리하기 위해 연산자와 연산규칙을 제공하는 언어로 피연산자가 릴레이션이고 결과도 릴레이션이다.
- 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다.
- 대표적으로 순수 관계 연산자와 일반 집합 연산자가 있다.
관계해석이란?
- 관계 데이터 모델의 제안자인 코드가 수학에 가까운 기반을 두고 관계 데이터베이스를 위해 제안하여 탄생하였다.
- 관계 데이터의 연산을 표현하는 방법으로, 원하는 정보를 정의할 때는 계산 수식을 사용한다.
- 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 지닌다.
- 튜플 관계해석과 도메인 관계해석이 있다.
- 기본적으로 관계해석과 관계대수는 관계 데이터베이스를 처리하는 기능과 능력면에서 동등하며 관계대수로 표현한 식은 관계해석으로 표현할 수 있다.
- 질의어로 표현한다.
C 언어
- &n= 변수 n의 주소값
- *pt= 포인터 pt가 가리키고 있는 주소에 저장된 값 = 변수 n
- &pt = (포인터 pt의 주소값)= 포인터 pt의 주소가 가리키고 있는 주소에 저장된 값 = 변수 n의 주소
결합도
공통 결합도(Common Coupling)
- 두 모듈이 동일한 전역 데이터를 접근한다면 공통결합 되어 있다고 한다.
스탬프 결합도
- 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
- 두 모듈이 동일한 자료 구조를 조회함
내용 결합도(Content Coupling)
- 하나의 모듈이 직접적으로 다른 모듈의 내용을 참조할 때 두 모듈은 내용적으로 결합되어 있다고 한다.
자료 결합도(data coupling)
- 어떤 모듈이 다른 모듈을 호출하면서 매게변수나 인수를 넘겨주고, 호출 받은 모듈은 받은 데이터에 대한 처리결과를 다시 돌려주는 방식
tcp wrapper
- 어떤 외부 컴퓨터가 접속되면 접속 인가 여부를 점검해서 인가된 경우에는 접속이 허용되고, 그 반대의 경우에는 거부할 수 있는 접근제어 유틸리티
- tcp/ip 통신에서, tcp는 3-way handshake 를 통해 통신이 원활히 이뤄질 수 있는지를 확인합니다.
Honeypot
- 1990년대 David Clock이 처음 제안하였다.
- 비정상적인 접근의 탐지를 위해 의도적으로 설치해 둔 시스템
- 침입자를 속여 실제 공격당하는 것처럼 보여줌으로써 크래커를 추적 및 공격기법의 정보를 수집하는 역할
- 쉽게 공격자에게 노출되어야 하며 쉽게 공격이 가능한 것처럼 취약해 보여야 함.
Apache
- 월드 와이드 웹 컨소시엄(W3C)에서 사용하고 아파치 소프트웨어 재단에서 관리 및 운영하는 서버용 오픈소스 소프트웨어
Hadoop
MapReduce
- 대용량 데이터를 분산 처리하기 위한 목적으로 Google에 의해 고안된 프로그래밍 모델
시스템 인증
토큰 기반 인증
- 하드웨어와 소프트웨어의 토큰 장치를 사용하는 인증 기법
- 하드웨어 장치는 스마트카드를 사용
- 소프트웨어 장치는 개인 식별번호를 사용하는 강력한 인증 방법
SSO 인증
- 여러 시스템 중 하나의 시스템에 인증을 성공하면 다른 시스템의 접근 권한도 모두 얻는 방식
FTR 지침 사항
- 제품 검토에만 집중하라
- 의제를 제한하여 진행하라
- 논쟁과 반박을 제한하라
- 문제영역을 정확히 표현하라
- 해결책이나 개선책에 대해서는 논하지 말라
- 참가자수를 제한하고 사전준비를 강요하라
- 자원과 시간 일정을 할당하라
- 모든 검토자들을 위해 의미있는 훈련을 시행하라
- 검토자들은 사전에 작성한 메모들을 공유하라
- 검토의 과정과 결과를 재검토하라
데이터 웨어하우스 (Data Warehouse):
- 급증하는 다량의 데이터를 효과적으로 분석하여 정보화하고 이를 여러 계층의 사용자들이 효율적으로 사용할 수 있도록 한 데이터베이스
- OLAP(on-line analytical processing) 연산은
- 다차원으로 이루어진 데이터로부터 통계적인 요약 정보를 분석하여 의사 결정에 활용하는 방식.
- roll-up
- slicing & dicing
- drill-up & down
- pivot
- drill-through 등
응집도
- 약함<<< 우연-논리-시간-절차-교환-순차-기능 >>>강함
(같은 곳으로 자대배치를 받은 훈련소 동기와의 대화 中)
(우)리 (논)산 (시)(절) 기억나?
(교)자랑 (순)대 나오길 (기)대했는데..
결합도
- 내용(content) 공통( common ) 외부( external) 제어( control) 스탬프 ( stamp) 자료 ( data)
(내)게 (공)(부)하라고 강요하지 말아요
(제)가 (스)트레스 받(자)나요
CPM
임계 경로
- 작업의 시작 및 종료 구간이 동시에 이루어질 때 가장 오래 걸리는 경로
암호화 방식
양방향
단방향
- 해시
- 단방향 암호화 방식으로 양방향 방식인 스트림 방식과는 다르게 구분됨
DES의 키는
- 7비트마다 오류 검출을 위한 정보가 1비트씩 들어가기 때문에 실질적으로는 56비트이다.
- 추가적으로 AES는 암호화 알고리즘은 AES-128, AES-192, AES-256로 나뉘어지며 숫자는 비트수 이다.