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 |