1과목 - 소프트웨어 설계 3장. 애플리케이션 설계 20. 소프트웨어 아키텍처 소프트웨어 아키텍처의 설계 소프트웨어 아키텍처는 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템 구조 이해 관계자들의 의사소통 도구로 활용 기본 원리 모듈화 추상화 단계적 분해 정보은닉 모듈화 (Modularity) 소프트웨어 성능을 향상시키거나 유지 관리가 용이하도록 시스템의 기능들을 모듈 단위로 나누는 것 자주 사용되는 기능들을 공통 모듈로 구성하여 프로젝트의 재사용성 향상 추상화 (Abstraction) 문제의 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화시켜 나가는 것 최소의 비용으로 실제 상황에 대처 가능 추상화의 유형 과정 추상화 : 전반적인 흐름만 파악 데이터 추상화 : 데이터의 세부적인 용도를 정의..