정보처리기사 태그의 최신글

CS

소프트웨어 생명주기

소프트웨어 개발 전반 요약 (V-모델 기준) V-model 개발 단계(왼쪽)와 테스트 단계(오른쪽)를 1:1로 대응시킨 모델 각 단계의 산출물을 대응되는 테스트 단계에서 검증 요구사항 분석 ↔ 인수 테스트 요구사항 분석 시스템이 무엇을 해야 하는지 정의 기능 요구사항 정의 비기능 요구사항 정의 (성능, 보안, 신뢰성 등) 산출물 요구사항 명세서 유스케이스 다이어그램(선택) 인수 테스트 사용자 관점에서 수행 요구사항 충족 여부 확인 시스템 설계 ↔ 시스템 테스트 시스템 설계 전체 시스템 구조 설계 서브시스템 구성 외부 인터페이스 정의 산출물 시스템 설계서 유스케이스 다이어그램 컴포넌트 다이어그램 배치 다이어그램 시스템 테스트 전체 시스템 기능 테스트 성능, 보안 등 비기능 테스트 포함 아키텍처 설계 ↔ 통합 테스트 아키텍처 설계 주요 컴포넌트 구조 설계 컴포넌트 간 상호작용 정의 데이터 흐름 정의 산출물 아키텍처 설계서 컴포넌트 다이어그램 상위 수준 시퀀스 다이어그램 통합 테스트 모듈 및 컴포넌트 간 연동 테스트 인터페이스 오류 검출 스텁과 드라이버 사용 모듈 설계 ↔ 단위 테스트 모듈 설계 클래스 내부 구조 설계 메서드와 속성 정의 알고리즘 정의 산출물 상세 클래스 다이어그램 상세 시퀀스 다이어그램 모듈 설계서 단위 테스트 함수 또는 클래스 단위 테스트 내부 구조를 고려한 테스트 개발자가 직접 수행 구현 구현 설계 내용을 기반으로 소스 코드 작성 산출물 프로그램 코드 테스트 단계 요약 | 개발 단계 | 대응 테스트 | | ------------- | ------------- | | 요구사항 분석 | 인수 테스트 | | 시스템 설계 | 시스템 테스트 | | 아키텍처 설계 | 통합 테스트 | | 모듈 설계 | 단위 테스트 |

2026년 01월 29일 06:41

CS

Diagram & UML

Diagram & UML Diagram이란? 설계 시 모두가 같은 의미로 이해하기 위해 사용하는 그림 시스템을 시각적으로 표현하는 의사소통 도구 UML이란? Diagram을 그리기 위한 객체지향 모델링 언어 Unified Modeling Language 그림 기호와 의미를 표준화한 약속 UML의 구성요소 (사관다) UML은 다음 3가지로 구성된다. ① 사물 (Things) 관계의 대상이 되는 요소 구·행·그·주 - 구조: 시스템의 개념적, 물리적 요소 표현 - 행동: 시간과 공간에 따른 요소들의 행위 표현 - 그룹: 요소들을 그룹으로 묶어서 표현 - 주해: 부가적인 설명이나 제약조건 표현 ② 관계 (Relationships) 사물과 사물 사이의 연결 방식 연·집·포·일·의·실 - 연관(—): 2개 이상의 사물이 서로 관련되어 있음 - 집합(◇—): 하나의 사물이 다른 사물에 포함되어 있는 관계 - 포함(◆—): 포함하는 사물의 변화가 포함되는 사물에게 영향 미침 - 일반화(—▷): 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지 표현 - 의존(--→): 사물 사이에 연관이 있으나 필요에 의해 서로에게 영향을 주는 짧은 시간 동안만 연관 유지 - 실체화(--▷) : 사물이 할 수 있거나 해야 하는 기능 (행위, 인터페이스) 로 서로를 그룹화 할 수 있는 관계 ③ 다이어그램 (Diagram) 사물 + 관계를 그림으로 표현한 결과물 정적 다이어그램, 동적 다이어그램으로 구성 정적 다이어그램: 구조 표현 클·객·컴·배·복·패 - 클래스 (Class): 클래스 사이 관계 표현 - 객체 (Object): 인스턴스를 특정 시점의 객체와 객체사이의 관계로 표현 - 컴포넌트 (Component): 컴포넌트 간 관계 표현 - 배치 (Deployment): 물리적 요소들의 위치 - 복합체 구조 (Composite Structure): 복합 구조 가지는 경우 그 내부 구조 표현 - 패키지 (Package): 모델 요소들을 그룹화한 패키지들의 관계 동적 다이어그램: 동작/순서 표현 유·시·커·상·활·호·타 - 유스케이스 (Use Case): 사용자의 요구 분석, 액터, 유스케이스로 구성 - 시퀀스 (Sequence): 시스템, 객체들이 주고받는 메시지 - 커뮤니케이션 (Communication): 메시지 뿐만이 아니라 객체들 관의 연관까지 표현 - 상태 (State): 객체의 상태가 어떻게 변하는지 표현 - 활동 (Activity): 시스템이 어떤 기능을 수행하는지 - 상호작용 개요 (Interaction Overview): 상호작용 다이어그램 간의 제어흐름 표현 - 타이밍 (Timing): 객체 상태 변화, 시간 제약을 명시적으로 표현 ※ Use Case 다이어그램 전용 관계 연관 (Association): 액터 ↔ 유스케이스 연결 포함 (Include): 항상 수행되는 공통 기능 확장 (Extend): 조건부로 수행되는 기능 일반화 (Generalization): 액터 또는 유스케이스 간 상속 관계

2026년 01월 29일 06:08