[소프트웨어 공학] Software Architecture란 무엇인가?
- 최초 등록일
- 2008.01.13
- 최종 저작일
- 2007.06
- 7페이지/ 한컴오피스
- 가격 1,000원
소개글
소프트웨어 구조에 대한 전반적인 이해를 도울 수 있는 자료입니다.
목차
서론
본론
1. 소프트웨어 아키텍쳐란 무엇인가?
2. 기존의 개발 단계에서 어느 부분에 해당하는가?
3. 왜 소프트웨어 아키텍쳐가 소프트웨어 산업의 실무에서 중요해지고 있는가?
4. 소프트웨어 아키텍쳐 산업의 비교(선진국과 국내 사정의 비교)
5. 소프트웨어 아키텍쳐와 ITA/EA/SOA와의 비교
6. MDA 혹은 기타 아키텍쳐와 비교
7. 향후 발전방향
결론,나의생각
본문내용
■ 서 론
-
● 최근 소프트웨어 개발 추세의 특징은 소프트웨어의 대규모화와 짧은 수명주기 등으로 나타난다. 대규모의 소프트웨어를 짧은 시간에 개발한다는 것은 기존 소프트웨어의 유지보수 또는 소프트웨어 부품의 재활용 또는 역공학을 통해서 쉽게 이룰 수 있을 것이다. 그러기 위해서는 전반적인 소프트웨어 구조의 설계 시점으로부터 원시 프로그램 코드의 생산까지 정보관리를 자동화하여 유지보수를 위한 소프트웨어의 이해는 물론 재사용성을 높여주는 일이 필요하다. 이를 위해 소프트웨어 아키텍쳐의 설계시점에서 소프트웨어를 유지보수나 재사용하기에 편리한 단위로 나누어 등록하고 관리하는 일이 필요하다. 이렇게 관리되는 요소들은 합성이나 분해과정을 거치면서 새로운 요소로 등록 관리 됨으로써 재사용성을 증대 시킬 수 있다.
■ 본 론
-
1. 소프트웨어 아키텍쳐란 무엇인가?
소프트웨어 아키텍쳐에 대한 연구는 90년대 초부터 꾸준하게 연구되어 오고 왔으며, 특히 소프트웨어 아키텍쳐의 개념과 구성요소, 그리고 용어에 대한 정의가 주요 관심사였다. 소프트웨어 아키텍쳐에 대한 정의를 살펴보면 Jones는 소프트웨어 아키텍쳐를 컴포넌트들로 구성된 구조, 이들 컴포넌트들 사이의 상호 작용에 대한 규정을 특성화 한 것으로 규정하였고, Boehm은 컴포넌트, 커넥션, 이론 근거들로 소프트웨어 아키텍쳐를 정의하였다. Perry와 Wolf는 소프트웨어 아키텍쳐를 특정한 형태를 갖는 구조적 요소들의 집합으로 정의하면서 요소들을 처리요소와 자료요소로 구분하고, 아키텍쳐는 다른 요소들 사이에 관련성들의 속성에 따라서 여러 형태로 나타날 수 있다고 하였다. Garlan과 Shaw는 아키텍쳐를 연산 컴포넌트들을 모아 놓은 것, 또는 단순 컴포넌트들, 그리고 컴포넌트들, 그리고 컴포넌트들 사이의 상호작용을 기술한 커넥터들로 구성됨을 제시하였으며, Hayes와 Roth는 행위와 인터페이스로 묘사되는 기능적 컴포넌트들과 컴포넌트 사이의 상호연결들로 이루어진 추상화 시스템 명세라고 정의하였다.
The Software architecture for a system is the structure or structures of the system,
which comprise elements, their externally-visible properties, and the relationships among them.
사전적으로 정의한 SW 아키텍쳐는 프로그램이나 컴퓨팅 시스템의 소프트웨어적인 구조이다. 아키텍쳐를 이루는 구성 요소를 컴포넌트라고 부르며, SW 아키텍쳐의 컴포넌트는 사용자들의 Functional Requirements (주로 업무 기능상의 요구 사항들)와 Non-Functional Requirements(주로 시스템 품질 관련한 요구 사항들, 예를 들어 성능, 상호운용성, 신뢰성, 사용편의성 등 품질 요소와 기타 법적 제약 조건 등의 요구 사항들)을 효과적으로 만족시키는 솔루션이다.
참고 자료
없음