Computer Science/정보처리기사

[정보처리기사/실기] 소프트웨어 아키텍처

minjiwoo 2022. 9. 28. 00:05
728x90

소프트웨어 아키텍쳐

1) 모듈화 
시스템의 기능을 모듈 단위로 나누는 것 

2) 추상화 
문제의 전체적이고 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화시켜 나가는 것

3) 단계적 분해 
문제를 상위의 중요 개념으로부터 하위의 개념으로 구체화 시키는 분할 기법

4) 정보은닉 
모듈 내부에 포함된 절차와 자료들의 정보가 갖추어져 다른 모듈이 접근하거나 번경하기 못하도록 하는 기법 

5) 상위 설계와 하위 설계 
- 상위 설계 : 아키텍처 설계, 예비 설계 (구조, DB, 인터페이스)
- 하위 설계 : 모듈 설계, 상세 설계 (컴포넌트, 자료구조, 알고리즘)

6) 설계 과정 
설계 목표 설정 -> 시스템 타입 결정 -> 아키텍쳐 패턴 적용 -> 서브 시스템 구체화 -> 검토 

7) 협약에 의한 설계 
컴포넌트를 설계할 때 클래스에 대한 여러 가정을 공유할 수 있도록 명세한 것이다 

728x90