2021-05-15 시험문제
instance : 클래스에 속한 각각의 객체
message : 객체에게 어떤 행위를 하도록 지시하는 명령
method : 객체에 소속된 함수
module : 실행코드와 객체(함수,클래스,변수)의 묶음
도출 -> 분석 -> 명세 -> 확인
추상팩토리 패턴, 빌더 패턴, 팩토리 메소드 패턴, 프로토타입 패턴, singleton pattern
singleton pattern(단일체): 한 클래스에 한 객체만 존재하도록 제한
adapter pattern, bridge pattern, 컴포지트 패턴, decorator pattern, 퍼사드 패턴, 플라이웨잇 패턴, 프록시 패턴
adapter pattern(적응자): 인터페이스가 호환되지 않는 클래스들을 함께 이용할 수 있도록, 타 클래스의 인터페이스를 기존 인터페이스에 덧씌운다
decorator pattern(장식자): 0개, 1개 혹은 그 이상의 객체를 묶어 하나의 객체로 이용할 수 있다
역할 사슬 패턴, 커맨드 패턴, 인터프리터 패턴, 이터레이터 패턴, 미디에이터 패턴, 메멘토 패턴, 옵저버 패턴, state pattern, 스트래티지 패턴, 템플릿 메소드 패턴, 비지터 패턴
state pattern(상태): 동일한 동작을 객체의 상태에 따라 다르게 처리해야 할 때 사용하는 디자인 패턴
1. 송신 시스템
시스템 인터페이스를 구성하는 시스템.
연계할 데이터를 DB와 어플리케이션으로부터 연계테이블 또는 파일 형태로 생성하여 송신
2. 수신 시스템
수신한 연계테이블, 파일데이터를 수신시스템에서 관리하는 데이터 형식에 맞게 변환하여 DB에 저장하거나 애플리케이션에서 활용할 수 있도록 제공
3. 중계 서버
송/수신 시스템 사이에서 데이터를 송수신하고, 연계데이터의 송수신 현황을 모니터링함, 연계데이터의 보안강화 및 다중플랫폼 지원 등이 가능
구조적 기법
프로토타이핑 기술
자동프로그래밍 기술
정보 저장소 기술
분산 처리기술
- 클라이언트 서버 구조
컴포넌트가 다른 컴포넌트에게 서비스를 요청. 데이터가 여러 컴포넌트를 거치며 처리.- 계층구조
모듈들로 응집된 계층 단위로 SW를 구성.
계층간에 사용 가능의 관계로 표현- MVC 구조
모델-뷰-컨트롤러, 기능을 분리한 아키텍처- 파이프 필터
서브시스템이 입력 데이터를 받아 처리하고 결과를 다른 시스템에 보내는 작업이 반복
1. Dependency(의존)
한 사물의 명세서가 바뀌면 그것을 사용하는 다른 사물에게 영향을 끼치는 것을 말함
2.Realization(실체화)
한 객체가 다른 객체에 의해 오퍼레이션을 수행하도록 지정
3.Generalization(일반화)
일반화된 사물과 좀 더 특수화된 사물 사이의 관계를 말함
('is-a')관계
4. Association(연관)
두 사물간의 구조적 관계로, 어느 한 사물 객체가 다른 사물 객체와 연결되어 있음을 말함
('has-a')관계
상위 CASE: 요구 분석과 설계 단계를 지원
하위 CASE: 코드를 작성하고 테스트하며 문서화하는 과정 지원
통합 CASE: 소프트웨어 개발 주기 전체과정을 지원
분산 환경에서 빅 데이터를 저장하고 처리할 수 있는 자바 기반의 오픈 소스 프레임 워크.
1. 살충제 패러독스
동일한 테스트 케이스로 반복 실행하면 더이상 새로운 결함을 발견할 수 없으므로
주기적으로 테스트 케이스를 점검하고 개선해야 한다.
2.결함 집중
결함은 발생한 모듈에서 계속 추가로 발생할 가능성이 높다.
3. 오류 부재의 궤변
사용자의 요구사항을 만족하지 못한다면 오류를 발견하고 제거해도 품질이 높다고 말할 수 없다.
형상 감사(Configuration Audit)
기준선의 무결성을 평가하기 위해 확인, 검증, 검열 과정을 통해 공식적으로 승인하는 작업
저장소 : 최신 버전의 파일들과 변경 내역에 대한 정보들이 저장되어 있는 곳
가져오기(import) : 버전 관리가 되고 있지 않은 아무것도 없는 저장소에 처음으로 파일을 복사
체크아웃(check-out) : 프로그램을 수정하기 위해 저장소에서 파일을 받아 옴, 소스 파일과 함께 버전 관리를 위한 파일들을 받아 옴
체크인(check-in) : 체크아웃한 파일의 수정을 완료한 후 저장소의 파일을 새로운 버전으로 갱신
커밋(commit) : 체크인을 수행할 때 이전에 갱신된 내용이 있는 경우에는 충돌을 알리고 diff 도구를 이용해 수정한 후 갱신 완료
롤백(rollback) : 데이터베이스에서 업데이트에 오류가 발생할 때, 이전 상태로 되돌리는 것을 말한다.
동기화 : 저장소에 있는 최신 버전으로 자신의 작업공간을 동기화
1. 단일저장소 방식
2. 분산저장소 방식
3. 공유폴더방식
로컬 컴퓨터의 공유폴더에 저장되어 관리
4. 클라이언트/서버 방식
명세 기반 테스트 : 주어진 명세를 빠짐없이 테스트 케이스로 구현하고 있는지 확인하는 테스트
구조 기반 테스트 : 프로그램 내부 구조 및 복잡도를 검증하는 화이트박스 테스트 시행, 제어 흐름과 조건 결정 등이 목적
성능 테스트 도구(Performance Test Tools)
- 애플리케이션의 처리량, 응답시간, 경과시간, 자원 사용률 등 성능 목표 달성 여부 확인
- 인위적으로 적용한 가상 사용자를 만들어 테스트 수행
Ant, Maven, Gradle 은 빌드자동화 도구
콘텐츠 분배자(Contents Distributor) : 암호화된 콘텐츠를 유통하는곳/사람
패키저(Packager) : 콘텐츠를 메타데이터와 함께 배포가능한 형태로 묶어 암호화
클리어링 하우스(Clearing House) : 키 관리 및 라이센스 발급 관리
DRM 컨트롤러(DRM Controller) : 배포된 콘텐츠의 이용권한을 통제
Dataware house
사용자의 의사 결정에 도움을 주기 위하여 기간시스템의 데이터베이스에 축적된 데이터를 공통의 형식으로 변환해서 관리하는 데이터베이스를 말한다
첫 번째 자료와 두 번째 자료를, 두 번째 자료와 세 번째 자료를, 세 번째와 네 번째를, … 이런 식으로 (마지막-1)번째 자료와 마지막 자료를 비교하여 교환하면서 자료를 정렬
96735
Pass 1
9 6 7 3 5 → 6 9 7 3 5 → 6 7 9 3 5 → 6 7 3 9 5 → 6 7 3 5 9
Pass 2
6 7 3 5 9 → 6 3 7 5 9 → 6 3 5 7 9
+LR
L+R
LR+
xUnit, STAF, Fitnesse, NTAF, Selenium, watir
Foxbase는 프로그래밍 언어입니다.
테스트는 오류를 찾는 작업이고 디버깅은 오류를 수정하는 작업
테이블 =릴레이션
튜플 = 각각 행. ROW
속성 = 어트리뷰트 테이블에서 번호,이름,주소에 해당하는 header부분을 의미
속성(attribute)의 수 = 차수(degree) = 열
튜플(tuple)의 수 = 기수 = 카디널리티(cadinality) = 행
릴레이션 R의 차수가 4이고 카디널리티가 5이며, 릴레이션 S의 차수가 6이고 카디널리티가 7일 때,
두 개의 릴레이션을 카티션 프로덕트한 결과의 새로운 릴레이 션의 차수와
카디널리티 차수는 +를 해주고 카디널리티는 *를 해주면 해당 결과가 나옵니다.차수 = 4+6=10
카디널리티 = 5*7=35
UPDATE SET WHERE
갱신 이상(Modification Anomaly)
삽입 이상(Insertion Anomaly)
삭제 이상(Deletion Anomaly)
비정규형 →
[도메인 분해 →] 제1정규형
[부분 함수 종속 제거 →] 제2정규형
[이행 함수 종속 제거 →] 제3정규형
[결정자가 후보키가 아닌 함수 종속 제거 →] 보이스 코드 정규형(BCNF)
[다중치 종속 제거 →] 제4정규형
[조인 종속제거 →] 제5정규형
내용(content) > 공통(common) > 외부(external) > 제어(control) > 스템프(stamp) > 자료(data)
우연적(Coincidental)응집도 < 논리적(Logical) 응집도 < 시간적 응집도(Temporal) < 절차적(Procedural) 응집도 < 교환적(Communication) 응집도 < 순차적(Sequential) 응집도 < 기능적(Functional)
더 많은 페이징 사상테이블 필요
내부 단편화 감소
페이지의 집합을 효율적으로 운영가능
기억장치의 효율이 좋음
총 입출력 시간 증가
주기억 장치 공간 절약
참조되는 정보와 무관한 양의 정보가 주기억 장치에 남게 됨
테이블이 복잡하지 않아 관리 용이
stdio.h
표준 입출력 라이브러리
stdlib.h 함수
C 언어의 표준 라이브러리
문자열 변환, 사 난수 생성, 동적 메모리 관리 등의 함수들을 포함하고 있다.
strlen() 함수
string.h 에 포함되어 있습니다.
math.h 함수
삼각 함수, 제곱근, 지수 등 수학적인 함수
Bell-Lapadula Model :
기밀성에 따라 상하관계가 구분된 정보를 보호
자신의 권한보다 낮은 보한레벨 권한을 가진경우 높은보안레벨의 문서를 읽을 수 없음
자신의 권한보다 높은 보안 레벨의 문서는
쓰기는 가능. 낮은 문서의 쓰기 권한 제한
BLP 기밀성 모델: 정보의 불법적인 파괴나 변조보다는 불법적인 비밀 유출 방지에 중점 - 기밀성 강조
Clark-Wilson 무결성 모델: 비밀 노출 방지보다 자료의 변조 방지가 더 중요함(금융, 회계관련 데이터, 기업 재무재표 등)
Chinese Wall: 충돌을 야기시키는 어떠한 정보의 흐름도 없어야 한다. 이익의 충돌 금지, 최근 일을 한 적 있는 파트너는 동일 영역에 있는 다른 회사 자료에 접근해서는 안된다.
PERT : 계획 평가 및 재검토 기술, 프로젝트 관리를 분석하거나 주어진 완성 프로젝트를 포함한 일을 묘사하는데 쓰이는 모델
시스템의 비용을 산정하기 위해 시스템을 구성하고 있는 모듈과 서브 시스템의 비용 합계를 계산하는 방식
소프트웨어의 복잡도 or 원시 프로그램의 규모에 따라 분류
'12536‘으로 기입되어야 하는데 ’12936‘으로 표기되었을 경우,
정답은 Transcription 오류!
생략 오류(omission error) : 입력 시 한 자리를 빼놓고 기록한 경우
(1234 → 123)
필사 오류(Transcription error) : 입력 시 임의의 한 자리를 잘못 기록한 경우
(1234 → 1235)
전위 오류(Transposition error) : 입력 시 좌우 자리를 바꾸어 기록한 경우
(1234 → 1243)
**이중 오류(Double Transposition error) : 전위 오류가 두 가지 이상 발생한 경우
(1234 → 2143)
추가 오류(Addition error) : 입력 시 한 자리 추가로 기록한 경우
(1234 → 12345)
임의 오류(Random error) : 위의 오류가 두 가지 이상 결합하여 발생한 경우
(1234 → 12367)
1. Memristor : memory + register. 전원 공급이 끊어져도 다시 전원이 공급되면 이전 상태 복원
2. MEMS : 센서, 엑추에이터 등 기계구조를 다양한 기술로 미세 가공 후 전기기계적 동작 가능케 한 초미세장치
3. SNMP : 하드웨어 신기술 아님. 간이 망 관리 프로토콜
4. N-Screen : N개의 서로 다른 단말기에서 동일콘텐츠를 자유롭게 이용 가능한 서비스
종류
SHA, MD5, N-NASH, SNEFRU 등
특징
종류
AES (암호화 키와 복호화 키가 동일한 암호화 알고리즘)
특징
종류 : RSA
특징 : 키의 분배가 용이하고, 관리해야 할 키 수가 적음
암호화/복호화 속도가 느리며 알고리즘이 복잡, 개인키 암호화 방법보다 파일의 크기가 크다.
메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술
브리지와 같이 LAN과 LAN의 연결 기능에 데이터 전송의 최적 경로를 선택할 수 있는 기능이 추가된 것
서로 다른 LAN이나 LAN과 WAN의 연결도 수행한다.
type : 말 그대로 type
mkdir : 디렉토리 생성하는 명령어
ftp : 응용계층 프로토콜
nmap : 서버에 열린 포트 정보를 스캐닝해서 보안취약점을 찾는데 사용하는 도구