풀이 : 긴급할때 임의로 설치하는 네트워크는 ad-hoc아닐까??

무선 네트워크 구성 방식 :
애드혹 네트워크 - 센서망, 재난망에 사용되며 구성이 빠르고 모든 단말이 동등한 자격으로 망을 구성
Infrastructure 네트워크 - 이동통신망,Wi-Fi에 사용되며 중앙집중형 방식
메쉬 네트워크 - 무선백본망에 사용되며 신뢰성이 우수하고, 계층적인 구조를 가지고 있음
쉽게 말하면 네트워크 배선도 또는 연결 방식이라고 보면 돼.
예시로는 버스형, 스타형, 링형, 메시형 등이 있어.
"동적으로 변화된다"는 건 장비의 연결 구조가 상황에 따라 자주 바뀔 수 있다는 뜻이야.
✔ 특징:
네트워크 장비 불필요 (AP, 스위치, 라우터 없어도 됨)
토폴로지가 유동적 (장비가 이동하면 네트워크 구조도 바뀜)
군사, 구조 현장, 재난 상황처럼 빠르게 네트워크가 필요할 때 사용됨

사람의 감정이나 경험 ?? ,

데이터베이스 ACID 에서 A를 말하는 것같음
A는 원자성으로 모든작업이 끝까지 실행되거나 실행되지않음 이거아닌가??
트랜젝션 특징 - 원자성, 일관성 , 독립성, 지속성
일관성 : 트랜잭션의 작업 처리 결과가 항상 일관성이 있어야 한다는 것
독립성 : 둘 이상의 트랜잭션이 동시에 실행되고 있을 경우, 어떤 하나의 트랜잭션이라도 다른 트랜잭션의 연산에 끼어 들 수 없다는 점
지속성 : 트랜잭션이 성공적으로 완료되었을 경우에 결과는 영구적으로 반영되어야 한다는 점
A Atomicity (원자성) | 전부 수행 or 전혀 안함 (올 or Nothing)
C Consistency (일관성) | 수행 전후 데이터 무결성 유지
I Isolation (고립성) | 다른 트랜잭션 간섭 없음
D Durability (지속성) | 커밋된 데이터는 영구히 유지됨


기본키(주문번호 컬럼)이 제품번호에 의해 결정될 수 있기때문에 분해를 해야합니다.
부분 함수적 종속성 : 기본키의 부분집합이 결정자가 되버린 현상
제 1정규형 : 도메인이 원자값
제 2정규형 : 부분 함수적 종속 제거
제 3정규형 : 이행적 함수 종속 제거
BCNF : 결정자이면서 후보키가 아닌 것 제거
제 4정규형 : 다치 종속 제거
제 5정규형 : 조인 종속 제거
( 1 ) 테이블명 ( 2 ) 컬럼 = 값 WHERE 점수 >= 90;
풀이 : SELECT FROM // 이거는 선택할때고 SELECT뒤에는 컬럼이고 FROM뒤에 테이블명임


( 1 ) AS
( 2 ) 학생 ??

✅ 정답
SELECT ... FROM 학생정보 a JOIN 학과정보 b ON a.학과 = b.학과;
(1) | ON | JOIN 조건을 명시할 때 사용
(2) | 학과 | 두 테이블의 공통 컬럼명 (a.학과 = b.학과)
a = 100 result = 0 for i in range(1,3); result = a >> i result = result + 1 pirnt(result)

🔁 1회차 (i = 1)
result = a >> 1
→ 100 (2진수: 1100100) >> 1 = 50 (2진수: 110010)
result = 50 + 1 = 51
🔁 2회차 (i = 2)
result = a >> 2
→ 100 >> 2 = 25
result = 25 + 1 = 26

DES를 대체하기위한 키니까 AES아닐까??

| 알고리즘 | 설명 |
|---|---|
| DES (Data Encryption Standard) | 56비트 키를 사용하는 초기 표준. 보안 취약점으로 현재는 거의 사용되지 않음. |
| AES (Advanced Encryption Standard) | DES를 대체한 최신 표준. 128/192/256비트 키 지원. 가장 널리 사용됨. |
| 3DES (Triple DES) | DES를 3번 적용해 보안을 강화. 하지만 속도가 느림. |
| RC4 / RC5 / RC6 | RSA사의 알고리즘. RC4는 스트림 암호, RC5/RC6는 블록 암호. RC4는 보안상 사용 자제됨. |
| IDEA (International Data Encryption Algorithm) | 128비트 키 사용. 유럽에서 개발된 알고리즘. |
| SEED | 한국에서 개발한 블록 암호. 128비트 키 사용. |
| ARIA | 국내 표준 블록 암호. AES와 유사하며 128/192/256비트 키 지원. |

풀이 :
1. 베이스커버리지 // 모든문장수행
2. 조건별 참거짓을 검증기준으로하는 조건 커버리지
3. 조건식을 무시하며 조건 상관없이 참 거짓?? 좀더 라이트한 버전같음 , 결정 커버리지인가??

| 번호 | 설명 | 정답 (커버리지 기법) | 비고 |
|---|---|---|---|
| 1 | 최소 한 번은 모든 문장 수행 | 문장 커버리지 (Statement Coverage) | 가장 기본적인 화이트박스 테스트 |
| 2 | 조건 전체의 참/거짓 (Decision 기준) | 결정 커버리지 (Decision Coverage) | if, while 등의 조건 분기 결과 기준 |
| 3 | 전체 조건식 결과 무시, 조건별 참/거짓 | 조건 커버리지 (Condition Coverage) | 복합 조건 내 개별 조건 각각 평가 |
| 번호 | 너의 풀이 | 실제 해설 | 평가 |
|---|---|---|---|
| 1 | 베이스 커버리지 (O 의미는 맞음) | 문장 커버리지 | ✅ 정확한 개념 이해 |
| 2 | 조건 커버리지 | 결정 커버리지 | ❌ 조건의 의미를 혼동함 |
| 3 | 결정 커버리지 | 조건 커버리지 | ❌ 2번과 3번이 뒤바뀜 |
| 커버리지 기법 | 설명 | 테스트 유형 | 특징 및 목적 |
|---|---|---|---|
| 문장 커버리지 (Statement Coverage) | 모든 코드 문장(statement)이 최소 한 번 이상 실행되었는지 확인 | 화이트박스 테스트 | 가장 기본적인 테스트 커버리지 |
| 결정 커버리지 (Decision Coverage) | 조건문(if, while 등)의 결과(True/False)가 각각 한 번 이상 나왔는지 확인 | 화이트박스 테스트 | 분기 구조 테스트에 효과적 |
| 조건 커버리지 (Condition Coverage) | 조건식 내 각 개별 조건이 True/False가 한 번 이상 나왔는지 확인 | 화이트박스 테스트 | 복합 조건의 내부 평가에 초점 |
| 조건/결정 커버리지 (Condition/Decision) | 결정 + 조건 커버리지를 모두 포함. 조건과 결과 각각에 대해 True/False 확인 | 화이트박스 테스트 | 높은 신뢰도를 위한 테스트 기준 |
| 다중 조건 커버리지 (Multiple Condition Coverage) | 모든 조건 조합을 테스트 (예: T/F, T/T, F/F 등) | 화이트박스 테스트 | 가장 강력하지만 테스트 수가 많아짐 |
| 경로 커버리지 (Path Coverage) | 가능한 모든 경로를 테스트 | 화이트박스 테스트 | 로직 오류, 예외 경로까지 커버 가능 |
| 루프 커버리지 (Loop Coverage) | 루프가 0회, 1회, 다수회 수행되는 케이스를 테스트 | 화이트박스 테스트 | 반복문 중심 테스트 |
| 데이터 흐름 커버리지 (Data Flow Coverage) | 변수의 정의(def)와 사용(use) 간의 관계를 테스트 | 화이트박스 테스트 | 변수 사용 오류 탐지에 효과적 |

( 1 ) 이%
( 2 ) DESC



응집도 순서 (낮은것부터 높은 순서)
우연적 > 논리적 > 시간적 > 절차적 > 교환적 > 순차적 > 기능적
우연적 응집도 : 모듈 내부의 각 구성요소들이 연관이 없을 경우
논리적 응집도 : 유사한 성격을 갖거나 특정 형태로 분류되는 처리 요소들이 한 모듈에서 처리되는 경우
시간적 응집도 : 연관된 기능이라기보단 특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리할 경우
순차적 응집도 : 모듈 내에서 한 활동으로부터 나온 출력값을 다른 활동이 사용할 경우


패킷교환방식(저장 방식) : 패킷이라는 단위를 사용하여 데이터를 송신하고 수신합니다. 패킷이란 정보를 일정한 크기로 분할한 뒤 각각의 패킷에 송수신 주소 및 부가 정보를 입력한 것으로 현재 컴퓨터 네트워크에서 주로 사용하는 방식입니다. (EX : 인터넷)
회선 교환 방식(비 저장 방식) : 물리적 전용선을 활용하여 데이터 전달 경로가 정해진 후 동일 경로로만 전달이 됩니다. 데이터를 동시에 전송할 수 있는 양을 의미하는 대역폭이 고정되고 안정적인 전송률을 확보할 수 있습니다. (EX : 전화망)

행위패턴은 객체나 클래스 간의 교류 방법에 대해 정의하는 방법을 제시합니다.
행위패턴 클래스 : Interpreter, Template
행위패턴 객체 : Chain of Responsibility, Command, Iterator, Mediator, Memento, Observer, State, Strategy, Visitor
풀이 : 교착상태에 사용하는 기술아닌가?? , 임계구역
병행제어란 다중 프로그램이 이점을 활용하여 동시에 여러 개의 트랜잭션을 병행수행할 때, 동시에 실행되는 트랜잭션들이 데이터베이스의 일관성을 파괴하지 않도록 트랜잭션 간의 상호작용을 제어하는 것입니다.
병행제어기법 - 로킹, 타임 스탬프 순서, 최적 병행 수행, 다중 버전 기법
타임 스탬프 순서(Time Stamp Ordering) : 트랜잭션과 트랜잭션이 읽거나 갱신한 데이터에 대해 트랜잭션이 실행을 시작하기 전에 시간표(time stamp)를 부여하여 부여된 시간에 따라 작업을 수행하는 기법
최적 병행 수행(검증기법, 낙관적 기법) : 병행수행하고자 하는 대부분의 트랜잭션이 읽기 전용 트랜잭션일 경우, 트랜잭션 간의 충동률이 매우 낮아서 병행제어 기법을 사용하지 않고 실행되어도 이 중의 많은 트랜잭션은 시스템의 상태를 일관성 있게 유지한다는 점을 이용한 기법
다중 버전 기법 : 타임 스탬프의 개념을 이용한 기법으로 타임 스탬프는 트랜잭션 및 데이터들이 이용될 때의 시간을 시간표로 관리하지만 다중 버전 기법은 갱신될 때마다의 버전을 부여하여 관리하는 기법


럼바우 객체지향 분석 기법은 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 분석 기법입니다.
분석활동 : 객체 모델링(Object Modeling), 동적 모델링(Dynamic Modeling), 기능 모델링(Functional Modeling)
럼바우 객체지향 분석 기법의 절차 :
객체 모델링 > 동적 모델링 > 기능 모델링
1 입력→출력 언급 → 감 잘 잡음 | 기능 중심 흐름 → Function ✅ 적절한 추론
2 시간 → 동적 다이어그램? | 객체 상태의 시간 변화 → Dynamic ✅ 적절한 추론
3 객체 간 관계 → 클래스 예상 | 관계/속성 중심 → Object ✅ 정확한 추론
int main(){ int res; res = mp(2,10); printf("%d",res); return 0; } int mp(int base, int exp) { int res = 1; for(int i=0; i < exp; i++){ res = res * base; } return res; }
public class Test { public static void main(String[] args){ system.out.print(test.check(1)); } ( ) String check (int num) { return (num >= 0) ? "positive" : "negative"; } }
[출력결과]
positive

int main(){ int ary[3]; int s = 0; *(ary+0)=1; ary[1] = *(ary+0)+2; ary[2] = *ary+3; for(int i=0; i<3; i++){ s=s+ary[i] } print("%d",s); }

public class over1 { public static void main(String[] args){ ovr1 a1 = new ovr1(); ovr2 a2 = new ovr2(); System.out.println(a1.sun(3,2) + a2.sun(3,2)); } int sun(int x, int y){ return x + y; } } class ovr2 extends ovr1 { int sun(int x, int y){ return x - y + super.sun(x,y); } }


하스 스톤 , 하향식 스텁