09. 애플리케이션 설계 A - TOTOLII/study GitHub Wiki

소프트웨어 아키텍처

  • 소프트웨어 아키텍처의 설계 (원칙, 지침, 소통도구 좋은 품질, 비/기능적 요구사항)

  • 모듈화 : 나누기라고 생각하면 됨.

  • 추상화 : 간략화 시켰다라고 생각하면 됨

    • 과정 추상화 : 자세한 수행과정을 적용하지 않는다. 전반적인 흐름만 파악할 수 있도록 설계하는 과정.
    • 데이터 추상화 : 데이터에 세부적인 용도는 정의하지 않고 구조를 대표할 수 있도록 표현
    • 제어 추상화 : 이벤트를 발생시키는 정확한 절차, 방법을 정확하게 기술하지 않는다.
  • 단계적 분해 : 하향식 설계

  • 정보 은닉 : 감추었다고 생각하면 됨

  • 소프트웨어 아키텍처의 품질 속성

    1. 시스템 측면 : 성능, 보안, 가용성, 기능성, 사용성
    2. 비즈니스 측면 : 시장 적시성, 비용, 예상 시스템 수명
    3. 아키텍처 측면 : 개념적 무결성, 정확성, 구축 가능성, 적응성, 대체성