intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Báo cáo môn học Phân tích - Thiết kế hệ thống thông tin: Hệ thống Testing Online - Kiểm tra kỹ năng ứng viên

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:29

21
lượt xem
9
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục tiêu của đề tài "Hệ thống Testing Online - Kiểm tra kỹ năng ứng viên" là thiết kế một hệ thống test online thay thế cho các test trực tiếp, có các chức năng dành cho nhân sự tuyển dụng để sau khi thảo luận kế hoạch với phòng ban và ứng viên họ có thể tạo mới, cài đặt, chỉnh sửa các kế hoạch test và các bài test cho các ứng viên apply vào công ty. Kết quả làm bài của ứng viên sẽ được nhân sự đại diện của phòng ban chấm điểm trên hệ thống.

Chủ đề:
Lưu

Nội dung Text: Báo cáo môn học Phân tích - Thiết kế hệ thống thông tin: Hệ thống Testing Online - Kiểm tra kỹ năng ứng viên

  1. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA TOÁN – CƠ – TIN HỌC --------------****--------------- BÁO CÁO MÔN HỌC PHÂN TÍCH - THIẾT KẾ HỆ THỐNG THÔNG TIN Đề tài: Hệ thống Testing Online - kiểm tra kỹ năng ứng viên Hướng dẫn: Phạm Khắc Hoài Nam Sinh viên thực hiện: K62A3 Nguyễn Tùng Lâm (17000026) K63A2 Nguyễn Hoàng Yến (18001016)
  2. Lời nói đầu Để hoàn thành kỳ thực tập cũng như báo cáo này, ngoài sự nỗ lực phấn đấu của bản thân thì một phần không nhỏ đóng góp nên thành công ấy là nhờ sự hướng dẫn tận tình của các thầy cô trong trường Đại học Khoa học Tự Nhiên Hà Nội, cùng với sự giúp đỡ nhiệt tình từ các anh/chị tại Công ty Cổ phần Giải pháp thanh toán VNPay. Đầu tiên chúng em xin gửi lời cảm ơn chân thành đến thầy/cô trong khoa Toán – Cơ – Tin học đã kết nối tạo điều kiện thuận lợi nhất để em được tiếp nhận thực tập tại công ty. Tiếp theo, em cũng xin gửi lời cảm ơn sâu sắc đến các anh/chị trong công ty VNPAY, đặc biệt là anh Đỗ Vũ Tuấn, anh Phạm Khắc Hoài Nam, anh Quang Hà và anh Bình Jax – những người đã trực tiếp hướng dẫn chúng em. Trong thời gian thực tập, mặc dù công việc bận rộn nhưng các anh/chị luôn tận tình hướng dẫn cũng như giải đáp các thắc mắc trong công việc. Cuối cùng, chúng em xin gửi lời cảm ơn đến gia đình, bạn bè đã động viên, đóng góp ý kiến và giúp đỡ trong quá trình học tập, nghiên cứu hoàn thành kỳ thực tập này. Kỳ thực tập đã mang tới cho chúng em hiểu biết, quá trình, kiến thức về Môn học “Phân tích thiết kế hệ thống”, hiểu thế nào để phát triển một phần mềm, các giai đoạn để hình thành lên ý tưởng cho đến phần mềm được triển khai đến người sử dụng. Quá trình thực tập, tham gia và học hỏi này sẽ còn giúp chúng em không chỉ là việc học tập mà còn sẽ định hình ngành nghề trong tương lai tới. Tuy nhiên, do thời gian có hạn và năng lực còn hạn chế nên chúng em không thể tránh khỏi những thiếu sót. Chính vì vậy, em rất mong nhận được sự góp ý từ các thầy/cô và các bạn để học hỏi thêm và tiếp tục hoàn thiện đề tài của mình. Chúng em xin chân thành cảm ơn! Hà Nội, tháng 5 năm 2022 2
  3. Mục lục Lời nói đầu 2 Mục lục 3 I. Giới thiệu 4 Mục tiêu 4 Yêu cầu 4 Công nghệ sử dụng 4 Công việc triển khai 8 II. Phân tích - thiết kế hệ thống 9 Phân tích yêu cầu 9 2. Thiết kế hệ thống 9 2. Thiết kế hệ thống 10 Phát hiện các thực thể trên hệ thống 16 Thiết kế giao diện hệ thống bằng tool Figma 19 Kết quả thu được hiện tại 23 ĐÁNH GIÁ SINH VIÊN THỰC TẬP 28 3
  4. I. Giới thiệu 1. Mục tiêu Một hệ thống test online thay thế cho cách test trực tiếp, có các chức năng dành cho nhân sự tuyển dụng để sau khi thảo luận kế hoạch với phòng ban và ứng viên họ có thể tạo mới, cài đặt, chỉnh sửa các kế hoạch test và các bài test cho các ứng viên apply vào công ty. Kết quả làm bài của ứng viên sẽ được nhân sự đại diện của phòng ban chấm điểm trên hệ thống. 2. Yêu cầu - Hiển thị các lịch test dự kiến theo hai dạng: bảng và lịch - Hệ thống bao gồm 3 loại bài test: test Tiếng anh, test Kiến thức chung, test Kỹ năng code và 2 dạng câu hỏi: trắc nghiệm, tự luận. Phân bổ theo các cấp độ mà ứng viên ứng tuyển. - Các bài test đều có thể set up thời gian làm bài. - Chỉ các nhân sự phòng ban mà ứng viên ứng tuyển mới có quyền chấm cho ứng viên đó trên hệ thống. - Ứng viên tham gia test đăng nhập bằng một mã code được gửi qua Gmail/SMS. - Tái sử dụng được các câu hỏi. - Giảm thiểu rủi ro việc ứng viên trong quá trình test ứng viên có thể sao lưu lại nội dung test để đảm bảo an toàn thông tin quy trình tuyển dụng 3. Công nghệ sử dụng a) JavaScript Javascript là một ngôn ngữ kịch bản từ Netscape. dễ dàng hơn và nhanh hơn để mã trong hơn các ngôn ngữ có cấu trúc và biên soạn hơn như C và C ++. Ngôn ngữ kịch bản nói chung mất nhiều thời gian hơn quá trình biên soạn ngôn ngữ, nhưng rất hữu ích cho các chương trình ngắn hơn. Ưu điểm : - Không cần một compiler vì web browser có thể biên dịch nó bằng HTML. Dễ dàng tiếp thu và học tập hơn nhiều ngôn ngữ khác. - Dễ dàng phát hiện và sửa lỗi hơn. - JS hoạt động trên nhiều trình duyệt, nền tảng. - Kiểm tra input và giảm thiểu việc kiểm tra thủ công khi truy xuất qua database. Giúp website tương tác tốt hơn với khách truy cập. 4
  5. - Nhanh và nhẹ hơn một số ngôn ngữ lập trình khác. Nhược điểm : - Dễ bị khai thác. - Không có khả năng xử lí đa luồng. - Chỉ chạy được trong trình duyệt web. - Dễ bị sử dụng để thực thi mã độc trên máy người sử dụng. b) NodeJs NodeJS là một nền tảng được xây dựng trên “V8 Javascript engine” được viết bằng c++ và Javascript. Nền tảng này được phát triển bởi Ryan Lienhart Dahl vào năm 2009. Node.js ra đời khi các developer đời đầu của JavaScript mở rộng nó từ một thứ bạn chỉ chạy được trên trình duyệt thành một thứ bạn có thể chạy trên máy của mình dưới dạng ứng dụng độc lập. Ưu điểm : - Có tốc độ xử lý nhanh nhờ cơ chế xử lý bất đồng bộ (non-blocking). Bạn có thể dễ dàng xử lý hàng ngàn kết nối trong khoảng thời gian ngắn nhất. - Giúp bạn dễ dàng mở rộng khi có nhu cầu phát triển website. - Nhận và xử lý nhiều kết nối chỉ với một single-thread. Nhờ đó, hệ thống xử lý sẽ sử dụng ít lượng RAM nhất và giúp quá trình xử Nodejs lý nhanh hơn rất nhiều. - Có khả năng xử lý nhiều Request/s cùng một lúc trong thời gian ngắn nhất. Có khả năng xử lý hàng ngàn Process cho hiệu suất đạt mức tối ưu nhất. - Phù hợp để xây dựng những ứng dụng thời gian thực như các ứng dụng chat, mạng xã hội Nhược điểm : - Nodejs gây hao tốn tài nguyên và thời gian. Nodejs được viết bằng C++ và JavaScript nên khi xử lý cần phải trải qua một quá trình biên dịch. Nếu bạn cần xử lý những ứng dụng tốn tài nguyên CPU thì không nên sử dụng Nodejs. - Nodejs so với các ngôn ngữ khác như PHP, Ruby và Python sẽ không có sự chênh lệch quá nhiều. Nodejs có thể sẽ phù hợp với việc phát triển ứng dụng mới. Tuy nhiên khi xây dựng và triển khai dự án quan trọng thì Nodejs không phải là sự lựa chọn hoàn hảo nhất. c) Java Java là một ngôn ngữ lập trình có mục đích chung và hướng đối tượng được phát triển cho môi trường phân tán và phát triển phần mềm cho các thiết bị điện tử tiêu dùng như TV, VCR, ... Ngôn ngữ lập trình Java là một ngôn ngữ độc lập với nền tảng, có nghĩa là không có giới hạn đối với bất kỳ phần cứng hoặc hệ điều hành cụ thể nào. Nó cung cấp cho người dùng cơ sở để 'viết một lần, chạy ở mọi nơi. Nhiều hệ điều hành như Sun Solaris, RedHat, Windows, v.v., hỗ trợ Java. 5
  6. Ưu điểm : - Java là nền tảng độc lập vì chúng ta có thể chạy mã Java trên bất kỳ máy nào mà không cần cài đặt bất kỳ phần mềm đặc biệt nào, JVM thực hiện điều đó. Cung cấp sẵn các thư viện. - Java là hướng đối tượng vì các lớp và đối tượng của nó. - Lý do chính để Java được bảo mật là con trỏ, Java không sử dụng con trỏ. - Trong Java, chúng ta có thể thực thi nhiều chương trình đồng thời, do đó, có thể đạt được đa luồng. - Java mạnh mẽ vì nó có nhiều tính năng như thu gom rác, không sử dụng con trỏ rõ ràng, xử lý ngoại lệ. - Java là một ngôn ngữ cấp cao giúp nó dễ hiểu. - Quản lý bộ nhớ hiệu quả được thực hiện bằng Ngôn ngữ lập trình Java. Nhược điểm : - Là một ngôn ngữ cấp cao, nó phải xử lý các cấp độ biên dịch và trừu tượng của một máy ảo. Java thể hiện hiệu suất kém, nguyên nhân chính là do bộ thu gom rác, cấu hình bộ nhớ đệm không hợp lệ và bế tắc giữa các quy trình.Không hỗ trợ thự viện GUI. - Java có rất ít trình tạo GUI – Swing, SWT, JSF và JavaFX trong số những trình xây dựng phổ biến hơn.Fix bug gặp nhiều khó khăn. - Để viết mã để thực hiện một tập hợp các hoạt động đơn giản, bạn có thể phải viết những đoạn mã dài và phức tạp. Điều này có thể ảnh hưởng đến khả năng đọc nhưng đảm bảo rằng các lập trình viên nhập chính xác những gì cần phải làm. d) PostgreSQL PostgreSQL là một hệ thống quản trị cơ sở dữ liệu quan hệ-đối tượng (object-relational database management system) có mục đích chung, hệ thống cơ sở dữ liệu mã nguồn mở tiên tiến nhất hiện nay. Ưu điểm : - Có thể chạy các trang web và ứng dụng web động với LAMP. - Một cơ sở dữ liệu có khả năng chịu lỗi cao. - Có sẵn miễn phí theo giấy phép nguồn mở. - Hỗ trợ các đối tượng địa lý để bạn có thể sử dụng nó cho các dịch vụ dựa trên vị trí. Hạn chế việc bảo trì hệ thống. Nhược điểm : Nhiều ứng dụng nguồn mở hỗ trợ MySQL, nhưng có thể không hỗ trợ PostgreSQL. Về số liệu hiệu suất, nó chậm hơn MySQL. e) Docker Docker là nền tảng phần mềm cho phép bạn dựng, kiểm thử và triển khai ứng dụng một cách nhanh chóng. Docker đóng gói phần mềm vào các đơn vị tiêu chuẩn hóa được gọi là container có mọi thứ mà phần mềm cần để chạy, trong đó có thư viện, công cụ hệ thống, mã và thời 6
  7. gian chạy. Bằng cách sử dụng Docker, bạn có thể nhanh chóng triển khai và thay đổi quy mô ứng dụng vào bất kỳ môi trường nào và biết chắc rằng mã của bạn sẽ chạy được. Ưu điểm : - Thiết lập ban đầu hiệu quả và dễ dàng - Cho phép theo dõi các biên bản vùng chứa để kiểm tra các biến thể - Giảm sự cố khi đưa lên sản phẩm Nhược điểm : - Không phải app nào cũng chứa đựng được - Số lượng container càng lớn thì càng phức tạp - Phải theo dõi và phát triển liên tục f) JSON JSON là viết tắt của JavaScript Object Notation, là một kiểu định dạng dữ liệu tuân theo một quy luật nhất định mà hầu hết các ngôn ngữ lập trình hiện nay đều có thể đọc được. JSON là một tiêu chuẩn mở để trao đổi dữ liệu trên web. Định dạng JSON sử dụng các cặp key – value để dữ liệu sử dụng. Nó hỗ trợ các cấu trúc dữ liệu như đối tượng và mảng Ưu điểm - Không giống với một số kiểu định dạng khác, cấu trúc của JSON tuân theo phong cách nhỏ gọn, đơn giản nhằm cải thiện khả năng đọc của người dùng. Đặc biệt là khi làm việc với một hệ thống phức tạp, JSON có xu hướng thực hiện các cải tiến đáng kể. - Quá trình phân tích cú pháp JSON nhanh hơn so với XML vì thư viện thao tác DOM trong XML yêu cầu thêm bộ nhớ để xử lý các tệp XML lớn. Ngược lại, JSON yêu cầu ít dữ liệu hơn, dẫn đến giảm chi phí và tăng tốc độ phân tích. - Cấu trúc JSON rất đơn giản và dễ đọc. Bất kể ngôn ngữ lập trình bạn đang sử dụng là gì, bạn vẫn có thể dễ dàng ánh xạ các miền đối tượng. - JSON sử dụng cấu trúc dữ liệu bản đồ, trong khi XML tuân theo cấu trúc cây. Các cặp Key-Value bị giới hạn nhiệm vụ nhưng tạo điều kiện thuận lợi cho mô hình dự đoán và tương đối dễ hiểu. Nhược điểm Vì không có schema, bạn có thể linh hoạt để trình bày dữ liệu theo bất kỳ cách nào bạn muốn. Nhưng ngược lại, bạn có thể vô tình tạo ra dạng dữ liệu bị sai Do JSON sử dụng định dạng Số thực dấu phẩy động IEEE-754. Điều này làm bạn không thể tận dụng các loại số đa dạng và nhiều sắc thái có sẵn trong nhiều ngôn ngữ lập trình. Thiếu sót này có nghĩa khiến các nhà phát triển phải sử dụng chuỗi biểu thị ngày, dẫn đến sự khác biệt về định dạng hoặc phải biểu diễn ngày ở dạng mili giây. Điều này khiến bạn không thể yêu cầu tài liệu bổ sung và tăng khả năng hiểu nhầm. 7
  8. Mặc dù JSON ngắn hơn XML, nhưng đây vẫn chưa phải là định dạng trao đổi dữ liệu ngắn gọn nhất. Vì vậy, đối với các dịch vụ có khối lượng lớn hoặc có mục đích đặc biệt, bạn sẽ muốn sử dụng các định dạng dữ liệu hiệu quả hơn là JSON. g) Postman Postman là một công cụ cho phép chúng ta thao tác với API, phổ biến nhất là REST. Postman hiện là một trong những công cụ phổ biến nhất được sử dụng trong thử nghiệm các API. Với Postman, ta có thể gọi Rest API mà không cần viết dòng code nào. Postman hỗ trợ tất cả các phương thức HTTP (GET, POST, PUT, PATCH, DELETE, …). Bên cạnh đó, nó còn cho phép lưu lại lịch sử các lần request, rất tiện cho việc sử dụng lại khi cần. Ưu điểm - Postman chính là một phần mềm dễ sử dụng. Đồng thời, Postman có thể hỗ trợ cho bạn chạy được giao diện bằng UI và non-UI. - Postman đem đến chức năng giúp hỗ trợ tạo code cho assert bằng ngôn ngữ lập trình Javascript. - Postman có thể hỗ trợ cho cả RESTful services và SOAP services - Postman đem đến chức năng giúp tài liệu API. Nhược điểm Bên cạnh những ưu điểm trên thì Postman còn có một số hạn chế nhất định. Đó chính là những bản phải trả phí, Postman có thể hỗ trợ cho người sử dụng các tính năng có thể nâng cao trình độ làm việc của nhóm, giúp hỗ trợ trực tiếp… Điều này tạo ra sự bất tiện cho người dùng vì mất một khoản chi phí không nhỏ chỉ để dùng thêm những tính năng của Postman. 4. Công việc triển khai Phân tích yêu cầu Thu thập và phân tích yêu cầu, vẽ các biểu đồ mô tả cho hệ thống Phát hiện các thực thể trên hệ Phân tích, thiết kế mối liên quan thống của các thực thể trong hệ thống Thiết kế giao diện hệ thống bằng Mockup giao diện (bao gồm các tool Figma màn hình chính, popup, cửa sổ lỗi). Xây dựng Front-end và Back-end Đã thể hiện trên Demo Deploy 8
  9. II. Phân tích - thiết kế hệ thống 1. Phân tích yêu cầu a. Tác nhân (Actor) trong hệ thống: Actor Chức năng Nhân sự (ban tuyển dụng) - Đăng nhập vào hệ thống bằng tài khoản được cấp - Tạo lịch test - Chỉnh sửa/xóa lịch test Nhân sự (tại các phòng ban) - Thừa kế các chức năng như ban tuyển dụng - Set up các bài test cho ứng viên phòng ban mình - Chấm điểm các bài test đã hoàn thành của ứng viên phòng ban mình Ứng viên - Đăng nhập bằng mã được gửi qua Email/SMS - Làm bài test - Nộp bài b. Quy trình nghiệp vụ trong hệ thống Dựa vào các giai đoạn chuẩn bị, trong và sau khi hoàn thành bài test, quy trình hệ thống được tóm tắt như sau: STT Process Actor Activity Input Output 1 Set up kế Nhân sự (tuyển Set up lịch - Khung giờ Lịch test hoạch test dụng)/Nhân sự test dự kiến dự kiến trong hệ (phòng ban) - Ngày/tháng/ thống năm dự kiến Set up - Họ tên Thông tin thông tin - Email/SMS ứng viên ứng viên - Vị trí ứng tuyển - Trình độ (level) Nhân sự (phòng Set up bài - Nội dung Bài test ban) test câu hỏi - Thời gian quy định - Khung điểm 9
  10. 2 Tiến hành Ứng viên Làm các Bài làm Bài làm bài test bài test - Tiếng Anh - Kiến thức chung - Code Nộp bài 3 Chấm bài Nhân sự (phòng Chấm bài Điểm 3 bài Điểm ba ban) test bài test 2. Thiết kế hệ thống Biểu đồ Use-case Các chức năng của actor Ứng viên: - Đăng nhập hệ thống bằng mã: Ứng viên sử dụng mã được gửi qua Email/SMS để đăng nhập hệ thống - Làm bài test: Thực hiện các bài test trong thời gian hợp lệ của bài test. Các chức năng của actor Nhân sự: - Đăng nhập hệ thống bằng tài khoản: Sử dụng username-password được thiết lập để đăng nhập trên hệ thống. 10
  11. - Quản lý ứng viên: Bao gồm thêm/sửa/xóa thông tin ứng viên (Tên, Email/SMS vị trí ứng tuyển, level, lịch làm bài, bài test tương ứng). - Set up bài test: Bao gồm thêm/sửa/xóa câu hỏi, bài test, set thời gian làm bài test. - Chấm điểm bài làm. Biểu đồ Trình tự cho chức năng làm bài Ứng viên tham gia bài test bắt đầu bằng việc đăng nhập vào hệ thống bằng mã đã nhận. Hệ thống sau khi kiểm tra mã sẽ đưa ra 2 trường hợp: - Mã đã nhập là hợp lệ: Chuyển sang màn hình bài làm và bắt đầu đếm thời gian làm bài trong hệ thống. Bài làm trong thời gian hợp lệ được lưu trữ cho tới khi ghi nhận kết thúc (chuyển sang màn kết thúc), khi thời gian làm bài kết thúc hệ thống làm sẽ thoát và chuyển sang màn kết thúc. - Mã đã nhận không hợp lệ: Không cho đăng nhập vào hệ thống (vẫn ở màn đăng nhập). 11
  12. Biểu đồ Trình tự cho chức năng chỉnh sửa lịch test Màn hình Lịch test thể hiện các dữ kiện liên quan đến kế hoạch test của phòng ban, bao gồm các thông tin về actor Ứng viên (Tên, Email/SMS vị trí ứng tuyển, level, lịch làm bài, bài test tương ứng), thời gian các ứng viên sẽ test (trong ba trạng thái “Sắp tới”, “Hôm nay”, “Quá hạn”) Khi muốn chỉnh sửa thông tin của ứng viên, actor Nhân sự trước hết phải đăng nhập theo account đã lập, tới màn hình lịch test. Hành động Thêm/sửa/xóa về thông tin ứng viên hay lịch sẽ được Hệ thống thu nhận và kiểm tra hợp lệ (Thông tin chỉnh sửa có hợp lệ theo định dạng hay không), sau đó sẽ hiển thị cửa sổ lỗi (nếu sai) hoặc duyệt và hiển thị cập nhật lại trên màn lịch test. 12
  13. Biểu đồ Trình tự cho chức năng chấm điểm các bài làm Màn hình Đã hoàn thành thể hiện các bài làm mà ứng viên đã làm Khi muốn chấm điểm cho bài làm của ứng viên, actor Nhân sự (với điều kiện phải có cùng phòng ban với ứng viên) trước hết phải đăng nhập theo account đã lập, tới màn hình Đã hoàn thành. Hành động chấm điểm sẽ được Hệ thống thu nhận và hiển thị theo dạng chart. 13
  14. Biểu đồ Trình tự cho chức năng set up các bài test Màn hình Câu hỏi thể hiện các dữ kiện liên quan đến câu hỏi/bài test (Loại câu hỏi, phạm vi câu hỏi, cấp độ câu hỏi, Tên bài test, cấp độ bài test, thời gian bài test, Mã ứng viên tham gia bài test). Khi muốn chỉnh sửa thông tin của ứng viên, actor Nhân sự trước hết phải đăng nhập theo account đã lập, tới Câu hỏi. Hành động Thêm/sửa/xóa về câu hỏi/bài test sẽ được Hệ thống thu nhận và kiểm tra hợp lệ (Thông tin chỉnh sửa có hợp lệ theo định dạng hay không), sau đó sẽ hiển thị cửa sổ lỗi (nếu sai) hoặc duyệt và hiển thị cập nhật lại trên màn Câu hỏi. 14
  15. Biểu đồ trạng thái của Ứng viên từ khi được thêm tới khi hoàn thành ứng tuyển 15
  16. 2. Phát hiện các thực thể trên hệ thống Thực thể Thuộc tính Ý nghĩa Candidate ID (PK): int Mã ứng viên Mỗi thực thể tượng trưng cho một ứng name: varchar(255) Tên ứng viên viên. email: varchar(255) Địa chỉ email của ứng viên phone: varchar(255) Số điện thoại của ứng viên position: varchar(255) Vị trí ứng tuyển avatar: varchar(255) id_level (FK): int Mã level ứng tuyển is_done: int Trạng thái bài test dates: Date Ngày làm bài test time: Time Giờ làm bài test 16
  17. english_mark: double Điểm bài test tiếng anh coding_mark: double Điểm bài test kỹ năng coding knowledge_mark: Điểm kiến thức chung double test ID (PK): int Mã bài test Mỗi thực thể là một bài test name: varchar(255) Tên bài test time: Time Thời gian giới hạn làm bài id_level (FK): int Cấp độ test id_subject (FK): int Loại bài test subjects ID (PK): int Mã loại bài test Mỗi thực thể là một loại bài test name: varchar(255) Tên loại bài test levels ID (PK): int Mã cấp độ Mỗi thực thể đại diện cho cấp độ ứng viên name: varchar(255) Tên cấp độ cũng như độ khó của bài test question ID (PK): int Mã câu hỏi Mỗi thực thể đại diện cho các câu hỏi content: varchar(255) Nội dung câu hỏi img: varchar(255) Hình ảnh id_level (FK): int Mã cấp độ cho câu hỏi id_subject (FK): int Mã loại câu hỏi id_type (FK): int Mã kiểu câu hỏi question_type ID (PK): int Mã kiểu câu hỏi Mỗi thực thể là một kiểu câu hỏi name: varchar(255) Tên kiểu câu hỏi mc_question ID (PK): int Mã câu hỏi 17
  18. Mỗi thực thế là một answer: varchar(255) Câu trả lời câu hỏi dạng trắc nghiệm istrue: int Đáp án đúng question_id (FK): int Mã câu hỏi e_question ID (PK): int Mã câu hỏi Mỗi thực thể là một câu hỏi dạng tự luận answer: varchar(255) Câu trả lời question_id (FK): int Mã câu hỏi test_question id_test (FK): int Mã bài test Mỗi thực thể đại diện cho các câu hỏi trong id_question (FK): int Mã câu hỏi bài test candidate_test ID (PK): int Mỗi thực thể là một bài test được gán với id_candidate (FK): int Mã ứng viên ứng viên id_test (FK): int Mã bài test result_candidate ID (PK): Long Mã kết quả Mỗi thực thể đại diện cho kết quả từng bài answer: varchar(255) Câu trả lời test của ứng viên id_answer: int Mã câu trả lời id_candidate: int Mã ứng viên id_test: int Mã bài test type: int Dạng staff ID (PK): int Mã nhân viên Mỗi thực thể mà một nhân viên name: varchar(255) Tên nhân viên department: Phòng ban của nhân varchar(255) viên email: varchar(255) Địa chỉ email của nhân viên username: Tên đăng nhập varchar(255) 18
  19. password: Mật khẩu đăng nhập varchar(255) image: varchar(255) role: varchar(255) Chức vụ 3. Thiết kế giao diện hệ thống bằng tool Figma Link demo bằng Figma: https://www.figma.com/proto/de5QiA7TUgxKwzrSagJUwu/Testing-Online?node-id=97%3A1890&sc aling=min-zoom&page-id=0%3A1&starting-point-node-id=2%3A2 Tác dụng: - Rõ ràng được các yêu cầu về hệ thống. - Thể hiện được cách sắp xếp các chức năng trong hệ thống. - Hiển thị hóa luồng hoạt động trong hệ thống. - Giúp cho việc xây dựng FE, BE được trở nên dễ dàng hơn. Màn hình đăng nhập - 19
  20. Màn hình list ứng viên và lịch test tương ứng (dạng list) Màn hình list ứng viên và lịch test tương ứng (dạng lịch) 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2