LUẬN VĂN:SỬ DỤNG CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION TRONG CÁC ỨNG DỤNG TRÊN DIỆN RỘNG potx

79 452 0
LUẬN VĂN:SỬ DỤNG CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION TRONG CÁC ỨNG DỤNG TRÊN DIỆN RỘNG potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN QUANG HÙNG SỬ DỤNG CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION TRONG CÁC ỨNG DỤNG TRÊN DIỆN RỘNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2009 2 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN QUANG HÙNG SỬ DỤNG CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION TRONG CÁC ỨNG DỤNG TRÊN DIỆN RỘNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán bộ hướng dẫn: ThS. Đào Kiến Quốc Cán bộ đồng hướng dẫn: ThS.Nguyễn Xuân Hoàng HÀ NỘI - 2009 3 TÓM TẮT KHÓA LUẬN Hiện nay đã có rất nhiều phần mềm dành cho doanh nghiệp. Tuy nhiên một số các phần mềm này lại có giá quá cao khiến doanh nghiệp không đủ kinh phí để triển khai. Còn đối các sản phẩm giá thấp hơn thì lại không thể đáp ứng được nhu cầu sử dụng dữ liệu tập trung và tổng hợp dữ liệu một cách thường xuyên của các doanh nghiệp có nhiều chi nhánh tại nhiều vị trí địa lý khác nhau. Nội dung của khóa luận này sẽ trình bày về một công nghệ mới nằm trong .NET 3.0 của Microsoft, đó là công nghệ Windows Communication Foundation (WCF). Đây là một công nghệ được Microsoft đưa ra để xây dựng các ứng dụng theo kiến trúc hướng đối tượng (SOA). Đó là chìa khóa để giải quyết các vấn đề trên. Đồng thời, khóa luận cũng nói đến việc áp dụng WCF để xây dựng phần mềm Quản lý quan hệ khách hàng (CRM) – một giải pháp đang được áp dụng ở khá nhiều doanh nghiệp. 4 MỤC LỤC LỜI MỞ ĐẦU 8 1. Tính cấp thiết của đề tài: 8 2. Mục tiêu của đề tài: 10 CHƯƠNG 1: CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION 13 1.1. Tổng quan về Windows Communication Foundation 13 1.1.1. Windows Communication Foundation là gì? 13 1.1.2. Tại sao sử dụng WCF? 14 1.2. Kiến trúc của Windows Communication Foundation 16 1.2.1. Hợp đồng (Contracts) 17 1.2.2. Dịch vụ thực thi (Runtime service) 18 1.2.3. Bản tin (Message) 19 1.2.4. Chứa và kích hoạt (Host and activation) 19 1.3. Các tính năng của WCF 19 1.3.1. Giao dịch (Transaction) 19 1.3.2. Chứa (Host) 20 1.3.3. Bảo mật (Security) 20 1.4. Mô hình lập trình với WCF 20 1.4.1. Các phương pháp lập trình 21 1.4.2. Nguyên lý ABCs 26 1.4.3. Địa chỉ (Address) 26 1.4.4. Liên kết (Binding) 29 1.4.5. Hợp đồng (Contract) 33 CHƯƠNG 2: GIỚI THIỆU GIẢI PHÁP CRM CHO DOANH NGHIỆP 45 2.1. CRM là gì? 45 2.2. Lịch sử học thuyết CRM 47 2.3. Các khái niệm liên quan trọng trong CRM 49 2.3.1. Tiềm năng 49 2.3.2. Tổ chức 49 2.3.3. Liên hệ 49 2.3.4. Cơ hội 49 2.3.5. Chiến dịch 49 2.3.6. Hợp đồng 49 2.3.7. Tình huống 49 2.3.8. Sản phẩm 50 2.3.9. Đối tác 50 2.3.10. Đối thủ 50 2.4. Lợi ích của CRM 50 CHƯƠNG 3: SỬ DỤNG CÔNG NGHỆ WCF ĐỂ XÂY DỰNG HỆ THỐNG CRM WCF 2010 52 3.1. Vấn đề đặt ra 52 3.2. Tổng quan về CRM WCF 2010 54 3.3. Quy trình tác nghiệp của CRM WCF 2010 56 3.3.1. Quy trình tiếp thị 56 3.3.2. Quy trình Bán hàng 57 3.3.3. Quy trình dịch vụ sau bán hàng 58 5 3.4. Các use case chính của hệ thống CRM WCF 2010 59 3.4.1. Quản lý tổ chức 59 3.4.2. Quản lý cơ hội 60 3.4.3. Quản lý hợp đồng 61 3.4.4. Quản lý tiềm năng 62 3.4.5. Quản lý chiến dịch 64 3.4.6. Quản lý báo cáo 65 3.5. Biểu đồ tuần tự của hệ thống 66 3.5.1. Thêm, sửa tổ chức 66 3.5.2. Xóa tổ chức 66 3.5.3. Thêm, sửa tiềm năng 67 3.5.4. Xóa tiềm năng 67 3.5.5. Thêm, sửa cơ hội 68 3.5.6. Xóa cơ hội 68 3.5.7. Thêm, sửa hợp đồng 69 3.5.8. Xóa hợp đồng 69 3.5.9. Thêm, sửa liên hệ 70 3.5.10. Xóa liên hệ 70 3.5.11. Thêm, sửa chiến dịch 71 3.5.12. Xóa chiến dịch 71 3.5. Kiến trúc và công cụ phát triển CRM WCF 2010 72 3.5.1. Kiến trúc của CRM WCF 2010 72 3.5.2. Môi trường phát triển CRM WCF 2010 73 3.6. Giao diện minh họa các phân hệ chính của CRM WCF 2010 73 3.6.1. Phân hệ Tổ chức 73 3.6.2. Phân hệ liên hệ 75 3.6.3. Phân hệ cơ hội 76 KẾT LUẬN 78 TÀI LIỆU THAM KHẢO 78 6 BẢNG CÁC KÝ HIỆU VIẾT TẮT Ký hiệu Từ viết tắt Ý nghía SOA Service-oriented architecture Kiến trúc hướng dịch vụ WCF Windows Communication Foundation Công nghệ mới của Microsoft trong .NET 3.0 CRM Customer relationship management Quản lý quan hệ khách hàng BẢNG DANH SÁCH CÁC HÌNH VẼ Hình vẽ Trang Hình 1 1: Kiến trúc của mô hình CORBA 7 Hình 1 2: Kiến trúc của mô hình EJB 7 Hình 1 3: Kiến trúc của mô hình DCOM 8 Hình 1 4: Kiến trúc cơ bản của SOA 9 Hình 1 5: Kiến trúc .NET 3.0 11 Hình 1 6: Khả năng hợp nhất của WCF 13 Hình 1 7: Kiến trúc của WCF (microsoft.com) 15 Hình 1 8: Mô hình lập trình WCF 24 Hình 1 9: Sơ đồ lựa chọn Binding 31 Hình 1 10: “Khách hàng là trung tâm của mọi hoạt động” 45 Hình 1 11: Quy trình chung của hệ thống CRM 51 Hình 1 12: Quy trình tiếp thị 54 Hình 1 13: Quy trình bán hàng 55 Hình 1 14: Quy trình dịch vụ sau bán hàng 56 Hình 1 15: Sơ đồ use case quản lý tổ chức 57 7 Hình 1 16: Sơ đồ use case quản lý cơ hội 58 Hình 1 17: Sơ đồ use case quản lý hợp đồng 59 Hình 1 18: Sơ đồ use case quản lý tiềm năng 60 Hình 1 19: Sơ đồ use case quản lý chiến dịch 62 Hình 1 20: Sơ đồ use case quản lý báo cáo 63 Hình 1 21: Biểu đồ tuần tự thêm ,sửa tổ chức 64 Hình 1 22: Biểu đồ tuần tự xóa tổ chức 64 Hình 1 23: Biểu đồ tuần tự thêm, sửa tiềm năng 65 Hình 1 24: Biểu đồ tuần tự xóa tiềm năng 65 Hình 1 25: Biểu đồ tuần tự thêm, sửa cơ hội 66 Hình 1 26: Biểu đồ tuần tự xóa cơ hội 66 Hình 1 27: Biểu đồ tuần tự thêm, sửa hợp đồng 67 Hình 1 28: Biểu đồ tuần tự xóa hợp đồng 67 Hình 1 29: Biểu đồ tuần tự thêm, sửa liên hệ 68 Hình 1 30: Biểu đồ tuần tự xóa liên hệ 68 Hình 1 31: Biểu đồ tuần tự thêm, sửa chiến dịch 69 Hình 1 32: Biểu đồ tuần tự xóa chiến dịch 69 Hình 1 33: Kiến trúc CRM WCF 2010 70 Hình 1 34: Giao diện phân hệ Tổ chức 71 Hình 1 35: Giao diện phân hệ Liên hệ 73 Hình 1 36: Giao diện phân hệ Cơ hội 74 8 LỜI MỞ ĐẦU 1. Tính cấp thiết của đề tài: Hiện tại đã có rất nhiều phần mềm dành cho các doanh nghiệp ra đời nhằm nâng cao hiệu quả kinh doanh. Tuy nhiên do tính phức tạp và không đồng nhất của các nền tảng công nghệ hiện nay nên việc các doanh nghiệp tái sử dụng các hệ thống cũ và vấn đề giao tiếp giữa các hệ thống khác nhau chưa thể đáp ứng được. Đồng thời với các doanh nghiệp muốn triển khai các hệ thống ứng dụng của mình trên diện rộng với nhiều chi nhánh thì vẫn gặp nhiều khó khăn do các phần mềm chưa đáp ứng được vấn đề bảo mật khi trao đổi thông tin qua môi trường Internet cũng như khó khăn trong việc triển khai và quản lý hệ thống. Điều này dẫn đến doanh nghiệp nói chung và nhà quản lý doanh nghiệp nói riêng gặp rất nhiều khó khăn và không thể tập trung thời gian cho việc quản lý và hoạch định chiến lược kinh doanh cho doanh nghiệp. Ví dụ, với các doanh nghiệp đa chi nhánh thì hiện tại việc thống kê, hạch toán sẽ phải thực hiện riêng rẽ trên từng chi nhánh rồi mới được người quản lý tổng hợp lại, điều này gây lãng phí thời gian và công sức, đồng thời có thể gây thiếu đồng bộ về thông tin giữa các chi nhánh. Các kiến trúc phân tán đã ra đời để giải quyết vấn đề này như CORBA, EJB, DCOM. Tuy nhiên chúng vẫn còn khá hạn chế và chưa đáp ứng được nhu cầu của khách hàng.  CORBA - Common Object Requesting Broker Architecture - CORBA được định nghĩa bởi Object Management Group (OMG) là một kiến trúc phân tán mở, độc lập nền tảng và độc lập ngôn ngữ. Với CORBA các thành phần của hệ thống có thể được viết trên nhiều ngôn ngữ và chạy trên các nền tảng khác nhau vẫn có thể làm việc được với nhau. - Ưu nhược điểm của CORBA là các lập trình viên có thể chọn bất kỳ ngôn ngữ, nền tảng phần cứng, giao tiếp mạng và các công nghệ để phát triển mà vẫn thỏa mãn các tính chất của CORBA. Tuy nhiên, CORBA có một số nhược điểm là: nó là ngôn ngữ lập trình bậc thấp, rất phức tạp, khó học, và cần một đội ngũ phát triển có kinh nghiệm. Ngoài ra các đối tượng CORBA cũng khó tái sử dụng. 9 Hình 1 36: Kiến trúc của mô hình CORBA  EJB - Enterprise JavaBeans - Kiến trúc EJB là một kiến trúc thành tố bên phía máy chủ dùng cho việc phát triển và triển khai các ứng dụng phân tán hướng đối tượng cỡ vừa và lớn - EJB là một kiến trúc tốt cho việc tích hợp các hệ thống vì nó là độc lập nền tảng nhưng nó cũng gặp vấn đề là: nó không phải một chuẩn mở, khả năng giao tiếp với các chuẩn khác vẫn còn hạn chế. Hình 1 37: Kiến trúc của mô hình EJB 10  DCOM - Distributed Component Object Model - DCOM là một mô hình phân tán dễ triển khai với chi phí thấp. Mô hình Component Object Model (COM) định nghĩa cách thức các thành phần và Client liên lạc trao đổi với nhau trong cùng một máy. DCOM mở rộng COM bằng cách sử dụng các giao thức mạng chuẩn khi cần trao đổi dữ liệu với máy khác trên mạng. DCOM hỗ trợ kết nối giữa các đối tượng và các kết nối này có thể thay đổi khi ứng dụng đang chạy. - DCOM mang đến nhiều ưu điểm như tính ổn định, không phụ thuộc vị trí địa lý, quản lý kết nối hiệu quả và dễ dàng mở rộng, là một lựa chọn tốt cho các doanh nghiệp sử dụng công nghệ trên Windows để chạy các ứng dụng có yêu cầu cao về sự chính xác và ổn định. Tuy nhiên các công nghệ của Microsoft có một nhược điểm lớn là chúng bị giới hạn trên nền tảng Windows, đặc biệt các hệ thống DCOM khó tái sử dụng và bị chặn bởi Firewall khi giao tiếp qua Internet. Hình 1 38: Kiến trúc của mô hình DCOM 2. Mục tiêu của đề tài: Trước các khó khăn trên thì các doanh nghiệp cần có một cách tiếp cận mới để giải quyết vấn môi trường không đồng nhất và tốc độ thay đổi đến chóng mặt của thực tế trong khi phải xoay sở với nguồn ngân sách hạn hẹp và nền kinh tế khó khăn. May thay, đã có một hướng tiếp cận giải quyết khá toàn diện các vấn đề trên và đã được triển khai trong thực tế. Đó là “Kiến trúc hướng dịch vụ” – Service Oriented Architecture (SOA). Kiến trúc hướng dịch vụ là một hướng tiếp cận với việc thiết kế và tích hợp các phần mềm, chức năng, hệ thống theo dạng các module. Trong đó mỗi module đóng vai trò là một “dịch vụ”, và có khả năng được truy cập qua môi trường mạng. Hiểu một [...]... xây dựng hệ thống CRM, là một hệ thống quan trọng trong việc nâng cao hiệu quả kinh doanh trong doanh nghiệp 12 CHƯƠNG 1: CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION 1.1 Tổng quan về Windows Communication Foundation 1.1.1 Windows Communication Foundation là gì? Windows Communication Foundation (WCF) là một công nghệ được Microsoft giới thiệu tại Hội nghị các nhà phát triển sản phẩm Microsoft (Microsoft... điều khiển các đầu đề bản tin trong quá trình tạo ra các bản tin Cũng giống như các thành phần khác trong WCF, các contract được định nghĩa sử dụng các khái niệm mà ta đã quen thuộc Các contract được định nghĩa sử dụng các 33 lớp và giao diện, bằng cách thêm vào các thuộc tính mô tả (attribute) cho các lớp và giao diện đó Có thể hình dung mối liên hệ giữa các contract với NET Framework CLR một cách gần... vụ có thể sử dụng để liên lạc với các MSMQ khách và các dịch vụ khác NetNamedPipeBinding Là Liên kết (Binding) mà các điểm cuối dịch vụ có thể sử dụng để liên lạc với các ứng dụng khách/dịch vụ trên cùng một máy NetTCPBinding Là Liên kết (Binding) mà các điểm cuối dịch vụ có thể sử dụng để liên lạc với các ứng dụng khách/dịch vụ ở các máy khác nhau WSHTTPBinding Là Liên kết (Binding) mà các điểm cuối... Microsoft phát hành trong đó có cung cấp các hàm API riêng biệt cho các liên lạc dựa trên SOAP để tối đa hoá sự làm việc giữa các nền tảng sử dụng Web Services, đồng thời NET 2.0 còn cung cấp các API để tối ưu việc liên lạc dựa trên mã nhị phân giữa các ứng dụng chạy trên hệ thống Windows gọi là NET Remoting, các API cho các giao dịch phân tán, và API cho liên lạc dị bộ WCF thống nhất các API này thành... được ba mục tiêu: - Hợp nhất công nghệ đã tồn tại - Tương tác đa nền - Phát triển hướng dịch vụ 14 Hình 1 41: Khả năng hợp nhất của WCF  Mục tiêu 1: Hợp nhất công nghệ Bài toán xử lý với các ứng dụng phân tán luôn là một bài toán khó với các nhà phát triển Sự cạnh tranh của các công nghệ phân tán đầu những năm 1990 đã dẫn đến sự tranh cãi: Sẽ chọn công nghệ nào là công nghệ tốt nhất, phù hợp nhất để... dịch vụ được chứa trong một số lớn các môi trường khác nhau, như Windows NT Services, Windows Forms, và ứng dụng console, cũng như ở trên IIS (Internet Information Server) và WAS (Windows Activation Services) Chứa ứng dụng trên IIS còn có thêm các lợi điểm khác là dịch vụ có thể nhận các ưu điểm của rất nhiều tính năng có sẵn trên IIS, ví dụ IIS có thể điều khiển một cách tự động việc bắt đầu hay kết... cả ba mục công việc đều thành công Giao dịch thường thấy trong các thao tác với cơ sở dữ liệu 19 WCF cho phép đưa vào việc xử lý giao dịch như trên với các liên lạc Nhà phát triển có thể nhóm các liên lạc với nhau thành các giao dịch Ở mức doanh nghiệp, tính năng này cho phép bạn thực hiện các công việc giao dịch qua các nền tảng khác nhau 1.3.2 Chứa (Host) WCF cho phép các dịch vụ được chứa trong một... trước Với SOA, công ty phát triển phần mềm có thể tạo nên những quy trình nghiệp vụ uyển chuyển , phức tạp có khả năng biến đổi tuy theo yêu cầu của khách hàng WCF là một công nghệ được Microsoft đưa ra trong bản NET 3.0 WCF là nền tảng giúp xây dựng các ứng dụng theo kiến trúc hướng dịch vụ WCF không phải là công nghệ để hỗ trợ việc xử lý các nghiệp vụ cho ứng dụng mà nó giúp xây dựng các dịch vụ mà... sử dụng được phép nạp chồng tên trong C# và sử dụng thêm tham số Name để quy định thêm tên hàm ở dịch vụ Ngoài ưu điểm trong việc giải quyết nạp chồng tên hàm, ta còn thấy một lợi ích khác nữa là, việc quy định tham số Name trong thuộc tính OperationContract còn cho ta thêm linh hoạt trong việc đổi tên các hàm trong giao diện mà không làm thay đổi định nghĩa dịch vụ, nghĩa là các ứng dụng khác sử dụng. .. vì chúng ta Thế giới công nghệ sẽ không nói chuyện với nhau bằng các ngôn ngữ khác nhau nữa, các hệ thống có thể tồn tại một cách hòa bình với nhau  Mục tiêu 3: Phát triển hướng dịch vụ Công nghệ và nghiệp vụ thay đổi rất nhanh, doanh nghiệp phải đầu tư một lượng lớn kinh phí cho việc phát triển ứng dụng Trong nhiều năm, các lập trình viên và các tổ chức cố gắng xây dựng phần mềm trên mô hình hướng . HỌC CÔNG NGHỆ NGUYỄN QUANG HÙNG SỬ DỤNG CÔNG NGHỆ WINDOWS COMMUNICATION FOUNDATION TRONG CÁC ỨNG DỤNG TRÊN DIỆN RỘNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công. bày về một công nghệ mới nằm trong .NET 3.0 của Microsoft, đó là công nghệ Windows Communication Foundation (WCF). Đây là một công nghệ được Microsoft đưa ra để xây dựng các ứng dụng theo kiến. và dễ dàng mở rộng, là một lựa chọn tốt cho các doanh nghiệp sử dụng công nghệ trên Windows để chạy các ứng dụng có yêu cầu cao về sự chính xác và ổn định. Tuy nhiên các công nghệ của Microsoft

Ngày đăng: 28/06/2014, 01:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan