1. Trang chủ
  2. » Luận Văn - Báo Cáo

trình bày lý thuyết công nghệ phát triển phần mềm phần mềm thông minh nghiên cứu phát triển phần mềm hướng dịch vụ

17 2 0

Đ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

Thông tin cơ bản

Tiêu đề Trình bày lý thuyết công nghệ phát triển phần mềm, phần mềm thông minh. Nghiên cứu phát triển phần mềm hướng dịch vụ
Tác giả Phạm Thành Đoàn
Người hướng dẫn Ths. Hoàng Quang Huy
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Công nghệ thông tin
Thể loại Bài kiểm tra thường xuyên
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 17
Dung lượng 286,56 KB

Nội dung

Nghiên cứu pháttriển phần mềm hướng dịch vụ.1.1.Lý thuyết công nghệ phát triển phần mềm Công nghệ phần mềm là lĩnh vực khoa học về các phương pháp luận, kỹ thuật và công cụ tích hợp tro

Trang 1

Trường Đại Học Công Nghiệp Hà Nội

Khoa Công Nghệ Thông Tin

BÀI KIỂM TRA THƯỜNG XUYÊN 1

HỌC PHẦN: MỘT SỐ CÔNG CỤ PHÁT TRIỂN PHẦN

MỀM

Giảng Viên: Ths Hoàng Quang Huy Người thực hiện: Phạm Thành Đoàn

Mã Sinh Viên: 2020607445

Trang 2

HÀ NỘI - NĂM 2023

Mục Lục

Nghiên cứu phát triển phần mềm hướng dịch vụ 3

1.1 Lý thuyết công nghệ phát triển phần mềm 3

1.2 Phát triển phần mềm hướng dịch vụ 3

2 Phân tích và thiết kế hệ thống phần mềm dựa trên kiến trúc Hướng dịch vụ Lựa chọn công nghệ / framework để giải quyết hệ thống vừa phân tích Đánh giá mã nguồn / các thành phần hỗ trợ / khả năng cài đặt sâu của công nghệ lựa chọn này 6

2.1 Tổng quan về mô hình kiến trúc hướng dịch vụ (SOA) 6

2.2 Ưu và nhược điểm của mô hình hương dịch vụ (SOA) 7

2.3 Phân tích và thiết kế hệ thống phần mềm dựa trên kiến trúc hướng dịch vụ (SOA) 8

Mục Lục Hình Ảnh Hình 2 1: Sơ đồ use-case 10

Hình 2 2: Mô hình quan hệ dữ liệu 14

Hình 2 3: Sơ đồ ứng dụng 15

Hình 2 4: Mô hình MVC 15

Hình 2 5: Minh họa luồng 16

Trang 3

1.Trình bày lý thuyết công nghệ phát triển phần mềm, phần mềm thông minh Nghiên cứu phát triển phần mềm hướng dịch vụ.

1.1 Lý thuyết công nghệ phát triển phần mềm

 Công nghệ phần mềm là lĩnh vực khoa học về các phương pháp luận, kỹ thuật và công cụ tích hợp trong quy trình sản xuất và vận hành phần mềm, công nghệ phần mền là một ngành kỹ thuật liên quan đến tất cả các khía cạnh của sản xuất phần mềm từ giai đoạn đầu vào đặc tả hệ thống cho đến bảo trì hệ thống sản xuất phần mềm không chỉ là quá trình phát triển kỹ thuật, mà còn bao gồm công tác quản lý dự án, phát triển các công cụ, phương pháp, tài liệu, v.v để hỗ trợ sản xuất phần mềm

 Công nghệ phát triển phần mềm (software engineering) là sự áp dụng một cách tiếp cận có hệ thống, có kỷ luật, và định lượng được cho việc phát triển, sử dụng và bảo trì phần mềm Nó bao gồm các hoạt động khoa học máy tính dành riêng cho quá trình tạo, thiết kế, triển khai và hỗ trợ phần mềm Công nghệ phát triển phần mềm giúp cho việc phát triển phần mềm trở nên hiệu quả hơn, đảm bảo chất lượng sản phẩm và giảm thiểu chi phí

 Phần mềm thông minh là một loại phần mềm được thiết kế để giúp máy tính thực hiện các tạc vụ thông minh mà trước đây chỉ có con người mới

có thể thực hiện được Nó sử dụng các thuật toán và mô hình học máy để

tự động học và cải thiện khả năng thực hiện các tác vụ thông minh rất đa dạng, từ nhận dạng giọng nói, phân loại hình ảnh, dịch thuật tự độngm đến việc dự đoán hành vi người dùng và tư vấn sản phẩm nó có thể giúp các công việc trở nên nhanh chóng chính xác và hiệu quả hơn

1.2 Phát triển phần mềm hướng dịch vụ

Phần mềm hướng dịch vụ (Service-Oriented Software, viết tắt là SOA) là một kiến trúc phần mềm cho phép ứng dụng và hệ thống tương tác thông qua các dịch vụ SOA tập trung vào việc tổ chức chức năng của phần mềm thành

Trang 4

các dịch vụ độc lập, có khả năng sử dụng lại và có thể tích hợp với nhau để tạo ra các ứng dụng phức tạp Mục tiêu của SOA là tạo ra sự linh hoạt, tái sử dụng và tích hợp trong phát triển phần mềm Dưới đây là một số điểm quan trọng về SOA:

 Dịch vụ (Service): Dịch vụ trong ngữ cảnh SOA là một thành phần phần mềm độc lập có khả năng thực hiện một nhiệm vụ cụ thể Mỗi dịch vụ thực hiện một tác vụ cụ thể và có thể được truy cập thông qua một giao diện định rõ

 Tích hợp: SOA cho phép tích hợp các dịch vụ để tạo ra các ứng dụng phức tạp hơn Dịch vụ có thể giao tiếp và tương tác với nhau qua các giao thức và giao diện chuẩn như Web Services (dựa trên giao thức SOAP) hoặc RESTful API

 Tái sử dụng: Một trong những lợi ích quan trọng của SOA là khả năng tái

sử dụng Các dịch vụ có thể được phát triển một lần và sử dụng trong nhiều ứng dụng khác nhau, giúp tiết kiệm thời gian và nguồn lực

 Linh động: SOA giúp tổ chức phát triển phần mềm dễ dàng thay đổi và cập nhật Khi một dịch vụ cần cải thiện hoặc thay đổi, chỉ cần thay đổi dịch vụ đó mà không cần phải ảnh hưởng đến toàn bộ hệ thống

 Quản lý dịch vụ: SOA yêu cầu quản lý dịch vụ một cách hiệu quả Điều này bao gồm việc theo dõi, quản lý chất lượng, và bảo mật các dịch vụ

 Tích hợp giao diện người dùng và ứng dụng: SOA không chỉ áp dụng cho các dịch vụ nền tảng, mà còn cho phép tích hợp các giao diện người dùng

và ứng dụng trong mô hình dựa trên dịch vụ

 Để phát triển một phần mềm hướng dịch vụ cần làm 10 bước sau:

 Xác định Mục tiêu và Yêu cầu: Xác định rõ mục tiêu của dự án phát triển phần mềm hướng dịch vụ cùng với yêu cầu cụ thể của ứng dụng Điều này bao gồm việc xác định các dịch vụ cần phải tạo ra hoặc tích hợp, và hiểu

rõ nhu cầu kinh doanh

Trang 5

 Thiết kế Kiến trúc SOA: Xây dựng kiến trúc tổng thể của ứng dụng dựa trên kiến trúc hướng dịch vụ Xác định các dịch vụ, giao diện dịch vụ, và cách chúng sẽ tương tác với nhau

 Phát triển Dịch vụ: Phát triển các dịch vụ dựa trên thiết kế kiến trúc Sử dụng các công nghệ và ngôn ngữ lập trình phù hợp để triển khai các dịch vụ

 Xây dựng Giao diện Người dùng và Ứng dụng: Nếu cần, xây dựng giao diện người dùng và các ứng dụng sử dụng dịch vụ SOA Tích hợp giao diện người dùng với các dịch vụ để thực hiện các tác vụ cụ thể

 Tích hợp Dịch vụ: Kết hợp các dịch vụ với nhau và với các ứng dụng khác để tạo ra ứng dụng hoàn chỉnh Sử dụng các giao thức và giao diện chuẩn để đảm bảo tích hợp hiệu quả

 Kiểm thử và Hiệu chỉnh: Tiến hành kiểm tra và đánh giá hiệu suất và tính đúng đắn của hệ thống và các dịch vụ SOA Điều này bao gồm kiểm thử đơn vị, kiểm thử tích hợp, và kiểm thử hệ thống

 Bảo mật và Quản lý Dịch vụ: Đảm bảo rằng dịch vụ và hệ thống được bảo mật bằng cách áp dụng các biện pháp bảo mật Quản lý dịch vụ bao gồm việc theo dõi và quản lý chất lượng dịch vụ

 Triển khai và Quản lý: Triển khai ứng dụng và dịch vụ SOA trong môi trường sản xuất Sau khi triển khai, cần theo dõi và quản lý hệ thống để đảm bảo tính ổn định và hiệu suất

 Tài liệu và Đào tạo: Lập tài liệu cho dự án phát triển phần mềm và cung cấp đào tạo cho những người sử dụng cuối và quản trị hệ thống

 Tối ưu hóa và Mở rộng: Liên tục cải tiến và mở rộng ứng dụng và dịch vụ SOA để đáp ứng nhu cầu kinh doanh và công nghệ mới

Trang 6

2.Phân tích và thiết kế hệ thống phần mềm dựa trên kiến trúc Hướng dịch vụ Lựa chọn công nghệ / framework để giải quyết hệ thống vừa phân tích Đánh giá mã nguồn / các thành phần

hỗ trợ / khả năng cài đặt sâu của công nghệ lựa chọn này.

2.1 Tổng quan về mô hình kiến trúc hướng dịch vụ (SOA)

SOA hay Service - Oriented Architecture là một thuật ngữ được hiểu nôm na là kiến trúc hướng dịch vụ Nơi đây tập hợp mọi dịch vụ được kết nối “mềm dẻo” với nhau Tuy nhiên, chúng vẫn có giao tiếp và được định nghĩa độc lập, rõ ràng với nền tảng hệ thống

Có thể nói, SOA thuộc một cấp độ cao hơn ở phát triển ứng dụng, nó chú trọng nhiều đến quy trình nghiệp vụ Đồng thời dùng chính giao tiếp chuẩn của mình nhằm che đi sự phức tạp kỹ thuật bên dưới Nói theo một cách dễ hiểu hơn, thì:

 SOA được định nghĩa là kiểu kiến trúc trong phần mềm bao gồm nhiều thành phần đơn lẻ Chúng tập trung lại và tạo thành những dịch vụ, mỗi dịch vụ thực hiện một nhiệm vụ, quy trình khác nhau

 Sự tập hợp những thành phần được kết nối qua cổng giao tiếp, chúng có tính kế thừa các thành phần đang tồn tại Chúng tương tác với nhau mà không cần quan tâm đến việc mình được phát triển trên nền tảng công nghệ nào Điều này có tác dụng giúp hệ thống mở rộng hơn và tích hợp một cách dễ dàng

Trang 7

Thực tế, các doanh nghiệp sẽ không dậm chân tại chỗ mà đòi hỏi phải có sự thay đổi Đôi khi, sự thay đổi phải ngày càng nhanh, đến mức các cấu trúc ứng dụng truyền thống của doanh nghiệp không thể giải quyết được Thì lúc này, SOA sẽ đáp ứng, trợ giúp cho hoạt động doanh nghiệp linh hoạt hơn, hiệu quả hơn

Từ góc độ doanh nghiệp, có thể coi SOA là phương pháp tái cấu trúc hạ tầng thông tin trong doanh nghiệp Với SOA, mọi

tổ chức kinh doanh đều có quyền nghĩ đến việc sẵn sàng chuyển mình

2.2 Ưu và nhược điểm của mô hình hương dịch vụ (SOA)

a Ưu điểm

 Tái sử dụng: SOA tập trung vào việc xây dựng các dịch

vụ độc lập và tái sử dụng Điều này giúp giảm thiểu việc phát triển lại các chức năng đã được xây dựng và tăng cường tính tái sử dụng của phần mềm

 Tích hợp: SOA cung cấp một cách tiếp cận linh hoạt để tích hợp các hệ thống và ứng dụng khác nhau Các dịch

vụ có thể được triển khai trên các nền tảng và ngôn ngữ lập trình khác nhau, cho phép tích hợp dễ dàng giữa các

hệ thống không đồng nhất

 Linh hoạt: SOA giúp tách biệt các thành phần và chức năng trong hệ thống, giúp đảm bảo tính linh hoạt và khả năng thích ứng Các dịch vụ có thể được thay đổi, cập nhật và mở rộng mà không ảnh hưởng đến các thành phần khác trong hệ thống

 Quản lý dịch vụ: SOA cung cấp các cơ chế quản lý dịch

vụ để giám sát hiệu suất, quản lý phiên bản và kiểm

Trang 8

soát truy cập Điều này giúp đảm bảo tính tin cậy và hiệu quả của hệ thống

 Tăng cường khả năng mở rộng: SOA cho phép việc mở rộng hệ thống một cách dễ dàng bằng cách thêm hoặc thay đổi các dịch vụ Hệ thống có thể mở rộng theo nhu cầu và quy mô của doanh nghiệp mà không gặp các ràng buộc cứng nhắc

b Nhược điểm

 Phức tạp: SOA có thể phức tạp trong việc thiết kế và triển khai Cần có kiến thức chuyên môn về kiến trúc hệ thống và các công nghệ liên quan Nếu không được thực hiện đúng cách, SOA có thể dẫn đến sự rối loạn về quản

lý và hiệu suất

 Hiệu suất: SOA có thể gây ra tăng thêm độ trễ trong việc truyền thông giữa các dịch vụ do việc sử dụng các giao thức và phương thức truyền thông Điều này có thể ảnh hưởng đến hiệu suất toàn hệ thống

 Quản lý phiên bản: SOA đòi hỏi quản lý phiên bản chặt chẽ để đảm bảo sự tương thích giữa các dịch vụ khác nhau Việc quản lý phiên bản phức tạp có thể trở thành một thách thức đối với quản lý và triển khai hệ thống

 Bảo mật: SOA đặt ra các thách thức về bảo mật Việc quản lý quyền truy cập và bảo vệ dữ liệu trong một môi

Trang 9

trường phân tán và tích hợp có thể phức tạp và đòi hỏi các biện pháp bảo mật chặt chẽ

 Chi phí: SOA có thể đòi hỏi đầu tư ban đầu và chi phí vận hành cao hơn so với các kiến trúc truyền thống Việc triển khai và quản lý SOA đòi hỏi sự đầu tư lớn về

cơ sở hạ tầng, đào tạo nhân lực và quản lý

2.3 Phân tích và thiết kế hệ thống phần mềm dựa trên kiến trúc hướng dịch vụ (SOA)

a) Phân tích hệ thống quản lý khách sạn:

Dưới đây là sơ đồ use – case mức 0 mô tả chức năng của toàn

bộ hệ thống và những tác nhân nào sẽ sử dụng chức năng nào.

Xem Trang Chu

Xem Danh Sách Phòng

Gui lien he dat phong KhachHang

Gui phan hoi

Dang Nhap Quan ly thong tin ca nhan

Quan ly lien he

Quan ly phan hoi

NhanVien Doi mat khau

Quan ly phong

Quan ly hoa don

Quan Ly

Quan ly nhan vien

Quan ly tai khoan

Quan Tri He Thong

Phan quyen

Hình 2 1: Sơ đồ use-case

b) Quy trình đặt phòng

Vì nhóm không có khả năng đi khảo sát một khách sạn cụ thể, nên dưới đây là một kịch bản mẫu về quy trình nhận đặt phòng qua điện thoại được trích xuất từ Internet.

Nguồn tham khảo: https://www.hoteljob.vn/tin-tuc/kich-ban-mau-quy-trinh-nhan-dat-phong-khach-san-qua-dien-thoai

Trang 10

Bước 1: Trả lời điện thoại theo quy chuẩn khách sạn và hỏi tên khách hàng

Bước 2: Xác định yêu cầu của khách về thời gian lưu trú

Bước 3: Xác định yêu cầu của khách về số người lưu trú

Bước 4: Xác định yêu cầu của khách về số lượng phòng

Bước 5: Xác định yêu cầu của khách về loại phòng, hạng phòng Bước 6: Nhắc lại yêu cầu của khách

Bước 7: Hỏi thông tin liên lạc của khách

Bước 8: Điền thông tin vào phiếu đặt phòng

Bước 9: Kết thúc cuộc gọi

c) Quy trình thuê phòng

Dưới đây là quy trình thuê phòng (hay quy trình check in khách sạn).

Nguồn tham khảo: https://www.huongnghiepaau.com/quy-trinh-check-in-check-out-khach-san#

Quy trình check in khách sạn gồm những bước sau:

Bước 1: Lễ tân chào khách bằng nụ cười niềm nở và tiếp nhận thông tin từ khách hàng.

Bước 2: Lễ tân kiểm tra hoặc hỏi xem khách đã đặt phòng trước chưa Nếu chưa thì hỏi về yêu cầu của khách và dựa vào tình trạng thực tế để sắp xếp phù hợp.

Bước 3: Thông báo loại phòng khách chọn, giá phòng, phương thức thanh toán, dịch vụ kèm theo và chương trình khuyến mãi Bước 4: Khi khách đồng ý thì thông báo cho bộ phận liên quan

để chuẩn bị phòng.

Bước 5: Xin thông tin cá nhân, mượn giấy tờ tùy thân để làm thủ tục cho khách ký xác nhận đặt phòng.

Trang 11

Bước 6: Giới thiệu sơ lược cho khách về địa điểm du lịch, dịch

vụ xung quanh, giá vé nếu khách yêu cầu.

Bước 7: Hỏi khách có yêu cầu gì đặc biệt không.

Bước 8: Giao chìa khóa cho khách lên nhận phòng.

Bước 9: Chào tạm biệt khách, chúc khách có kỳ nghỉ vui vẻ và thông báo cho bộ phận liên quan mang hành lý và dẫn khách lên phòng.

Bước 10: Cập nhật hồ sơ của khách vào hệ thống khách sạn.

d) Quy trình trả phòng

Dưới đây là quy trình trả phòng (hay quy trình check out khách sạn):

Nguồn tham khảo: https://www.huongnghiepaau.com/quy-trinh-check-in-check-out-khach-san#

Quy trình check out khách sạn gồm những bước sau:

Bước 1: Mỉm cười chào khách và hỏi khách có hài lòng khi lưu trú tại khách sạn không.

Bước 2: Hỏi số phòng khách trả, nhận lại chìa khóa và báo lại với bộ phận liên quan để kiểm tra phòng.

Bước 3: Kiểm tra trên hệ thống xem khách có sử dụng dịch vụ nào trả phí của khách sạn không.

Bước 4: Nhận thông báo của bộ phận buồng về tình trạng phòng và đồ uống khách đã sử dụng trong minibar và xác nhận với khách.

Bước 5: Lập hóa đơn thanh toán và chuyển cho khách để kiểm tra lại.

Bước 6: Thông báo số tiền cuối cùng khách phải thanh toán.

Trang 12

Bước 7: Thực hiện thanh toán Nếu công ty thanh toán thì yêu cầu khách ký xác nhận, hóa đơn và lưu lại hóa đơn để làm thủ tục thanh toán với công ty Nếu khách sử dụng voucher thì đối chiếu với khoản nào được thanh toán bằng voucher, khoản nào trả tiền, đính kèm voucher vào hóa đơn để làm căn cứ thanh toán.

Bước 8: Nhận lại chìa khóa phòng, trả khách giấy tờ tùy thân,

đồ đã gửi, bưu kiện, thư (nếu có).

Bước 9: Nếu khách đã thanh toán trực tiếp thì đóng dấu “Đã thanh toán” vào hóa đơn và đưa lại cho khách.

Bước 10: Đưa lại cho khách phiếu check-out card để chuyển cho nhân viên hành lý mang hành lý ra xe.

Bước 11: Hỏi và giúp khách tìm phương tiện di chuyển nếu khách cần.

Bước 12: Cảm ơn, chào tạm biệt và chúc khách lên đường may mắn, hẹn gặp lại.

e) Thiết kế hệ thống quản lý khách sạn

Thiết kế dữ liệu

soLuong)

Trang 13

KhachHang (maKH, tenKH, gioiTinh, cmnd_passport,

diaChi, quocTich, email, sdt)

LienHe (id, hoTen, sdt, email, ngayGui)

LoaiPhong (maLP, tenLP, hinhAnh, sucChua, dongGia,

moTa)

NhanVien (maNV, tenNV, gioiTinh, ngaySinh, diaChi,

email, sdt, hinhAnh)

PhanHoi (id, hoTen, sdt, email, noiDung, ngayGui)

tongTienCoc, soNguoi, tinhTrang, maNV)

ngayThue, ngayTra)

Phong (maP, maLP, tinhTrang)

IDNhom)

Trang 14

f) Mô hình quan hệ dữ liệu

Hình 2 2: Mô hình quan hệ dữ liệu

g)Sơ đồ ứng dụng

Hình 2 3: Sơ đồ ứng dụng

Trang 15

Nhóm chúng em lựa chọn Framework ASP.net kết hợp với mô hình hệ thống hướng dịch vụ cho việc phát triển hệ thống quản

lý khách sạn này

ASP.NET MVC (Model-View-Controller) là một framework phát triển web do Microsoft cung cấp như một phần của nền tảng ASP.NET Nó tuân theo mô hình kiến trúc MVC, phân chia các vấn đề của ứng dụng thành ba thành phần chính: mô hình (model), giao diện (view) và điều khiển (controller)

Minh họa sự tương tác của 3 thành phần trong ASP.NET MVC:

Minh họa luồng yêu cầu của người dùng trong ASP.NET MVC:

Hình 2 4: Mô hình MVC

Ngày đăng: 19/04/2024, 23:58

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w