Vận dụng các mẫu thiết kế để giải quyết bài toán quản lý theo công nghệ hướng đối tượng : Luận văn ThS. Công nghệ thông tin: 1.01.10

104 42 0
Vận dụng các mẫu thiết kế để giải quyết bài toán quản lý theo công nghệ hướng đối tượng : Luận văn ThS. Công nghệ thông tin: 1.01.10

Đ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 Đức Toàn VẬN DỤNG CÁC MẪU THIẾT KẾ ĐỂ GIẢI QUYẾT BÀI TỐN QUẢN LÝ THEO CƠNG NGHỆ HƯỚNG ĐỐI TƯỢNG LUẬN VĂN THẠC SỸ Hà nội, 11/2006 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đức Toàn VẬN DỤNG CÁC MẪU THIẾT KẾ ĐỂ GIẢI QUYẾT BÀI TỐN QUẢN LÝ THEO CƠNG NGHỆ HƯỚNG ĐỐI TƯỢNG Ngành: Công nghệ thông tin Mã số: 1.01.10 LUẬN VĂN THẠC SỸ Người hướng dẫn khoa học : PGS TS Nguyễn Văn Vỵ Hà nội, 11/2006 Hanoi, November 2006 CÁC THUẬT NGỮ VIẾT TẮT Design pettern GOF(gang of five) Creational patterns Structual patterns Behavioral pattern Framework IDOMS Abstract factory pattern Factory pattern Base- object Base- class Singleton pattern Proxy pattern Proxy class Remote Proxy Virtual Proxy Monitor Proxy Protection proxy Cache proxy Firewall proxy Smart reference proxy Synchoronization Proxy Copy_ on_write proxy Adapter pattern Mẫu thiết kế Nhóm thành viên Các mẫu tạo sinh Các mẫu cấu trúc Các mẫu hành vi Khung làm việc Thành ngữ Mẫu chế tạo trừu tượng Mẫu chế tạo Đối tượng sở Lớp sở Mẫu đơn Mẫu uỷ nhiệm Lớp uỷ nhiệm Uỷ nhiệm từ xa Uỷ nhiệm ảo Uỷ nhiệm hình Chống uỷ nhiệm Khơng gian lưu trữ tạm thời Uỷ nhiệm bảo vệ Kiểm soát đối tượng bổ sung Uỷ nhiệm đồng Cho phép ghi v đĩa lúc Mẫu thích nghi MỤC LỤC CHƢƠNG I MẪU THIẾT KẾ 1.1 Mẫu thiết kế gì? 1.2 Lịch sử mẫu 1.3 Các thành phần mẫu thiết kế 1.3.1 Tên mẫu 1.3.2 Vấn đề 1.3.3 Giải pháp 1.3.4 Hệ 1.4 Mô tả mẫu thiết kế 1.4.1 Tên gọi phân loại 1.4.2 Mục đích 10 1.4.3 Các tên gọi khác 10 1.4.4 Lý sử dụng 10 1.4.5 Khả áp dụng 10 1.4.6 Cấu Trúc 10 1.4.7 Kết Quả 10 1.4.8.Triển Khai 11 1.5 Vai trò mẫu phát triển phần mềm 11 1.6 Mẫu thiết kế kỹ nghệ phần mềm 12 1.6.1 Những mẫu thiết kế vòng đời phát triển phần mềm 12 1.6.2 Vòng đời mẫu 13 1.7 Đặc điểm chung mẫu 14 CHƢƠNG 15 CÁC LOẠI MẪU THIẾT KẾ 15 Luận văn thạc sỹ Nguyễn Đức Toàn 2.1 Phân loại mẫu 15 2.2 Mẫu thiết kế với toán 15 2.3 Mẫu chế tạo (Factory Pattern) 16 2.3.1 Định nghĩa 16 2.3.2 Đặc điểm 17 2.3.3 Phân loại 17 2.3.4 Một biểu đồ lớp UML mẫu chế tạo 18 2.4 Mẫu chế tạo trừu tượng (Abstract Factory Pattern) 18 2.4.1 Định nghĩa 18 2.4.2 Thiết kế động với mẫu chế tạo trừu tượng 18 2.4.3 Biểu đồ lớp UML mẫu 19 2.5 Mẫu đơn (Singleton Pattern) 19 2.5.1 Định nghĩa 20 2.5.2 Lợi ích 20 2.5.3 Trường hợp sử dụng 20 2.5.4 Cách thực 21 2.5.5 Ứng dụng mẫu đơn 21 2.5.6 Nhận xét 22 2.6 Mẫu uỷ nhiệm (Proxy Pattern) 22 2.6.1 Định nghĩa 22 2.6.2 Phân loại 22 2.6.3 Đặc điểm chung 24 2.6.4 Biểu đồ lớp UML mẫu 24 2.7 Mẫu thích nghi (Adapter Pattern) 24 2.7.1 Định nghĩa 24 2.7.2 Đặc điểm 25 2.7.3 Phạm vi ứng dụng 25 Luận văn thạc sỹ Nguyễn Đức Toàn 2.7.4 Biểu đồ lớp UML mẫu 25 2.8 Sơ đồ mối liên kết mẫu thiết kế 26 CHƢƠNG 27 ỨNG DỤNG MẪU 27 Phân tích, thiết kế hệ thống “ Quản lý khám chữa bệnh “ 27 3.1 Mơ tả tốn 27 3.1.1 Bài toán 27 3.1.2 Các vấn đề cần giải 27 3.2 Phát triển hệ thống 28 3.2.1 Các chức hệ thống 28 3.2.2 Các khái niệm mơ hình lĩnh vực 29 3.3 Xác định tác nhân, ca sử dụng mô tả ca sử dụng 35 3.3.1 Xác định tác nhân 35 3.3.2 Xác định ca sử dụng 39 3.3.3 Mơ hình ca sử dụng 44 3.3.4 Mô tả chi tiết ca sử dụng 48 3.4 Phân tích hệ thống 59 3.4.1 Ca sử dụng cập nhật thông tin phòng khám (Clinic) 59 3.4.2 Ca sử dụng cập nhật thơng tin loại phịng khám (Provider Type) 61 3.4.3 Ca sử dụng cập nhật loại quyền sử dụng (BenefitScheme) 63 3.4.4 Ca sử dụng cập nhật toán theo đợt tới công ty (Invoice) 67 3.4.5 Ca sử dụng cập nhật thông tin khám (EmpVisit) 70 3.5 Biểu đồ lớp 73 3.5.1 Áp dụng mẫu Uỷ nhiệm (Proxy) 73 3.5.2 Áp dụng mẫu tạo (Factory) 74 3.5.3 Áp dụng mẫu đơn (Singleton) 75 3.5.4 Biểu đồ lớp chưa áp dụng mẫu 77 Luận văn thạc sỹ Nguyễn Đức Toàn 3.5.5 Biểu đồ lớp sau áp dụng mẫu 78 3.6 Mô tả chi tiết đối tượng 79 3.6.1 ClinicVO 79 3.6.2 ClinicRdb 79 3.6.3 ProviderTypeVO 79 3.6.4 ProviderTypeRdb 80 3.6.5 DiagnosisVO 80 3.6.6 DiagnosisRdb 80 3.6.7 DrugVO 80 3.6.8 DrugRdb 81 3.6.9 LabVO 81 3.6.10 LabRdb 81 3.6.11 XRayVO 82 3.6.12 XRayRdb 82 3.6.13 GroupVO 82 3.6.14 GroupRdb 83 3.6.15 UserVO 83 3.6.16 UserRdb 83 3.6.17 UserRoleTypeVO 84 3.6.18 UserRoleTypeRdb 84 3.6.19 UserRoleVO 84 3.6.20 UserRoleRdb 84 3.6.21 CompanyVO 85 3.6.22 CompanyRdb 85 3.6.23 BenefitSchemeVO 85 3.6.24 BenefitSchemeRdb 86 3.6.25 BSInPanelVO 86 Luận văn thạc sỹ Nguyễn Đức Toàn 3.6.26 BSInPanelRdb 87 3.6.27 VisitDisplayVO 87 3.6.28 VisitDisplayRdb 87 3.6.29 BatchVO 88 3.6.30 BatchRdb 88 3.6.31 InvoiceVO 88 3.6.32 InvoiceRdb 89 3.6.33 PaymentAdviceVO 89 3.6.34 PaymentAdviceRdb 89 3.6.35 EmployeeVO 89 3.6.36 EmployeeRdb 90 3.6.37 DependantVO 90 3.6.38 DependantRdb 91 3.6.39 EmpVisitVO 91 3.6.40 EmpVisitRdb 92 3.6.41 DrugVisitVO 92 3.6.42 DrugVisitRdb 92 3.6.43 LabVisitVO 93 3.6.44 LabVisitRdb 93 3.6.45 XRayVisitVO 93 3.6.46 XRayVisitRdb 93 3.7 Cấu hình phần cứng 94 3.8 Thiết kế giao diện 95 KẾT LUẬN 98 Luận văn thạc sỹ Nguyễn Đức Toàn CHƢƠNG I MẪU THIẾT KẾ 1.1 Mẫu thiết kế gì? Nhìn chung, mẫu mô tả vấn đề thường xuyên xuất thiết kế, triển khai phần mềm giải pháp cho theo cách sử dụng lại Những mẫu thiết kế có ý nghĩa thực tế tốt, chúng phương tiện thiết kế để làm tài liệu để truyền đạt kiến thức, kinh nghiệm chuyên gia cho người học Mẫu cịn mơ tả giải pháp chung vấn đề thiết kế thường “lặp lại” nhiều dự án Nói cách khác, mẫu xem “khn dạng” có sẵn áp dụng cho nhiều tình khác để giải vấn đề cụ thể Trong hệ thống phần mềm hướng đối tượng nào, bắt gặp vấn đề lặp lại a Các mẫu phân tích Các mẫu phân tích (Analysis Patterns) để hiểu vấn đề từ yêu cầu bên Martin Fowler định nghĩa mẫu phân tích “ Nhóm khái niệm đại diện cho cấu trúc chung mơ hình nghiệp vụ” b Các mẫu kiến trúc Các mẫu kiến trúc (Structual Patterns) mô tả sơ đồ tổ chức với cấu trúc cho hệ thống phần mềm Nó cung cấp tập hợp định nghĩa hệ thống thành phần Đồng thời rõ trách nhiệm thành phần qui tắc nguyên tắc cho việc tạo lập mối quan hệ chúng Những mẫu kiến trúc phương tiện kiến trúc, cung cấp tài liệu cho hệ thống hỗn tạp phức tạp Do giúp quản lý ứng dụng phức tạp c Mẫu thiết kế Mẫu thiết kế (Design pettern) cung cấp sơ đồ để làm mịn hệ thống con, thành phần hệ thống phần mềm mối quan hệ chúng Nó mô tả cấu trúc, xác định thành phần truyền thông nhằm giải vấn đề thiết kế chung ngữ cảnh đặc biệt Mẫu chiến lược, mẫu trạng thái mẫu uỷ nhiệm ví dụ cho phạm trù d Thành ngữ Luận văn thạc sỹ Nguyễn Đức Toàn Thành ngữ (idoms) loại mẫu đặc biệt mức thấp dành cho ngơn ngữ lập trình Một thành ngữ miêu tả để thực khía cạnh đặc biệt thành phần mối quan hệ chúng sử dụng đặc tính ngơn ngữ lập trình cho như: C++, Java Smalltalk Các mẫu kinh nghiệm thiết kế kiểm chứng Phần lớn mẫu tìm làm tài liệu mẫu xây dựng lên từ nhiều dự án tiến hành thực tế mẫu sáng chế Các mẫu cách mô tả ngắn gọn hiệu để truyền đạt khái niệm kinh nghiệm nhà phát triển từ vấn đề thực tế 1.2 Lịch sử mẫu Ý tưởng mẫu phần mềm phát triển đa dạng Kiến trúc sư Christopher Alexander trường đại học California Berkeley người phát triển tảng mẫu Từ “mẫu” gần gắn liền với nghiệp hoạt động giáo sư Giáo sư nhóm nghiên cứu ơng khoảng 20 năm để phát triển cách tiếp cận tới kiến trúc thơng thường có sử dụng mẫu Alexander giới thiệu 250 mẫu với nhiều mức độ trừu tượng từ kiến trúc thành phố đến thiết kế phòng Kiến trúc sư thành lập khung mẫu miêu tả mẫu giải pháp vấn đề mức ngữ cảnh Ông phát triển nguyên mẫu từ mẫu dùng công việc ông kiến trúc Kent Beck Ward Cunningham[1] say mê áp dụng ý tưởng Alexander để phát triển mẫu phần mềm Họ tập hợp mẫu nói đặc tả giao diện người dùng Kent tập trung vào thành ngữ cho Smalltalk Ward diễn đạt kinh nghiệm hệ thống nghiệp vụ (hệ thống kế toán) Erich Gamma xuất ấn phẩm vấn đề sử dụng mẫu phát triển phần mềm năm 1991 Cuốn sách viết Đức, sách không ý nhiều Bruce Anderson nhà lãnh đạo cộng đồng mẫu Ông thành lập ngân hàng mẫu OOPSLA vào đầu năm 1990 Jim Coplien miêu tả thành ngữ C++ lập trình C++ tiên tiến Theo cách đó, thành ngữ có liên quan tới ý tưởng giải pháp cung cấp tài liệu cho vấn đề thường xuyên Một nhóm có tên Hillside Group hình thành nhằm khai thác sâu ý tưởng thúc đẩy sử dụng mẫu trình phát triển phần mềm Họ xây dựng mẫu nhằm dẫn dắt hỗ trợ thành viên cộng đồng mẫu Nhóm hình thành với tên PLOP vào năm 1994 Luận văn thạc sỹ Nguyễn Đức Toàn 3.6.26 BSInPanelRdb - Các giao diện: BSInPanelRdb GetInstance() boolean AddBSInPanel (BSInPanelVO bSInPanelVO) boolean EditBSInPanel (BSInPanelVO bSInPanelVO) boolean DeleteBSInPanel (BSInPanelVO bSInPanelVO) BSInPanelVO[] FindBSInPanel (String key) BSInPanelVO FindBSInPanelById (String id) 3.6.27 VisitDisplayVO TT Kiểu varchar int Varchar varchar varchar varchar varchar varchar Tên id version name showMC showDiagnosis showDrug showLab showXRay Độ rộng 16 50 1 1 3.6.28 VisitDisplayRdb - Các giao diện: VisitDisplayRdb GetInstance() boolean AddVisitDisplay (VisitDisplayVO visitDisplayVO) boolean EditVisitDisplay (VisitDisplayVO visitDisplayVO) boolean DeleteVisitDisplay (VisitDisplayVO visitDisplayVO) VisitDisplayVO[] FindVisitDisplay (String key) VisitDisplayVO FindVisitDisplayById (String id) 87 Ràng buộc Định danh Luận văn thạc sỹ Nguyễn Đức Toàn 3.6.29 BatchVO TT Kiểu varchar int varchar datetime datetime datetime varchar Tên id version batchNo batchDate paymentAdviceDate invoiceDate groupName Độ rộng 16 16 8 50 Ràng buộc Định danh Độ rộng 16 16 50 50 8 8 8 Ràng buộc Định danh 3.6.30 BatchRdb - Các giao diện: BatchRdb GetInstance() boolean AddBatch (BatchVO batchVO) BatchVO[] FindBatch (String key) BatchVO FindBatchById (String id) 3.6.31 InvoiceVO TT 10 11 12 13 14 15 Kiểu varchar int varchar datetime varchar varchar int float money money money money money money Tên id version invoiceNo invoiceDate companyName groupName totalVisit totalMcDays lowestFee highestFee averageFee totalDrugsFees totalXRayFees totalLabFees 88 Luận văn thạc sỹ 16 Nguyễn Đức Toàn totalVisitWithMcDays int 3.6.32 InvoiceRdb - Các giao diện: InvoiceRdb GetInstance() boolean AddInvoice (InvoiceVO invoiceVO) InvoiceVO[] FindInvoice (String key) InvoiceVO FindInvoiceById (String id) 3.6.33 PaymentAdviceVO TT 10 11 12 Kiểu varchar int varchar datetime varchar int float money money money money Tên id version paymentAdviceNo paymentAdviceDate clinicName totalVisits totalMcDays lowestFee highestFee averageFee toalClaims Độ rộng 16 16 50 8 8 Ràng buộc Định danh 3.6.34 PaymentAdviceRdb - Các giao diện: PaymentAdviceRdb GetInstance() boolean AddPaymentAdvice (PaymentAdviceVO paymentAdviceVO) PaymentAdviceVO[] FindPaymentAdvice (String key) PaymentAdviceVO FindPaymentAdviceById (String id) 3.6.35 EmployeeVO TT Kiểu varchar Tên id 89 Độ rộng 16 Ràng buộc Định danh Luận văn thạc sỹ 10 11 12 13 14 15 Nguyễn Đức Toàn version companyName name nric dob gender address emailAddress startDate cardNo noOfDependant creationDate lastModified benefitSchemeName int varchar varchar varchar dtetime varchar varchar varchar dtetime varchar int datetime datetime varchar 50 50 20 150 100 20 8 50 3.6.36 EmployeeRdb - Các giao diện: EmployeeRdb GetInstance() boolean AddEmployee (EmployeeVO employeeVO) boolean EditEmployee (EmployeeVO employeeVO) boolean DeleteEmployee (EmployeeVO employeeVO) EmployeeVO[] FindEmployee() EmployeeVO FindEmployeeById() 3.6.37 DependantVO TT Kiểu varchar int varchar varchar varchar datetime varchar Tên id version employeeName name nric dob gender 90 Độ rộng 16 50 50 20 Ràng buộc Định danh Luận văn thạc sỹ 10 11 12 13 Nguyễn Đức Toàn relationship startDate cardNo creationDate lastModified benefitSchemeName varchar datetime varchar datetime datetime varchar 20 20 8 50 3.6.38 DependantRdb - Các giao diện: DependantRdb GetInstance() boolean AddDependant (DependantVO dependantVO) boolean EditDependant (DependantVO dependantVO) boolean DeleteDependant (DependantVO dependantVO) DependantVO[] FindDependant (String key) DependantVO FindDependantById (String id) 3.6.39 EmpVisitVO TT 10 11 12 13 14 15 Kiểu varchar int varchar datetime varchar varchar varchar varchar varchar varchar varchar varchar float datetime varchar Tên id version name visitDate clinicName patientName patientNric companyName groupName employeeName dependantName providerTypeName mcDay mcStartDate diagnosisPriName 91 Độ rộng 16 50 50 50 20 50 50 50 50 50 8 50 Ràng buộc Định danh Luận văn thạc sỹ 16 17 18 19 20 21 22 Nguyễn Đức Toàn diagnosisSecName drugFee labFee xRayFee totalFee creationDate batchNo varchar money money money money datetime varchar 50 8 8 16 3.6.40 EmpVisitRdb - Các giao diện: EmpVisitRdb GetInstance() boolean AddEmpVisit (EmpVisitVO empVisitVO) boolean EditEmpVisit (EmpVisitVO empVisitVO) boolean DeleteEmpVisit (EmpVisitVO empVisitVO) EmpVisitVO[] FindEmpVisit (String key) EmpVisitVO FindEmpVisitById (String id) 3.6.41 DrugVisitVO TT Kiểu varchar int varchar varchar varchar money Tên id version empVisitName drugName unit unitPrice Độ rộng 16 50 50 10 3.6.42 DrugVisitRdb - Các giao diện: DrugVisitRdb GetInstance() boolean AddDrugVisit (DrugVisitVO drugVisitVO) boolean EditDrugVisit (DrugVisitVO drugVisitVO) boolean DeleteDrugVisit (DrugVisitVO drugVisitVO) 92 Ràng buộc Định danh Luận văn thạc sỹ Nguyễn Đức Toàn DrugVisitVO[] FindDrugVisit (String key) DrugVisitVO FindDrugVisitById (String id) 3.6.43 LabVisitVO TT Kiểu varchar int varchar varchar money Tên id version empVisitName labName amount Độ rộng 16 50 50 Ràng buộc Định danh Độ rộng 16 50 50 Ràng buộc Định danh 3.6.44 LabVisitRdb - Các giao diện: LabVisitRdb GetInstance() boolean AddLabVisit (LabVisitVO labVisitVO) boolean EditLabVisit (LabVisitVO labVisitVO) boolean DeleteLabVisit (LabVisitVO labVisitVO) LabVisitVO[] FindLabVisit (String key) LabVisitVO FindLabVisitById (String id) 3.6.45 XRayVisitVO TT Kiểu varchar int varchar varchar money Tên id version empVisitName xRayName amount 3.6.46 XRayVisitRdb - Các giao diện: XRayVisitRdb GetInstance() boolean AddXRayVisit (XrayVisitVO xRayVisitVO) 93 Luận văn thạc sỹ Nguyễn Đức Toàn boolean EditXRayVisit (XrayVisitVO xRayVisitVO) boolean DeleteXRayVisit (XrayVisitVO xRayVisitVO) XrayVisitVO[] FindXRayVisit (String key) XRayVisitVO FindXRayVisitById (String id) 3.7 Cấu hình phần cứng Cơ sở liệu chọn phải đủ mạnh để quản lý khối lượng liệu lớn với tần suất truy cập liệu cao, đáp ứng dịch vụ trực tuyến đảm bảo yêu cầu an toàn liệu Các sở liệu mà đáp ứng yêu cầu MySQL, SQL server, oracle Hệ thống sử dụng hệ quản trị sở liệu SQL server 2005 Hiện Java ngôn ngữ hướng đối tượng mạnh mẽ sử dụng rộng rãi Do hệ thống em sử dụng ngơn ngữ Java để cài đặt 94 Luận văn thạc sỹ Nguyễn Đức Toàn 3.8 Thiết kế giao diện Sau sơ giao diện chương trình “Quản lý khám chữa bệnh” a Giao diện login Hình 3.33 Giao diện login Khi đăng nhập vào hệ thống người dùng phải nhập tài khoản (UserId) mật (Password) vào form đăng nhập Hệ thống kiểm tra, nêu tài khoản mật hợp lệ ứng với quyền đăng nhập tương ứng tài khoản mà hệ thống form quản lý tương ứng Nếu sai yêu cầu nhập lại tài khoản mật 95 Luận văn thạc sỹ Nguyễn Đức Tồn b Giao diện danh sách tổng cơng ty (Group) Hình 3.34 Giao diện danh sách tổng cơng ty (Group) Khi người dùng chọn menu Group bên trái hệ thống danh sách Group Sau ta chọn chức tìm kiếm Group cách nhập điều kiện tìm kiếm nhấn nút Search Ta thêm Group cách nhấn nút Add Khi muốn sửa đổi thông tin Group ta nhấn vào Group Ngồi ta thêm người dùng cho Group cách nhận vào link User tương ứng Group 96 Luận văn thạc sỹ Nguyễn Đức Toàn c Giao diện thêm lần khám Hình 3.35 Giao diện thêm lần khám (EmpVisit) Khi người dùng chọn chức thêm lần khám hệ thống hiển thị form thêm lần khám (Add empvisit) Sau nhập thông tin cần thiết người dùng ấn nút OK để đồng ý Cancel muốn huỷ 97 Luận văn thạc sỹ Nguyễn Đức Toàn KẾT LUẬN Luận văn nghiên cứu vấn đề ” Mẫu thiết kế phân tích hướng mẫu” Đây vấn đề cịn mẻ, nhiên luận văn trình bày chi tiết khái niệm mẫu, đồng thời giới thiệu số mẫu 23 mẫu nhóm tác giả Erich Gamma, Richard Helm, Ralph Johnson, Johnson Vilissides Do thời gian có hạn, số mẫu chưa trình bày luận văn Phần ứng dụng luận văn tiến hành phân tích thiết kế hệ thống “ Quản lý khám chữa bệnh ” có áp dụng số mẫu phân tích để cài đặt Đây hệ thống tương đối phức tạp thơng tin hệ thống thường xuyên biến động, đòi hỏi hệ thống cần phải xử lý Số lượng thông tin cần quản lý tương đối lớn Các phép xử lý hệ thống chủ yếu theo lô, tiến hành đồng thời nhiều thao tác, mặt khác tính chất nghiệp vụ địi hỏi hệ thống cần phải có độ tin cậy cao, tính bảo mật tốt lại đảm bảo cho nhiều đối tượng khác truy nhập thơng tin hệ thống Q trình xây dựng hệ thống “ Quản lý khám chữa bệnh ” phần nắm bắt cách tiếp cận với toán quản lý, phương pháp phân tích, thiết kế, xây dựng tốn dựa phương pháp lập trình hướng đối tượng, thơng qua áp dụng kiến thức trang bị nhà trường vào thực tế Đồng thời nắm sử dụng công cụ trợ giúp cho q trình phân tích thiết kế xây dựng tốn lập trình hướng đối tượng UML sử dụng số mẫu phân tích Đề tài “Mẫu thiết kế phân tích hướng mẫu” đạt số kết định nhiên đề tài cần phát triển hướng sau: - Tiếp tục nghiên cứu sâu mẫu để có khả vận dụng nhiều mẫu hoạt động thiết kế - Tiếp tục triển khai tiếp tốn quản lý hồn thiện chức có để trợ giúp tốt cho cơng việc quản lý việc khám chữa bệnh 98 Danh Mục Hình Hình 1.1 Minh hoạ vịng đời mẫu 13 Hình 2.1 Biểu đồ lớp lớp chế tạo 18 Hình 2.2 Biểu đồ lớp mẫu chế tạo trừu tượng 19 Hình 2.3 Minh hoạ biểu đồ lớp mẫu đơn 19 Hình 2.4 Ví dụ mẫu đơn 20 Hình 2.5 Biểu đồ lớp mẫu đơn 21 Hình 2.6 Biểu đồ lớp mẫu uỷ nhiệm 24 Hình 2.7 Biểu đồ lớp thích nghi 25 Hình 3.1 Mơ hình khái niệm mức nghiệp vụ (hình 1) 31 Hình 3.2 Mơ hình khái niệm mức nghiệp vụ (hình 2) 32 Hình 3.3 Mơ hình khái niệm mức nghiệp vụ (hình 3) 33 Hình 3.4 Mơ hình khái niệm mức nghiệp vụ (hình 4) 34 Hình 3.5 Biểu đồ ca sử dụng mức gộp hệ thống 44 Hình 3.6 Biểu đồ ca sử dụng mức gộp Admin login 45 Hình 3.7 Biểu đồ ca sử dụng mức gộp Group login 46 Hình 3.8 Biểu đồ ca sử dụng mức gộp Company login 47 Hình 3.9 Biểu đồ ca sử dụng mức gộp Clinic login 47 Hình 3.10 Ca sử dụng mức gộp Employee Login 48 Hình 3.11 Biểu đồ hệ thống ca sử dụng cập nhật thông tin Clinic 59 Hình 3.12 Mơ hình khái niệm ca sử dụng cập nhật thông tin Clinic 60 Hình 3.13 Biểu đồ đối tượng khái niệm ca sử dụng cập nhật thông tin Clinic 60 Hình 3.14 Biểu đồ hệ thống ca sử dụng cập nhật thơng tin ProviderType 61 Hình 3.15 Mơ hình khái niệm ca sử dụng cập nhật thông tin ProviderType 62 Luận văn thạc sỹ Nguyễn Đức Tồn Hình 3.16 Biểu đồ đối tượng khái niệm ca sử dụng cập nhật thông tin ProviderType 63 Hình 3.17 Biểu đồ hệ thống ca sử dụng cập nhật thơng tin BenefitScheme 64 Hình 3.18 Mơ hình khái niệm ca sử dụng cập nhật thơng tin BenefitScheme 65 Hình 3.19 Biểu đồ đối tượng khái niệm ca sử dụng cập nhật thông tin BenefitScheme 66 Hình 3.20 Biểu đồ hệ thống ca sử dụng cập nhật thơng tin Invoice 67 Hình 3.21 Mơ hình khái niệm ca sử dụng cập nhật thông tin Invoice 68 Hình 3.22 Biểu đồ đối tượng khái niệm ca sử dụng cập nhật thông tin Invoice 69 Hình 3.23 Biểu đồ hệ thống ca sử dụng cập nhật thơng tin EmpVisit 70 Hình 3.24 Mơ hình khái niệm ca sử dụng cập nhật thơng tin EmpVisit 71 Hình 3.25 Biểu đồ đối tượng khái niệm ca sử dụng cập nhật thông tin EmpVisit 72 Hình 3.26 Áp dụng mẫu Proxy vào trình thao tác với sở liệu 73 Hình 3.27 Sơ đồ thiết kế lớp Clinic áp dụng mẫu Proxy 74 Hình 3.28 Áp dụng mẫu Factory pha login 75 Hình 3.29 Mơ tả khái qt lớp ObjectRdb áp dụng mẫu đơn 76 Hình 3.30 Lớp ClinicRdb sau áp dụng mẫu đơn 76 Hình 3.31 Biểu đồ lớp trước áp dụng mẫu 77 Hình 3.32 Biểu đồ lớp sau áp dụng mẫu 78 Hình 3.33 Giao diện login 95 Hình 3.34 Giao diện danh sách tổng cơng ty (Group) 96 Hình 3.35 Giao diện thêm lần khám (EmpVisit) 97 100 Tài liệu tham khảo [1] Nguyễn văn Vỵ “ Phân tích thiết kế hệ thống hướng đối tượng” , giảng cao học khoa công nghệ trường ĐHQGHN, 2004 [2] Nguyễn Văn Vỵ “ Phân tích thiết kế hệ thống thơng tin đại hướng cấu trúc hướng đối tượng “, NXB thống kê, 2002 [3] Đồn Văn Ban “ Phân tích thiết kế hướng đối tượng UML “, ging, 2003 [4] Đặng Văn Đức “ Phân tích thiết kế hướng đối tượng UML”, NXB giáo dục,2002 [5] Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides “Design Pattern elements of reuseable objected software- gang of four “,1999 [6] Craig Larma, “ Applying UML and petterns, An introduction to object- oriented analysis and design “, 2004 [7] Cood P and Yourdon E, “ Object- oriendted analysis “, second edittion yourdon press, 233 pp 1990 [8] Sherif M, Yacoub, Hany H , Ammar Pattern- “ Oriented Analysis and Design: Composing Patterrns to Design Software Systems “, 2003 [9] http://en.wikipedia.org/wiki/Design_pattern_(computer_science) [10] http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/patterns/

Ngày đăng: 23/09/2020, 21:05

Từ khóa liên quan

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

Tài liệu liên quan