Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.8 MB, 23 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
Table of Contents
<i><b><small>LỜI GIỚI THIỆU ... 2 </small></b></i>
<i><b><small>CHƯƠNG 1 GIỚI THIỆU ... 5 </small></b></i>
<b><small>1.1 Các công nghệ sử dụng trong website ... 5 </small></b>
<i><b><small>CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ DỮ LIỆU ... 8 </small></b></i>
<small>2.6.Mơ tả chi tiết các chức năng ... 13</small>
<i><b><small>CHƯƠNG 4 TỔNG KẾT VÀ HƯỚNG PHÁT TRIỂN ...22 </small></b></i>
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><b>LỜI GIỚI THIỆU </b>
Trong thời đại công nghệ ngày nay, việc quản lý và truy cập các tài liệu học tập không chỉ là một nhu cầu mà là một yếu tố quyết định đối với sự thành công của người học trong quá trình học tập. Cùng với sự phát triển không ngừng của công nghệ thông tin, Hệ thống Quản lý Tài liệu Học tập (LMM) được ra đời như một giải pháp toàn diện, nhằm mang lại trải nghiệm học tập tối ưu và hiệu quả cho người học.
LMM không chỉ đơn thuần là một ứng dụng, mà nó cịn là một hệ thống được thiết kế một cách tỉ mỉ và linh hoạt để đáp ứng mọi nhu cầu của người học trong việc truy cập, quản lý và chia sẻ tài liệu học tập. Với giao diện thân thiện và dễ sử dụng, người học có thể dễ dàng tìm kiếm những tài liệu liên quan đến các mơn học trong chương trình học của mình, từ sách giáo trình đến bài giảng và tài liệu tham khảo.
Không chỉ giúp người học tiết kiệm thời gian trong việc tìm kiếm thơng tin, LMM còn mở ra cơ hội cho sự tương tác và hợp tác giữa các thành viên trong cộng đồng học tập. Người học có thể dễ dàng chia sẻ những tài liệu hữu ích mà họ đã tìm thấy, đồng thời tham gia vào các nhóm học tập để trao đổi kiến thức và kinh nghiệm học tập.
Tóm lại, LMM khơng chỉ là một cơng cụ hữu ích mà cịn là một người bạn đồng hành đáng tin cậy của người học trong hành trình chinh phục tri thức và vươn tới thành công trong học tập và sự nghiệp của họ.
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3"><b>LỜI CẢM ƠN </b>
Trên thực tế khơng có sự thành cơng nào mà khơng gắn liền với những sự hỗ trợ, giúp đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác. Trong suốt thời gian từ khi bắt đầu học tập đến nay, chúng em đã nhận được rất nhiều sự quan tâm, giúp đỡ của quý Thầy Cơ và bạn bè. Với lịng biết ơn sâu sắc nhất, chúng em xin gửi đến quý thầy cô ở khoa Điện - Điên tử trường đại học Mở Hà Nội đã cùng với tri thức và tâm huyết của mình để truyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường. Và đặc biệt, trong học kỳ này, Khoa đã tổ chức cho chúng em được tiếp cận với môn học mà theo chúng em là rất hữu ích đối với sinh viên ngành tin học cũng như tất cả các sinh viên thuộc các chuyên ngành điện tử khác.
Chúng em xin chân thành cảm ơn thầy Từ Viết Hoàng đã tận tâm hướng dẫn chúng em qua từng buổi học trên lớp cũng như những buổi nói chuyện, thảo luận về những công việc chúng em cần làm. Nếu khơng có những lời hướng dẫn, dạy bảo của thầy thì em nghĩ mơn học này của chúng em rất khó có thể hồn thiện được. Một lần nữa, chúng em xin chân thành cảm ơn thầy. Bài thu hoạch được thực hiện với kiến thức và thời gian có hạn và cịn nhiều bỡ ngỡ. Do vậy, khơng tránh khỏi những thiếu sót là điều chắc chắn, chúng em rất mong nhận được những ý kiến đóng góp q báu của thầy cơ và để kiến thức của chúng em trong lĩnh vực này được hoàn thiện hơn.
Lời Cảm Ơn GVHD : thầy Từ Viết Hồng, chúng em xin kính chúc quý Thầy Cô trong khoa Điện - Điên tử thật dồi dào sức khỏe, niềm tin để tiếp tục thực hiện sứ mệnh cao đẹp của mình là truyền đạt kiến thức cho thế hệ mai sau.
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><b> NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN </b>
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5"><b>CHƯƠNG 1 GIỚI THIỆU </b>
1.1 Các công nghệ sử dụng trong website 1.1.1. JavaScript
JavaScript là một ngôn ngữ lập trình mạnh mẽ và phổ biến có thể thay đổi nội dung, thuộc tính, kiểu dáng HTML và nhiều hơn thế. JavaScript được phát minh bởi Brendan Eich vào năm 1995 và trở thành tiêu chuẩn ECMA vào năm 1997. JavaScript có thể chấp nhận cả dấu ngoặc kép và dấu ngoặc đơn. JavaScript và Java là hai ngơn ngữ hồn tồn khác nhau, cả về khái niệm và thiết kế.
1.1.2. Node.js
Node.js là một mơi trường chạy mã JavaScript phía máy chủ, được xây dựng trên nền tảng V8 JavaScript engine của Google Chrome. Node.js đã thay đổi cách chúng ta xây dựng các ứng dụng web bằng cách mang JavaScript từ phía máy khách lên máy chủ, cho phép chúng ta xây dựng các ứng dụng mạnh mẽ và hiệu suất cao với một ngôn ngữ duy nhất trên cả phía máy khách và máy chủ. Node.js sử dụng mơ hình lập trình bất đồng bộ, khơng chặn, giúp nó xử lý hiệu quả hàng ngàn kết nối đồng thời mà không cần tạo ra một luồng mới cho mỗi kết nối. Điều này giúp Node.js rất phù hợp cho việc xây dựng các ứng dụng web thời gian thực, như các trò chơi trực tuyến, chat, hoặc các ứng dụng IoT.
Node.js cũng có một hệ sinh thái mạnh mẽ với hàng ngàn thư viện và công cụ được cung cấp thông qua npm (Node Package Manager), giúp giảm thiểu thời gian và công sức cần thiết để xây dựng các ứng dụng phức tạp.
Tóm lại, Node.js là một công nghệ mạnh mẽ và linh hoạt, cho phép các nhà phát triển xây dựng các ứng dụng web hiện đại, hiệu suất cao và dễ mở rộng. Nó đã trở thành một công cụ không thể thiếu trong bộ công cụ của nhiều nhà phát triển web hiện đại.
1.1.3. Express
Express là một framework ứng dụng web cho Node.js, cho phép bạn tạo ra các API và máy chủ web mạnh mẽ một cách dễ dàng và sạch sẽ. Nó là một gói nhẹ nhàng khơng che khuất các tính năng cốt lõi của Node.js. Express giúp tổ chức chức năng của ứng dụng của bạn với middleware và định tuyến; nó thêm các tiện ích hữu ích vào các đối tượng HTTP của Node.js; nó tạo điều kiện cho việc render
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">các đối tượng HTTP động. Express là một framework web phổ biến, được viết bằng JavaScript và được lưu trữ trong môi trường runtime Node.js.
1.1.4. EJS
<b>EJS, hay Embedded JavaScript Templating, là một thư viện mạnh mẽ </b>
giúp tạo ra các trang HTML động sử dụng JavaScript. EJS là một trong những template engine phổ biến nhất được sử dụng trong Node.js và Express.
EJS cho phép bạn lấy dữ liệu từ JavaScript và chèn nó vào HTML. Điều này rất hữu ích khi bạn muốn tạo ra các trang web động mà nội dung của chúng phụ thuộc vào dữ liệu từ máy chủ.
Để sử dụng EJS, bạn cần cài đặt nó thơng qua npm, sau đó thiết lập Express để sử dụng EJS như là template engine. Khi đã hồn tất, bạn có thể tạo các file EJS trong thư mục views của ứng dụng Express của bạn. Mỗi file EJS sẽ tương ứng với một trang web, và bạn có thể sử dụng JavaScript để chèn dữ liệu vào HTML.
EJS cung cấp một số tính năng mạnh mẽ như hỗ trợ partials, giúp bạn tái sử dụng các phần của trang web (như header, footer) trên nhiều trang. Ngoài ra, EJS còn cho phép bạn sử dụng các control flow statement như if, else, và for ngay trong HTML.
Tóm lại, EJS là một cơng cụ mạnh mẽ giúp bạn tạo ra các trang web động trong Node.js và Express. Với EJS, bạn có thể tận dụng toàn bộ sức mạnh của JavaScript để tạo ra các trang web phong phú và tương tác.
1.1.5. Mô hình MVC
MVC, viết tắt của Model-View-Controller, là một mẫu kiến trúc phần mềm được sử dụng trong kỹ thuật phần mềm để tạo lập giao diện người dùng trên máy tính. MVC chia ứng dụng thành ba phần (layer) riêng biệt, độc lập và có thể tương tác được với nhau.
Model là bộ phận có chức năng lưu trữ tồn bộ dữ liệu của ứng dụng và là cầu nối giữa 2 thành phần bên dưới là View và Controller. Nếu trạng thái của dữ liệu này thay đổi thì Model thường sẽ thơng báo cho View (để màn hình có thể thay đổi khi cần) và đôi khi là Controller (nếu cần logic khác để cập nhật View). View là phần giao diện (theme) dành cho người sử dụng. View là phương tiện hiển thị các đối tượng trong một ứng dụng.
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">Controller là bộ phận có nhiệm vụ xử lý các yêu cầu người dùng đưa đến thông qua View. Một controller bao gồm cả Model lẫn View. Nó nhận input và thực hiện các update tương ứng.
Mơ hình MVC thường được dùng để phát triển giao diện người dùng. Nó cung cấp các thành phần cơ bản để thiết kế một chương trình cho máy tính hoặc điện thoại di động, cũng như là các ứng dụng web.
1.1.6. MySQL
MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) sử dụng Ngơn ngữ truy vấn có cấu trúc (SQL) để quản lý và thao tác dữ liệu. MySQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở miễn phí, phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng.
MySQL được phát triển từ năm 1994 bởi Công ty Thụy Điển MySQL AB, nhưng năm 2008 MySQL đã được Công ty công nghệ Mỹ Sun Microsystem mua lại. Chưa dừng lại ở đó, vào năm 2010 MySQL lại tiếp tục bị thâu tóm bởi Oracle mua Sun Microsystems cho đến bây giờ vẫn thuộc quyền sở hữu của gã khổng lồ này.
MySQL nổi tiếng với tốc độ, độ tin cậy và tính dễ sử dụng, khiến nó trở thành lựa chọn hàng đầu cho các nhà phát triển và doanh nghiệp trên toàn thế giới. Nó hoạt động trên nhiều hệ điều hành và cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
MySQL có khả năng xử lý nhiều dữ liệu và có thể mở rộng khi cần thiết. Nhờ vào MySQL, bạn có thể tăng tốc độ và tiết kiệm chi phí. Tuy nhiên, MySQL cũng có nhược điểm là dung lượng bị hạn chế, nhiều trường hợp phải chia việc tải dữ liệu hoặc phải tạo cache MySQL.
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8"><b>CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ DỮ LIỆU 1. User story </b>
1.1. Đặt vấn đề:
Trong ngành giáo dục ngày nay, việc quản lý và phân phối tài liệu học tập là một nhiệm vụ không nhỏ. Các cơ sở giáo dục và học viên cần một nền tảng đơn giản để phân phối tài liệu học tập và kết hợp sự cộng tác và phát triển trong cộng đồng học tập.
1.2. Giải pháp đề xuất
LMM được xây dựng như một ứng dụng web, tận dụng công nghệ hiện đại để cung cấp một nền tảng mạnh mẽ, linh hoạt và dễ sử dụng. Đối với người học (Student), LMM sẽ cung cấp khả năng tìm kiếm và truy cập vào các giáo trình, tài liệu học tập một cách nhanh chóng và dễ dàng.
Đối với giáo viên (Teacher), LMM sẽ cung cấp khả năng tìm kiếm và truy cập vào các chương trình giảng dạy, giáo trình, tài liệu giảng dạy. Đối với nhân viên của Phòng Đào tạo (AD), LMM sẽ cung cấp khả năng thiết kế và cập nhật giáo trình.
Đối với quản trị hệ thống, LMM sẽ cung cấp khả năng quản lý tài khoản/người dùng hệ thống.
LMM được xây dựng với sự linh hoạt để có thể mở rộng và thích ứng với các yêu cầu thay đổi trong tương lai.
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9"><b>2. Phân tích hệ thống </b>
2.1. Cấu trúc thư mục của hệ thống
2.2. Sơ đồ chức năng
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">2.3. Mô tả màn hình
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">2.4. Chức năng khơng có màn hình
2.5. Mơ hình quan hệ
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">2.6. Mô tả chi tiết các chức năng 2.6.1. Common
Tính năng cho phép những người đã có tài khoản trong hệ thống LMM thực hiện đăng nhập, đăng xuất
Sơ đồ luồng dữ liệu:
Sơ đồ Use Case:
Thiết kế màn hình Login:
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">Khi người dùng nhập email và mật khẩu, hệ thống sẽ xác thực thông tin này trước khi cung cấp quyền truy cập cho người dùng. Nếu thơng tin khơng chính xác, hệ thống sẽ yêu cầu người dùng cung cấp thông tin chính xác để tiếp tục đăng nhập.
2.6.2. Account Management Sơ đồ luồng dữ liệu:
Sơ đồ Use Case:
Chọn “Add new user”. Hiển thị form tạo tài khoản mới. Nhập thông tin cho tài khoản mới,
bao gồm mật khẩu, email, và vai trị,…. Sau đó, chọn “Lưu”.
Xác nhận thơng tin và tạo tài khoản mới. Hiển thị cập nhật danh sách người dùng.
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">Chọn “Edit” để chỉnh sửa thơng tin chương trình học hoặc chọn “Xóa” để xóa tài khoản.
Xác nhận hành động của người dùng và cập nhật thông tin người dùng hoặc xóa người dùng khỏi hệ thống.
a) Xem danh sách người dùng Thiết kế màn hình:
Chi tiết chức năng:
Người dùng chọn liên kết Quản lý tài khoản.
Hệ thống truy xuất và hiển thị dữ liệu trong bảng thông tin. Nếu người dùng chọn mục cần lọc hoặc nhập thơng tin cần tìm kiếm, hệ thống sẽ truy xuất và hiển thị dữ liệu trong bảng thông tin. Nếu User click vào link Add new, hệ thống sẽ chuyển sang trang Add new.
Nếu Người dùng nhấp vào liên kết Chỉnh sửa, hệ thống sẽ chuyển sang trang Chỉnh sửa.
Nếu người dùng nhấp vào liên kết Xóa, hệ thống sẽ yêu cầu xác nhận và xóa thơng tin của hàng đã chọn trong cơ sở dữ liệu. b) Thêm người dùng
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">c) Chỉnh sửa thông tin người dùng
2.6.3. Curriculum Management
AD quản lý Chương trình giảng dạy của các ngành học và quản lý các môn học hoặc tổ hợp môn học trong Chương trình giảng dạy. Cho phép người dùng xem thông tin hoặc sử dụng để phục vụ cho việc học của mình.
Sơ đồ Use Case:
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">
Nhập thơng tin cho chương trình học mới, bao gồm tên chương Chọn “Edit” để chỉnh sửa thơng tin
chương trình học hoặc chọn “Xóa” để xóa chương trình học.
Xác nhận hành động của người dùng và cập nhật thông tin chương trình học hoặc xóa chương trình
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">c) Cập nhập thông tin Curriculum
1.1.1. Subject Management Biểu đồ luồng dữ liệu:
Sơ đồ Use Case
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">Chọn “Add Subject”. Hiển thị form tạo môn học mới. Nhập thông tin cho môn học mới,
bao gồm tên môn, mô tả,…. Sau đó, chọn “Lưu”.
Xác nhận thơng tin và tạo môn học mới. Hiển thị cập nhật danh sách môn học.
Chọn “Edit” để chỉnh sửa thơng tin mơn học hoặc chọn “Xóa” để xóa môn học.
Xác nhận hành động của người dùng và cập nhật thông tin môn học hoặc xóa mơn học khỏi hệ thống.
a) Tạo mới môn học
b) Xem danh sách môn học
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">c) Chỉnh sửa thông tin môn học
d) Đăng ký môn học
1.1.2. Material Management Biểu đồ luồng dữ liệu:
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">Sơ đồ Use Case
Chọn “Add Material”. Hiển thị form tạo tài liệu mới. Nhập thông tin cho tài liệu mới,
bao gồm tên, mô tả,…. Sau đó, chọn “Lưu”.
Xác nhận thơng tin và tạo tài liệu mới. Hiển thị cập nhật danh sách tài liệu
Chọn “Delete” để xóa tài liệu. Xác nhận hành động của người dùng và xóa tài liệu khỏi hệ thống. a) Thêm mới tài liệu
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">b) Xem danh sách tài liệu
<b>CHƯƠNG 4 TỔNG KẾT VÀ HƯỚNG PHÁT TRIỂN </b>
4.1Kết quả đạt được.
Hệ thống quản lý quản bán hàng trà sữa sau thời gian xây dựng đến nay về cơ bản đã hoàn thiện các chức năng cần thiết đáp ứng nhu cầu người dùng:
Đối với nhân viên
Có thể thực hiện các chức bán hàng, thanh tốn, hủy thanh tốn, xuất phiếu hóa đơn.
Các chức năng cơ bản như đăng nhập, đăng xuất. Đối với người quản lý
Quản lý giao diện.
Quản lý nhập liệu, cập nhật các thông tin dữ liệu.
Quản lý thống kê, quản lý cơ sở dữ liệu… và các chức năng cơ bản của trang quản lý.
Vận dụng hầu hết các kiến thức đã học vào trong đồ án. Khả năng kết hợp làm nhóm được phát huy hiệu quả. 4.2Phần hạn chế của đề tài.
Do thời gian với kiến thức, kinh nghiệm còn giới hạn nên đồ án của nhóm chúng em khơng tránh khỏi những thiếu sót.
Đề tài đã hồn thành các chức năng căn bản, tuy nhiên bên cạnh đó vẫn
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">Hệ thống quản lý có tính chun nghiệp chưa cao.
Trong quá trình xây dựng hệ thống quản lý cịn nhiều sai sót phải chỉnh sửa nhiều lần.
Thiếu các phương thức thanh toán. 4.3 Hướng phát triển.
Xây dựng một hệ thống xử lý dữ liệu với các chức năng hoàn thiện, đầy đủ hơn và phát triển thêm một số chức năng, dạng thống kê mới.
Tối ưu hóa các chức năng. Hỗ trợ thao tác nhanh hơn.
Hỗ trợ các chức năng thanh toán theo nhiều phương thức hơn.
Giao diện sinh động hơn, tích hợp thêm nhiều chức năng tiện ích khác. Khả năng kháng lỗi, bảo mật tốt hơn.
</div>