입력 (input)
처리 방법, 처리할 데이터, 조건을 시스템에 투입
처리 (process)
입력된 데이터를 처리 방법과 조건에 따라 처리하는 것
출력 (output)
처리된 결과를 시스템에서 산출하는 것
제어 (control)
자료를 입력하여 출력될 때까지의 처리 과정이 올바르게 진행되는지 감독하는 것
피드백 (feedback)
출력된 결과가 예정된 목표를 만족시키지 못할 경우 목표 달생을 위해 반복 처리하는 것
가용성, 변경용이성, 성능, 보안성, 사용편의성, 시험용이성
: 소프트웨어 개발에 컴퓨터 기술을 활용하여 효율성과 품질을 향상시키는 방법론
1. 구조적 기법
이는 복잡한 시스템을 여러 개의 작은 부분으로 분할하여 문제를 해경하는 방법, 설계 및 개발 과정을 구조화
2. 프로토타이핑 기술
이는 초기 단계에서 사용자와 시스템 간의 상호 작용을 모방한 모형을 생성하여 시스템 요구사항을 더 잘 이해하는데 도움이 됩니다.
3. 정보 저장소 기술
이는 시스템의 모든 정보를 중앙에 모아 시스템의 모든 관련 정보를 쉽게 액세스하고 업데이트할 수 있도록 하는 방법
4. 분산처리 기술
1. 클라이언트 서버 구조
컴포넌트가 다른 컴포넌트에게 서비스를 요청, 데이터가 여러 컴포넌트를 거치며 처리
2. 계층구조
모듈들로 응집된 계층 단위로 SW를 구성, 계층 간에 사용 가능의 관계로 표현
3. MVC구조
모델-뷰-컨트롤러 기능을 분리한 아키텍처
4. 파이프 필터
파이프를 통해 받은 데이터를 변경시키고 그 결과를 파이프로 전송
Dependency(의존)
한 사물의 명세서가 바뀌면 그것을 사용하는 다른 사물에게 영향을 끼치는 것을 말합니다 (Cascade 생각하셈)
Realization(실체화)
한 객체가 다른 객체에 의해 오퍼레이션을 수행하도록 지정
Generalization(일반화)
일반화된 사물과 좀 더 특수화된 사물 사이의 관계를 말합니다.('is-a')관계
Association(연관)
두 사물간의 구조적 관계로, 어느 한 사물 객체가 다른 사물 객체와 연결되어 있음을 말함 ('has-a')관계라고도 합니다
화이트 박스 테스트
내부 구조와 동작을 검사하는 테스트 방식, 내부 소스 테스트
블랙 박스 테스트
내부 구조나 작동 원리를 모르는 상태에서 입력에 따른 출력 결과를 테스트
1. 개념적 설계
사용자의 요구사항 분석 후 , 데이터베이스에 대한 추상적인 형태를 설계 ( 개념적 스키마 생성 - 추상적인 설계도, 개체 관계 다이어그램)
2. 논리적 설계
논리적 모델을 이용하여 논리적 스키마 생성 ( ERD를 이용하여 데이터베이스 스키마를 설계, 테이블 구조도 )
3. 물리적 설계
특정 DBMS가 제공하는 물리적 구조에 따라 테이블 저장 구조 설계 ( 필드의 데이터 타입, 인덱스, 테이블 저장 방법 )
순수 관계 연산자
- select σ ⇒수평단절, 행을 다가져옴
- project π ⇒수직단절, 열을 다가져옴
- join ▷◁ : 공통 속성을 이용해 두개의 릴레이션 튜플을연결→만들어진 튜플로 반환
- division ÷ : 릴S의 모든 튜플과 관련있는 릴R의 튜플반환
일반 집합 연산자
- UNION : 합집합
- INTERSECTION : 교집합
- DIFFERENCE : 차집합
- CARTESIAN PRODUCT : 교차곱
결합도
내용(content) - 공통(common) - 외부(external) - 제어(control) - 스탬프(stamp) - 자료(data)
응집도
우연적(Coincidental) - 논리적(Logical) - 시간적(Temporal) - 절차적(Procedural) - 교환적(Communication) = 순차적(Sequential) - 기능적(Functional)
교착상태 해결 방법
Detection(탐지)
교착상태 발생을 허용하고 발생 시 원인을 규명하여 해결(자원할당 그래프)
Avoidance(회피)
교창상태 가능성을 배제하지 않고 적절하게 피해나가는 방법(은행원 알고리즘)
Recovery(복구)
교착상태 발견 후 현황대기를 배제시키거나 자원을 중단하는 메모리 할당 기법(선점, 프로세스 중지)
Prevetion(예방)
교창상태의 필요조건을 부정함으로써 교착상태가 발생하지 않도록 미리 예방(환형대기, 비선점, 점유과 대기, 상호배제 4가지 부정)
거리 벡터 라우팅 프로토콜
- Bellman-Ford 알고리즘 사용
- RIP 프로토콜(최대 홉 수 15)
- 인접 라우터와 주기적으로 정보 교환
링크 상태 라우팅 프로토콜
- Dijkstra 알고리즘 사용
- OSPF 프로토콜(홉 수 제한 없음)
- 최단 경로, 최소 지연, 최대 처리량
0단계 불안정 (구현 전 or 목적 달성 전)
1단계 수행 (목적이 전반적으로 이뤄짐)
2단계 관리 (작업 산출물 인도)
3단계 확립(공학 원칙을 지킴)
4단계 예측(산출물의 양적 측정이 가능해져, 일관된 수행 가능)
5단계 최적화(지속적으로 업무 목적 만족)