Xây dựng hệ thống hỗ trợ tra cứu lỗi lập trình

94 308 0
Xây dựng hệ thống hỗ trợ tra cứu lỗi lập trình

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP KỸ THUẬT CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN = = =  = = = LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: XÂY DỰNG HỆ THỐNG HỖ TRỢ TRA CỨU LỖI LẬP TRÌNH GVHD : NGUYỄN CHÁNH THÀNH SVTH : NGUYỄN DUY HÒA – MSSV: 10102062 VÕ ĐỨC HIỀN – MSSV: 10102056 LỚP : 01CNPM Thaønh phoá Hoà Chí Minh, Thaùng 01 - 2006 MỤC LỤC  Chương I: GIỚI THIỆU VỂ ĐỀ TÀI1 I. Giới thiệu1 II.Chức năng1 Chương II: KIẾN THỨC MÔI TRƯỜNG PHÁT TRIỂN VÀ ADD-IN2 I. Môi trường phát triển DTE2 I.1. Đối tượng DTE2 I.2. Thêm một tham chiếu tới không gian tên EnvDTE4 I.3. Tham chiếu đối tượng DTE 5 I.4. Những đối tượng chính trong project5 I.4.1. Đối tượng Events5 I.4.2. Đối tượng BuildEvents6 I.4.3. Đối tượng CommandEvents7 I.4.4. Đối tượng TaskListEvents8 I.4.5. Đối tượng OutputWindowEvents9 I.4.6. Đối tượng Window10 I.4.7. Đối tượng OutputWindowPane10 II. Kỷ thuật Add-In11 II.1. Tạo một đối tượng Add-in12 II.2. Các bước tạo đối tượng Add-in bằng Wizard12 II.3. Kết quả các lệnh của đối tượng Add-in14 II.4. Để phục hồi các lệnh của đối tượng Add-in tới menu14 II.5. Điều khiển đối tượng Add-In với Add-In Manager15 II.6. Để nạp một đối tượng Add-In ngay tức thì16 II.7. Chỉ định Add-in nạp lên khi môi trường khởi động16 II.8. Triệu gọi các đối tượng Add-In thông qua dòng lệnh Devenv17 II.9. Đăng ký đối tượng Add-In17 II.10.Các sự kiện chính trong Add-In project19 II.10.1. Phương thức OnConnect19 II.10.2. Phương thức OnStartupComplete21 II.10.3. Phương thức OnAddInsUpdate22 II.10.4. Phương thức OnBeginShutdown23 II.10.5. Phương thức OnDisconnection24 Chương III: KIẾN THỨC WEB SERVICE26 I. Giới thiệu về Web Service26 I.1. Vấn đề chia sẽ dữ liệu26 I.2. Giải quyết bằng phát triển các ứng dụng phân tán26 I.3. Web Service27 I.3.1. Các đặc điểm của Web service27 I.3.2. Lợi ích khi sử dụng Web service28 II. Cơ sở hạ tầng Web Services28 II.1. Các chuẩn và giao thức28 II.2. Các thành phần của Web service29 II.2.1. Web service Directories29 II.2.2. Web service Discovery30 II.2.3. Web service Description30 II.2.4. Web service Wire Format30 II.3. Giao tiếp giữa Client và Web service31 III. Giao thức triệu gọi Web Services31 III.1. HTTP-GET31 III.2. HTTP-POST33 III.3. SOAP33 IV. Xây dựng, triển khai và sử dụng Web Service34 IV.1. Xây dựng Web service34 IV.2. Triển khai Web service36 IV.2.1. Triển khai Web service bằng cách copy36 IV.2.2. Các thành phần được triển khai trong Web service37 IV.2.3. Sử dụng Web service38 IV.2.3.1 Thêm Web Reference vào ứng dụng khách(client)38 IV.2.3.2 Phát sinh lớp Proxy40 IV.2.3.3 Tạo một đối tượng của lớp Proxy41 IV.2.3.4 Truy xuất Web Service sử dụng một đối tượng proxy42 V. Bảo mật42 V.1. Authentication43 V.1.1. Anonymous Access44 V.1.2. Windows Authentication45 V.1.2.1. Role - Base Security45 V.1.2.2. Basic Authentication46 V.1.2.3. Digest Authentication46 V.1.2.4. Integrated Windows Authentication47 V.1.3. Passport Authentication47 V.1.4. Form Authentication47 V.1.4.1. Login Form48 V.1.4.2. Định dạng IIS48 V.1.4.3. Định dạng ASP.NET49 V.2. Authorization49 V.2.1. File Authorization49 V.2.2. URL Authorization50 Chương IV: PHÂN TÍCH - THIẾT KẾ - THỰC HIỆN52 I. Phân tích52 I.1. Nhiệm vụ52 I.2. Phương án52 I.2.1. Xây dựng ứng dụng Admin Website và Web Service theo mô hình đa tầng52 I.2.2. Xây dựng Web Client theo mô hình phân tán sử dụng công nghệ Web Service54 I.2.3. Sử dụng hệ quản trị cơ sở dữ liệu SQL Server 200054 I.2.4. Ngôn ngữ sử dụng: ASP.NET54 I.2.5. Phân tích các nghiệp vụ của hệ thồng bằng ngôn ngữ UML55 I.2.6. Xây dựng add-in55 II. Thiết kế và thực hiện56 II.1. Thiết kế cơ sở dữ liệu56 II.1.1. Biểu đồ quan hệ56 II.1.2. Các bảng dữ liệu của hệ thống58 II.1.2.1. Bảng ErrorCode58 II.1.2.2. Bảng ErrorItems58 II.1.2.3. Bảng Items58 II.1.2.4. Bảng Chapters58 II.1.2.5. Bảng Parts59 II.1.2.6. Bảng Books59 II.1.2.7. Bảng Users59 II.1.3. Các StoreProcedure59 II.2. Phân tích hệ thống61 II.2.1. Sơ đồ họat động61 II.2.2 Sơ đồ tuần tự chức năng của Add-in63 II.2.3. Sơ đồ tuần tự chức năng Web Admin64 II.2.3.1. Sơ đồ tuần tự chức năng quản lý sách64 II.2.3.2. Sơ đồ tuần tự chức năng quản lý phần trong sách65 II.2.3.3. Sơ đồ tuần tự chức năng quản lý chương66 II.2.3.4. Sơ đồ tuần tự chức năng quản lý mục67 II.2.3.5. Sơ đồ tuần tự chức năng quản lý lỗi68 II.2.3.6. Sơ đồ tuần tự chức năng quản lý thêm mục vào lỗi69 II.2.3.7. Sơ đồ tuần tự chức năng quản lý chi tiết lỗi70 II.2.4. Sơ đồ tuần tự cho chức năng tìm kiếm trong Web Client71 II.3. Phần Add-In72 II.3.1. Cài đặt phần Add-in72 II.3.2. Thêm đối tượng Add-in thông qua hộp thoại Add-in Manager73 II.3.3. Hiển thị danh sách lỗi73 II.3.4. Hiển trị trang thông tin chi tiết lỗi74 II.4. Phần Web Admin75 II.4.1. Màn hình chính quản lý sách75 II.4.2. Màn hình chi tiết sách76 II.4.3. Màn hình thêm sách mới76 II.4.4. Màn hình xoá sách77 II.4.5. Màn hình chỉnh sửa sách78 II.4.6. Màn hình quản lý phần(Parts)78 II.4.7. Màn hình quản lý chương79 II.4.8. Màn hình quản lý mục80 II.4.9. Màn hình chi tiết và cập nhật nội dung mục80 II.4.10.Màn hình thêm mục mới81 II.4.11.Màn hình quản lý lỗi81 II.4.12.Màn hình chi tiết lỗi82 II.4.13.Màn hình xoá lỗi83 II.4.14.Màn hình thêm mục cho lỗi83 II.5. Phần Web Client84 II.5.1. Màn hình tìm kiếm84 II.5.2. Màn hình nội dung mục liên quan đến lỗi85 II.6. Phần Web Service85 II.6.1. Tổng quát85 II.6.2. Chi tiết các phương thức86 Chương V: ĐÁNH GIÁ DỰ ÁN VÀ HƯỚNG PHÁT TRIỂN87 I. Đánh giá87 I.1. Hoàn thành87 I.2. Chưa hoàn thành87 II. Hướng phát triển87 LỜI CẢM ƠN Luận văn tốt nghiệp là một trong những sự kiện quan trong đời người, và ngày hôm nay chúng em đã hoàn thành được điều ấy. Và điều mà chúng em muốn nói đến đầu tiên là lời chân thành cảm ơn sâu sắc đến bậc thầy cô, nhất là tất cả thầy cô giáo trường Đại Học Kỹ thuật Công Nghệ, đặc biệt là đội ngũ thầy cô giáo khoa Công Nghệ Thông Tin đã tận tình dạy dỗ, truyền đạt những kiến thức vô cùng quý báo để cho chúng em có thể hoàn thành được đề án tốt nghiệp như ngày hôm nay. Và đặc biệt cảm ơn đến thầy Nguyễn Chánh Thành, người đã tận tình hướng dẫn chúng em thực hiện tốt đề tài này. Và cũng xin gởi lời cảm ơn đến các bạn, những người đã có những gớp ý chân thành và quý giá trong quá trình thực hiện đề tài này. Dù có nhiều nổ lực trong quá trình hiện thực đề tài, nhưng ở lần đầu tiên nên cũng khó tránh khỏi những vương mắc và sai sót. Chúng em rất mong nhận được những ý kiến đóng góp, và sự hướng dẫn chân tình của quý thầy cô. Xin chân thành cảm ơn. TP .HCM, Tháng 1 / 2006  Luận văn tốt nghiệp Chương 1 Nguyễn Duy Hoà V õ Đức Hiền Trang 1 Chương I: GIỚI THIỆU VỂ ĐỀ TÀI I. Giới thiệu Lập trình là một công việc vô cùng khó khăn, đòi hỏi lập trình viên phải có kiến thức rộng rãi cũng như một kỹ năng lập trình tốt để có thể bắt tay thực hiện các dự án phần mềm. Vấn đề một người lập trình cần có 1 công cụ hỗ trợ nhằm giải đáp các thắc mắc liên quan đến kiến thức lập trình là nhu cầu rất thiết thực trong quá trình dạy học trong ngành Công nghệ thông tin để có thể có công cụ nào giúp trút bớt gánh nặng trong việc lập trình. Đề tài “Xây dựng hệ thống hỗ trợ tra cứu lỗi lập trình trong môi trường lập trình Visual Studio .NET 2003” mà chúng tôi nhận thật sự là một điều mà không chỉ cá nhân tôi mà rất nhiều các lập trình viên khác hằng mong ước. Đề tài này xây dựng một công cụ hỗ trợ việc tra cứu lỗi trong môi trường lập trình Visual Studio .NET 2003. Công cụ này bao gồm 2 phần; phần add-in tương tác với môi trường phát triển của VS.Net 2003 (IDE), ngoài ra còn hổ trợ thêm một Web Server cho phép phần add-in truy cập tới kho dữ liệu để nhận về thông tin liên quan đến lỗi. Ngoài ra, Web Server còn cho phép các client đăng ký, truy cập và xem các thông tin về lỗi. II. Chức năng Đầu tiên, để sử dụng hệ thống hỗ trợ tra cứu lỗi lập trình, người dùng cần cài đặt công cụ này. Hệ thống hỗ trợ tra cứu lỗi có các chức năng sau:  Sau khi biên dịch, phần Add-in sẽ truy cập vào hệ thống Visual Studio .NET 2003 lấy danh sách lỗi, và hiển thị trong tab OutputWindow.  Từ tab OutputWindow này cho phép người dùng click vào hyperlink bên cạnh mã lỗi để mang về thông tin liên quan đến lỗi đó.  Đối với người quản trị cơ sở dữ liệu, họ có thể truy cập vào hệ thống bằng quyền Admin và quản trị dữ liệu.  Đối với người dùng thông thường, họ có thể đăng ký account, và truy cập vào trang web để tra cứu các thông tin liên quan đến lỗi.  Luận văn tốt nghiệp Chương 2 Nguyễn Duy Hoà V õ Đức Hiền Trang 2 Chương II: KIẾN THỨC MÔI TRƯỜNG PHÁT TRIỂN VÀ ADD-IN I. Môi trường phát triển DTE I.1. Đối tượng DTE Là đối tượng trên cùng trong mô hình đối tượng tự động hoá của bộ Visual Studio. Tất cả các đối tượng và các thành viên trong mô hình tự động hoá Visual Studio.NET đều dựa trên đối tượng DTE. Đối tượng DTE tiêu biểu cho môi trường phát triển được tích hợp trên Visual Studio.NET và là đối tượng trên cùng trong mô hình hệ thống cấp bậc. Nó đặt trong một không gian tên gọi là EnvDTE. Tên của sản phẩm tạo ra trên .NET đối với không gian tên này là “envdte” và được chứa đựng trong một file gọi là envdte.dll. Tên thư viện có dạng như COM là Microsoft Development Environment 7.0” và được chứa đựng trong file gọi là dte.olb. Đối tượng DTE được cung cấp tới bạn qua phương thức OnConnection mà bạn cài đặt khi tạo ra một đối tượng Add-In. Đối tượng DTE là đối tượng Application trong Visual Basic.  Luận văn tốt nghiệp Chương 2 Nguyễn Duy Hoà V õ Đức Hiền Trang 3 Hình 2.1: Mô hình đối tượng tự động trên Visual Studio .NET  Luận văn tốt nghiệp Chương 2 Nguyễn Duy Hoà V õ Đức Hiền Trang 4 Để truy cập tới các thuộc tính chỉ định trong dự án như VBProjects hay CSharpProjects, hãy dùng cấu trúc DTE.GetObject(“VBProjects”). Minh hoạ: Sub DTEExample() Dim objTextDoc As TextDocument Dim objEP As EditPoint 'Tạo một tài liệu văn bản mới. DTE.ItemOperations.NewFile("General\Text File") 'Lấy quyền điều khiển tới tài liệu mới. Set objTextDoc = DTE.ActiveDocument.Object("TextDocument") Set objEP = objTextDoc.StartPoint.CreateEditPoint 'Tạo một EditPoint và thêm đoạn văn bản. objEP.Insert "A test sentence." End Sub I.2. Thêm một tham chiếu tới không gian tên EnvDTE Dù bạn chọn đối tượng .NET assembly hay loại thư viện dạng COM tuỳ thuộc vào project của bạn. Khi bạn tạo một đối tượng Add-in sử dụng trình Add-In Wizard (trong bất kỳ ngôn ngữ nào) hay khi bạn tạo một macro, thì một tham chiếu tới không gian tên EnvDTE được thiết lập sẵn cho bạn. Nếu bạn muốn truy cập tới phần bên ngoài của các đối tượng tự động hoá của các đối tượng macro hay các đối tượng Add-in được tạo bởi trình Add-In Wizard thì bạn phải thiết lập bằng tay tham chiếu này. Để thêm một tham chiếu tới không gian tên EnvDTE trong Visual C# .NET, ta thực hiện như sau: 1. Trong khung Solution Explorer, bạn click phải chuột trên project node hoặc trên Reference node và chọn AddReference. 2. Trong hộp thoại Add Reference, click vào tab có kiểu component mà bạn muốn, như .NET hay COM. Tìm trong danh sách các component và chọn envdte hay Microsoft Development Environment 7.0, sau đó click OK. [...]... cấp các sự kiện cho giải pháp tạo dựng DTE Events BuildEvents Thuộc tính: public BuildEvents BuildEvents {get;} Trả về đối tượng BuildEvents, cung cấp các sự kiện cho các giải pháp xây dựng Các sự kiện: Sự kiện OnBuildBegin Hoạt động Xuất hiện trước khi solution xây dựng, trước khi dự án bắt đầu xây dựng OnBuildDone Xuất hiện sau khi một solution hoàn tất quá trình xây dựng OnBuildProjConfigBegin Xuất... mạng LAN, intranet, và Internet  Độc lập ngôn ngữ  Độc lập giao thức  Độc lập nền Một trong những thách thức lớn đối với các nhà phát triển là tích hợp ứng dụng Tích hợp ứng dụng là kết hợp một nhóm nhiều ứng dụng và chuyển chúng thành các ứng dụng Web dễ sử dụng, thậm chí khi các chương trình này chạy trên các hệ điều hành khác nhau, được tạo ra từ các ngôn ngữ khác nhau và được xây dựng bằng nhiều... kỳ những hệ thống nào có hỗ trợ những chuẩn Web như vậy có thể chạy được Web service Web Service có thể được sử dụng cục bộ như một ứng dụng đơn lẽ, hay đuợc nhiều ứng dụng khác nhau truy xuất thông qua mạng cục bộ(LAN), intranet và internet Bởi vì Web service được truy xuất thông qua một giao diện chuẩn, Web service cho phép các hệ thống tách biệt làm việc cùng nhau, mô hình Web service độc lập ngôn... Xây dựng setup project đã bởi trình wizard 2 Đóng tất cả các thực thể của VS.NET 3 Chạy file msi từ setup project 4 Khởi động lại VS.NET Từ bây giờ, khi chạy VS.NET, các lệnh của đối tượng Add-in sẽ được hiển thị trên các menu Trình setup project sẽ xây dựng và cài đặt nhanh hơn nếu bạn xác định nó loại trừ môđun kết hợp có thể phân phối lại khi chạy trên NET Runtime Nguyễn Duy Hoà V õ Đức Hiền Trang... Development) là nghệ thuật và kỹ thuật để lấy dữ liệu từ máy này sang máy khác Có nhiều công nghệ cho việc xây dựng các ứng dụng có thể gởi và nhận dữ liệu CORBA(Common Object Request Broker Architerture), RMI(Remote Method Invocation), và DCOM(Distributed Component Object Model) Những công nghệ này đa số đều có các nhược điểm, và không được sử dụng cho các môi trường không đồng nhất DCOM được xây dựng dựa... các dự án và các mục lục dự án một cách lập trình hay tự động hoá việc xây dựng một dự án và các tiến trình triển khai dự án Chú ý: Khả năng mở rộng là khả năng cho phép phát triển và mở rộng chức năng của IDE Kỹ thuật tự động hoá nói đến mã được tạo ra theo thao tác của user và các công cụ mà tự động hoá các tác vụ trong môi trường và chạy IDE theo cách được lập trình Bạn có thể truy cập tới mô hình... Nguyễn Duy Hoà V õ Đức Hiền Trang 11  Luận văn tốt nghiệp Chương 2 cách khác nhau, bao gồm Add-in Manager, toolbar command hay các nút, các dòng lệnh, hay thông qua các sự kiện như khởi động IDE Trong phần hỗ trợ tới mô hình đối tượng chung được cung cấp bởi Visual Studio NET tới tất cả các ngôn ngữ lập trình , các công cụ và các gói của nó, riêng với các ngôn ngữ lập trình trên Visual Studio NET... hổ trợ việc giao tiếp giữa các hệ thống khác nhau, XML Web service sử dụng các định dạng đường truyền mở(open wire formats) Các định dạng đường truyền mở là các giao thức có thể được hiểu bởi bất kỳ hệ thống nào có khả năng hổ trợ các chuẩn web chung như HTTP và SOAP H ình 3.1: Các thành phần của Web service giúp client xác định và gọi các phương thức của Web service Nguyễn Duy Hoà V õ Đức Hiền Trang... V õ Đức Hiền Trang 28  Luận văn tốt nghiệp Chương 3 HTML dùng để mô tả các nội dung mà con người có thể xem được, trong khi XML thì được sử dụng cho các xử lý của máy tính II.1.2 HyperText Tranfer Protocol(HTTP) HTTP là một trong những giao thức được sử dụng rộng rãi nhất trên Internet Mỗi khi trình duyệt truy xuất một trang Web, HTTP là giao thức vận chuyển đang được sử dụng HTTP hỗ trợ rất tốt cho... trên menu tùy theo bạn chọn lựa, điều này phụ thuộc vào cách bạn lập trình cho Nguyễn Duy Hoà V õ Đức Hiền Trang 15  Luận văn tốt nghiệp Chương 2 đối tượng Add-in Nếu đối tượng Add-in không có một giao diện đồ họa (UI), nó sẽ load lên một cách âm thầm và bắt đầu chạy Mẹo: Nếu bạn cố load một đối tượng mà không thể được định vị thì trình Add-In Manager sẽ thoát bỏ đăng ký nó để nó không còn xuất . và xem các thông tin về lỗi. II. Chức năng Đầu tiên, để sử dụng hệ thống hỗ trợ tra cứu lỗi lập trình, người dùng cần cài đặt công cụ này. Hệ thống hỗ trợ tra cứu lỗi có các chức năng sau:. có công cụ nào giúp trút bớt gánh nặng trong việc lập trình. Đề tài Xây dựng hệ thống hỗ trợ tra cứu lỗi lập trình trong môi trường lập trình Visual Studio .NET 2003” mà chúng tôi nhận thật. TRƯỜNG ĐẠI HỌC DÂN LẬP KỸ THUẬT CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN = = =  = = = LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: XÂY DỰNG HỆ THỐNG HỖ TRỢ TRA CỨU LỖI LẬP TRÌNH

Ngày đăng: 02/07/2014, 02:54

Từ khóa liên quan

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

Tài liệu liên quan