자격증/정보처리기사

21. 소프트웨어 아키텍처(A)

환성 2023. 1. 31. 15:45
728x90

소프트웨어 아키텍처

  • 소프트웨어의 골격이 되는 기본 구조
  • 기능적 요구사항으로 나타난 제약 반영 및 구현

 

모듈화

  • 소프트웨어 성능을 향상시키거나 시스템 기능들을 모듈 단위로 나누는 것
  • 인터페이스가 단순해짐, 프로그램의 효율적 관리

 

추상화

  • 문제의 전체적이고 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화 시키는 것
  • 최소의 비용으로 실제 상황 대처, 시스템 구조를 대략적으로 파악
  • 과정 추상화, 데이터 추상화, 제어 추상화
  • 단계적 분해 : 하향식 설계 전략(상위 개념 -> 하위 개념)

 

정보 은닉

  • 한 모듈 내부에 포함된 절차와 자료들의 정보를 감추어져 다른 모듈이 접근 못하게 하는 것
  • 모듈을 독립적으로 수행. 수정, 시험, 유지보수가 용이

 

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

  • 시스템 측면, 비즈니스 측면, 아키텍처 측면으로 구분
  • 시스템 측면 : 성능, 보안, 가용성, 기능성, 사용성, 변경 용이성, 확장성
  • 비즈니스 측면 : 시장 적시성, 비용과 혜택, 예상 시스템 수명
  • 아키텍처 측면 : 개념적 무결성, 정확성, 완결성
  • 설계 과정 : 설계 목표 설정 -> 시스템 타입 결정 -> 스타일 적용 -> 서브시스템의 기능, 인터페이스 동작 작성 -> 검토

'자격증 > 정보처리기사' 카테고리의 다른 글

23. 객체지향(A)  (0) 2023.01.31
22. 아키텍처 패턴(A)  (1) 2023.01.31
15. 품질 요구사항(A)  (0) 2023.01.31
13. UI 설계 도구(B)  (0) 2023.01.31
11. 사용자 인터페이스(A)  (0) 2023.01.30