역할:
|
소프트웨어 아키텍트는 프로젝트에 대한 전체적인 설계 및 구현을 제한하는 핵심 기술적 결정을 포함하는 소프트웨어 구조에 대한 책임을 맡습니다. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
소프트웨어 아키텍트는 소프트웨어 구조로 표현되는 주요 기술 결정 추진에 대한 총괄적인 책임을 담당합니다. 일반적으로, 이 역할에는 시스템의 요구사항, 설계, 구현 및 전개 "방향" 등 기술적으로 중요한 시스템 측면을 식별하고 문서화하는 것이 포함됩니다.
또한 아키텍트는 이런 결정에 대한 근거를 제공하고 여러 스테이크홀더의 의견을 조정하며 기술적 위험을 감소시키고, 결정이 효율적으로 의사소통되고 검증되며 고수되고 있는지 확인하는 것을 담당합니다.
이 절은 이 역할에 관련된 추가 정보의 링크를 제공합니다.
"이상적인 아키텍트는 문학자, 수학자, 역사 연구에 정통한 사람, 근면한 철학도, 음악에 능통하고 의학에 무지하지 않으며 법학자의 대답에서 배우며 천문학 및 천문학적 계산에 능통한 사람이어야 합니다." - Vitruvius, BC 25년경
요약하여 말하자면, 소프트웨어 아키텍트는 다방면에 능통해야 하고 문제를 빠르게 파악하고 완전한 정보가 없는 경우에 지식에 근거한 비판적인 판단을 내릴 수 있도록 성숙하고 비전 및 폭넓은 경험을 소유하고 있어야 합니다. 보다 명확히 말하면, 소프트웨어 아키텍트 또는 구조 팀의 구성원은 다음과 같은 기술을 겸비하고 있어야 합니다.
전문가적 관점에서 소프트웨어 아키텍트는 역할: 설계자 성능도 처리해야 합니다. 그러나 설계자와는 다르게 소프트웨어 아키텍트는 다음을 수행합니다.
프로젝트가 구조 팀을 보장할 만큼 큰 경우, 구조 팀의 목적은 광범위한 경력을 포함하고 소프트웨어 엔지니어링 프로세스에 대한 공통된 지식을 공유하여 재능을 잘 혼합하는 것입니다. 구조 팀이 여러 팀, 도메인 또는 계약자 대표의 위원회이어서는 안됩니다. 소프트웨어 구조는 담당자가 계속해서 여기에만 전념해야 하는 전시간 기능입니다.
더 작은 규모의 프로젝트의 경우, 한 사람이 프로젝트 관리자 및 소프트웨어 아키텍트 역할 모두를 수행할 수 있습니다. 그러나 가능한 한 이런 역할의 담당자를 분리하는 것이 더 좋습니다. 이것은 한 역할에 대한 시간적인 압박으로 다른 역할을 잘 수행하지 못할 수 있기 때문입니다.
참조 페이지, 특히 소프트웨어 구조에 대한 참조를 참조하십시오.
Rational Unified Process
|