1. Trang chủ
  2. » Cao đẳng - Đại học

ĐỒ án ỨNG DỤNG hỗ TRỢ QUẢN lý NHÓM

37 17 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 đề Đồ Án Ứng Dụng Hỗ Trợ Quản Lý Nhóm
Tác giả Nguyễn Hồng Khoa, Nguyễn Tiến Dũng
Người hướng dẫn ThS. Nguyễn Thị Thanh Trúc
Trường học Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Công nghệ thông tin
Thể loại đồ án
Năm xuất bản 2020
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 37
Dung lượng 1,17 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. TỔNG QUAN (9)
    • 1.1 Tên đề tài (9)
    • 1.2 Từ khóa (9)
    • 1.3 Khảo sát về đề tài (9)
    • 1.4 Mục tiêu của đề tài (10)
    • 1.5 Ý nghĩa của đề tài (10)
    • 1.6 Đối tượng, phạm vi và phương pháp nghiên cứu của đề tài (10)
      • 1.6.1 Đối tượng nghiên cứu (10)
      • 1.6.2 Phạm vi nghiên cứu (11)
    • 1.7 Những công cụ quản lý công việc nhóm phổ biến hiện nay (11)
      • 1.7.1 Open Project (11)
      • 1.7.2 Trello (12)
      • 1.7.3 Microsoft Team (13)
  • Chương 2. CƠ SỞ LÝ THUYẾT (15)
    • 2.1 Phương pháp và công nghệ trong quản lý nhóm, dự án (15)
      • 2.1.1 Phương pháp Kanban (Thẻ thị giác) (15)
      • 2.1.2 Gantt Chart (16)
      • 2.1.3 So sánh giữa Gantt Chart và Kanban (17)
      • 2.1.4 Thuật toán xếp lịch cho Gantt Chart (18)
      • 2.1.5 Vấn đề giao tiếp giữa các thành viên (28)
    • 2.2 Công nghệ phát triển đề tài (31)
      • 2.2.1 ReactJS (31)
      • 2.2.2 ASP.NET Core (32)
      • 2.2.3 Microsoft SQL Server và MongoDB (33)

Nội dung

TỔNG QUAN

Tên đề tài

Ứng dụng hỗ trợ quản lý nhóm (TeamStudio).

Từ khóa

Khảo sát về đề tài

Hiện nay, làm việc nhóm ngày càng trở nên phổ biến trong học tập và công việc, dẫn đến nhu cầu trao đổi thông tin, phân công công việc, và quản lý tiến độ của từng thành viên trong nhóm Tuy nhiên, nhiều người vẫn chưa sử dụng đúng các công cụ hỗ trợ cho những nhu cầu này, mà thường sử dụng các nền tảng như Facebook và Zalo để quản lý nhóm.

Messenger không đáp ứng đủ các chức năng cần thiết cho việc quản lý, giao việc và theo dõi tiến độ công việc, dẫn đến tình trạng đình trệ và quên nhiệm vụ Điều này không chỉ làm giảm hiệu quả công việc mà còn gây khó khăn cho người dùng trong quá trình hợp tác.

Những công nghệ phổ biến hiện nay, phục vụ tốt cho nhu cầu quản lý, kiểm sát và phân chia công việc nhóm có thể kể đến như:

Trello là một công cụ quản lý công việc hiệu quả cho các nhóm làm việc, giúp theo dõi các nhiệm vụ, phân công công việc và cập nhật tiến độ dự án.

• Redmine: Một công cụ giúp quản lý công việc, quản lý dự án, theo dõi tiến độ dự án và từng công việc nhỏ

• Microsoft Team: là một hệ sinh thái, nơi các thành viên nhóm có thể nhắn tin, tạo phòng họp, chia sẻ tài nguyên,…

Mục tiêu của đề tài

Chúng tôi đang phát triển một ứng dụng quản lý và làm việc nhóm nhằm mang lại sự thuận tiện cho các nhóm nhỏ, đặc biệt là học sinh và sinh viên Ứng dụng này kế thừa những ưu điểm và khắc phục các nhược điểm của các công nghệ hiện có, với giao diện trực quan và các chức năng dễ sử dụng Ngoài ra, ứng dụng còn tích hợp kênh chat để tạo điều kiện cho việc tương tác và thảo luận giữa các thành viên trong nhóm.

TeamStudio là giải pháp tối ưu và nhanh chóng cho học sinh, sinh viên và người đi làm khi cần một ứng dụng quản lý nhóm hiệu quả.

Ý nghĩa của đề tài

Đề tài này nhằm hỗ trợ học sinh, sinh viên trong quá trình học tập, đồng thời khuyến khích việc thay đổi thói quen sử dụng các nền tảng không hiệu quả như Facebook, Zalo, Telegram để làm việc nhóm Mục tiêu là giảm thời gian lãng phí trong quản lý và tăng cường kiểm soát các nghiệp vụ, đáp ứng nhu cầu cơ bản khi làm việc nhóm.

Đối tượng, phạm vi và phương pháp nghiên cứu của đề tài

• Tìm hiểu, nghiên cứu và xây dựng website dựa trên công nghệ Reactjs, SQL

Server, MongoDB , ASP.NET Core

• Tìm hiểu và áp dụng Phương pháp quản lý thẻ thị giác Kanban để áp dụng xây dựng giao diện trực quan

• Dữ liệu: Ứng dụng hỗ trợ upload tập tin, các loại file nén, nhưng chỉ giới hạn dung lượng tập tin dưới 20MB, và video dưới 50MB

• Ngôn ngữ: Ứng dụng tạm thời chỉ xây dựng ngôn ngữ Tiếng Việt với đối tượng người dùng hướng đến là học sinh, sinh viên Việt Nam

• Công nghệ: tập trung vào phát triển với các thư viện, gói chức năng miễn phí hỗ trợ cho xây dựng giao diện ứng dụng.

Những công cụ quản lý công việc nhóm phổ biến hiện nay

Những tính năng cần thiết khi quản lý công việc, dự án thông thường gồm:

• Lập lịch: tạo công việc, giao việc và chỉ định thời hạn cho công việc

• Theo dõi tiến độ: kiểm tra tình trạng, trạng thái và tiến độ của công việc cũng như toàn bộ dự án

• Báo cáo: tạo báo cáo, phân tích và so sánh với tiến độ của dự án theo ngày, tuần, tháng, năm

• Lưu trữ: lưu lại dữ liệu công việc và dự án cho việc truy xuất trong tương lai

• Giao tiếp: tham gia thảo luận, đánh giá và nhận xét dự án cũng như từng công việc

OpenProject là một hệ thống quản lý dự án trực tuyến, giúp các nhóm làm việc cộng tác hiệu quả bất kể vị trí địa lý Ứng dụng mã nguồn mở này hoàn toàn miễn phí và được phát hành theo Giấy phép Công cộng GNU Phiên bản 3, với hai phiên bản: phiên bản cộng đồng miễn phí và phiên bản Doanh nghiệp có tính phí.

− Ứng dụng có phiên bản miễn phí để sử dụng, rất phù hợp để sử dụng cho các dự án Scrum, Agile

− Có Wiki, API docs đầy đủ

− Khó khăn trong việc cài đặt đối với những người không chuyên

− Để sử dụng cơ sở dữ liệu cho riêng mình cần phải có kinh phí

− Kanban board chỉ hỗ trợ phiên bản Enterprise

− Không lưu lại thông báo dẫn đến có thể bị quên nội dung quan trọng

1.7.1.3 Công nghệ sử dụng Ứng dụng được xây dựng bằng ngôn ngữ Ruby, Framework

Angular(tham khảo từ Wikipedia, Github)

1.7.1.4 Link project https://github.com/opf/openproject

Trello là một công cụ quản lý công việc hiệu quả cho các nhóm, giúp mọi thành viên dễ dàng theo dõi tiến độ và nhiệm vụ của nhau Với tính năng trực quan, Trello cho phép người dùng nhanh chóng nắm bắt công việc đang được thực hiện và tình trạng của chúng Đây là một công cụ Freemium, cho phép người dùng sử dụng miễn phí với các tính năng cơ bản, và chỉ cần trả phí khi muốn truy cập vào các tính năng nâng cao.

− Cung cấp một giao diện quản lý trực quan, dễ dàng trong việc tiếp cận và sử dụng

− Hỗ trợ đầy đủ các nền tảng mobile, PC

− Hướng đến quản lý công việc cá nhân, chưa có tính năng chat nhóm, không thể thảo luận, trao đổi trực tiếp giữa các thành viên

− Chưa có báo cáo tổng quát, lọc dữ liệu của team để tự đưa ra đánh giá tiến độ công việc cho team

Trello hỗ trợ web, ứng dụng mobille, web sản phẩm được xây dựng bằng React.(Theo extension React Developer Tools)

Microsoft Teams, sản phẩm của Microsoft được ra mắt vào năm 2017, cho phép người dùng tạo phòng họp, nhắn tin trực tiếp, trò chuyện âm thanh và video Nền tảng này cũng hỗ trợ gửi kèm tệp, mang lại trải nghiệm giao tiếp và hợp tác hiệu quả.

Nền tảng này tích hợp với bộ Office 365 cho thuê của công ty, bao gồm Microsoft Office và Skype, cùng với các tính năng mở rộng có khả năng kết nối với sản phẩm không phải của Microsoft.

− Microsoft Teams có khả năng tạo phòng họp, tương tác lập tức

− Có thể tích hợp với Azure Devops một cách dễ dàng

− Tích hợp mạnh mẽ với bộ Office 365 của Microsoft

Phân quyền bị hạn chế và sắp xếp nội dung tương tác không tuần tự gây khó khăn trong việc truy cập và thống kê thông tin Điều này dẫn đến việc không thể trả lời một tin nhắn cụ thể, làm giảm hiệu quả giao tiếp.

− Việc sử dụng các dịch vụ đi kèm như Azure Devops, Office có tính phí khá cao

− Không có Kanban Board, Gantt Chart trực quan

1.7.3.3 Công nghệ sử dụng Ứng dụng đã có mặt ở hầu hết các nền tảng mobile, PC app Ứng dụng được xây dựng bởi các công nghệ Angular, TypeScript(theo Wikipedia).

CƠ SỞ LÝ THUYẾT

Phương pháp và công nghệ trong quản lý nhóm, dự án

2.1.1 Phương pháp Kanban (Thẻ thị giác)

Kanban, được phát triển bởi công ty Toyota vào những năm 40, đã trở thành một phương pháp quan trọng trong quản lý sản xuất và kỹ thuật Phương pháp này hiện nay được áp dụng rộng rãi trong quản lý dự án và quản lý nhóm thông qua các công cụ như Trello, Asana, Jira, Redbooth, ProofHub, MeisterTask, Kanban Tool, Kanban Flow và Pipefy Việc áp dụng Kanban vào quản lý nhóm giúp tối ưu hóa quy trình làm việc và tăng cường hiệu suất.

• Dự án sẽ chứa các loại danh sách Tasks, thông thường sẽ là: To-do, Planned,

In progress, Done, Finished, Closed

Mỗi nhiệm vụ được thể hiện qua thẻ kanban trong danh sách, bao gồm các thông tin quan trọng như Tiêu đề, Mô tả, Điểm quan trọng, Điểm độ khó, Tiến độ, Ngày bắt đầu/kết thúc, Thành viên đảm nhận và Tags Người dùng cũng có thể thêm bình luận, nhận xét và đánh giá cho thẻ công việc này.

Có nhiều loại thẻ kanban, nhưng có 2 loại chính được áp dụng trong quản lý và phân chia công việc nhóm:

• Transport Kanban (Kanban vận chuyển): thẻ công việc sẽ chuyển cho công đoạn sau (danh sách nào đó) để hoàn thành

• Production Kanban (Kanban sản xuất): thẻ công việc cần thực hiện

• Một thẻ ở từng danh sách khác nhau có thể mang ý nghĩa khác nhau

Lợi ích khi áp dụng trong quản lý công việc nhóm hoặc cá nhân:

Bảng kanban sẽ đóng vai trò là trung tâm thông tin, giúp "phẳng hóa" hệ thống công việc, cho phép các thành viên trong dự án cập nhật và theo dõi trạng thái công việc hoặc toàn bộ dự án một cách trực quan.

• Độ chính xác về thời gian

• Nắm bắt công việc dễ dàng hơn nhờ yếu tố “thị giác” của thẻ kanban (màu sắc, cách sắp xếp,…)

• Giảm thiểu trường hợp bỏ sót công việc và trễ hạn công việc đến mức tối đa, nhờ vào tính trực quan của phương pháp kanban

Khó khăn khi áp dụng vào quản lý công việc:

Kanban yêu cầu cao về trình độ và kiến thức của các thành viên trong dự án, đồng thời đòi hỏi tính kỷ luật nghiêm ngặt Nếu một thẻ công việc không được hoàn thành đúng hạn hoặc xảy ra lỗi, toàn bộ hệ thống có thể bị ngưng trệ và ảnh hưởng đến nhiều thẻ khác.

Tính bảo mật là một vấn đề quan trọng khi sử dụng bảng kanban, vì các thẻ công việc được công khai Điều này gây khó khăn trong việc quản lý và bảo vệ thông tin công việc của từng thẻ.

Có thể dễ dàng chuyển đổi sang các dạng kiến trúc khác như Gantt hay

Công cụ Gantt, được phát triển bởi Henry L Gantt vào năm 1915, là một phương pháp quản lý dự án cổ điển nhưng vẫn rất phổ biến hiện nay Nó sử dụng trục tung để thể hiện công việc và trục hoành để biểu thị tiến độ theo thời gian, giúp các nhà quản lý theo dõi và điều phối các nhiệm vụ một cách hiệu quả.

Các ứng dụng phổ biến sử dụng Gantt Chart: ClickUp, RedBooth, GanttProject, Toggl Plan, TeamGantt, Tom’s Planner, StudioBinder…

Có sự liên kết giữa các công việc nhờ vào các Đường găng

Lợi ích khi áp dụng Gantt Chart:

• Rất trực quan khi quản lý và kiểm soát công việc theo tiến độ thời gian

Biểu đồ Gantt giúp dễ dàng thiết kế và giải thích tiến độ dự án cho các thành viên mới, nhờ vào tính trực quan và khả năng trình bày tổng quan, đặc biệt là trong các dự án nhỏ.

• Ở các dự án lớn có nhiều công việc, Gantt Chart rất dễ làm công việc chồng chéo lên nhau, gây khó khăn khi kiểm soát và quản lý

Việc chỉnh sửa trong dự án phụ thuộc vào cấu trúc đã được xây dựng; nếu có bất kỳ công việc nào bị thiếu hoặc phân chia sai trước đó, điều này có thể gây khó khăn và ảnh hưởng đến toàn bộ kế hoạch thời gian của dự án.

• Khó xác định mức độ ưu tiên nếu có nhiều công việc đan xen liên tiếp trên Gantt

2.1.3 So sánh giữa Gantt Chart và Kanban

Kanban Gantt Chart Trực quan

Giảm sai sót trong quá trình thực hiện

Thể hiện thứ tự công việc

Giải quyết chồng chéo công việc

Kết nối (phụ thuộc) giữa các công việc

Trực quan về thời gian

Phù hợp mọi quy mô dự án

2.1.4 Thuật toán xếp lịch cho Gantt Chart

Dựa trên các công việc được tạo, tự động xắp xếp thứ tự và độ ưu tiên cho các công việc trong dự án theo Gantt Chart

Giảm thời gian tự tay sắp xếp lần lượt các công việc của người tạo danh sách công việc

Các công việc (tasks) được giao trong quản lý nhóm hoặc dự án

2.1.4.3 Các thông tin sử dụng

Thuật toán áp dụng các thông tin của task gồm:

• Độ ưu tiên (Priority point):

➢ Được tính bằng số point (1, 2, 3,…), thể hiện độ khẩn cấp, mức độ cần hoàn thành gấp của công việc đó

➢ Công việc nào có độ ưu tiên (số point) lớn hơn sẽ được ưu tiên xếp trước trong Gantt Chart

• Độ phức tạp (Complexity point):

➢ Được tính bằng đơn vị thời gian (ngày hoặc giờ), thể hiện độ phức tạp về thời gian và độ khó giải quyết của công việc đó

➢ Những công việc nào độ ưu tiên bằng nhau thì sẽ chọn công việc có độ phức tạp thấp hơn để thực hiện trước trong Gantt Chart

• Ràng buộc (phụ thuộc) giữa các công việc:

➢ Là ràng buộc về công việc tiên quyết (cần hoàn thành trước) của một công việc bất kỳ

➢ Khi thực hiện xếp lịch, một công việc bắt buộc phải được bắt đầu sau khi những công việc tiên quyết của nó đều đã hoàn thành

• Thời hạn hoàn thành công việc:

Là deadline của các công việc, độ chính xác tới mức: Giờ

• Thuật toán Multi Level Queue:

➢ Áp dụng ý tưởng các công việc có thể được xếp vào các luồng chạy song song nhau Các queue không phụ thuộc thứ tự vào nhau

➢ Khi khởi tạo danh sách công việc của nhóm, mỗi công việc sẽ được gán cho một và chỉ một thành viên bất kỳ để hoàn thành

➢ Mỗi thành viên trong nhóm được xem như một queue độc lập, giải quyết các công việc độc lập nhau và song song nhau

➢ Sắp xếp thứ tự theo độ ưu tiên công việc

➢ Áp dụng dựa vào độ ưu tiên (Priority point) của các công việc để xếp thứ tự thực hiện trước hoặc sau của chúng trong Gantt Chart

• Thuật toán Shortest Job First:

➢ Sắp xếp thứ tự theo độ phức tạp công việc

➢ Áp dụng dựa vào độ phức tạp (Complexity point) của các công việc để xếp thứ tự thực hiện trước hoặc sau của chúng trong Gantt Chart

• Thuật toán DFS (Depth-first search):

Thuật toán tìm kiếm theo chiều sâu (DFS) là một phương pháp duyệt cây hoặc đồ thị, thuộc loại tìm kiếm mù, không dựa vào thông tin hay giá trị của các nút đã được duyệt.

➢ Dùng DFS cho giai đoạn cuối cùng của xếp lịch, khi cần tìm ra các bộ (tasks) theo thứ tự tối ưu nhất

1 Kiểm tra tính hợp lệ dữ liệu: o Đảm bảo không xảy ra mâu thuẫn về ràng buộc giữa các tasks o Thực hiện:

➢ Mô hình hóa thành đồ thị có hướng : G=(V, A), trong đó: Tập đỉnh V: là tập các tasks

Tập cạnh có hướng A bao gồm các cạnh đơn hướng, thể hiện ràng buộc thứ tự hoàn thành các nhiệm vụ Đồ thị này mô tả mối quan hệ thứ tự thực hiện giữa các tác vụ.

➢ Dùng thuật toán duyệt chiều sâu DFS, kiểm tra tính đúng đắn bằng cách tìm xem trong đồ thị có chu trình hay không

Nếu phát hiện chu trình trong dữ liệu, thuật toán sẽ thông báo rằng không thể tạo Gantt Chart do dữ liệu không hợp lệ và sau đó sẽ kết thúc Sự tồn tại của chu trình trong đồ thị dẫn đến mâu thuẫn về thứ tự thực hiện.

2 Sắp xếp tất cả theo ngày kết thúc tăng dần

3 Đặt các task đã sắp xếp vào Gantt (Hình 1): o Đặt task vào đúng danh sách task của người đảm nhận task đó o Điểm bắt đầu là ngày bắt đầu dự án o Điểm kết thúc chính là Deadline của task đó

Hình 1 Các task được đặt vào Gantt chart thỏa mãn deadline

4 Thực hiện ràng buộc quan hệ trước sau cho các task bằng cách duyệt qua tất cả task, tại mỗi task: o Duyệt qua danh sách các task phải hoàn thành trước của nó, chọn ra task nào có deadline lớn nhất (trễ nhất): maxDeadline o Dời start-time của task đang xét về ngay sau maxDeadline đã tìm được

Hình 2 Các task thỏa ràng buộc thứ tự thực hiện

Hình 3 Ràng buộc thứ tự được biểu diễn bằng đường nối

5 Chọn ra các bộ thứ tự loại bỏ đi trùng lặp công việc tại một thời điểm: o Nhận xét:

▪ Hiện tại (hình 3) các Đường Găng trên Gantt Chart đang biểu diễn cho khoảng ngày liên tiếp (vùng) mà task đó có thể được đặt vào

Task 7 có đường Găng trải từ ngày 1 đến ngày 5

Nhưng số ngày cần thiết để hoàn thành task 7 chỉ có 4 ngày, thì task 7 có thể được đặt vào khoảng {1->2->3->4} hoặc {2->3->4-

Mỗi nhiệm vụ có đường Găng chính là khu vực "an toàn" để thực hiện nhiệm vụ đó, giúp đảm bảo tuân thủ nguyên tắc deadline và mối liên kết giữa các nhiệm vụ trước và sau.

Hình 4 Các task nằm trong đường găng của chúng o Nhiệm vụ:

▪ Chọn ra một bộ thứ tự của các task

▪ Đảm bảo mỗi task phải nằm trên đường Găng của nó

▪ Thời gian hoàn thành task cuối cùng của bộ đó phải là sớm nhất o Thực hiện:

▪ Chọn ra các bộ đường găng bị chồng chéo lên nhau (Hình 5)

▪ Sử dụng thuật toán DFS (Depth-first search): Thực hiện DFS cho mỗi bộ để tìm ra các bộ thứ tự có thời gian hoàn thành sớm nhất (Hình 6)

Hình 5 Phân vùng nhóm các tasks bị chồng nhau

Hình 6 Một cách sắp xếp hoàn chỉnh sau khi đã thực hiện DFS xong

6 Chọn bộ thứ tự tối ưu nhất dựa trên Độ ưu tiên và Độ phức tạp (thời gian) của các bộ:

Chọn bộ có Độ ưu tiên tối ưu nhất, và nếu có nhiều bộ cùng độ ưu tiên, tiếp tục chọn dựa trên Độ phức tạp tối ưu nhất Tính toán Độ ưu tiên của một bộ thứ tự là cần thiết để đảm bảo hiệu quả trong quá trình lựa chọn.

Công nghệ phát triển đề tài

React là thư viện UI do Facebook phát triển, giúp tạo ra các thành phần giao diện người dùng tương tác, có trạng thái và có thể tái sử dụng Thư viện này được sử dụng trong môi trường sản xuất tại Facebook, và Instagram hoàn toàn được xây dựng trên nền tảng React.

Redux là một phần thiết yếu trong hệ sinh thái ReactJS, không ai có thể bỏ qua nó ReactJS không cung cấp các module chuyên dụng để quản lý dữ liệu, do đó, nó được thiết kế độc lập bằng cách chia nhỏ giao diện thành các component nhỏ, giúp tăng cường sự liên kết và quản lý trạng thái hiệu quả hơn.

ReactJS đang là một công nghệ rất phổ biến trên thế giới, được sử dụng để xây dựng nhiều ứng dụng

ReactJS giúp cho quá trình phát triển ứng dụng nhanh chóng với cộng đồng mạnh mẽ

Xây dụng được giao diện đẹp, UX tốt

ASP.NET Core là một framework mã nguồn mở và đa nền tảng, lý tưởng cho việc phát triển ứng dụng hiện đại như web apps, IoT và backend cho di động Nó có thể chạy trên NET Core hoặc phiên bản đầy đủ của NET Framework, được thiết kế nhằm tối ưu hóa quy trình phát triển cho các ứng dụng triển khai trên đám mây hoặc chạy tại chỗ.

Giải pháp này được thiết kế theo hướng module, giúp tối ưu hóa tài nguyên và giảm chi phí phát triển, đồng thời duy trì tính linh hoạt trong việc xây dựng ứng dụng Bạn có khả năng phát triển và triển khai các ứng dụng ASP.NET Core đa nền tảng trên các hệ điều hành Windows, Mac và Linux.

2.2.2.2 Lý do chọn ASP.NET Core

ASP.NET Core là một framework đa nền tảng và mã nguồn mở do Microsoft phát triển, cho phép xây dựng ứng dụng có thể chạy trên nhiều hệ điều hành khác nhau Đây là một framework đáng để học và sử dụng trong phát triển phần mềm hiện đại.

Các thành viên có kiến thức về C# khá tốt

Hiệu suất ổn định, cộng đồng hỗ trợ nhiệt tình

2.2.3 Microsoft SQL Server và MongoDB

SQL Server, hay Microsoft SQL Server (MS SQL Server), là phần mềm do Microsoft phát triển, được thiết kế để lưu trữ dữ liệu theo chuẩn RDBMS Nó cũng hoạt động như một hệ quản trị cơ sở dữ liệu quan hệ đối tượng (ORDBMS).

SQL Server cung cấp các công cụ quản lý toàn diện, bao gồm giao diện GUI và ngôn ngữ truy vấn SQL Một trong những điểm mạnh của SQL Server là khả năng tích hợp hoàn hảo với nhiều nền tảng của Microsoft như ASP.NET và C# trong việc phát triển ứng dụng Winform, nhờ vào tính độc lập của nó.

MongoDB is a document-oriented NoSQL database that departs from the traditional table-based structure of relational databases It is designed to accommodate flexible schemas, utilizing BSON to store data in a format similar to JSON This adaptability makes MongoDB an ideal choice for managing diverse data types.

Mỗi collection trong Document JSON chứa các kích cỡ và loại document khác nhau, giúp tối ưu hóa việc lưu trữ dữ liệu Nhờ vào định dạng JSON, việc truy vấn dữ liệu trở nên nhanh chóng và hiệu quả.

2.2.3.2 Lý do chọn Microsoft SQL Server và MongoDB

SQL Server hoạt động tốt với NET Đây là một RDBMS(hệ quản trị cơ sở dữ liệu) phổ biến được sử dụng trên thế giới

SQL Server có một cộng đồng trao đổi và hỗ trợ bởi các lập trình, chuyên gia giỏi và có mặt khắp thế giới với ngôn ngữ phong phú

MongoDB cung cấp khả năng lưu trữ dữ liệu phi cấu trúc với tính linh hoạt cao, không có ràng buộc và đảm bảo tính toàn vẹn Điều này mang lại sự sẵn sàng tối ưu, hiệu suất vượt trội và khả năng mở rộng lưu trữ dễ dàng.

Chương 3 CÀI ĐẶT VÀ KẾT LUẬN

Một số hình ảnh demo từ ứng dụng

− Phân tích một ứng dụng cần những gì, những điều cần cải tiến

− Chọn được công nghệ để phát triển ứng dụng và cố gắng làm ứng dụng tốt nhất có thể với nó.

Ngày đăng: 05/09/2021, 20:47

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