저작자표시-비영리-변경금지 2.0 대한민국 이용자는 아래의 조건을 따르는 경우에 한하여 자유롭게 이 저작물을 복제, 배포, 전송, 전시, 공연 및 방송할 수 있습니다. 다음과 같은 조건을 따라야 합니다: 저작자표시. 귀하는 원저작자를 표시하여야 합니다. 비영리. 귀하는 이 저작물을 영리 목적으로 이용할 수 없습니다. 변경금지. 귀하는 이 저작물을 개작, 변형 또는 가공할 수 없습니다. 귀하는, 이 저작물의 재이용이나 배포의 경우, 이 저작물에 적용된 이용허락조건 을 명확하게 나타내어야 합니다. 저작권자로부터 별도의 허가를 받으면 이러한 조건들은 적용되지 않습니다. 저작권법에 따른 이용자의 권리는 위의 내용에 의하여 영향을 받지 않습니다. 이것은 이용허락규약(Legal Code)을 이해하기 쉽게 요약한 것입니다. Disclaimer
工 學 碩 士 學 位 請 求 論 文 구매자 위주 전자 카탈로그의 디렉터리 서비스를 위한 템플릿 관리 시스템 A Template Management System for the Directory Service of Buyer-Oriented e-catalog 2009 年 2 月 仁 荷 大 學 校 工 學 大 學 院 컴퓨터 情 報 工 學 科 閔 杜 泳
工 學 碩 士 學 位 請 求 論 文 구매자 위주 전자 카탈로그의 디렉터리 서비스를 위한 템플릿 관리 시스템 A Template Management System for the Directory Service of Buyer-Oriented e-catalog 2009 年 2 月 指 導 敎 授 趙 根 植 이 論 文 을 碩 士 學 位 論 文 으로 提 出 함 仁 荷 大 學 校 工 學 大 學 院 컴퓨터 情 報 工 學 科 閔 杜 泳
이 論 文 을 閔 杜 泳 의 碩 士 學 位 論 文 으로 認 准 함 2009 年 2 月 主 審 印 副 審 印 委 員 印
목 차 목 차... i 표 목 차... ii 그 림 목 차... iii 요 약... iv ABSTRACT... v 제 1 장 서 론...1 제 2 장 이론적 배경...3 2.1 B2B EC 의 정의 및 개념...3 2.2 개인화 서비스...6 2.3 관련기술...9 제 3 장 템플릿 관리 시스템 설계 및 구현... 15 3.1 템플릿 관리 시스템 개요... 15 3.2 데이터베이스 설계... 17 3.3 템플릿 관리 시스템 구현... 23 제 4 장 실험 및 평가... 31 제 5 장 결 론... 33 참고문헌... 35 i
표 목 차 [표 2-1] 기업간 인터넷 상거래 구조 4 [표 2-2] 기업간 전자상거래 5 [표 2-3] 거래주도 별 전자상거래 6 [표 3-1] 시스템 구현 환경 16 [표 3-2] 고객사 테이블(TBL_CUSTOM) 18 [표 3-3] 쇼핑몰 템플릿 테이블(TBL_SHOP) 19 [표 3-4] 고객사 팝업관리 테이블(TBL_POPUP_MANAGE) 20 [표 3-5] 쇼핑몰 카테고리 테이블(TBL_SHOP_PRODUCT_CATEGORY)21 [표 4-1] 메인 화면 디자인 변경 시간 31 [표 4-2] 팝업 창 등록 시간 32 ii
그 림 목 차 [그림 2-1] B2B 마켓의 유형 5 [그림 2-2] 기술 관점의 웹 사이트 발전 과정 7 [그림 2-3] 닷넷 프레임워크에서의 실행 구조 10 [그림 2-4] 전통적인 웹 어플리케이션 모델과 AJAX 모델 비교 13 [그림 2-5] 전통적인 웹 어플리케이션 반응 패턴과 AJAX 반응 패턴 비교14 [그림 3-1] 중개자형 B2B 쇼핑몰의 구성도 1 5 [그림 3-2] 템플릿 관리 시스템의 구성요소 24 [그림 3-3] 템플릿 소스 디렉터리 1 7 [그림 3-4] 템플릿 관리 시스템 테이블의 ERD 1 7 [그림 3-5] 고객사 기본정보 등록 및 템플릿 적용 시퀀스 다이어그램 2 3 [그림 3-6] 고객사 기본정보 등록 화면 24 [그림 3-7] 고객사 템플릿 관리 메인 화면 24 [그림 3-8] 고객사 템플릿 등록 및 적용 25 [그림 3-9] 메인 화면 디자인 관리 시퀀스 다이어그램 26 [그림 3-10] 메인 디자인 등록 및 관리 화면 27 [그림 3-11] 메인 디자인 수정 화면 및 미리 보기 28 [그림 3-12] 메인 디자인 고객사 연결 화면 28 [그림 3-13] 팝업 관리 시퀀스 다이어그램 29 [그림 3-14] 팝업 등록 및 관리 화면 30 iii
요 약 최근 몇 년 동안 인터넷 쇼핑몰에 대한 기업들의 관심이 폭발적으로 증가하고, 기업체 마다 인터넷 쇼핑몰을 구축하고 새로운 전자상거래 모델을 개발하는 등 전자상거래와 관련된 사업에 앞다투어 참여하고 있다. 특히 기업간 전자상거래 분야는 전체 전자상거래 분야에서 매우 큰 비중을 차지하고 있고, 그 규모는 점점 더 커지고 있다. 또한 쇼핑몰간의 상호 운용성, B2B 전자상거래를 위한 확장성, 고객에게 안성맞춤이 되는 개인화 서비스의 중요성, 구매자의 매출을 극대화 하기 위한 쇼핑몰의 UI 변경 및 관리의 중요성이 날로 커지고 있다. 이 논문에서는 B2B 전자상거래의 유형 중 중개자 위주 쇼핑몰에서 구매자 위주의 디렉터리 서비스를 하여 수십 개의 Client 쇼핑몰 UI 를 효율적으로 관리할 수 있도록 템플릿 관리 시스템을 설계 및 구현하여 각각의 Client 쇼핑몰 UI 에 대한 개인화 서비스 및 업종별, 그룹사별 서비스 할 수 있도록 템플릿을 달리 적용하여 쇼핑몰 생성, 유지보수 및 관리를 쉽게 할 수 있는 서비스를 제안 했다. 이 논문에서 템플릿 관리 시스템을 적용하기 전과 비교하여 실험 평가한 결과 템플릿 관리 시스템은 B2B 쇼핑몰의 관리자가 쇼핑몰을 생성하고, 유지보수 및 관리하는데 기존의 환경에서 각각의 고객사 별로 관리하던 방식과 비교하여 작업 시간을 현저히 줄일 수 있어 빈번하게 발생하는 고객의 변경 요청에 보다 쉽고, 효율적으로 대응할 수 있음을 보였다. iv
ABSTRACT In the recent years many companies have grown their interest in Internet shopping malls explosively and competed with each other by constructing Internet shopping malls and developing new e-commerce models. B2B e-commerce especially accounts for a big part of the whole e-commerce field and its size is growing bigger and bigger. Besides, compatible operation between shipping malls, expandability for B2B e- commerce, importance of customized services, shopping mall UI modification and management for maximizing sales are becoming more significant issues. This paper designed and implemented a template management system that enables to efficiently manage dozens of client shopping malls and UIs in the intermediary-focused shopping mall, one of B2B e-commerce types. In addition, this paper proposed services that facilitate the construction, maintenance and management of shopping malls by applying different templates to each client shopping mall UI, allowing them to provide various services depending on the person, business type and business division. In conclusion, this paper proved that the template management system is useful to cope with customers frequent modification requests more easily and efficiently by reducing the work time conspicuously, compared to the existing method in which B2B shopping mall managers construct, maintain and manage shopping malls, based on each customer company. v
제1장. 서 론 1.1 연구의 목적과 필요성 인터넷의 보급이 확산됨에 따라 네트워크를 통한 다양한 형태의 전자상거래 방식이 나타나면서 전자상거래의 영역은 점차 넓어지고 있다. 전자상거래는 상품과 서비스가 거래되는 방식에 따라 커다란 변화를 가져오고 있고 기업의 업무처리 방식에도 혁신적인 변화를 야기하고 있으며, 이로 인해 기존의 산업 구조에도 많은 영향을 주고 있다[1]. 기업간 비즈니스 환경도 기존의 방식을 벗어나 인터넷을 적극 활용하는 방향으로 변화해 가고 있다. 특히 기업과 기업 사이에서 일어나는 다양한 거래를 말하는 B2B 인터넷 비즈니스는 전자상거래 분야에서 많은 발전이 있어왔다. 통계청이 최근 발표한 2/4 분기 전자상거래 통계조사 결과에 따르면 지난 2008 년 2 사분기 국내 전자상거래 총 거래 액은 전년 동기 대비 24.6% 늘어났고, 거래주체 별 비중도 B2B 가 총 거래 액의 89.9%로 대부분을 차지하고 있다[6]. B2B 전자상거래 분야에는 다양한 산업 분야의 기업고객이 자사의 업종에 맞도록 또는 계절이나 특정 이벤트 및 행사에 맞도록 디자인 변경, 메뉴 재구성, 사용자 인터페이스 변경 요청으로 인해 많은 비용이 발생하고, 요청에 대한 작업 기간이 소요되고 있다. 이와 같이 B2B 전자상거래 분야에서 다양한 비즈니스 모델이 등장하고, 규모 또한 방대해 짐에 따라 다양한 고객사의 요구에 충족하고 효율적이고 빠른 관리를 할 수 있는 시스템이 요구되고 있다. 1
이러한 필요성에 따라 이 논문에서는 B2B 쇼핑몰 구현에 있어서 기초가 될 수 있는 템플릿 관리 시스템을 설계 및 구현하여 UI 및 디자인에 관한 다양한 고객의 요구를 충족할 수 있고, 이러한 템플릿들을 체계적으로 구축하여 라이브러리화 함으로써 전체 쇼핑몰 구축에 필요한 디자인 과정을 일관되게 관리할 수 있도록 하는데 그 목적을 둔다. 1.2 연구의 방법과 범위 이 논문에서는 ASP.NET 과 AJAX 기술을 사용하여 템플릿 관리 시스템을 설계 및 구현하였고, 이를 위해 다음과 같은 방법으로 논문을 작성했다. 첫째, 이 논문의 관련 연구로써 B2B 전자상거래의 정의와 국내현황에 대해 조사/분석 하였고, 개인화 서비스의 의미와 효과에 대해서 고찰했다. 둘째, B2B 쇼핑몰의 유형 중에 중개자 위주의 쇼핑몰에서 필요한 관련 업무를 정의하고, 셋째는 필요한 템플릿 관리 시스템을 도출하겠다. 넷째, 쇼핑몰 관련 템플릿 관리 시스템을 설계하고, 마지막으로 템플릿 관리 시스템을 구현하고 실제 적용시켜 테스트 하도록 하겠다. 2
제 2 장 이론적 배경 2.1 B2B EC 의 정의 및 개념 2.1.1 B2B EC 의 정의 한국의 한국전산원에서는 전자상거래를(Electronic Commerce:EC) 개인, 기업, 정부 등의 경제주체 간에 컴퓨터 네트워크를 이용하여 상품 및 서비스를 교환하는 방식으로 보고 있으며 전자상거래를 통해 교환되는 상품 및 서비스에 가구 같은 물리적인 상품 이외에도 소프트웨어, 영상오락물, 정보서비스, 전문가 컨설팅, 금융서비스, 교육, 광고 등과 같이 전송이 가능한 디지털 상품 및 서비스를 포함한다 고 정의하고 있다. 전자상거래를 정의하는 관점이 무엇이냐에 따라 통신측면, 비즈니스 처리측면, 서비스 측면, 온라인 측면에서 다르게 정의하고 있으며, 또한 전자상거래를 정의하는 다양한 기관에 따라 전자상거래의 차이를 보이고 있다. B2B EC(Business to Business E-Commerce)는 인트라넷, 엑스트라넷, 인터넷을 통한 비즈니스 관계에서 수행되는 상거래로 규정할 수 있다[12]. 기업간 전자상거래(B2B)는 e-비즈니스 라고도 표현하는데 e-비즈니스는 기업간의 영업 및 마케팅 활동을 중심으로 기업간의 정보공유와 의사결정 모형을 통합한 확장된 전자상거래의 연결인 것이다. 3
2.1.2 B2B EC 의 유형 기업간 인터넷 전자상거래 구조는 누가 시장을 주도하느냐에 따라서 크게 [표 2-1]과 같이 판매자 위주(Supplier-Oriented Marketplace), 구매자 위주(Buyer Oriented Marketplace), 중개자 위주(Intermediary-Oriented Marketplace)로 나누어 볼 수 있다. 판매자 위주의 B2B EC 는 판매자가 몰을 구성하고, 그 몰에 구매자가 접속하는 형태를 말하는 것으로 Dell 의 컴퓨터 판매나 Cisco 의 네트워크 장비판매의 경우이다. 구매자 위주의 B2B EC 는 구매자가 몰을 운영하고 그 몰에 판매자가 접속하는 형태로 GE 의 TPN Post 같이 부품 공급업자들이 이 몰에 접속하여 입찰에 참여하는 경우이다. 중개위주의 구조는 중개 몰에 판매자와 구매자들이 접속하여 상거래가 이루어지는 경우로서 Boeing 사의 경우나 철강 산업의 e-steel 의 경우를 들 수 있다. [표 2-1] 기업간 인터넷 상거래 구조 유형 주도자 서버의 위치 역 할 예 판매자 위주 판매자 판매자 구매자들이 판매자의 서버에 접속하여 구매활동 Dell, Cisco 구매자 위주 구매자 구매자 판매자들이 구매자의 서버에 접속하여 구매활동 GE(TPN) 중개 위주 중개자 중개자 다수의 판매자와 구매자들 간에 거래를 중개 Boeing, e-steel Market Place B2B EC 는 구매자나 판매자와 무관하게 독립된 거래소를 만들어 상거래를 운영하는 방식인데, 이들은 거래 수수료, 주문연결 등을 4
통하여 수익을 창출하고, 여러 다양한 거래방식(경매나 실시간 입찰)을 이용하기도 한다. [그림 2-1]은 마켓플레이스 중심 B2B 개념도를 나타내고 있다. [그림 2-1] B2B 마켓의 유형 2.1.3 B2B EC 의 국내현황 (1) 총 규모 2008 년 2/4 분기 기업간 전자상거래(B2B) 규모는 141 조 80 억 원으로 전년 동 분기에 비해 24.8% 증가하였으며, 전 분기에 비해 10.1% 각각 증가했다. [표 2-2] 기업간 전자상거래 (단위: 십억원, %) 2007 년 2008 년 증감률 구분 전년 2/4 분기 1/4 분기 2/4 분기 전분기비 동분기비 총 거래액 113,012 128,051 141,008 10.1 24.8 5
(2) 거래주도별 규모 2008 년 2/4 분기 전자상거래 액을 거래주도형태별로 보면 구매자 중심형 거래액은 96 조 4,280 억 원으로 전년 동 분기에 비해 24,4%, 판매자 중심형 거래액은 36 조 1,960 억 원으로 21.6%, 그리고 중개자 중심형 거래 액은 8 조 3,840 억 원으로 45,6% 각각 증가했다. [표 2-3] 거래주도 별 전자상거래 (단위: 십억원, %) ()안의 수치는 구성비임 2007 년 2008 년 증감률 거래주도별 전년 2/4 분기 1/4 분기 2/4 분기 전분기비 동분기비 총 거래액 113,012 128,051 141,008 (100.0) (100.0) (100.0) 10.1 24.8 구매자 77.486 87,081 96,428 중심 (68.6) (68.0) (68.4) 10.7 24.4 판매자 29.765 33.272 36,196 중심 (26.3) (26.0) (25.7) 8.8 21.6 중개자중심 5,760(5.1) 7,698(6.0) 8,384(5.9) 8.9 45.6 2.2 개인화 서비스 2.2.1 개인화의 배경 인터넷을 사용하다 보면 포털 사이트나 쇼핑몰들이 다양한 마케팅 방법을 사용해 사용자들이 오래 머물도록 하거나 재방문을 유도한다. 그 중에 하나로 6
사용자의 선호도에 따라 서비스를 선택할 수 있게 하는 방법이 있다. 각종 신문이나 인터넷 서점, 쇼핑몰 등에서 사용자의 스타일에 맞는 정보를 선택 및 편집할 수 있도록 하거나 개인적인 취향에 따라 자신의 페이지를 구성하고, 사용자의 구매기록, 취향에 맞는 제품을 추천 받을 수 있는 기능들을 제공한다. 이렇게 개인화란 웹사이트 방문자의 개별적인 요구에 대한 개인화된 상품과 정보를 제공하는 것을 의미한다[3],[9]. 개인화가 대두된 배경 중 하나의 배경은 웹 사이트 기술의 점진적인 발전에서 찾을 수 있다. 웹 사이트의 기술적의 발전 단계를 살펴보면 다음 그림[2-2]와 같다. [그림 2-2] 기술 관점의 웹 사이트 발전 과정 정적인 단계에서는 오프라인 상의 텍스트를 인터넷상으로 옮겨 보여주는 정적인 도구로의 웹사이트 이용이었으며, 동적인 단계에서는 DB 와의 연결, 각종 스크립트 언어(ASP, PHP, JSP) 등을 이용하여 동적인 웹사이트를 구성하기 시작한 단계이다. 그러나 이 단계에서는 사용자들의 편의성은 높아졌지만 일괄적인 정보를 사용자에게 보여준다는 점에서 한계가 있었다. 이렇게 등장한 것이 바로 웹사이트의 개인화 단계이다. 개인화 된 웹사이트의 가장 큰 특징은 business logic 과 Interface 를 완전히 분리시켜 다양한 서비스를 가능하게 하도록 하였고, 여기서 고객의 profile 정보를 추출하여 개인의 선호도, 숨어 있는 패턴을 발견하여 고객만을 위한 개인화된 웹 페이지를 만들어 개인화 서비스를 고객에게 공급할 수 있다. 7
2.2.2 개인화의 효과 웹사이트는 개인화를 구현함으로써 사용자의 충성도를 요인하게 되며 다음과 같은 효과를 갖는다. 첫째, IT 기술이 효과적으로 사용된다면 조직체가 상호작용적인 커뮤니케이션을 통하여 고객들이 마음을 사로잡을 수 있는 기회를 부여하고 일대일 마케팅 패러다임이 도래할 것이다. 이러한 패러다임은 조직체들이 만약 가능한 요소로서 정보기술을 사용하여 전체적인 마켓의 분배보다 각각의 고객 분배를 획득하고 유지하는데 집중한다면 더욱 성공할 것이다[11]. 둘째, 고객들의 개별적인 요구에 대해 개인화된 제품과 서비스를 제공하는 것이 고객 보유를 증가시키는 효과적인 방법이며 특정한 소매상인으로부터 고객이 구매를 많이 할수록 그 소매상인은 고객에 대한 정보를 더 많이 가질 수 있다[15]. 셋째, 개인화는 웹진화의 세 번째 단계이다. 개인화가 동적으로 생성된 콘텐트를 전달하는 동적인 웹 기술의 기반 위에서 수립될 수 있다는 것이다. 또한 개인화는 개인적으로 관련된 콘텐트를 보여줄 수 있는 능력을 제공하며, 웹사이트를 반복적으로 방문할 수 있게 하고 고객의 충성도를 생성할 수 있는 유일한 방법이다[14]. 개인화의 효과는 일대일 마케팅을 가능하게 하며 고객의 개별요구 충족으로 고객 보유 및 고객구매를 증가시키며 고객의 충성도를 높인다. 8
2.2.3 템플릿 템플릿이란 웹 어플리케이션에서 프로그램 로직과 프리젠테이션 로직을 분리하기 위한 개념이다. 템플릿 방식에서는 프로그램 로직은 CGI 프로그램이 담당하고, 프리젠테이션 로직은 템플릿이 담당한다. 템플릿을 사용해서 얻을 수 있는 장점은 다음과 같다. 프로그램 로직과 프리젠테이션 로직을 분리해서 개발의 효율성을 높인다. 즉, 프로그램적인 측면과 디자인 측면을 분리하여 작업을 할 수 있고, 애플리케이션 소스 코드를 수정하지 않고서 XML/HTML 코드를 수정할 수 있다[10]. 프로그램 코드를 수정하는 것보다 지역화(localization)가 용이해진다. 웹 상에서 작동하는 전자 카다로그를 생성하기에 적합하다. 템플릿을 사용함으로써 고객 지향적인 마케팅(One-to-One Marketing)을 쇼핑몰 상에서 구현할 수 있다. 개개인의 고객마다 다른 규칙에 의한 마케팅을 수행하기 위해서는 템플릿의 지원이 필요하다. 2.3 관련기술 2.3.1 닷넷 프레임워크 닷넷 프레임워크(.NET Framework)는 마이크로소프트에서 개발한 윈도우 프로그램 개발 및 실행 환경이다. 네트워크 작업, 인터페이스 등의 많은 작업을 캡슐화하였고, CLR(Common Language Runtime)이라는 이름의 가상 9
머신 위에서 작동한다[8]. [그림 2-3]은 닷넷 프레임워크의 실행 구조를 보여 주는 그림이다. [그림 2-3] 닷넷 프레임워크에서의 실행 구조 (1) 공통 언어 기반(Common Language Infrastructure,CLI) 닷넷 프레임워크의 가장 중요한 컴포넌트는 공통 언어 기반이다. CLI 를 둔 목적은 애플리케이션 개발과 실행 시 언어네 종속적이지 않은 플랫폼을 제공하기 위해서이다. 예외 처리, 가비지 콜렉션, 보안, 호환 등을 위한 소프트웨어 컴포넌트를 포함한다. 마이크로소프트가 구현한 CLI 를 일컬어, 공통 언어 런타임(Common Language Runtime, CLR)이라고 한다. 10
(2) 어셈블리 중간 언어인 MSIL 코드는. NET 어셈블리에 저장된다..NET 어셈블리는 윈도우 구현에서는 포터블 익스큐터블(PE) 파일이 된다. (EXE 혹은 DLL 파일이다.).NET 어셈블리는 소프트웨어 배포 및 판 높임, 보안 등에 있어서.NET 유니트 역할을 한다. 어셈블리는 파일 한 개 이상 여러 개의 파일로 구성되는데, 파일들 중 한 개 파일은 매니페스트를 꼭 포함해야 한다. 어셈블리의 완전한 이름은 간단한 텍스트 이름 및 판(버전) 번호, 컬쳐, 공개 키 암호 방식(public key) 토큰 등을 가지고 있다. 이 중 이름은 꼭 가지고 있어야 하지만, 나머지는 없어도 된다. 공개 열쇠 암호 토큰은 어셈블리가 작성될 때 생성된다. 이 토큰은 어셈블리의 이름과 어셈블리 파일들의 내용을 대표하는 고유의 값이다. 비밀 열쇠 암호는 어셈블리의 작성자에게만 알려진다. 같은 공개 열쇠 암호 토큰을 갖고 있는 두 개의 어셈블리는 같은 어셈블리라는 사실이 보장된다. 어셈블리가 해커 등에 의해 함부로 변경되면, 공개 열쇠 암호를 이용하여 어셈블리가 변경 되었는지를 감지해낼 수 있다. (3) 메타 데이터 모든 공통 중간 언어(CLI)는.NET 메타데이터를 통해 스스로 기술된다. CLR 은 적절한 메소드가 불리는 지를 보장하기 위해 메타데이터를 검사한다. 메타데이터는 보통 랭귀지 컴파일러에 의해 생성된다. 하지만 개발자 자신이 커스텀 애트리뷰트를 사용하여 자신만의 메타데이터를 작성할 수도 있다. 또한 메타데이터는 어셈블리에 대한 모든 정보를 담고 있다. (4) 베이스 클래스 라이브러리(BCL) 베이스 클래스 라이브러리(BCL)는.NET 프레임워크를 사용하는 모든 언어가 사용할 수 있는 클래스들의 라이브러리이다. 흔히 프레임워크 클래스 라이브러리(Framework Class Library, FCL)이라고 잘못 불린다. (이것은 11
Microsoft.* 네임스페이스를 포함하는 BCL 보다 큰 집합이다.) 파일 읽기나 쓰기, 그래픽 렌더링, 데이터베이스 조작, XML 조작 등과 같은 공통된 기능을 해주는 클래스들을 제공한다 2.3.2 ASP.NET with C# ASP.NET 은.NET 플랫폼 상에서 동적인 웹 어플리케이션의 제작을 위한 기술이다. ASP.NET 의 특징으로는 이벤트 중심의 프로그래밍, Web Form 과 서버컨트롤 제공, UI 와 Code 의 분리, 컴파일 언어를 사용하여 좋은 성능을 가지며, 가비지 콜렉터에 의해 관리가 되어 메모리 누수 현상을 막을 수 있다. C#은 마이크로소프트에서 개발한 객체 지향 프로그래밍 언어로, 닷넷 프레임워크의 한 부분으로 만들어졌다. C++과 자바와 비슷한 문법을 가지고 있다. C#의 기본 자료형은 닷넷의 객체 모델을 따르고 있고, 런타임 차원에서 메모리 수거(garbage collection)가 되며 또한 클래스, 인터페이스, 위임, 예외와 같이 객체 지향 언어로서 가져야 할 모든 요소들이 포함되어 있다. 2.3.3 AJAX 의 개념 및 특징 AJAX 는 사용자 요청을 즉시 처리하는 인터랙티브 형식의 웹 응용프로그램을 만들기 위한 컴퓨터 프로그래밍 방법이다. AJAX 는 자바스크립트, DHTML, XML, CSS, DOM 그리고 마이크로소프트 객체인 XMLHttpRequest 등 여러 가지 프로그래밍 도구들을 결합시킨다. AJAX 는 새로운 페이지 전체가 새로 표시될 때까지 사용자들이 기다려야 했던 HTTP 요청과는 달리, 사용자가 어떤 동작을 수행하면 그 즉시 웹 페이지의 내용이 수정되도록 해준다. 예를 들어, 기상예보 사이트에서 사용자가 우편번호를 12
입력하면 그 페이지의 한쪽 편에 그 지역 상황이 지체 없이 표시될 수 있게 하는 것을 들 수 있다. AJAX 를 이용한 응용프로그램 중 잘 알려진 예 중에 구글 지도 가 있다. 구글 지도의 인터페이스는 사용자가 실시간으로 뷰를 바꾸거나 지도를 조작할 수 있게 해준다. AJAX 응용프로그램을 위해 플러그인을 설치할 필요는 없으며, 웹 브라우저와 직접 동작한다. 이 기술이 XMLHttpRequest 에 의존하고 있기 때문에, 초창기에는 마이크로소프트 인터넷 익스플로러에서만 동작했지만, 현재는 대부분의 브라우저에서 AJAX 를 지원한다. AJAX 는 어떤 한 회사의 독립적인 상품이 아니며, 웹 개발자들은 이미 수년 동안 자바스크립트와 XML 이 결합된 기술을 사용해왔다. 전통적인 웹 어플리케이션 모델과 AJAX 모델을 비교하면 [그림 2-4]와 같다[13]. [그림 2-4] 전통적인 웹 어플리케이션 모델과 AJAX 모델 비교 AJAX 로 만들어진 응용프로그램은 사용자의 브라우저와 서버 사이에서 중간자로서 역할을 하는 엔진을 사용한다. 브라우저는 웹 페이지를 표시하는 대신 사용자가 볼 페이지를 표시해 주는 AJAX 엔진을 올려 놓는다. 이 엔진은 자바스크립트를 사용하여 웹 브라우저와 통신하며 백그라운드에서 13
지속적으로 실행된다. 페이지 상에서 사용자 입력이 들어오면, 자바스크립트 호출이 AJAX 엔진으로 보내지며, 이는 대부분의 경우 즉시 응답된다. 만약 엔진에 추가 정보가 필요한 경우, 페이지가 수정되고 있는 그 순간에 XML 을 이용해 서버에 요청한다[4]. [그림 2-5]는 전통적인 웹 어플리케이션의 동기적인 반응 패턴과 AJAX 어플리케이션의 비동기적 패턴의 비교이다. AJAX 엔진은 사용자가 인터페이스를 랜더링하는 것과 사용자를 대신하여 서버와 통신하는 일을 하게 된다. AJAX 엔진은 어플리케이션에 대한 사용자 대화를 서버통신과는 별개로 비동기적으로 처리할 수 있다. 이렇게 함으로써 사용자는 서버가 무언가를 처리할 동안 브라우저가 refresh 되거나 로딩을 피할 수 있다. [그림 2-5] 전통적인 웹 어플리케이션 반응 패턴과 AJAX 반응 패턴 비교 14
제 3 장 템플릿 관리 시스템 설계 및 구현 3.1 템플릿 관리 시스템 개요 [그림 3-1]는 중개자형 B2B 쇼핑몰의 구성도이다. 여러 공급사가 각자 자신의 제품을 쇼핑몰 관리 시스템에 등록하고, 등록된 다수 고객사의 구매자들이 쇼핑몰에서 주문을 하면 쇼핑몰이나 공급사에서 배송을 담당 하도록 되어있다. [그림 3-1] 중개자형 B2B 쇼핑몰의 구성도 이 논문에서는 템플릿 관리 시스템을 설계 및 구현하여 새로운 고객사의 요구에 맞는 템플릿을 선택하여 쇼핑몰을 생성하고, 자주 변경되는 메인 화면 디자인이나 팝업 창을 쉽게 등록 및 수정할 수 있도록 한다. 시스템 구현 환경은 다음의 [표 3-1]와 같다. 15
[표 3-1] 시스템 구현 환경 구분 설명 구분 설명 h/w s/w CPU Xeon 3GHz * 2 RAM 2GB HDD 72GB * 4 Network HP Net. OS Win2003 Server DBMS SOL2005 Language ASP.NET(C#) Editor VS 2005 템플릿 관리 시스템 구현을 위해 정의한 시스템 구성 요소로 각 고객사의 템플릿, 카테고리, 메인 화면 디자인, 팝업 창 관리이다. 고객사별로 자주 변경되는 메인 화면은 top, middle, bottom 세 부분의 html 나뉘고, 팝업과 카테고리에 대한 정보 또한 DB 에 등록하여 쉽게 등록 변경이 가능하도록 했다. [그림 3-2]는 템플릿 관리 시스템의 구성요소이다. [그림 3-2] 템플릿 관리 시스템의 구성요소 [그림 3-3]은 템플릿 별 소스 디렉터리를 나타낸 화면이다. template 폴더 안에 각 템플릿 소스가 있으며, 각 템플릿 소스가 적용된 고객사들은 기능을 추가 하거나 페이지 수정이 있을 때 일괄 적용할 수 있다. 16
[그림 3-3] 템플릿 소스 디렉터리 3.2 데이터베이스 설계 3.2.1 논리 설계 [그림 3-4] 템플릿 관리 시스템 테이블의 ERD 17
일반 쇼핑몰에 관련된 상품, 주문 및 정산 등의 테이블은 이 논문에서 제외하기로 하며, [그림 3-4]는 템플릿 관리 시스템 테이블의 ERD 이다. 한 고객사는 여러 개의 쇼핑몰을 가질 수 있어, 고객사 대 쇼핑몰 템플릿의 관계는 일대다의 관계이고, 카테고리와 팝업 관리 테이블도 마찬가지이다. 3.2.2 물리 설계 (1) 고객사 테이블(tbl_custom) [표 3-2] 고객사 테이블(tbl_custom) Field Name Type Description NULL no int identity(1,1) 기본키(PK) not null id varchar(50) 사용계정 not null code varchar(50) 식별코드 not null password varchar(50) 비밀번호 not null business_num varchar(10) 사업자번호 not null ceo_name varchar(50) 대표자 성명 not null bussiness_type varchar(50) 업태 not null bussness_kind varchar(50) 업종 not null zipcode char(6) 회사 우편번호 not null address1 varchar(100) 회사 주소 not null address2 varchar(50) 회사 상세주소 not null staff_no int 담당 영업사원번호 not null charger_name varchar(50) 담당자 성명 not null charger_tel varchar(20) 담당자 전화번호 not null charger_hp varchar(20) 담당자 이동전화 not null accout varchar(50) 계좌번호 not null reg_date datetime 등록일 not null 18
고객사의 정보가 저장되는 테이블명은 tbl_custom 으로 새로운 자료가 입력되면 no 필드에 자동 증가 값으로 저장된다. ID 와 Password 는 고객사의 관리자 정보로 쇼핑몰에 로그인 하여 카테고리, 팝업, 메인 화면 디자인 관리를 직접 할 수 있고, 통계 정보도 조회 가능하다. (2) 쇼핑몰 템플릿 테이블(tbl_shop) [표 3-3] 쇼핑몰 템플릿 테이블(tbl_shop) Field Name Type Description NULL no int identity(1,1) 기본키(PK) not null custom_no int 고객사 기본키(FK) not null shop_type int 행사/상시 not null start_date datetime 쇼핑몰 개설일 not null finish_date datetime 쇼핑몰 종료일 not null staff_count int 예상참여 직원수 not null default_point int 지급될 기본금 not null template_layout varchar(50) 디자인 타입 not null template_top text 디자인상단 html not null template_bottom text 디자인하단 html not null template_menu text 디자인 메뉴 html not null logo_image varchar(50) 로고이미지경로 not null main_html text 메인화면 html not null custom_staff_no int 담당직원 기본키(FK) not null pg_storeid varchar(50) PG 상점 계정 not null reg_date datetime 등록일자 not null memo text 메모 not null 19
쇼핑몰 템플릿의 테이블 명은 tbl_shop 이고, 데이터가 등록될 때 마다 no 필드 값이 자동 증가하며, primary key 이다. shop_type 필드는 행사/상시 값을 구분하여 특정 행사가 있을 때 다른 템플릿을 등록하여 노출한다. start_date 와 finish_date 는 쇼핑몰 계약 시작일자와 계약 종료일자이며, template_layout 필드에는 템플릿 명이 등록되고, template_top, template_bottom, template_menu 필드에 각각 관련 html 이 저장되고, 메인 화면은 main_html 필드에 top, middle, bottom 세 부분으로 구분하여 html 을 저장한다. (3) 팝업관리 테이블 [표 3-4] 고객사 팝업관리 테이블(tbl_popup_manage) Field Name Type Description NULL no int identity(1,1) 기본 키(PK) not null popup_name varchar(50) 팝업 명 not null popup_image varchar(200) 팝업 이미지 not null popup_link1 varchar(200) 링크 주소 1 null popup_link2 varchar(200) 링크 주소 2 null popup_link3 varchar(200) 링크 주소 3 null popup_link_coordinates1 varchar(50) 링크맵 주소 1 null popup_link_coordinates2 varchar(50) 링크맵 주소 2 null popup_link_coordinates3 varchar(50) 링크맵 주소 3 null new_window1 char(1) 새창 여부 1 null new_window2 char(1) 새창 여부 1 null new_window3 char(1) 새창 여부 1 null start_date datetime 게시 시작일자 not null stop_date datetime 게시 종료일자 not null 20
고객사별로 공지사항 및 팝업 창은 수시로 등록 및 변경 요청이 온다. 따라서 빠른 대응과 체계적이고 효율적인 관리의 필요성에 따라 테이블을 생성하여 관리한다. 테이블 명은 tbl_popup_manage 이고, popup_name 에 팝업명을 등록하고, popup_image 필드에 팝업 이미지를 업로드 한다. 등록한 이미지에서 링크나 상세 페이지가 필요하면 popup_link1 필드에 경로를 등록하고, popup_link_coordinates1 필드에 image map 정보를 등록하면 페이지가 연결된다. 이 때 새 창으로 열지, 단순한 링크인지는 new_window1 필드의 값에 따라 정해진다. start_date 필드와 stop_date 필드는 팝업 게시 시작일자와 종료일자이다. 이 기간에 따라 시스템에서 자동 게시시작 게시 종료된다. (4) 쇼핑몰 카테고리 테이블(tbl_shop_product_categroy) [표 3-5] 쇼핑몰 카테고리 테이블(tbl_shop_product_category) Field Name Type Description NULL no int identity(1,1) 기본키(PK) not null parent_no int 상위 카테고리 번호 not null name varchar(50) 카테고리 명 not null custom_no int 고객사 번호(FK) not null has_child char(1) 하위 카테고리 여부 not null display int 노출여부 not null nod_image varchar(200) 마우스 온 이미지 not null nod_on_image varchar(200) 마우스 오버 이미지 not null link_url varchar(200) 특정 링크 주소 not null dir_path varchar(100) 이미지 경로 not null 21
카테고리 구조에서 가장 중요한 점은 부모 카테고리와 자식 카테고리간의 연결 고리이다. [표 3-5]의 테이블을 보면 parent_no 라는 필드를 이용하여 자식 카테고리가 부모 카테고리와 연결됨을 알 수 있다. parent_no 의 개수가 곧 카테고리의 depth 가 된다. 고객사 번호인 custom_no 필드가 foreign key 로 잡혀 있고, has_child 필드 값에 따라 부모, 자식 카테고리를 구분한다. display 필드는 노출 여부를 결정하고, nod_image, nod_on_image 필드는 마우스 오버, 아웃 할 때 이미지를 저장하는 필드이다. 22
3.3 템플릿 관리 시스템 구현 3.3.1 고객사 기본정보 등록 및 템플릿 적용 [그림 3-5]는 고객사 기본정보를 등록하고 템플릿을 적용하여 쇼핑몰을 생성 시키는 시퀀스 다이어그램이다. 관리자는 고객사 관리 객체에 고객사의 기본정보를 등록하고, 등록된 고객사의 정보를 반환 받는다. 쇼핑몰을 생성할 경우 템플릿 관리 객체에 템플릿 목록을 요청하고, 템플릿 목록 중 선택하여 적용 후 쇼핑몰을 생성한다. [그림 3-5] 고객사 기본정보 등록 및 템플릿 적용 시퀀스 다이어그램 23
[그림 3-6]은 고객사의 기초 정보를 등록하는 화면이며, 기초정보 입력 화면에서 고객사 선택 버튼을 클릭하면, 리스트 창이 팝업 되어, 해당 고객사를 선택하고 등록한다. [그림 3-6] 고객사 기본정보 등록 화면 [그림 3-7]은 고객사 템플릿 관리 메인 화면이다. 리스트에는 고객사 명, 쇼핑몰 명, 쇼핑몰 종류, 시작일, 종료일, 운영상태, 디자인 관리 버튼, 템플릿 관리 버튼이 있다. 관리자는 각 고객사의 쇼핑몰을 템플릿 버튼을 클릭하여, [그림 3-8]의 화면과 같이 템플릿을 미리보기 하여 선택 후 적용할 수 있다. [그림 3-7] 고객사 템플릿 관리 메인 화면 24
[그림 3-8]은 고객사 템플릿 적용 선택 화면이며, 리스트에서 미리 보기 기능을 이용하여 적용할 템플릿을 선택한 수 적용한다. [그림 3-8] 고객사 템플릿 등록 및 적용 25
3.3.2 고객사 메인 디자인 등록 및 관리 화면 [그림 3-9]는 고객사 별 메인 화면 디자인 관리 시퀀스 다이어그램이다. 관리자는 고객사 메인 화면 디자인 변경할 때 고객사의 정보를 고객사 관리 객에서 받은 후, 필요한 이미지를 등록한다. 또한 관리자는 디자인 관리 객체에서 고객사의 메인 화면 설정 값을 반환 받은 후 새로운 디자인을 적용해서 저장한다. [그림 3-9] 메인 화면 디자인 관리 시퀀스 다이어그램 26
[그림 3-10]은 메인 디자인 관리 화면이다. 각 고객사의 메인 화면이 top, middle, bottom 세 부분의 저장되어 각각 리스트 화면에 나타난다. 화면의 기능은 날짜, 노출상태, 위치, 검색어 등을 통해 검색이 가능하며, 고객사의 메인 화면 디자인 부분을 선택하여 수정 버튼을 클릭하여 수정할 수 있다. [그림 3-10] 메인 디자인 등록 및 관리 화면 [그림 3-11]은 리스트에서 수정 버튼을 클릭 하였을 때 나타나는 화면이며, html 코드 입력란에 코드를 입력하고, 소스 미리보기 버튼을 통해 디자인이 제대로 적용 되었는지 확인할 수 있다. 27
[그림 3-11] 메인 디자인 수정 화면 및 미리 보기 [그림 3-12]는 [그림 3-10]의 행사연결 버튼을 클릭 했을 때 고객사 리스트가 나타난 화면이며, 수정된 메인 화면 디자인을 각 고객사에 적용할 수 있으며, 체크 상태에 따라서 같은 디자인으로 그룹 또는 업종에 따라 묶음 적용 가능하다. [그림 3-12] 메인 디자인 고객사 연결 화면 28
3.3.3 고객사 카테고리 및 팝업 관리 [그림 3-13]은 팝업 관리 시퀀스 다이어그램이다. 관리자는 팝업 관리 객체에 팝업 정보를 등록하고, 정보를 반환 받는다. 그 정보를 쇼핑몰 관리 객체에서 고객사 리스트 정보를 반환 받은 후 팝업을 적용 하여 연계 정보를 반환 받는다. 카테고리 또한 관리자가 카테고리 관리 객체에 카테고리 정보를 등록하고, 정보를 반환 받는다. 쇼핑몰 관리 객체에서 고객사를 연계 시킨 후 정보를 반환 받는다. 팝업 관리의 프로세스와 시퀀스 다이어그램은 같다. [그림 3-13] 팝업 관리 시퀀스 다이어그램 29
[그림 3-14]는 팝업 등록 및 관리 화면이다. 팝업명, 팝업 이미지를 등록하고, 팝업 내용에 따라 링크 수를 선택하고, 링크 이미지 또는 버튼에 이미지 맵 값과, 링크 주소를 등록하면 해당 되는 페이지에 링크 되도록 팝업 창이 생성된다. 사용 기간에 설정에 따라 자동으로 게시 시작 및 종료된다. 팝업 관리 또한 [그림 3-12]의 리스트에서 행사 연결 버튼을 클릭하면 고객사를 선택하여 각각 또는 일괄 적용할 수 있다. [그림 3-14] 팝업 등록 및 관리 화면 30
제 4 장 실험 및 평가 이 장에서는 구현 된 템플릿 관리 시스템을 적용하기 전후의 메인 화면 디자인 및 팝업 등록을 유지보수 할 때의 변경 시간을 측정해 보았다. 실험 조건은 20 개의 고객사의 쇼핑몰을 기준으로 각 고객사는 하나 또는 여러 개의 쇼핑몰을 운영 중이며, 이 실험에 적용된 4 개의 고객사는 각각 3 개의 쇼핑몰을 운영 중이며, 각 1 개의 템플릿으로 적용되었다. [표 4-1]은 메인 화면 디자인 변경할 때의 작업 시간을 템플릿 관리 시스템 적용 전후의 비교이다. 전체 20 개 고객사의 쇼핑몰 중 4 개의 고객사 쇼핑몰이 각기 다른 3 개의 템플릿으로 클러스터 되어 템플릿 관리 시스템에서 총 수정해야 할 파일 수는 각 고객사별 쇼핑몰 템플릿 4 개와 나머지 개별 고객사 템플릿 8 개로 총 12 개의 그룹으로 나누어 수정하면 된다. 그러나 템플릿 관리 시스템에서 적용되지 않은 그룹에서는 각각의 고객사 쇼핑몰 소스 파일 20 개를 수정해야 한다. 템플릿을 적용한 그룹에서 작업량이 줄어들어 작업 시간이 40% 정도 줄어 들었음을 볼 수 있다. [표 4-1] 메인 화면 디자인 변경 시간 작업 시간 단위 : 분 템플릿 적용 템플릿 적용 그룹 수 수정할 파일 수 작업 시간 Y 12(4*3) 12 180 N 0 20 320 31
[표 4-2]는 팝업 창을 등록할 때 기존의 20 개의 고객사 소스에서 각각 업데이트 해주던 것을 템플릿 관리 시스템을 적용하여 작업했을 때의 작업 시간 비교이다. [표 4-2] 팝업 창 등록 시간 작업 시간 단위 : 분 템플릿 적용 템플릿 적용 그룹 수 작성할 팝업창 수 작업시간 Y 12(4*3) 12 45 N 20 20 100 템플릿 적용 그룹은 고객사 별로 클러스터 되어 12 개의 각기 다른 12 개의 팝업 창을 생성하면 되나 적용되지 않은 그룹은 20 개 각기 다른 팝업 창을 생성하여 적용해야 한다. 또한 시스템 점검 같은 전체 공지사항을 적용할 때 템플릿 관리 시스템이 적용되지 않은 그룹에서는 20 개의 소스 파일을 열어 하나하나 적용해야 되기 때문에 작업 시간이 쇼핑몰의 개수와 비례하나 템플릿 관리 시스템에서는 한 개의 팝업 창을 생성하여 전체 고객사 쇼핑몰에 적용할 수 있어 매우 효율적이다. 그러나 고객사가 본인들 만의 독특한 템플릿을 원할 경우 각각 템플릿을 적용하여 서비스 되기 때문에 큰 효율이 없는 단점이 있다. 이 장에서 메인 화면 디자인 변경과 팝업 등록에 대해 작업 시간을 비교한 결과 템플릿 관리 시스템이 적용된 쇼핑몰에서 클러스터 된 고객사 쇼핑몰이 많을수록 유지 보수 및 관리에서 작업 시간을 줄일 수 있었다. 32
제 5 장 결 론 기존의 중개자형 B2B 쇼핑몰에서는 업무 프로세스는 같지만, 다수의 client 나 supplier 가 한 템플릿에서 서비스 되고 있어 client 의 디자인 변경 요청이나 본인들만의 서비스를 위한 UI 변경을 수용하기 어려웠다. 또한 신규 고객이 생기면 소스를 복사하여 customizing 하는 번거로움으로 인하여 신규 개발에 준하는 시간과 비용이 발생하게 되었다. 이러한 이슈들을 해결하기 위해 이 논문에서는 문헌 연구를 통해 개인화 서비스에 대하여 알아보았고, 고객사 별로 서비스 할 수 있도록 템플릿 관리 시스템을 제안 및 구현했다. 또한 메인 화면 디자인이나 팝업, 배너를 등록 및 변경할 수 있도록 추가 개발 했다. 이를 통해 관리자는 신규 고객이 가입했을 때, 미리 등록된 템플릿을 선택하거나 고객의 요청에 의한 템플릿을 적용하여 쉽게 몰을 생성할 수 있고, 메인 화면 디자인, 팝업 및 배너를 쉽게 등록하고 변경할 수 있게 하여 제각기 다른 기업의 요구사항에 신속하게 대처하고, 효과적인 관리할 수 있게 되었다. 이 논문에서 제안 및 구현한 서비스는 비단 B2C 시장에서 기업이 고객에게 one to one 마케팅을 위해 개인화 서비스를 하는 것이 아니라 규모가 훨씬 더 큰 B2B 시장에서 중개자형 쇼핑몰을 운영하는 업체에서도 client 및 supplier 들에게 개인화 서비스를 할 수 있도록 하는데 도움을 주고, UI 변경 관리의 작업 시간을 줄임으로써 효과적인 쇼핑몰 관리를 할 수 있음을 보였다. 33
향후의 연구로는 현재 개인화 서비스의 적용을 통해 발생한 운영업체에 수익과 client 의 매출 변화에 대한 평가를 해야 할 것이며, 고객의 profile 및 운영 데이터를 분석하여 client 가 직접 자사의 고객에게 개인화 서비스를 할 수 있도록 하는 시스템을 개발하여, 개인화 서비스의 질을 한 단계 높여야 할 것이다. 34
참고문헌 [1] 곽철완, 인터넷 쇼핑몰의 상품 분류체계에 대한 연구, 한국 정보처리학회, 정보처리학회지 제 18 권 제 4 호 통권 42 호, pp201-215, 2001 [2] 이상우, "기업간 전자상거래와 구축 툴, 한국데이터베이스진흥센터, 월간 데이터베이스월드, 1999.5 [3] 차대운, 박유진, 인터넷 쇼핑몰에서 개인화된 정보 제공에 대한 연구, 한국기업경영학회 pp. 231-247, 2001.5 [4] 통계청, 전자상거래동향조사, 2008, <http://www.nso.go.kr/ > [5] 조영희, 판매자 전자 카탈로그들로부터 구매자 맞춤 디렉토리 생성 관리 시스템:논리 프로그래밍 접근 방법, 박사학위논문, 한국과학기술원, 2001 [6] Ashish, Banerjee 외 6 인,.NET 리모팅과 ASP.NET 으로 웹서비스 구축하기, 정보문화사, pp.73-93, 2002.7 [7] 함호상 외 6 인, 전자상거래 디렉토리 서비스 소프트웨어 기술개발, 정보통신부, 한국전자통신연구원, 2000.4 [8] Wikipedia,.NETFramework, 2008 <http://enc.daum.net/dic100/contents.do?query1=10xx148020> [9] Allen, Kania and Yaeckel, Internet World Guide to One-to-One Web Marketing, 1993 [10] Ander Kristensen, Template resolution in XML/HTML, 1999, <http://www.hpl.hp.com/techreports/1999/hpl-1999-42.html?jumpid=reg_r1002_usen> [11] Don Peppers & Martha Rosers, The One-to-One future:building Relationships One Customer at a Time, 1993 [12] Duracher Research Ltd, Business to Business e-commerce, 2000.4 35
[13] Jesse James Garrett, A New Approach to Web Applications essays, 2008, <http://www.javalobby.org/articles/ajax/ > [14] Luedi Ariel F, Personalize or Perish, EM-Electronic Markets, Vol.7 No.3, pp.22-25, 1997 [15] Wiegran Gaby and Koth hardy, Customer Retention on On-line Retail, Journal of Internet Banking and Commerce, Vol.4, No1, Octover, 1999 36