아키텍처라는 용어는 IT 분야에서 많은 용도로 사용되고 있으며 용어를 사용하는 이해관계자의 범위 또는 상황에 따라 다른 의미로 해석된다. 가장 일반적인 개념은 시스템의 하드웨어, 시스템 소프트웨어, 네트워크 등의 구성을 정의하는 기술 아키텍처일 것이다. 이러한 아키텍처 정의도 틀린 것은 아니지만 TA(Technical Architecture)적인 관점에만 접근하고 있어 시스템이 다루어야 하는 데이터 또는 기능에 대해서는 큰 그림을 보여주지 못하고 있다. 최근에는 EA(Enterprise Architecture)라고 하여 더 큰 범위로 아키텍처를 정의하고 있으며 EA관점에서는 애플리케이션 아키텍처, 기술 아키텍처, 데이터 아키텍처 등과 같이 구분하여 각각의 아키텍처를 정의하고 이들을 모두 포함하는 최상위 ..
패러다임의 변화 속에서 소프트웨어와 관련된 많은 기술들이 출현하고 사라졌으며 지금도 새로운 기술들이 개발자들의 학습의 속도를비웃으며 나타나고 있다. 새로운 기술의 출현에 따라 프로젝트에서도 이들 기술 변화에 맞추어 적절한 기술을 프로젝트에 적용 해야 하지만 현실적으로는 어렵다. 급변하는 기술의 변화에서 엔터프라이즈 애플리케이션 구축을 위해 반드시 필요한 기술 요소들에 대해 살펴보고자 한다. 개발방법론 방법론은 시스템 구축에 있어 가장 중심에서 있어야 하며 프로젝트 팀을 운영하는 표준 프로세스이며 프로젝트 구성원들이 반드시 지켜야 하는 규범과도 같은 것이다. 방법론에는 두 개의 개념이 존재하는데 하나는 시스템을 구축하기 위한 분석, 설계, 구현과 관련된 프로세스 및 기법 등에 대한 개념이고, 다른 하나는 ..
소프트웨어 개발 분야에는 시스템 소프트웨어, 패키지, 최근에는 임베디드 소프트웨어 등 다양한 분야가 존재한다. 이들 다양한 소프트웨어를 개발하는데 있어 공통적인 부분도 있지만 많은 부분에 있어서는 개발하는 소프트웨어의 분야에 따라 틀려지게 된다. Enterprise Application을 개발하기 위해서는 개발방법론, 분석/설계 기법, 개발 툴, 테스트, 통합, 보안 등과 같은 다양한 분야의 기술을 이해해야 하며, 이러한 기술들을 오케스트라이징 하는 능력이 성공적인 애플리케이션 구축에 필수라 할 수 있다. Enterprise Application은 일반적으로 소프트웨어 개발 기술적인 측면에서는 다른 소프트웨어의 개발보다 쉽다고 할 수 있다. Enterprise Application을 구축하기 위해서 멀티..