소프트웨어 아키텍처(Software Architecture)
세상에 편재되어 있는 다양한 분야들이 컴퓨터에 의존하여 관리되고 진화되어 가고 있다. 이러한 발전을 위한 핵심 기술로는 소프트웨어가 중요한 자리를 차지하고 있다. 소프트웨어는 그 특성상 금융, 건설, 기계 등등 다양한 분야에 맞추어져 설계, 실현되고 사용되고 있다. 이는 소프트웨어라는 말 그대로 부드러운 소프트웨어 속성을 가지고 있기때문이다. 그러나 정제되지 않은 소프트웨어 개발의 다양한 접근 방식은 소프트웨어 위기라는 부정적인 미래 예측을 가져오고 있다. 소프트웨어 아키텍처는 이러한 소프트웨어 위기를 해결하기 위한, 품질 있는 소프트웨어를 만들기 위한 체계적인 설계 방방들에 대한 연구를 진행한다. 특히 소프트웨어 설계를 위한 문제 분석 방법, 문제 해결 접근 방법의 강구, 그리고 해결책들에 대한 신뢰도 평가를 진행하므로 좋은 품질의 소프트웨어를 만드는 방법을 연구한다. 세부적으로는 소프트웨어 아키텍처 설계 원리, 소프트웨어 패턴과 문제점, 소프트웨어 시험/평가, 소프트웨어 품질의 속성 분석, 소프트웨어 개발에서 위험성 관리, 설계도의 문서화 기법 들에 대한 연구를 진행한다. 연구되는 소프트웨어 아키텍처 방법들은 현재 스마트 조명 시스템, 지능형 교통 시스템 과제에 적용되어 결과를 평가하고 있다.