기업 환경에서 디자인 패턴을 응용한 웹 어플리케이션 프레임워크 구현 : A Realization of Web Application Framework Using Design Pattern in an Enterprise Environment
- 발행기관 서강대학교 정보통신대학원
- 지도교수 박수용
- 발행년도 2005
- 학위수여년월 200508
- 학위명 석사
- 학과 및 전공 정보통신대학원
- 식별자(기타) 000000084643
- 본문언어 한국어
초록/요약
인터넷이 널리 보급되고 사용자가 급증함에 따라 기업들은 변하는 시장환경 속에서 고객을 확보하고 경쟁력을 갖추기 위하여 다양한 서비스를 웹을 통하여 제공하려고 노력하고 있다. 이런 과정에서 기업들은 과거의 메인프레임 또는 C/S(Client Server) 어플리케이션을 웹 어플리케이션으로 점차 전환하고 있는 추세이다. 기업들이 시장 환경의 변화에 따라 기존의 어플리케이션을 점차 웹 어플리케이션으로 전환하고 있지만, 웹 어플리케이션은 그 구조가 메인프레임 또는 C/S 어플리케이션과는 크게 다르기 때문에 기업들이 어플리케이션을 전환하는데 어려움을 겪고 있다. 즉 메인프레임이나 C/S 환경에서는 소프트웨어 구조가 벤더나 제품에 종속되었기 때문에 개발자는 단순히 벤더나 제품에서 제시한 방법에 따라 어플리케이션을 개발하였지만, 웹 환경에서는 벤더는 표준 스펙에 따라 컨테이너만을 제공하기 때문에 개발자가 소프트웨어 구조를 직접 결정해야 하는 어려움이 있다. 이런 문제점으로 인하여 경험이 부족한 개발자들이 웹 어플리케이션을 개발하는 경우 소프트웨어 구조를 취약하게 하거나 복잡도를 증가시켜서 결국 비효율적인 시스템이 만들어지기도 한다. 이런 비효율적인 시스템은 소프트웨어 개발 생산성을 저해하고 소프트웨어 품질을 떨어뜨리며 또한 운영에 있어서 시스템의 가용성을 나쁘게 한다. 이와 같은 문제점들은 궁극적으로 기업이 시장에서 경쟁력을 상실하는 원인을 제공하게 된다. 본 논문에서는 기업이 웹 어플리케이션 개발에서 고려해야 하는 요구사항을 식별하고, 이 요구사항 가운데 특히 재사용성, 확장성, 가용성 및 소프트웨어 품질과 같은 비기능적 요구사항을 만족시키기 위한 방안으로 웹 어플리케이션 개발 과정에 프레임워크를 도입할 것을 제안한다. 따라서 웹 어플리케이션 개발에 필요한 프레임워크를 구현하기 위하여 GoF 디자인 패턴을 참조하고, 이 디자인 패턴들을 응용하여 프레임워크를 위한 패턴들을 구현하여 이것을 프레임워크 패턴이라 부르기로 한다. 그리고 프레임워크 패턴들을 결합하여 웹 어플리케이션 프레임워크를 구현하고, 이 프레임워크를 적용하여 웹 어플리케이션을 개발한 실제 사례를 분석하고, 몇 가지 결과자료를 살펴봄으로써 프레임워크가 앞서 식별된 비기능적 요구사항에 대하여 긍정적 영향을 미친다는 것을 입증할 것이다. 결국 디자인 패턴을 응용하여 구현한 프레임워크가 웹 어플리케이션 개발에 유용하다는 것을 입증함으로써 디자인 패턴은 기업이 과거의 메인프레임이나 C/S 어플리케이션을 웹 어플리케이션으로 전환할 때 발생하는 문제점들을 해결하기 위한 다양한 방안을 제시한다는 것을 알 수 있다.
more초록/요약
As the Internet is wide spread and the number of users has rapidly increased, businesses are trying hard to provide diversified services via the web to secure customers and stay competitive in the ever-changing market environment. In this process corporations are gradually converting the old mainframe or C/S (Client Server) applications into web applications. However, since web applications greatly differ from the mainframe or C/S applications in structures, corporations are having great difficulties with their conversion efforts. In other words, as the structure of software is dependent on the vendor product in the mainframe or C/S environment, the developer simply develops applications in accordance with the methodology suggested by the vendor or the product, while as the vendor provides only the container according to standard specs in the web environment, the developer finds it difficult to decide on the structure of the software by himself. Accordingly, when inexperienced developers develop web applications, they tend to weaken the structure of the software or increase its complexity, thereby making the system inefficient. This inefficient system hurts the productivity of software development, degrades the quality of software, and eventually worsens the availability of the system. These problems ultimately cause enterprises to lose competitiveness in the market. This study suggests the adoption of a framework in the process of developing web applications as a way to ensure that corporations will identify requirements that must be taken into account in the process of web application development, and to satisfy those nonfunctional requirements among them, such as reusability, scalability, availability and software quality. Therefore, to implement a framework necessary for the development of web applications, GoF design patterns are referenced, and these design patterns are utilized to materialize patterns for the framework, which will be called the framework patterns. In this study these framework patterns are combined to implement the web application framework, and then actual cases of web application development based on this framework are analyzed, and then a few resultant data are reviewed to prove that the framework has a positive impact on the nonfunctional requirements previously identified. All in all, this study shows that the framework implemented by means of design patterns is useful to web application development, and thus design patterns offer diverse means of solving the problems encountered in the corporate effort to convert existing mainframe or C/S application into web applications.
more