복잡성 : 이문제가 가장 중요한 부분이다.
복잡성을 극복하려면
-시스템의 전체구조를 봐야 한다.
: 나는 개발할 때 전체를 보고 하는가? MC 도 그렇다.
- 시스템의 구성요소를 찾아야 한다.
: 전체를 봐야 구성요소가 보인다.
- 시스템의 구성요소들은 일관성이 있어야 하고, 서로 조화를 이루어야 한다.
- 시스템의 구성요소들 사이의 관계가 명확해야 하고 일정한 규칙을
따라야 함
분할하여 정복하라.
-이는 software 공학의
기본원칙이다. 세상의 모든 곳에 이 원칙은 통한다.
복잡한 시스템을 이해하려면 이해할 수 있는 수준까지 계속 분해해서 이해하면 된다.
모든 시스템은 이렇게 해야 한다.
소프트웨어 아키텍쳐 는 중요한 것만 다룬다.
아키텍쳐는 상황에 따라 고려되어야 한다.
Software architecture 라고 해서 소프트 웨어만 다룬다는
생각은 바보 같은 짓이다.
하드웨어, 네트워크, 통신
프로토콜, 운영시스템 모든 영역에 대해 고려해야 한다.
모든 모델은 아키텍쳐를 기반으로 만든다.
아키텍쳐의 활동
- 비즈니스
케이스 생성
- 요구
사항 분석
- 아키텍쳐
구축
아키텍쳐는 이해관계자들이 시스템을 이해하고, 의사소통 할 수 있도록
돕는다.
이런 아키텍쳐를 UML 모델링 하는 것이 가장 효과적이다.
만들어야 하는 시스템을 이해하지 못하면 프로젝트는 결코 성공할 수 없다.
아케텍쳐의
첫번째 역할은 이해관계자들이 시스템을 자신의 관심에 맞게 이해할 수 있도록 하는 것이다.
아키텍쳐를 한번 결정하면 나중에 바꾸는 것은 거의 불가능하다. 따라서
신중하게 선택해야 한다.
아키텍쳐는 시스템을 진화 시킨다.
아키텍트는 시스템이 수정 및 추가가 쉽도록 잘 설계해야 한다. 그래야
제대로 된 시스템이 된다. 즉 아키텍트가 어떻게 설계하는냐의 따라 시스템의 성공과 질이 보장된다.
PM 이 프로젝트 관리 분야에서 리더쉽을 발휘 한다면, 아키텍트는 기술 분야에서 리더쉽을 발휘 해야 한다.
아키텍트 의무
아키텍쳐를 정의하고 문서화하고 배포한다.
모든사람이 아키텍쳐를 정확하게 활용하도록 한다.
적합한 시기에 아키텍쳐를 발표하여 전체 조직에 일 을 할수 있게 하라.
소프트 웨어야 하드웨어가 조화를 이루도록 하라.
아키텍쳐의 전도사가 되라.
관리조직에게 아키텍쳐를 이해시켜라.
품질속성을 만족할수 있도록 제대로 설계하고 있는지 확인해라.
시스템 환경이나 개발 툴과 같은 문제를 제기하라.
이해관계자를 찾아서 상호작용하고 요구를 만족시켜 주어라.
아키텍쳐를 배치와 유지보수에도 적합하게 만들어라.
논쟁과 상충하는 문제들을 조율하라.
기술 문제를 해결하라.
훌륭한 설계나 인상 깊은 발표를 통해서 조직의 사기를 높여라.
새로운 기술을 도입했을 때 시스템이 나아가야 할 방향을 이해하고 제시하라.
개념 모델 이해할 것
품질 속성
품질 속성이란 양이나 질로 관찰하여 수치로 측정할수 있는 시스템의 특성이다.
댓글
댓글 쓰기