정보처리기사 12

소프트웨어 아키텍처

1. 개념 외부에서 인식할 수 있는 특성이 담긴 소프트웨어의 골격이 되는 기본 구조 시스템 전체에 대한 큰 밑그림 2. 특징 - 개발할 소프트웨어에 대한 전체적인 구조를 다룸 - 소프트웨어를 이루고 있는 여러 구성 요소 (서브 시스템, 컴포넌트)를 다룸 - 구성 요소들이 인터페이스를 통해서 어떻게 상호작용하는지를 정의 - 세부 내용 보다는 중요한 부분을 다룸 - 시스템 설계와 개발 시 적용되는 원칙과 지침이 있어야 함 3. 아키텍처 설계 시 고려사항 - 모든 이해관계자의 이해를 도울 수 있는 의사소통 도구로 활용할 수 있어야 함 - 개발 비용, 기간, 조직의 역량 등의 제약 사항을 정의해야 함 - 시스템 품질 속성(성능성, 사용성, 보안성, 안전성, 검증성, 변경성 등)의 우선순위를 결정해야 함 - 소프..

UML(Unified Modeling Language) 다이어그램

1. 개념 요구분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서, 개발자간의 의사소통을 원활하게 이루어지게 하기 위하여 표준화한 모델링 언어 소프트웨어 개발 시 산출물들을 비주얼하게 제공하여 개발자와 고객 또는 개발자 상호 간의 의사소통을 원활하게 할 수 있다. 2. 다이어그램의 구성 1) 액터 : 시스템 외부에서 시스템과 상호작용을 하는 사람이나 다른 시스템 (사용자) 2) 시스템 : 개발하고자 하는 어플리케이션 3) 유스케이스 : 시스템이 액터에게 제공해야 하는 기능 4) 관계 : 액터와 유스케이스들 사이의 의미있는 관계 3. 다이어그램의 종류 1) 구조 다이어그램 (정적 모델링) - 시스템의 정적 구조와 다양한 추상화 및 구현 수준에서 시스템의 구성 요소, 구성 요소들 간의 관계를 보여줌..