모델링
소프트웨어에서의 모델
- 서로의 해석을 공유해 합의를 이룸
- 해석의 타당성 검토
- 현재의 소프트웨어 시스템 or 앞으로 개발할 소프트웨어의 원하는 모습을 가시화하는 데 도움
- 모델을 통해 소프트웨어 시스템의 구조와 행위 명세
- 시스템 구축하는 틀, 구축된 소프트웨어의 문서화 기능 제공
모델은 추상화에 바탕을 두고 만들어져야 한다 (특정 관점에서 관련이 있는 점은 부각. 관련 없는것은 무시)
UML
모델링을 하려면 시스템을 모델로 표현해주는 언어가 필요하다.
대표적인 언어로 UML이 있다.
UML 언어
요구 분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서
개발자 사이의 의사 소통 원할하게 이루어지도록 표준화한 통합 모델링
Class diagram
시간에 따라 변하지 않는 시스템의 정적인 면을 보여주는 UML 구조 다이어그램.
시스템을 구성하는 클래스와 그들 사이의 관계를 나타냄.
주요 구성 요소 : 클래스와 관계
접근 제어자
-
+ = public
-
- = private
-
# = protected
-
~ = package
분석 단계의 클래스 diagram
-> 속성과 연산 항목에 구체적인 타입 정보와 가시화 정보를 기술하지 않은 분석 단계
설계 단계의 클래스 diagram
-> 바로 코드를 생성할 수 있게 구체적인 타입 정보와 가시화 정보를 기술