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

Báo cáo bài tập lớn môn công nghệ phần mềm chủ đề dự án xây dựng chương trình quản lí thuê xe ô tô

68 6 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Dự Án Xây Dựng Chương Trình Quản Lí Thuê Xe Ô Tô
Tác giả Ngọ Văn Ninh, Nông Văn Duy, Trần Hoàng Minh, Lưu Thế Mạnh, Nguyễn Đình Nhật, Dương Thanh Tùng
Người hướng dẫn Th.s Nguyễn Thị Tính
Trường học Trường Đại Học Thái Nguyên
Chuyên ngành Công Nghệ Phần Mềm
Thể loại báo cáo bài tập lớn
Năm xuất bản 2023
Thành phố Thái Nguyên
Định dạng
Số trang 68
Dung lượng 6,19 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • CHƯƠNG 1: GIỚI THIỆU CÔNG VIỆC (6)
    • 1.1. Yêu cầu nghiệp vụ (6)
    • 1.3. Sơ đồ phân rã công việc (8)
    • 1.4. Phân công công việc (9)
  • Chương 2 Cơ Sở Dữ Liệu (10)
    • 2.1 Ngôn Ngữ Lập Trình (10)
      • 2.1.1 Java là gì? (10)
      • 2.1.2. Lịch sử hình thành java (10)
      • 2.1.3. Đặc trưng của ngôn ngữ java (11)
      • 2.1.4. Ưu, nhược điểm của java (12)
      • 2.1.5. Các loại ứng dụng của java (15)
    • 1. Các ứng dụng Android (15)
    • 2. Ứng dụng máy chủ dùng cho dịch vụ tài chính (15)
    • 3. Các ứng dụng web Java (15)
    • 4. Các công cụ phần mềm (16)
    • 5. Các ứng dụng thương mại (17)
    • 6. Các ứng dụng J2ME (17)
    • 7. Không gian nhúng (17)
    • 8. Các công nghệ Big Data (17)
    • 9. Trong lĩnh vực giao dịch chứng khoán (18)
    • 10. Các ứng dụng khoa học (18)
      • 2.2 java Swing (18)
      • 2.3 Mô hình MVC (19)
        • 2.3.1. Giới thiệu mô hình MVC (19)
        • 2.3.2. Luồng xử lý trong mô hình MVC (21)
        • 2.3.3. Ưu điểm của mô hình MVC (22)
      • 2.4. Hệ quản trị cơ sở dữ liệu SQL Server (23)
  • CHƯƠNG 3: KHẢO SÁT, PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 23 3.1. Khảo sát nghiệp vụ phần mềm (25)
    • 3.1.1. Nhân viên với phần mềm (25)
    • 3.1.2. Yêu cầu chức năng (25)
    • 3.1.3. Yêu cầu phi chức năng (25)
    • 3.1.4. Môi trường phát triển (26)
    • 3.2. Phân tích hệ thống (26)
      • 3.2.1. Đặc tả phần mềm (26)
      • 3.2.2. Biểu đồ Use Case (29)
      • 3.2.3. Đặc tả Use Case (32)
      • 3.2.4. Biểu đồ trạng thái (36)
      • 3.2.5. Biểu đồ trình tự (38)
    • 3.3 Phân tích và triển khai hệ thống (43)
      • 3.3.1. Biểu đồ lớp (43)
      • 3.3.2. Thiết kế cơ sở dữ liệu (43)
  • Chương 4 Demo ứng dụng (45)
    • 4. đăng nhập (45)
      • 4.1. Giao diện quản lý xe (46)
      • 4.2 Giao diện quản lý Khách Hàng (47)
      • 4.3 Giao diện Hợp Đồng (49)
      • 4.4 Giao diện thống kê (51)
  • Chương 5: Kiểm thử phần mềm (51)
    • 1. Xác minh & thẩm định phần mềm (51)
    • 2. Kiểm thử phần mềm (52)
    • 3. Quy trình kiểm thử phần mềm (53)
    • 4. Cách tiếp cận hộp trong kiểm thử phần mềm (53)
  • TÀI LIỆU THAM KHẢO (67)

Nội dung

GIỚI THIỆU CÔNG VIỆC

Yêu cầu nghiệp vụ

Cửa hàng cho thuê xe cần quản lý hiệu quả việc cho thuê, khuyến mại và danh sách khách hàng thường xuyên Với khối lượng công việc lớn, việc chuyển đổi từ ghi sổ sách sang phần mềm quản lý là cần thiết để tối ưu hóa quy trình và nâng cao hiệu suất.

Nhân viên có thể đăng nhập vào phần mềm để quản lý các loại xe hiện có, theo dõi danh sách khách hàng, áp dụng các chương trình khuyến mại, và thực hiện thống kê hiệu quả Đồng thời, phần mềm cũng hỗ trợ quản lý hoá đơn một cách dễ dàng và nhanh chóng.

Phần mềm cần tập trung vào việc hiển thị các loại xe một cách rõ ràng và dễ hiểu, đồng thời cung cấp thông tin chi tiết về từng loại xe Điều này đảm bảo rằng người dùng có thể dễ dàng tiếp cận và hiểu rõ thông tin của từng chiếc xe.

Do là một dự án ngắn hạn và nhỏ, nhóm đã xác định rõ các yêu cầu ngay từ đầu, vì vậy đã chọn quy trình phát triển phần mềm theo mô hình tăng trưởng.

 Là sự kết hợp giữa mô hình tuần tự và ý tưởng lập lại của chế bản mẫu

Sản phẩm lõi được phát triển dựa trên những yêu cầu cơ bản nhất của hệ thống, sau đó các chức năng bổ sung sẽ được phát triển thêm để đáp ứng những yêu cầu khác.

 Lặp lại quy trình để hoàn thiện

Mô hình này được đề xuất nhằm chia quá trình xây dựng và chuyển giao hệ thống thành nhiều giai đoạn tăng dần, thay vì thực hiện một lần duy nhất Mỗi giai đoạn sẽ cung cấp một phần kết quả chức năng cần thiết.

Các yêu cầu của khách hàng được phân loại theo thứ tự ưu tiên, với những yêu cầu có mức độ ưu tiên cao nhất được xử lý trong giai đoạn phát triển sớm và trải qua quá trình kiểm tra kỹ lưỡng.

Sử dụng mô hình tăng trưởng khi nào?

 Khi yêu cầu của dự án là rõ ràng , đầy đủ, và nắm rõ được yêu cầu của dự án

 Khi sớm cần có một nguyên mẫu phần mềm đê quảng bá, giới thiệu hoặc thử nghiệm

 Khi một công nghẹ mới được áp dụng

 Tài nguyên và kỹ năng chuyên môn luôn sẵn sàng

 Khi có một tính năng hay các mục tiêu có nguy cơ lỗi cao Ứng dụng

Mô hình thường được áp dụng cho các dự án phần mềm như sau:

 Áp dụng cho những dự án có yêu cầu đã được mô tả, định nghĩa và hiểu một cách rõ ràng.

 Khách hàng có nhu cầu về sản phẩm sớm. Ưu điểm

 Có thể sớm tạo ra nguyên mẫu của sản phẩm

Độ linh hoạt cao trong quản lý dự án cho phép thay đổi yêu cầu một cách dễ dàng và tiết kiệm chi phí Khi có sự điều chỉnh, chỉ những module liên quan sẽ bị ảnh hưởng, trong khi các module khác vẫn giữ nguyên, giúp tối ưu hóa quy trình làm việc.

 Làm cho việc test nhẹ nhàng hơn, những module đơn giản thì test cũng đơn giản hơn sớm kết thúc

 Giảm chi phí cho lần đầu giao sản phẩm

Lập kế hoạch và dự án

 Dễ dàng quản lí các rủi ro có thể phát sinh

 Cần phải có những khả năng thiết kế tốt và phương pháp tôt

 Cần hiểu rõ được yêu cầu và biết cách phân chia rõ ra như thế nào cho hợp lí

 Chi phí để phát triển theo phương pháp này rẩt cao, cao hơn hẳn mô hình thác nước

 Ít linh hoạt, phạm vi điều chỉnh hạn chế.

Sơ đồ phân rã công việc

Hình 1: Mô hình tăng trưởng

Hình 2: Sơ đồ phân rã công việc

Lập kế ho hoạt động

Phân công công việc

Tên thành viên Công việc

1 Ngọ Văn Ninh - Sửa lỗi chương trình

2 Lưu Thế Mạnh - Thiết kế PowerPoint

- Lập kế hoạch công việc

-Vẽ biểu đồ trình tự

- Vẽ biểu đồ Use Case

- Lập trình và cài đặt phần mềm

- Cài đặt cơ sở dữ liệu

-Viết đặc tả cho các Use Case

- Thiết kế cơ sở dữ liệu

Cơ Sở Dữ Liệu

Ngôn Ngữ Lập Trình

Java là một ngôn ngữ lập trình phổ biến được sử dụng rộng rãi để phát triển ứng dụng web trong hơn 20 năm qua Với hàng triệu ứng dụng đang hoạt động, Java nổi bật nhờ tính đa nền tảng, hướng đối tượng và khả năng bảo mật cao Ngôn ngữ này cho phép lập trình viên viết mã cho nhiều loại ứng dụng, từ ứng dụng di động, phần mềm doanh nghiệp đến các ứng dụng dữ liệu lớn và công nghệ máy chủ.

2.1.2 Lịch sử hình thành java

Lịch sử hình thành ngôn ngữ lập trình Java rất thú vị, bắt đầu từ việc thiết kế cho tivi tương tác Tuy nhiên, công nghệ này đã vượt quá khả năng của ngành công nghiệp truyền hình cáp kỹ thuật số vào thời điểm đó.

Lịch sử Java bắt đầu với Green Team, nhóm đã khởi xướng dự án phát triển ngôn ngữ cho thiết bị kỹ thuật số như hộp set-top box và tivi Tuy nhiên, Java lại trở nên phù hợp hơn với lập trình internet, dẫn đến việc công nghệ Java được tích hợp vào Netscape.

Ngôn ngữ lập trình Java được xây dựng dựa trên các nguyên tắc quan trọng như: tính đơn giản, sức mạnh, khả năng di động và không phụ thuộc vào nền tảng Java cũng chú trọng đến bảo mật, hiệu suất cao, hỗ trợ đa luồng, kiến trúc trung lập, hướng đối tượng, và có khả năng thông dịch và động.

Hiện tại, ngôn ngữ Java được sử dụng trong lập trình web, internet, thiết bị di động, trò chơi, giải pháp e-business, v.v

2.1.3 Đặc trưng của ngôn ngữ java

Các đặc trưng của Java

 Mọi thực thể trong chương trình đều là một đối tượng (1 class xác định)

 Các biến, hàm đều nằm trong một class nào đó Đơn giản

 Không cho phép đa kế thừa (chuyển sang sử dụng interface) Độc lập phần cứng và hệ điều hành

Java khác với nhiều ngôn ngữ lập trình thông thường ở chỗ nó biên dịch mã nguồn thành bytecode thay vì mã máy Bytecode này sẽ được môi trường thực thi chạy, cho phép Java hoạt động trên nhiều nền tảng khác nhau.

Do đó một chương trình viết bằng Java có thể chạy trên nhiều thiết bị, nhiều hệ điều hành khác nhau.

 Quá trình cấp phát, giải phóng bộ nhớ được thực hiện tự động.

 Yêu cầu chặt chẽ khi khai báo dữ liệu, ép kiểu dữ liệu.

 Tự động phát hiện lỗi lúc biên dịch.

 Không sử dụng con trỏ hoặc các phép toán con trỏ.

 Java hỗ trợ lập trình cho các hệ thống phân tán như client- server, RMI… bằng Java web, UDP, TCP… Đa luồng

 Java hỗ trợ lập trình đa luồng (multithreading); việc đồng bộ dữ liệu trong lập trình đa luồng cũng khá đơn giản.

2.1.4 Ưu, nhược điểm của java

Javascript là một ngôn ngữ lập trình nổi tiếng, nhưng không hoàn hảo Dưới đây là những điểm mạnh và điểm yếu của Javascript mà freetuts sẽ điểm qua.

 *Ưu Điểm : Vì là một ngôn ngữ rất đơn giản bị soi code nên dễ bị khai thác

• Phát triển nhanh hơn và có khả năng ít lỗi hơn (do quản lý bộ nhớ ít hơn) so với c ++.

• Hầu hết các nền tảng chéo kể từ khi nó được thiết kế cho nó và Sun tạo ra JRE và JDK cho hầu hết các nền tảng

• Tất cả mọi thứ được truyền bằng tham chiếu ngoại trừ các loại giá trị, theo mặc định

• Công cụ thu gom rác dọn dẹp đồ vật một khi chúng không còn được sử dụng, vì vậy bạn không phải tự mình theo dõi mọi thứ

Java 6 cho thấy hiệu suất chạy nhanh hơn một số công cụ so với C++, đặc biệt khi mã kiểm tra được chuyển từ C++ sang Java Điều này xảy ra mặc dù Java thực hiện một số thao tác có vẻ lãng phí.

• Chương trình được biên dịch và tối ưu hóa cho nền tảng, nếu cần?

• Dễ dàng tạo nhiều luồng và bạn có thể khai báo các chức năng được đồng bộ hóa để chỉ một luồng có thể có trong một luồng (IIRC)

• Bạn có thể sử dụng Wait () và notifyAll () và thông báo () để tạm dừng các luồng để chờ tín hiệu và đánh thức chúng lại.

• Các IDE miễn phí khác nhau có sẵn trên tất cả các nền tảng, chẳng hạn như Eclipse

Nếu chương trình gặp sự cố, nó sẽ thông báo cho người dùng vị trí và nguyên nhân lỗi, hiển thị dấu vết ngăn xếp với số dòng (nếu chế độ gỡ lỗi được bật) hoặc ghi lại thông tin vào tệp nhật ký lỗi.

Các chương trình có thể được đóng gói thành tệp jar, bao gồm các tệp dữ liệu khác nhau trong các tệp jar riêng biệt Người dùng có thể truy cập các chương trình này thông qua Java WebStart, cho phép tự động cập nhật chương trình cùng với mọi tệp jar cần thiết lên phiên bản mới nhất, chỉ tải xuống các tệp jar đã thay đổi.

• Mạng dễ dàng hơn / nhiều nền tảng hơn c ++.

• Các tệp được đọc và ghi dưới dạng big endian trên tất cả các nền tảng

Đảm bảo thứ tự byte mạng giúp giao tiếp giữa các chương trình Java và tải tệp diễn ra suôn sẻ mà không cần hoán đổi thứ tự byte, trừ khi tương tác với chương trình không phải Java hoặc khi sử dụng tệp do chương trình khác tạo ra.

*Nhược điểm : Sử dụng nhiều bộ nhớ hơn c ++ hoặc c #

• JNI thật đáng sợ, nhưng nếu chúng tôi là nền tảng chéo, có lẽ chúng tôi sẽ không sử dụng nó, (ngoại trừ công cụ 3d sẽ?)

• Trình thu gom rác sử dụng chu kỳ và bộ nhớ CPU - (nhưng hầu như không có, ít nhất là thời gian CPU)

• Không có số nguyên không dấu

Trong Java, không có con trỏ hay tham số ref hoặc out như trong C# Để trả về nhiều giá trị từ một hàm, bạn thường phải sử dụng một mảng đối tượng để chứa các giá trị hoặc tạo một lớp chứa các giá trị đó và trả về một đối tượng của lớp.

• Một số thứ đã được đổi tên - const là cuối cùng trong java, ví dụ

Java không hỗ trợ việc lập chỉ mục hoặc toán tử trên các đối tượng, điều này có nghĩa là khi làm việc với danh sách có thể thay đổi kích thước, bạn cần sử dụng phương thức list.get(index) thay vì cú pháp list[index] Ngoài ra, bạn không thể thực hiện phép cộng giữa các vector như someVector + someOtherVector.

Java không cho phép lập trình viên quyết định loại dữ liệu nào nên được truyền theo giá trị hay theo tham chiếu, điều này khác biệt với C#.

Các tệp Jar sử dụng trong Java Webstart cần phải được ký bằng chứng chỉ, với chi phí có thể lên tới hàng trăm đô la mỗi năm Một lựa chọn khác là tự tạo chứng chỉ, nhưng điều này sẽ dẫn đến thông báo "Chứng nhận này không thể được xác minh" khi người dùng cố gắng chạy chương trình Thay vì sử dụng Java Webstart, bạn có thể phân phối các tệp Jar trực tiếp và yêu cầu người dùng tự kiểm tra các bản cập nhật.

• Yêu cầu JRE được cài đặt để chạy chương trình, tải xuống vài giờ khi quay số.

Java 5 là phiên bản đầu tiên hỗ trợ generics, trong khi Java 1.4 không có tính năng này Mặc dù Java 6 là phiên bản mới nhất và đã ra mắt được vài năm, Apple vẫn chưa phát hành phiên bản Java chính thức cho người dùng Mac.

6 "ổn định" cho người dùng.

2.1.5 Các loại ứng dụng của java

Các ứng dụng Android

Java là ngôn ngữ lập trình chủ yếu được sử dụng trong phát triển ứng dụng Android, với mọi ứng dụng trên điện thoại Android đều được viết bằng Java thông qua Android API của Google Sự phát triển nhanh chóng của Android trong những năm gần đây đã thu hút nhiều lập trình viên Java chuyển sang phát triển ứng dụng cho nền tảng này Mặc dù Android sử dụng máy ảo JVM và các package khác, nhưng mã nguồn chính vẫn được viết bằng Java.

Ứng dụng máy chủ dùng cho dịch vụ tài chính

Java đóng vai trò quan trọng trong lĩnh vực dịch vụ tài chính, được nhiều ngân hàng đầu tư toàn cầu như Goldman Sachs, Citigroup, Barclays và Standard Chartered sử dụng để phát triển các hệ thống giao dịch điện tử, xác nhận và kiểm toán, cũng như các dự án xử lý dữ liệu Ngôn ngữ lập trình này chủ yếu được áp dụng để xây dựng các ứng dụng phía máy chủ, với việc nhận dữ liệu từ máy chủ (upstream), xử lý và gửi đến các quy trình khác (downstream) Ngoài ra, Java Swing cũng được ưa chuộng để thiết kế giao diện người dùng.

Các ứng dụng web Java

Java đóng vai trò quan trọng trong phát triển ứng dụng web và thương mại điện tử, với nhiều dịch vụ RESTful được xây dựng bằng Spring MVC, Struts 2.0 và các framework tương tự Các ứng dụng web đơn giản dựa trên Servlet, JSP và Struts cũng được sử dụng rộng rãi, đặc biệt trong các dự án của chính phủ Nhiều tổ chức trong các lĩnh vực như y tế, bảo hiểm, giáo dục và quốc phòng đã lựa chọn Java để phát triển ứng dụng web của họ.

Tham khảo khóa học “Java căn bản” và “Lập trình Java Spring” tại TechMaster

Các công cụ phần mềm

Nhiều công cụ phát triển và phần mềm hữu ích như Eclipse, IntelliJ IDEA và NetBeans IDE được viết bằng Java, cho thấy sự phổ biến của ngôn ngữ này trong phát triển ứng dụng desktop Mặc dù Swing từng được ưa chuộng, đặc biệt trong lĩnh vực ngân hàng và dịch vụ đầu tư tài chính, nhưng hiện tại, Java FX đang dần trở nên phổ biến, tuy vẫn chưa thể thay thế hoàn toàn Swing.

Các ứng dụng thương mại

Các ứng dụng thương mại của bên thứ ba đóng vai trò quan trọng trong ngành dịch vụ tài chính và thường sử dụng ngôn ngữ lập trình Java Một ví dụ điển hình là Murex, một ứng dụng nổi tiếng được nhiều ngân hàng sử dụng để kết nối các hệ thống nội bộ và bên ngoài, cũng được phát triển bằng Java.

Các ứng dụng J2ME

Dù iOS và Android đã gần như làm suy yếu thị trường J2ME, nhưng J2ME vẫn giữ vai trò quan trọng trong các điện thoại cấu hình thấp của Nokia và Samsung Trước đây, hầu hết các trò chơi và ứng dụng trên Android được phát triển bằng MIDP và CLDC, thuộc nền tảng J2ME J2ME vẫn được sử dụng rộng rãi trên các thiết bị như đĩa Blu-ray, thẻ và set-top box Sự phổ biến của WhatsApp cũng một phần nhờ vào việc ứng dụng này có mặt trên J2ME, phục vụ cho nhiều thiết bị cầm tay Nokia vẫn còn được sử dụng rộng rãi.

Không gian nhúng

Java được sử dụng phổ biến trong lĩnh vực nhúng, cho thấy khả năng vượt trội của nền tảng này với chỉ 130 KB dung lượng cần thiết để vận hành trên các thiết bị như smart card hoặc cảm biến Ban đầu, Java được thiết kế cho các thiết bị nhúng, phản ánh trong chiến dịch "viết một lần, chạy mọi nơi", và hiện tại, nó đang mang lại nhiều lợi ích đáng kể.

Các công nghệ Big Data

Hadoop và các công nghệ big data khác như HBase, Accumulo và ElasticSearch đều sử dụng Java, mặc dù Java không phải là ngôn ngữ thống trị trong lĩnh vực này, với sự hiện diện của các công nghệ như MongoDB được viết bằng C++ Tuy nhiên, nếu Hadoop hoặc ElasticSearch phát triển mạnh mẽ hơn, Java có khả năng chiếm lĩnh thị trường big data nhiều hơn.

Trong lĩnh vực giao dịch chứng khoán

Nền tảng Java đã cải thiện hiệu suất đáng kể nhờ các JIT hiện đại, cho phép đạt hiệu suất tương đương với C++ Do đó, Java trở thành lựa chọn phổ biến cho việc phát triển các hệ thống hiệu suất cao Mặc dù hiệu suất có phần thua kém so với ngôn ngữ native, nhưng Java mang lại sự an toàn, linh hoạt và khả năng bảo trì nhanh chóng hơn.

Các ứng dụng khoa học

Java hiện đang là lựa chọn hàng đầu cho các ứng dụng khoa học, đặc biệt trong lĩnh vực xử lý ngôn ngữ tự nhiên Điều này chủ yếu do Java mang lại sự an toàn, tính khả chuyển, dễ bảo trì và sở hữu các công cụ vượt trội hơn so với C++ và các ngôn ngữ khác.

Trong những năm 1990, Java đã có ảnh hưởng lớn đến Internet thông qua Applet, nhưng sự phổ biến của Applet đã giảm sút do các vấn đề an ninh liên quan đến mô hình sandbox Hiện nay, Java vẫn là ngôn ngữ chủ đạo trong phát triển phần mềm, đặc biệt được sử dụng rộng rãi trong ngành dịch vụ tài chính, ngân hàng và thương mại điện tử.

8 đã củng cố thêm niềm tin rằng Java sẽ tiếp tục thống trị lĩnh vực phát triển phần mềm trong nhiều năm tới.

Java Swing, viết tắt của Swing của Java Foundation (JFC), là bộ công cụ GUI do Sun Microsystems phát triển, giúp xây dựng các ứng dụng tối ưu cho hệ điều hành Windows với các thành phần như nút, thanh cuộn và nhiều yếu tố giao diện khác.

Swing được phát triển dựa trên AWT API và hoàn toàn bằng Java Khác với AWT, Swing là bộ công cụ nền tảng độc lập, bao gồm các thành phần nhẹ và phức tạp hơn.

2.3.1 Giới thiệu mô hình MVC

Mô hình MVC, viết tắt của Model, View và Controller, là một thiết kế quan trọng trong kỹ thuật phần mềm Nó bao gồm ba thành phần độc lập, mỗi thành phần đảm nhận một vai trò riêng biệt, góp phần vào sự hoạt động hiệu quả của toàn bộ hệ thống.

Mô hình (Model - M) là thành phần quan trọng trong ứng dụng, chịu trách nhiệm lưu trữ tất cả dữ liệu và hoạt động như cầu nối giữa phần View và Controller Nó có thể được thể hiện dưới dạng cơ sở dữ liệu hoặc đơn giản là tập tin XML Model cũng đảm nhận các thao tác liên quan đến dữ liệu, bao gồm việc xem, xử lý và truy xuất thông tin.

Là phần giao diện Tại View, người dùng có thể truy xuất dữ liệu của mô hình MVC thông qua tìm kiếm hoặc truy cập qua website.

MVC View là một thành phần quan trọng trong ứng dụng web, chịu trách nhiệm tạo ra HTML và ghi lại hoạt động của người dùng để tương tác với Controller Tuy nhiên, View và Controller không có mối quan hệ trực tiếp; View không thể truy xuất dữ liệu từ Controller, mà chỉ hiển thị yêu cầu và chuyển tiếp chúng đến Controller.

Ví dụ: Bằng cách sử dụng View, người dùng tạo ra nút Delete Khi người dùng nhấn nút này thì tạo ra một hành động trong phần Controller.

Controller nhận tất cả yêu cầu từ View để xử lý và cung cấp dữ liệu phù hợp, đồng thời còn kết nối với Model để thực hiện các chức năng cần thiết.

2.3.2 Luồng xử lý trong mô hình MVC

- Luồng xử lý trong các mô hình MVC C#, Java, PHP… nói riêng và mô hình MVC nói chung được mô tả như sau:

Khi máy khách gửi yêu cầu đến máy chủ, Controller sẽ chặn yêu cầu đó để xác định xem đây là URL request hay sự kiện Sau khi kiểm tra, Controller sẽ xử lý thông tin đầu vào từ người dùng và tiếp tục giao tiếp với phần Model trong kiến trúc MVC.

Model chuẩn bị dữ liệu và gửi đến Controller, sau đó Controller trả dữ liệu lại cho View để hiển thị trên trình duyệt cho người dùng.

Theo luồng xử lý này, View và Model không tương tác trực tiếp, mà sự giao tiếp giữa chúng được quản lý thông qua Controller.

2.3.3 Ưu điểm của mô hình MVC

- Mô hình MVC trong java hay MVC nói chung đều sở hữu các ưu điểm nổi trội sau:

 Dung lượng nhẹ, tiết kiệm bandwidth: Nhờ không dùng viewstate nên MVC không tiêu tốn nhiều băng thông Bên

Mô hình MVC cho phép người dùng gửi và nhận dữ liệu trên nền tảng web, giúp tiết kiệm băng thông và duy trì tốc độ ổn định cho website.

MVC cung cấp tính năng kiểm tra và rà soát lỗi phần mềm một cách tiện lợi, giúp đảm bảo chất lượng sản phẩm hoàn hảo trước khi ra mắt thị trường.

Thành phần View trong kiến trúc MVC đóng vai trò quan trọng trong việc lưu trữ dữ liệu Khi số lượng yêu cầu từ máy khách tăng lên, kích thước tệp tin cũng tăng, điều này có thể làm giảm tốc độ tải trang web Do đó, việc áp dụng mô hình MVC giúp tiết kiệm đáng kể băng thông, cải thiện hiệu suất của website.

Chức năng SOC (Separation of Concern) cho phép người dùng phân tách các thành phần như giao diện, dữ liệu, mô hình và nghiệp vụ, giúp tối ưu hóa quá trình phát triển và quản lý hệ thống.

 Sự kết hợp: Sử dụng mô hình MVC , bạn dễ dàng viết code trên website để giảm tải cho máy chủ.

KHẢO SÁT, PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 23 3.1 Khảo sát nghiệp vụ phần mềm

Nhân viên với phần mềm

Nhân viên có thể đăng nhập vào phần mềm để quản lý các mặt hàng, danh sách khách hàng, khuyến mại, và thống kê, đồng thời theo dõi các hợp đồng bán hàng một cách hiệu quả.

Trong quản lý xe, người dùng cần nhập đầy đủ thông tin và số lượng xe một cách hợp lệ khi thêm mới hoặc sửa thông tin xe Họ cũng có thể chọn hình ảnh minh họa cho sản phẩm và loại bỏ mặt hàng khi số lượng về 0 Đối với quản lý khách hàng, người dùng có khả năng tìm kiếm và sắp xếp thông tin một cách hiệu quả.

Yêu cầu chức năng

Yêu cầu phi chức năng

- Dễ thao tác điều khiển

- Dữ liệu toàn vẹn, bảo mật

- Tốc độ xử lí cao, phản hồi và tìm kiếm nhanh

- Chạy được trên điều kiện phần cứng khác nhau

- Hợp pháp lí, bản quyền

- Có khả năng bảo trì, cập nhật thường xuyên

Môi trường phát triển

- Nền tảng hệ thống: Hệ thống được xây dựng trên nền JflameForm với ngôn ngữ javaswing Cơ sở dữ liệu của hệ thống sử dụng cơ sở dữ liệu

+ Neatbean 2018 (tạo giao diện JflameForm và lập trình ứng dụng)

+ Microsoft SQL Server Management Studio 18 (tạo cơ sở dữ liệu)

+ StarUML (Vẽ các biểu đồ UML)

Phân tích hệ thống

3.2.1 Đặc tả phần mềm a)Quản lý mặt hàng

Chức năng quản lý thông tin xe trong cửa hàng cho phép nhân viên dễ dàng thêm, sửa đổi hoặc xóa thông tin xe cho thuê, giúp tối ưu hóa quy trình quản lý và nâng cao hiệu quả hoạt động.

- Thuộc tính hiển thị: o Ảnh tượng trưng (nếu có) o Mã xe o Tên xe o Loại xe o Giá bán xe o Tình trạng xe

- Các chức năng: o Tìm kiếm:

 Theo mã xe, tình trạng xe o Thêm, sửa, xoá thông tin xe b)Quản lý khách hàng

- Chức năng: Lưu lại thông tin khách hàng khi đến thuê xe

Thuộc tính hiển thị: o Ảnh tượng trưng (nếu có) o Mã khách hàng o Họ tên khách hàng o CMT o Địa chỉ o SDT

- Các chức năng: o Tìm kiếm:

 Theo địa chỉ o Thêm, sửa, xoá thông tin khách hàng c) Quản lý hợp đồng

- Chức năng: Tạo hợp đồng thuê xe khi người dùng thuê xe và thanh toán cho người mua.

- Thuộc tính hiển thị: o Mã hợp đồng thuê xe o Mã khách hàng o Tên khách hàng o SDT o Địa chỉ o Mã Xe o Thời gian thuê o Hạn trả o Giá thuê o Tình trạng

- Các chức năng: o Tìm kiếm:

 Theo mã hợp đồng o Thêm, sửa, xoá d)Thống kê

- Chức năng: Thống kê lại chi tiết theo tình trạng thuê xe của cửa hàng và hiển thị ra màn hình.

- Thuộc tính hiển thị: o Gồm các thuộc tính trong mục quản lý mặt hang xe , quản lý khách hàng, quản lý hoá đơn

- Các chức năng: o Thống kê:

 Các loại xe được thuê trong ngày

 Tổng doanh thu tất cả hợp đồng thuê xe

Biểu đồ Use Case tổng quát:

Hình 5: Biểu đồ Use Case tổng quát

 Phân rã Use Case “khách hàng”

Phân rã Use Case “hợp đồng”

Hình 6: Phân rã Use Case “hợp đồng”

Phân rã Use Case “Quản lý xe”

3.2.3 Đặc tả Use Case a) Kịch bản cho Use Case “Đăng nhập”

Tên Use Case Đăng nhập

Tác nhân chính Nhân viên

Tiền điều kiện Có tài khoản để đăng nhập vào hệ thống

Thất bại Hiển thị thông báo sai tên đăng nhập hoặc mật khẩu, cho nhập lại

Thành công Chuyển sang form chính (Quản lý xe)

1 Nhân viên chạy phần mềm.

2 Hệ thống hiển thị form đăng nhập.

3 Nhân viên nhập thông tin đăng nhập.

4 Nhân viên ấn đăng nhập.

5 Hệ thống kiểm tra thông tin đăng nhập trong cơ sở dữ liệu là hợp lệ.

6 Đăng nhập thành công và chuyển sang giao diện chính.

5.1 Tên đăng nhập hoặc mật khẩu không chính xác

 Hệ thống thông báo “Sai tên đăng nhập hoặc mật khẩu”, quay lại bước 3. b) Kịch bản cho Use Case “Thêm mới hàng / khách hàng / hợp đồng”

Tên Use Case Thêm mới hàng / khách hàng / khuyến mại / hợp đồng

Tác nhân chính Nhân viên

Tiền điều kiện Đã đăng nhập và chọn mục thêm hàng

Thất bại Hiển thị thông báo thất bại, cho nhập lại

Thành công Thêm dữ liệu mới vào cơ sở dữ liệu

1 Nhân viên chọn 1 trong các thẻ quản lý “mặt hàng / khách hàng / khuyến mại / hợp đồng”

2 Nhân viên ấn nút Thêm mới, hệ thống hiển thị giao diện thêm mới

3 Nhân viên nhập thông tin muốn thêm và ấn nút “Thêm mới”.

4 Hệ thống kiểm tra thông tin hợp lệ.

5 Hệ thống lưu thông tin nhân viên vừa nhập trong giao diện Thêm mới vào trong cơ sở dữ liệu.

6 Hệ thống hiển thị thông báo thêm thành công.

4.1 Thông tin nhập vào không hợp lệ

 Hệ thống thông báo thất bại, quay lại bước 3. c) Kịch bản cho Use Case “Sửa thông tin hàng / khách hàng / hợp đồng”

Tên Use Case Sửa thông tin hàng / khách hàng / khuyến mại / hợp đồng

Tác nhân chính Nhân viên

Tiền điều kiện Đã đăng nhập vào hệ thống và chọn mục cần sửa

Thất bại Hiển thị thông báo thất bại, cho nhập lại

Thành công Cập nhật thông tin của mục đã chỉnh sửa vào trong cơ sở dữ liệu

1 Nhân viên chọn 1 trong các thẻ quản lý “mặt hàng / khách hàng / khuyến mại / hợp đồng”

2 Nhân viên chọn dòng thông tin muốn sửa và ấn “Sửa”.

3 Hệ thống hiển thị giao diện sửa thông tin cho mục đã chọn.

4 Nhân viên nhập thông tin cần chỉnh sửa và ấn “Cập nhật”.

5 Hệ thống kiểm tra dữ liệu nhập hợp lệ và cập nhật vào cơ sở dữ liệu.

6 Hệ thống hiển thị thông báo thành công.

5.1 Thông tin nhập vào không hợp lệ

 Hệ thống thông báo thất bại, quay lại bước 4. d) Kịch bản cho Use Case “Xoá mặt hàng / khách hàng / hợp đồng ”

Tên Use Case Xoá mặt hàng / khách hàng / khuyến mại / hợp đồng

Tác nhân chính Nhân viên

Tiền điều kiện Đã đăng nhập vào hệ thống và chọn mục cần xoá

Thất bại Hiển thị thông báo thất bại

Thành công Xoá mục đã chọn trong cơ sở dữ liệu

1 Nhân viên chọn 1 trong các thẻ quản lý “mặt hàng / khách hàng / khuyến mại / hợp đồng”

2 Nhân viên chọn dòng thông tin muốn xoá và ấn “Xoá”.

3 Hệ thống hiển thị giao diện thông báo xác nhận xoá đối tượng.

4 Nhân viên xác nhận xoá.

5 Hệ thống gửi yêu cầu xoá đối tượng lên cơ sở dữ liệu.

6 Hệ thống hiển thị thông báo xoá thành công.

3.1 Nhân viên không xác nhận xoá 5.1 Hệ thống thông báo xoá thất bại /

 Thông báo xoá thất bại và quay về giao diện quản lý. e) Kịch bản cho Use Case “Tìm kiếm hàng / khách hàng / hợp đồng”

Tên Use Case Tìm kiếm hàng / khách hàng / khuyến mại / hợp đồng

Tác nhân chính Nhân viên

Tiền điều kiện Đã đăng nhập vào hệ thống

Thất bại Hiển thị thông báo thất bại

Thành công Tìm kiếm được thông tin trong mục quản lý tương ứng trong cơ sở dữ liệu

1 Nhân viên chọn 1 trong các thẻ quản lý “mặt hàng / khách hàng / khuyến mại / hợp đồng”.

2 Nhân viên chọn tiêu chí tìm kiếm và nhập thông tin muốn tìm vào ô tìm kiếm.

3 Nhân viên chọn nút “Tìm kiếm”.

4 Hệ thống gửi tra cứu thông tin tìm kiếm lên cơ sở dữ liệu.

5 Hệ thống hiển thị kết quả tìm kiếm.

5.1 Hệ thống không tìm thấy thông tin mà nhân viên nhập vào

 Thông báo không tìm thấy thông tin đã nhập.

3.2.4 Biểu đồ trạng thái a) Chức năng đăng nhập b) Chức năng thêm

Hình 7: Biểu đồ trạng thái chức năng đăng nhập

Hình 8: Biểu đồ trạng thái chức năng thêm c) Chức năng sửa d) Chức năng xoá

Hình 9: Biểu đồ trạng thái chức năng sửa e) Chức năng tìm kiếm

3.2.5 Biểu đồ trình tự a) Chức năng đăng nhập

Hình 11: Biểu đồ trạng thái chức năng tìm kiếm

Hình 12: Biểu đồ trình tự cho chức năng Đăng nhập b)Chức năng tạo mới / thêm (thêm hàng / khách hàng /hợp đồng)

Hình 19: Biểu đồ trình tự cho chức năng Tìm kiếm c) Chức năng sửa thông tin (sửa thông tin hàng / khách hàng /hợp đồng)

Hình 13: Biểu đồ trình tự cho chức năng Sửa thông tin d) Chức năng xoá (xoá mặt hàng / khách hàng / hợp đồng)

Hình 14: Biểu đồ trình tự cho chức năng Xoá e) Chức năng tìm kiếm (tìm kiếm hàng / khách hàng / hợp đồng)

Hình 15: Biểu đồ trình tự cho chức năng Tìm kiếm

Phân tích và triển khai hệ thống

3.3.2 Thiết kế cơ sở dữ liệu

Demo ứng dụng

đăng nhập

Người dùng mở phần mềm và giao diện đăng nhập sẽ xuất hiện Họ cần nhập tên đăng nhập và mật khẩu vào hai ô textbox, sau đó nhấn nút Đăng nhập để bắt đầu quá trình đăng nhập.

Hình 23: Giao diện đăng nhập

4.1 Giao diện quản lý xe

- Sau khi đăng nhập thành công, phần mềm sẽ hiển thị giao diện mặc định ở mục Quản lý xe

4.2 Giao diện quản lý Khách Hàng

Hình25: Giao diện quản lý khách hàng

Để thu hút thêm khách hàng mới, người dùng chỉ cần nhấn nút “Thêm” Giao diện thêm mới cho phép nhập các thông tin cần thiết về cá nhân của khách hàng.

Sau khi thêm mới thành công, dữ liệu sẽ hiển thị trên giao diện Quản lý khách hàng Người dùng có thể dễ dàng chỉnh sửa thông tin khách hàng bằng cách nhấn nút “Sửa” hoặc xóa khách hàng bằng nút “Xoá” ở các dòng thông tin tương ứng.

Hình26: Giao diện thêm khách hàng

Hình 27: Giao diện hợp đồng

- Khi muốn tìm kiếm hợp đồng, người dùng lựa chọn ô “ Mã hợp đồng ” sau đó chọn nút “ Tìm kiếm ”

- Khi đó hợp đồng người dùng tìm kiếm sẽ suất hiện ở phần

Hình 16: Giao diện chi tiết hợp đồng

- Khi muốn thêm hợp đồng mới, người dùng lựa chọn nút “ Thêm ”.

Khi giao diện Thêm hợp đồng xuất hiện, chỉ có trường dữ liệu "Mã hợp đồng" được tạo tự động, trong khi các trường thông tin khác yêu cầu người dùng nhập đầy đủ trước khi nhấn nút Thêm mới.

Hình 29: Giao diện thêm hợp đồng

Sau khi thêm mới thành công, dữ liệu sẽ xuất hiện trên giao diện Quản lý xe, và người dùng có thể chỉnh sửa thông tin bằng cách nhấn vào nút tương ứng.

“Sửa” hoặc xoá thông tin bằng nút “Xoá” ở các dòng thông tin tương ứng.

Hình 30: Giao diện thống kê

Kiểm thử phần mềm

Xác minh & thẩm định phần mềm

A, Xác minh trong ngữ cảnh công nghệ là để kiểm tra xem sản phẩm có :

+, theo đặc tả yêu cầu

+, phù hợp thông số kỹ thuật

B, Thẩm định là xác định xem hệ thống có phù hợp với yêu cầu sản phẩm

+, thường thực hiện vào cuối của quá trình phát triển

+, Xác định tính đúng đắn của sản phẩm è Xác minh và thẩm định phần mềm ( V&V) dùng để đảm bảo về chất lượng của phần mềm.

Kiểm thử phần mềm

Kiểm thử phần mềm là quá trình tìm kiếm và phát hiện lỗi trong phần mềm, nhằm đảm bảo rằng sản phẩm đáp ứng chính xác và đầy đủ các yêu cầu của khách hàng Dưới đây là một số hoạt động kiểm thử cơ bản.

1.Lập kế hoạch kiểm thử (test planning)

2.Phân tích kiểm thử (test analysis)

3.Thiết kế các trường hợp kiểm thử (test design)

4.Thực thi kiểm thử (test execution)

5.Báo cáo kết quả kiểm thử (test reporting)

1 unit testing ( ktra mức đơn vị )

2.integration testing ( kiểm thử tích hợp )

3 system testing ( kiểm thử hệ thống )

4 acceptance tesing ( kiểm thử chấp nhận )

5 regression testing ( kiểm thử hồi quy )

Quy trình kiểm thử phần mềm

1 Requirenment analysis - Phân tích yêu cầu

2 Test planning - Lập kế hoạch kiểm thử

3 Test case development - Thiết kế kịch bản kiểm thử

4 Test environment set up - Thiết lập môi trường kiểm thử

5 Test execution - Thực hiện kiểm thử

6 Test cycle closure - Đóng chu trình kiểm thử

Cách tiếp cận hộp trong kiểm thử phần mềm

Kiểm thử hộp đen (Black-box Testing) là phương pháp kiểm tra phần mềm dựa trên đầu vào và đầu ra của chương trình, không cần quan tâm đến mã nguồn bên trong Phương pháp này giúp đánh giá chức năng của phần mềm từ góc độ người dùng, đảm bảo rằng sản phẩm hoạt động đúng như mong đợi mà không cần hiểu chi tiết cấu trúc bên trong.

Phương pháp này cố gắng tìm ra các lỗi trong các loại sau:

 Chức năng không chính xác hoặc thiếu.

 Lỗi trong cấu trúc dữ liệu hoặc truy cập cơ sở dữ liệu bên ngoài.

 Hành vi hoặc hiệu suất lỗi.

 Khởi tạo và chấm dứt các lỗi.

 Công đoạn test có lần lượt các phase sau: Kế hoạch test, thiết kế test, tạo testcase, thực hiện test, báo cáo test.

 Trong đó: "kế hoạch test" và "thiết kế test" là phase quan trọng để phát hiện ra lỗi và xác nhận chất lượng.

Kiểm thử hộp trắng dựa vào thuật giải cụ thể và cấu trúc dữ liệu bên trong của đơn vị phần mềm, nhằm xác định tính chính xác của việc thực hiện Để thực hiện kiểm thử hiệu quả, người kiểm thử cần có kỹ năng và kiến thức chuyên môn nhất định.

- Có 2 hoạt động kiểm thử hộp trắng :

+ Kiểm thử luồng điều khiển

+ Kiểm thử dòng dữ liệu

1 Kiểm thử luồng điều khiển

Đường thi hành (Execution path) là kịch bản thực thi của một đơn vị phần mềm, bao gồm danh sách có thứ tự các lệnh được thực hiện trong một lần chạy cụ thể Đường thi hành bắt đầu từ điểm nhập và kết thúc tại điểm kết thúc của đơn vị phần mềm.

- Mục tiêu của phương pháp kiểm thử luồng điều khiển là đảm bảo mọi đường thi hành của đơn vị phần mềm cần kiểm thử đều chạy đúng.

Phương pháp Kiểm tra Hộp trắng áp dụng cho các mức độ kiểm tra phần mềm sau đây:

 Unit Testing (Kiểm thử đơn vị): Để kiểm tra đường dẫn trong một đơn vị.

 Integration Testing (Test tích hợp): Để kiểm tra đường dẫn giữa các đơn vị.

 System Testing (Test hệ thống): Để kiểm tra các đường dẫn giữa các hệ thống con.

- Được kết hợp từ cả 2 loại kiểm thử hộp đen và kiểm thử hộp trắng

Kiểm thử hộp xám yêu cầu người kiểm thử phải có kiến thức về cấu trúc hệ thống và quyền truy cập vào cơ sở dữ liệu.

+ có sự kết hợp giữa lợi ích của kiểm thử hộp đen và hộp trắng.

+ thường được sử dụng trong Kiểm thử tích hợp (Intergration test)

- Các kỹ thuật kiểm thử hộp xám

Khi thêm chức năng mới vào hệ thống, việc kiểm tra lại các trường hợp đã được kiểm thử trước đó là cần thiết để đảm bảo rằng chức năng mới không ảnh hưởng đến các chức năng hiện có Quá trình này được gọi là kiểm thử hồi quy.

Khi thêm chức năng mới vào hệ thống, việc kiểm tra lại các trường hợp đã được kiểm thử trước đó là cần thiết để đảm bảo rằng chức năng mới không ảnh hưởng đến các chức năng hiện có Quá trình này được gọi là kiểm thử hồi quy.

3 Kiểm thử mảng trực giao

Kỹ thuật thống kê này giúp tạo ra các hoán vị đầu vào, từ đó phát sinh các test case tối ưu hóa phạm vi kiểm tra, nhằm giảm thiểu công sức của con người trong quá trình lập kế hoạch và thiết kế thử nghiệm.

Kỹ thuật kiểm thử hộp xám phân tích lịch sử dữ liệu lỗi hệ thống trước đó, khác với kiểm thử hộp đen, nó đi sâu vào mã nguồn để xác định nguyên nhân gây ra sự cố.

Tên dự án : Quán lý cho thuê xe

Báo cáo kiểm thử DISPLAY TESTING

Khách hàng ưu tiên sử dụng phần mềm và trang web có giao diện thân thiện, dễ sử dụng và thao tác nhanh chóng Do đó, việc thực hiện DISPLAY TESTING là vô cùng quan trọng trước khi ra mắt sản phẩm để đảm bảo đáp ứng tốt nhu cầu của người dùng.

- Kiểm tra xem các nút có bị lỗi thao tác hay không, có dẫn tới đúng nơi mà ta cần tới không

- Giao diện có phù hợp với yêu cầu khách hàng hay không

- Giao diện có chạy được trên các thiết bị khác nhau không

- Đảm bảo các thao tác ấn và thả nhanh, gọn

- Tính năng hiển thị giao diện

- Tính thân thiện người dùng

- Đáp ứng yêu cầu khách hàng

4 Kết quả kiểm thử Ứng dụng Hiển thị giao diện

Chất lượng giao diện, các thao tác Ghi chú

Máy tính PC True True Điện thoại False False

Kết quả kiểm thử cho thấy rằng tính năng hiển thị của phần mềm chỉ hoạt động trên máy tính, trong khi các thiết bị di động không thể sử dụng được.

Báo cáo kiểm thử Black Box Test

Kiểm thử hộp đen (BBT) là phương pháp kiểm tra phần mềm dựa trên đầu vào và đầu ra của chương trình, không quan tâm đến mã nguồn bên trong Phương pháp này giúp xác định tính chính xác và hiệu suất của phần mềm mà không cần hiểu biết về cấu trúc mã.

- Phương pháp này cố gắng tìm ra các lỗi như :

+ Chức năng không chính xác hoặc thiếu

+ Lỗi trong cấu trúc dữ liệu hoặc truy cập cơ sở dữ liệu bên ngoài + Hành vi hoặc hiệu suất lỗi

+ Khởi tạo và dứt các lỗi

Kiểm thử hộp đen đăng nhập là quá trình quan trọng nhằm đảm bảo tính đúng đắn, đầy đủ và bảo mật cho chức năng đăng nhập trong phần mềm Quá trình này giúp người dùng đăng nhập một cách dễ dàng và an toàn, đồng thời đảm bảo tính chính xác và bảo mật cho thông tin đăng nhập của họ.

- Kiểm thử đăng nhập : Đã kiểm thử thành công với các tài khoản hợp lệ và không thể đăng nhập với các tài khoản không hợp lệ

4 Kết quả kiểm thử ĐĂNG NHẬP

Username Password Output mong muốn Output thực thi Đánh giá

Test cas e 1 nhom6 nhom6 Đăng nhập thành công Như mong muốn True

Test cas e 2 nhom nhom7 Tài khoản hoặc mật khẩu không chính xác

Mã xe Tên xe Màu sắc Tình trạng Giá thuê Output mong muốn

Output thực thi Đán h giá

001 Mẹc Đỏ Chưa thuê 500000 Thêm thành công

002 0mẹc doo 123 5799000 Thêm không thành công Như mong muốn True

001 Mẹc Đỏ Chưa thuê etryyuu Vui lòng nhập lại dữ liệu

Mã xe Tên xe Màu sắc Tình trạng Giá thuê Output mong muốn Output thực thi Đ h

001 Mẹc=>Tuson Đỏ=>Đen Chưa thuê 500000 Sửa thành công

001=>002 Mẹc=>Tuson Đỏ=>Đen Chưa thuê 500000 Sửa không thành công

Mã xe Tên xe Màu sắc Tình trạng Giá thuê Output mong muốn Output thực thi Đ h

001 Mẹc Đỏ Chưa thuê 500000 Xóa thành công

007 Mẹc Đỏ Chưa thuê 500000 Xóa không thành công

Mã xe Tình trạng Output mong muốn Output thực thi Đánh giá

001 Chưa thuê Hiển thị danh sách theo tìm kiếm Như mong muốn True

006 Đã thuê Không hiển thị danh sách theo tìm kiếm

II.QUẢN LÝ KHÁCH HÀNG

Sđt CMT Địa chỉ Output mong muốn

Output thực thi Đán h giá

Tên khách Sđt CMT Địa chỉ Output mong muốn

Outpu t thực thi Đánh giá

Test case 1 01 Lưa Thế Mạnh

Mã khách Tên khách Sđt CMT Địa chỉ Output mong muốn

Output thực thi Đán h giá

Mã khách Địa chỉ Output mong muốn

Output thực thi Đánh giá

Test case 1 01 Thái Nguyên Hiển thị danh sách theo tìm kiếm

Test case 2 07 Bình Dương Không hiển thị danh sách theo tìm kiếm

- Quá trình đăng nhập đã được kiểm thử xong, không có lỗi gì xảy ra khi thực hiện đăng nhập

- Quá trình thêm,sửa.xóa,tìm kiếm bên mục quản lý sản phẩm còn gặp lỗi:

+ Không hiển thị thông báo khi nhập sai giá thuê

+ Khi sửa,thêm,xóa không load được dữ liệu vào Combo box để tìm kiếm

-Quá trình thêm, sửa, xóa, tìm kiếm bên mục quản lý khách hàng còn gặp lỗi:

+ Khi sửa,thêm,xóa không load được dữ liệu vào Combo box để tìm kiếm.

-Quá trình thêm, sửa, xóa, tìm kiếm bên mục thống kê còn gặp lỗi: + Nhập sai ngày vẫn nhận dữ liệu

+ Khi sửa,thêm,xóa không load được dữ liệu vào Combo box để tìm kiếm.

-Quá trình thống kê vẫn còn lỗi:

+ Nhập sai định dạng ngày vẫn nhận dữ liệu

Các kết quả đạt được:

 Hoàn thành cơ bản phần mềm quản lý cho thuê xe.

 Qua quá trình làm bài báo cáo nhóm em đã củng cố hơn các kiến thức liên quan đến phân tích thiết kế hệ thống.

 Củng cố các kiến thức về ngôn ngữ Java.

 Do còn thiếu kinh nghiệm và một số kiến thức còn chưa được tốt vì thế mà trong quá trình thực hiện còn gặp nhiều khó khăn.

 Cải tiến thao tác, phát triển các tính năng hỗ trợ nhân viên bán hàng nhanh hơn.

 Xây dựng thêm các tính năng về báo cáo thống kê.

Ngày đăng: 20/09/2023, 15:41

HÌNH ẢNH LIÊN QUAN

1.3. Sơ đồ phân rã công việc - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
1.3. Sơ đồ phân rã công việc (Trang 8)
Hình 3: Mô hình MVC - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 3 Mô hình MVC (Trang 21)
Hình 4: Luồng xử lý trong mô hình MVC - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 4 Luồng xử lý trong mô hình MVC (Trang 22)
Hình 5: Biểu đồ Use Case tổng quát - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 5 Biểu đồ Use Case tổng quát (Trang 29)
Hình 6: Phân rã Use Case “hợp đồng” - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 6 Phân rã Use Case “hợp đồng” (Trang 31)
Hình 8: Biểu đồ trạng thái chức năng thêm - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 8 Biểu đồ trạng thái chức năng thêm (Trang 36)
Hình 7: Biểu đồ trạng thái chức năng đăng nhập - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 7 Biểu đồ trạng thái chức năng đăng nhập (Trang 36)
Hình 9: Biểu đồ trạng thái chức năng sửa - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 9 Biểu đồ trạng thái chức năng sửa (Trang 37)
Hình 12: Biểu đồ trình tự cho chức năng Đăng nhập - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 12 Biểu đồ trình tự cho chức năng Đăng nhập (Trang 38)
Hình 11: Biểu đồ trạng thái chức năng tìm kiếm - Báo cáo bài tập lớn môn  công nghệ phần mềm chủ đề  dự án xây dựng chương trình quản lí thuê xe ô tô
Hình 11 Biểu đồ trạng thái chức năng tìm kiếm (Trang 38)

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w