220217_정리노트 8
정리 노트
구조적 다이어그램 📘 1과목_C2 UML
- 클래스 다이어그램
- 클래스와 클래스 사이의 관계를 표현
- 시스템의 구조와 문제점을 파악할 수 있음
- 객체 다이어그램
- 클래스의 인스턴스를 객체 간의 관계로 표현
- 컴포넌트 다이어그램
- 구현 단계에서 사용
- 컴포넌트 간의 인터페이스를 표현
- 배치 다이어그램
- 구현 단계에서 사용
- 물리적인 요소인 결과물이나 컴포넌트 등의 위치를 표현
- 복합체 구조 다이어그램
- 복합적 구조를 갖는 컴포넌트, 클래스 등의 내부 구조를 표현
- 패키지 다이어그램
- 모델 요소들을 그룹화한 패키지들의 관계 표현
구조적 다이어그램 📘 1과목_C4 소프트웨어 아키텍처
애자일의 핵심가치 📘 1과목_C1 소프트웨어 생명주기 모델
- 절차보다 상호작용에 더 가치를 둠
- 방대한 문서보다는 실행되는 소프트웨어어에 더 가치를 둠
- 계약 내용보다는 고객과의 협업에 더 가치를 둠
- 계획을 따르기보다는 변화에 대응하는 것에 더 가치를 둠
XP(eXtreme Programming)의 기본 원리 📘 1과목_C1 소프트웨어 생명주기 모델
- Fine scale feedback
- Pair Programming
- Planning Game
- Test Driven Development : 선 단위 테스트 후 실제 코드 작성
- Whole Team
- Continuous process
- Continuous Integration
- Design Improvement
- Small Releases
- Shared understanding
- Coding Standards
- Collective Ownership
- Simple Design
- System Metaphor
- Programmer welfare
- Sustainable Pace
프레임워크의 특징 📘 1과목_C1 소프트웨어의 분류와 특성
요구사항 검증 기법 📘 1과목_C2 요구사항 정의
요구사항 관리 도구 📘 1과목_C2 요구사항 정의
- 프로젝트 생성: 타입 및 기본 모듈 템플릿, 역할별 뷰를 설정하여 프로젝트 생성
- 요구사항 작성: 모든 요구사항에 고유 ID가 생성, 부여되고 사용자에 의해 임의 변경 불가능
- 파일 내보내기/가져오기: 요구사항의 일괄 등록 및 추출, 다양한 형식 파일 지원
- 이력 관리: 요구사항별로 히스토리를 제공하여 변경 이력 관리
- 베이스라인: 요구사항이 베이스인지 구분하기 위한 기능
- 협업 환경: 공유 모드를 제공하고 선점 사용자 외에는 수정 및 삭제 제한
- 외부 연동 환경: 설계 도구, 형상 관리 도구와의 연동 지원
- 확장성: API를 통해 타 시스템과의 연동 기능 제공
SPICE🔥 📘 1과목_C1 소프트웨어 개발 방법론 활용
설계 단계 산출물🔥 📘 1과목_C1 소프트웨어 개발 방법론 활용
- 클래스 설계서
- 사용자 인터페이스 설계서
- 인터페이스 설계서
- 아키텍처 설계서
- 총괄시험 계획서
- 시스템시험 시나리오
- 엔티티 관계 모형 기술서
- 데이터베이스 설계서
- 통합시험 시나리오
- 단위시험 케이스
- 데이터 전환 및 초기 데이터 설계서
HIPO(Hiercharchy Input Process Output) 📘 1과목_C2 요구사항 정의
- 시스템의 기능을 고유한 모듈로 분할하고 이들 간의 인터페이스를 계층 구조로 표현한 양식
- 입력, 처리, 출력으로 기본 시스템 모델이 구성됨
- 하향식 소프트웨어 개발을 위한 문서화 도구
- 기호, 도표 등을 사용해서 직관적이며 기해가 쉬움
- 기능과 자료의 의존 관계를 동시에 표현할 수 있음
- 수정 및 유지 보수에 좋고 소규모 프로젝트에 적합
- 종류에는 가시적, 총체적 세부적 도표 등이 있음
CLASP(Comprehensive, Lightweight Application Secrity Process) 📘 1과목_C2 요구사항 정의
- 소프트웨어 개발 생명 주기 초기 단계의 보안을 강화하기 위해 정형화된 절차
- 활동 중심 역할 기반 프로세스로 구성된 집합체
- 이미 운영중인 시스템에 적용하기 좋음
- 개념, 역할 기반, 활동 평가, 활동 구현, 취약성의 5가지 관점에서 따라 개발 보안 절차를 진행
비점증적 통합테스트 방식 📘 2과목_C4 개발 단계에 따른 애플리케이션 테스트
블랙박스 테스트🔥 📘 2과목_C4 애플리케이션 테스트
SQL 응용 📘 3과목_C2 SQL 응용
B필드를 못 삭제하도록 하는 명령어는 RISTRICT "
- 🔥 둘다 변경 또는 삭제되는 것은 CASCADE
Trigger 📘 3과목_C3 SQL 활용
Procedure는 호출을 해주어야 실행되고 매일 또는 주기적으로 반복되는 작업에 사용"
순수 관계 연산자🔥 📘 3과목_C1 정규화
정규화의 장단점 📘 3과목_C1 정규화
- 장점
- 데이터의 정확성이 높아짐
- 데이터 구축이 유연해짐
- 단점
- 물리적 접근이 복잡해짐
- 조인이 많아짐
가상기억장치의 구현 기법 📘 4과목_C4 기억장치 관리
- 페이징 기법
- 가상기억장치에 보관되어 있는 프로그램과 주기억장치의 영역을 동일한 크기로 나눈 후 나눠진 페이지를 동일하게 나눠진 주기억장치의 영역에 적재하는 기법
- 외부 단편화는 발생하지 않지만, 내부 단편화는 발생할 수 있음
- 페이지의 위치정보를 저장하는 페이지 맵 테이블을 사용해야 하므로 비용이 증가하고 처리 속도가 감소
- 세그멘테이션 기법
- 가상기억장치에 보관되어 있는 프로그램을 다양한 크기의 세그먼트로 나눈 후 주기억장치에 적재
- 기억장치의 사용자 관점을 보존하는 기억장치 관리 기법
- 내부 단편화는 발생하지 않지만, 외부단편화는 발생
- 세그먼트의 위치정보를 저장하는 세그먼트 맵 테이블과 서로의 영역을 침범하지 않게 기억장치 보호키가 필요
배치 프로그램의 필수 요소 📘 4과목_C4 기억장치 관리
- 대용량 데이터: 대용량의 데이터를 처리할 수 있어야함
- 자동화: 일반적인 상황에서는 사용자의 개입 없이 동작되어야 함
- 견고함: 예외 처리를 하여 중단되지 않아야함
- 안정성: 발생한 문제에 대해 분석, 추적이 가능해야함
- 성능: 주어진 시간 내에 다른 애플리케이션을 방해하지 않고 처리를 완료할 수 있어야함
제어/처리 프로그램 📘 4과목_C4 운영체제
- 제어 프로그램
- 모니터링
- 작업제어
- 데이터 관리
- 처리 프로그램
- 언어 번역
- 서비스
- 문제해결 응용
댓글남기기