Luận văn Thiết kế, xây dựng hệ thống phần mềm giảng dạy kịch hát dân tộc Trường Đại học Sân khấu điện ảnh

Luận văn được xây dựng tập trung vào nghiên cứu các kỹ thuật trong Kỹ nghệ yêu cầu. Cách tiếp cận chúng là khác nhau cho từng phương pháp phát triển phần mềm và trong luận văn tôi tập trung vào phương pháp Agile Scrum. Tôi chọn Scrum vì thực tế đã chứng minh đây là công cụ hiệu quả trong việc đổi mới, sáng tạo, đảm bảo chất lượng sản phẩm và khả năng thành công của dự án. Ngoài ra, lý do chính là phương pháp này đã hệ thống lại một cách hoàn chỉnh quá trình xử lý yêu cầu người dùng và đưa tác nhân người dùng vào làm trọng tâm của quá trình phát triển sản phẩm. Agile Scrum đề cao quá trình phát triển và kiểm thử phần mềm hơn là các công tác liên quan như xây dựng tài liệu dự án cũng là yếu tố để tôi nghiên cứu thêm các phương pháp nhằm tinh gọn công cụ mô hình hoá UML nhằm sử dụng nó hợp lý trong các buổi họp có sự tham gia của người dùng hay các buổi họp chỉ trong nội bộ các thành viên nhóm phát triển. Và kết quả của quá trình xây dựng luận văn được tóm tắt thành các phần như sau: Thứ nhất, tôi nghiên cứu lý thuyết các kỹ nghệ yêu cầu cổ điển trong các mô hình Xã hội – Kỹ thuật (Socio – Technical model) như: USTM, CUSTOM VÀ OSTA cùng với các phương pháp khác như Phương pháp Hệ thống mềm (Soft Systems Methodology), Phương pháp Thiết kế hợp tác (Participatory Design) và phương pháp phát triển phần mềm truyền thống Waterfall. Sau đó, từ thực nghiệm thông qua các dự án Agile tôi đã tham gia, tôi xác định điểm chung của Agile so với phần còn lại từ đó đi tìm câu trả lời vì sao dự án Agile có tỉ lệ thành công cao hơn nhiều so với dự án truyền thống thông qua cách giải quyết của phương pháp này với các vấn đề về tổ chức gặp phải khi áp dụng hệ thống phần mềm hay các vấn đề khi yêu cầu người dùng không rõ ràng cụ thể hoặc phát sinh thay đổi, phát sinh yêu cầu mới trong quá trình phát triển. Thứ hai, tôi nghiên cứu vai trò và trách nhiệm của Chủ sản phẩm (Product Owner), quá trình mà họ làm việc cùng các Bên liên quan, cũng như các thành viên trong nhóm phát triển, và cách họ quản lý vòng đời của một yêu cầu người dùng đi từ các Epic, các Product Backlog sau đó được làm mịn dần qua từng Sprint để chuyển hoá thành các đầu việc, là đầu vào cho quá trình coding và xây dựng test case. Thứ ba, để trình bày một chức năng hay một vấn đề của hệ thống một cách khoa học không thể chỉ sử dụng Prototype và Mockup và quá trình xây dựng tài liệu dự án dù không là yếu94 tố quan trọng trong Agile nhưng vẫn cần thiết cho quá trình nghiệm thu hoặc quá trình bảo trị hệ thống. Vì vậy tôi đã nghiên cứu hướng áp dụng phù hợp kỹ thuật mô hình hoá UML vào các buổi họp với khác hàng cũng như các cuộc họp nội bộ giữa các thành viên trong đội dự án, các sơ đồ UML được chia làm 2 nhóm KEEPs và TEMPs với mục tiêu là tối thiểu hoá, chỉ sử dụng những sơ đồ cần thiết nhất. Tôi đã áp dụng kiến thức này vào việc xây dựng Bản đặc tả yêu cầu người dùng và Bản đặc tả yêu cầu hệ thống của Phần mềm Giảng dạy Kịch hát dân tộc Trường Đại học Sân khấu Điện ảnh. Thứ tư, trong các UML Diagram, các phần tử có thể thừa kế hay nói cách khác các phần tử trong các Diagram có mối quan hệ với nhau và để đảm bảo các phần tử này được quản lý một cách hướng đối tượng và có thể sử dụng lại được, tôi đề xuất sử dụng công cụ Enterprise Architecture – EA. Ngoài ra EA đặc biệt nên dùng với các dự án phức tạp và các vấn để được trình bày qua nhiều các cuộc họp giữa các bên yêu cầu các Diagram cần thay đổi và chia sẻ xuyên suốt quá trình thực hiện dự án. Thứ năm, nắm vững kiến thức về Liferay Portal và vận dụng framework này làm nền tảng để hiện thực các yêu cầu chức năng liên quan tới quản trị nội dung trong dự án E-Learning. Điều này giúp nhóm nghiên cứu tập trung vào các bài toán xây dựng vai mẫu 3D và các vấn đề liên quan.

pdf117 trang | Chia sẻ: yenxoi77 | Lượt xem: 711 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Luận văn Thiết kế, xây dựng hệ thống phần mềm giảng dạy kịch hát dân tộc Trường Đại học Sân khấu điện ảnh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
pháp cũng đưa ra các biểu đồ được nhóm sử dụng tạm thời trong các cuộc họp, các buổi hội thảo nội bộ (TEMPS). Việc áp dụng phương pháp mô hình hoá không chỉ giúp cho quá trình phân tích vấn đề trở nên rõ ràng và có tính hệ thống mà còn quan trọng hơn khi nhóm phát triển cần phân chia thành nhiều nhóm phụ hoặc trong trường hợp có thay đổi về nhân sự trong nhóm. 55 Chương 3. Phương pháp thu thập yêu cầu 3.1. Tiếp cận các bên liên quan Chủ sản phẩm (Product Owner) cần kết hợp chặt chẽ với các Bên liên quan nhằm đảm bảo sản phẩm có trải nghiệm người dùng tốt (UX) với các tính năng phù hợp. Điều đầu tiên PO cần xác định đúng các Bên liên quan và có chiến lược cụ thể khi làm việc với họ. Tôi đề xuất sử dụng Lưới Tầm ảnh hưởng-Độ quan tâm (Power-Interest Grid), bảng này chia các bên liên quan thành các nhóm và tương ứng với mỗi nhóm PO sẽ có các cách tiếp cận tương ứng. 3.1.1. Xác định các bên liên quan Scrum định nghĩa của các bên liên quan như sau: Các bên liên quan là tất cả các bên quan tâm tới dự án, không bao gồm: Chủ sản phẩm (Product Owner), nhóm phát triển và Scrum Master. Như vậy ở hình dưới đây thì Senior Management, Marketing and Sales là các thành viên nội bộ nhưng cũng có thể là các bên liên quan. Hình 21: Vai trò trung tâm của chủ sản phẩm đối với các bên liên quan và nhóm phát triển Để xác định các bên liên quan, người phân tích cần liệt kê tất cả những người có thể hỗ trợ họ trong quá trình phát triển, phát hành và chuyển giao sản phẩm. Như vậy các bên liên quan trong dự án Hệ thống phần mềm Giảng dạy Kịch hát dân tộc Trường Đại học Sân khấu Điện ảnh bao gồm: 56 1. Ban lãnh đạo nhà trường ĐH Sân khấu Điện ảnh 2. Cán bộ quản lý khoa Kịch hát dân tộc – ĐH Sân khấu Điện ảnh 3. Giảng viên 4. Sinh viên 5. Hội đồng Khoa học và Công nghệ 6. Cán bộ Phòng CNTT trường ĐH Sân khấu Điện ảnh 7. Đại diện đơn vị cung cấp nội dung 8. Người dùng ẩn danh 3.1.2. Phân tích các bên liên quan Khi đã xác định được các bên liên quan, chúng tôi thực hiện các bước phân tích họ để xác định cách làm việc với họ như thế nào. Đây là nỗ lực của Product Owner nhằm thu hút sự quan tâm và dành lấy thời gian của các bên liên quan. Một kỹ thuật phân tích các bên liên quan phổ biến là Lưới Tầm ảnh hưởng-Độ quan tâm (Power-Interest Grid) nhằm đánh giá các bên liên quan bằng cách tính đến tầm ảnh hưởng và sự quan tâm của họ tới dự án. Một bên liên quan thường quan tâm đến sản phẩm nếu sản phẩm đó ảnh hưởng đến cá nhân họ. Người có tầm ảnh hưởng cao nếu người đó có thể ảnh hưởng đến quyết định sản phẩm hoặc tính năng sản phẩm. Bảng 2: Lưới Tầm ảnh hưởng-Độ quan tâm (Power-Interest Grid) lý thuyết Mỗi nhóm bên liên quan ở bảng trên đòi hỏi mức độ tham gia khác nhau như giải thích sau. 57 3.1.3. Cộng tác với các Player Player là bên liên quan có tầm ảnh hưởng lớn và độ quan tâm cao tới dự án. Những cá nhân này là đối tác quan trọng đối với các Product Owner. Do đó, PO nên cộng tác chặt chẽ với họ, bằng cách mời họ tham gia các buổi họp chiến lược sản phẩm (Product Strategy) và các hội thảo lộ trình (Roadmaping Workshop) và các cuộc họp đánh giá Sprint (Sprint Review Meeting). Mục đích để duy trì sự quan tâm về sản phẩm trong suy nghĩ của họ, tận dụng những ý tưởng và kiến thức của họ và thiết lập một mối quan hệ chặt chẽ và tạo dựng sự tin tưởng với họ. Ngoài ra Player có tầm ảnh hưởng lớn vì vậy việc đồng bộ về mặt thông tin với các cá nhân này vô hình cũng giúp duy trì tính đồng bộ đối với các bên liên quan khác. Cũng cần nhớ rằng sự hợp tác này đòi hỏi khả năng lãnh đạo vì vậy PO cần cởi mở và hợp tác nhưng cũng phải ra quyết định cùng lúc. Mục tiêu xây dựng sự đồng thuận với các Player nhưng cũng không ngại từ chối. Không cố gắng làm vừa lòng tất cả các bên mà cần can đảm để đưa ra quyết định nếu không có thỏa thuận nào có thể đạt được. 3.1.4. Thu hút sự quan tâm các Subject Subject là những cá nhân có độ quan tâm cao nhưng có ít tầm ảnh hưởng. Họ cảm thấy bị ảnh hưởng bởi sản phẩm và muốn gây ảnh hưởng đến sản phẩm nhưng họ không thể phủ quyết hoặc thay đổi quyết định về sản phẩm. Các Subject có thể là các đồng minh tuyệt vời, họ có thể giúp Product Owner nâng cao sự hiểu biết và tính cạnh tranh cho sản phẩm của bạn. PO cần duy trì vai trò và mối quan tâm của họ thường xuyên, ví dụ bằng cách mời họ tham gia các Sprint Review Meeting và khuyến khích họ chia sẻ phản hồi của họ. Nhưng đừng mắc lỗi khi nói "Đồng ý" với mọi ý tưởng và đề nghị các Subject nêu lên. Sử dụng Product Strategy và Product Roadmap để đánh giá liệu một ý tưởng có hữu ích hay không. 3.1.5. Thao khảo ý kiến của các Context Setter hay Referee Những người có sự quan tâm thấp nhưng có quyền lực cao được gọi là những Context Setter hay Referee. Họ ảnh hưởng đến bối cảnh của sản phẩm nhưng họ ít quan tâm đến sản phẩm. Đảm bảo rằng Context Setter cảm thấy rằng quan điểm, mối quan tâm và ý tưởng của họ được lắng nghe và hiểu. Thường xuyên tham khảo ý kiến của họ, ví dụ, bằng cách mở cuộc họp riêng. Điều này đảm bảo rằng những ý tưởng và mối quan tâm của họ được lắng nghe và nó giúp tránh những bất đồng sau này. Đừng để Context Setter bối rối và không cho 58 phép họ ra quyết định. Hãy mạnh mẽ, can đảm để nói không ngay cả khi phải đối mặt với một bên liên quan đầy quyền lực. 3.1.6. Thông báo thông tin tới Crowd Crowd là các bên liên quan với sự quan tâm thấp và quyền lực thấp. Vì họ không quan tâm đến sản phẩm của bạn và không có khả năng ảnh hưởng đến quyết định của sản phẩm nên thông thường cần phải thông báo thông tin dự án cho các cá nhân này bằng cách cho phép họ truy cập vào trang web wiki của sản phẩm hoặc cập nhật những bước phát triển quan trọng dưới hình thức của một bản tin, bài báo. 3.1.7. Lưới Tầm ảnh hưởng-Độ quan tâm (Power-Interest Grid) Bảng 3: Lưới Tầm ảnh hưởng-Độ quan tâm (Power-Interest Grid) của dự án Nhóm Tên bên liên quan Mức độ tương tác Tần suất tương tác Kỹ thuật tương tác Players Cán bộ quản lý khoa Kịch hát dân tộc – ĐH Sân khấu Điện ảnh Giảng viên Cộng tác (Collaborate) Once per sprint Collaborative workshops bao gồm: Strategy và Roadmap workshops, sprint review meetings Subjects Sinh viên Người dùng ẩn danh Thu hút sự quan tâm (Involve) Monthly Sprint review meetings Context Setters Ban lãnh đạo nhà trường ĐH Sân khấu Điện ảnh Hội đồng Khoa học và Công nghệ Tham khảo (Consult) Quarterly Gặp riêng (One-on- one meetings) Crowd Phòng CNTT trường ĐH Sân khấu Điện ảnh Thông báo (Inform) Quarterly Newsletter 59 3.2. Bộ câu hỏi phỏng vấn các bên liên quan (Q&A) Các câu hỏi (Question – Q) được đặt ra bởi tôi, đứng trên vai trò là một Chủ sản phẩm (Product Owner). Các câu trả lời (Answer – A) được ghi nhận từ đại diện các bên liên quan tương ứng với từng tiểu mục ở Phụ lục I. Bộ câu hỏi phỏng vấn các bên liên quan (Q&A). 3.3. Xây dựng User Story, Product Backlog 3.3.1. Xây dựng các Epic Epic là những User Story lớn ở mức thô với độ ưu tiên thấp. Chúng quá lớn để thực hiện trong một bước lặp (Increment) duy nhất và do đó chúng cần phải được tổng hợp thành các User Story nhỏ hơn. 3.3.1.1. Form mẫu dùng để ghi các Epic như sau 60 3.3.1.2. Danh sách các Epic Nội dung các Epic được liệt kê chi tiết tại Phụ lục II. Danh sách các Epic 3.3.2. Xây dựng các User Story 3.3.2.1. Phân nhóm các người dùng cùng User Story “Người dùng” bao gồm: 1. Người dùng ẩn danh (Anonymous User) 2. Người dùng đã xác thực (Authorized User) a. Sinh viên b. Giảng viên c. Cán bộ Phòng CNTT trường ĐH Sân khấu Điện ảnh 61 3.3.2.2. Danh sách các User Story Nội dung các User Story được liệt kê chi tiết tại Phụ lục III. Danh sách các User Story 3.3.3. Scrum Taskboard: SPRINT_2017_03_03 62 3.3.4. Bảng Kanban 3.4. Tóm lược Chương này tôi trình bày việc xác định các bên liên quan tham gia trực tiếp hay gián tiếp tới hệ thống và chia thành các nhóm với các cách tiếp cận khác nhau. Ở bước đầu của quá trình phân tích, tôi cùng nhóm nghiên cứu và phát triển dự án xây dựng bộ câu hỏi phỏng vấn các bên liên quan nhằm thu được cái nhìn tổng quan hay "Big Picture" về yêu cầu của dự án. Từ các buổi nói chuyện nhằm thu nhận các câu trả lời từ các bên liên quan, chúng tôi đã xây dựng được Product Backlog là đầu vào cho các Sprint đầu tiên. Qua mỗi Sprint, Product Backlog được làm mịn và chuyển hóa thành các User Story bao gồm các đầu việc (task) và các tiêu chí chấp nhận (acceptance criteria). Tất cả các đơn vị yêu cầu này đều được quản lý và thể hiện qua Scrum Taskboard nhằm phục vụ nhóm phát triển xây dựng mã nguồn và các đơn vị kiểm thử tương ứng. 63 Chương 4. Phân tích & Thiết kế Hệ thống 4.1. Phân tích hệ thống 4.1.1. Mô tả quy trình nghiệp vụ Quy trình nghiệp vụ chính mà hệ thống được xây dựng để hỗ trợ bao gồm: 1. Quá trình giảng dạy kịch hát dân tộc tại Trường Đại học Sân khấu Điện ảnh HN. 2. Quá trình học tập các loại hình kịch hát dân tộc của sinh viên tại trường. 3. Quá trình tìm kiếm thông tin của những người có quan tâm tới các nội dung dữ liệu đa phương tiện về kịch hát dân tộc. Trong đó bộ môn kịch hát dân tộc bao gồm các tập quán, các hình thức thể hiện, biểu đạt, tri thức, kỹ năng và kèm theo đó là những công cụ, đồ vật, đồ tạp tác và các không gian văn hóa có liên quan mà cộng đồng, các nhóm và trong một số trường hợp là các cá nhân công nhận và xem đó là loại hình văn hóa kịch hát dân tộc. Trong đó Giảng viên là người xây dựng nội dung bài giảng bộ môn kịch hát dân tộc và là người trực tiếp giảng dạy sinh viên tại lớp bằng các phương pháp như: 1. Giảng dạy lý thuyết thông qua nội dung văn bản, nội dung âm thanh, hình ảnh qua các đoạn phim được ghi lại. 2. Giảng dạy thực hành bằng cách biểu diễn diễn mẫu, truyền nghề. 3. Là người đánh giá, chấm điểm sinh viên trong quá trình học môn học. Trong đó Sinh viên là người tiếp thu, thực hành các kiến thức, kỹ năng từ giảng viên bộ môn Kịch hát dân tộc truyền đạt. 4.1.2. Đề xuất quy trình tin học hóa Qua quá trình làm việc với bên thụ hưởng phần mềm là Trường Đại học Sân khấu Điện ảnh Hà Nội, nhóm nghiên cứu thực hiện đề tài khoa học công nghệ đã đề xuất kiến trúc phần mềm nền web được cài đặt trên một hệ thống phân tán bao gồm các chức năng chính sau: 64 4.1.2.1. Chức năng phần mềm chính Chức năng xem một vở diễn ở dạng video 2D Khi chọn chức năng xem một vở diễn ở dạng video 2D, người sử dụng được cung cấp các tiện ích sau: Xem đồng thời video mẫu khác nhau của cùng vở diễn đã chọn: Với tiện ích này, phần mềm sẽ hiển thị đồng thời các video mẫu khác nhau của cùng một vở diễn, cho phép so sánh giữa các người diễn. Xem một vở diễn đồng thời từ các góc quay khác nhau: Với tiện ích này, phần mềm sẽ hiển thị đồng thời các video từ các góc quay khác nhau của cùng một “vai mẫu”. Tiện ích này giúp cho người sử dụng quan sát được người diễn ở các góc nhìn khác nhau, từ đó có được thông tin đầy đủ hơn về “cách diễn” của người đó. Chức năng tìm kiếm trong thư viện video Khi chọn chức năng tìm kiếm trong thư viện video, người sử dụng được cung cấp tiện ích tìm kiếm video theo từ khóa: 1. Người sử dụng nhập từ khóa liên quan đến video cần tìm 2. Phần mềm sẽ hiển thị danh sách các video dựa trên từ khóa nhận được 3. Người sử dụng có thể chọn video muốn xem trong danh sách các video tìm được dựa trên từ khóa được cung cấp. Chức năng lọc, phân loại theo vở diễn, theo diễn viên, theo động tác cơ bản 1. Người sử dụng chọn tiêu chí lọc, phân loại video (theo vở diễn, theo diễn viên, hay theo loại hình động tác cơ bản) 2. Phần mềm sẽ hiển thị danh sách các video dựa trên tùy chọn của người sử dụng 3. Từ danh sách các video được hiển thị, người sử dụng có thể chọn xem một video cụ thể nếu muốn. Chức năng xem vở diễn ở dạng video 3D Phần mềm cung cấp chức năng cho phép người sử dụng chọn xem một vở diễn ở dạng video 3D. Với chức năng này, người sử dụng có thể xem một vở diễn trong không gian ba chiều và có thể chọn xem vở diễn ở các góc nhìn khác nhau. 65 Chức năng xây dựng bài giảng điện tử Khi sử dụng chức năng này, người dùng có thể xây dựng bài giảng điện tử có nội dung đa phương tiện gồm phần chữ (text), hình ảnh, âm thanh. Phần mềm cung cấp các chức năng: 1. Người dùng có thể đưa văn bản vào bài giảng 2. Người dùng có thể chèn dữ liệu video (2D, 3D) vào bài giảng 3. Người dùng có thể thêm, sửa, xóa dữ liệu video, 3D, văn bản vào các bài giảng đã được xây dựng 4.1.2.2. Chức năng phần cứng chính Hệ thống phần mềm được cài đặt trên môi trường phân tán đề xuất bao gồm:  1 máy chủ web Apache Tomcat 9  1 máy chủ cơ sở dữ liệu chạy HĐH Linux, Hệ QT CSDL PostgreSQL  1 máy chủ lưu trữ tập tin FTP File Storage chạy HĐH Linux  Tại các lớp học được trang bị: 1 Desktop Computer hoặc Laptop; 1 Máy chiếu Projector; Hệ thống loa âm thanh 4.2. Các yêu cầu của phần mềm 4.2.1. Định nghĩa các thuật ngữ Nội dung Ý nghĩa Bài giảng Mỗi môn học các các bài giảng tương ứng của các Giảng viên biên soạn bao gồm tập hợp các Nội dung Đa phương tiện được thiết kế để truyền tải tới Học viên. Cấu trúc bài giảng Cấu trúc chương trình học của Môn học của Giảng viên tương ứng. Đăng ký Nội dung 3D chuyển động Đăng ký Nội dung 3D chuyển động Đơn vị cung cấp nội dung Là các đơn vị như Bộ Văn hóa, Thể thao và Du lịch, và các cơ quan liên quan, các đơn vị này cung cấp kho tư liệu về văn hóa phi vật thể được sử dụng làm nội dung chính của hệ thống. 66 Giảng viên Là người biên soạn nội dung Bài giảng, theo dõi việc học của các Học viên. Học viên Là người sử dụng theo dõi các Bài giảng, các Nội dung Đa phương tiện cũng như Nội dung 3D chuyển động trên hệ thống. Loại hình Nghệ thuật biểu diễn Là các hình thức nghệ thuật: Nghệ thuật biểu diễn sử dụng cơ thể, tiếng nói và sự có mặt của chính nghệ sĩ làm phương tiện trình diễn trước công chúng. Môn học Là môn học của một Loại hình Văn hóa Nghệ thuật tương ứng. Người dùng Người dùng là người dùng cuối sử dụng hệ thống, bao gồm: Người quản trị, Giảng viên, học viên. Người quản trị Là người đảm bảo hoạt động của hệ thống được thông suốt, họ thường không tham gia, không sử dụng chức năng ở mức nghiệp vụ ứng dụng. Nhãn nội dung Các Nội dung Đa phương tiện được đánh nhãn phục vụ cho việc tìm kiếm, phân loại. Nội dung Môn học Các giảng viên biên soạn các Nội dung Môn học khác nhau cho từng Môn học tương ứng. Phiên làm việc Một khi Người dùng đăng nhập hệ thống, Người dùng đã tạo ra một Phiên làm việc. Phiên làm việc này kết thúc khi người dùng thực hiện Đăng xuất hệ thống. Quyền người dùng Quyền người dùng đại diện cho đơn vị giới hạn chức năng sử dụng, bao gồm việc được phép/không được phép truy cập vào một trang chức năng. Tài khoản Người dùng Là toàn khoản lưu thông tin, cấu hình liên quan tới Người dùng tương ứng. Vở diễn Người nghệ sĩ biểu diễn một điệu múa, một điệu nhảy truyền thống hay người nghệ sĩ đó đang thực hiện một vở diễn. Dữ liệu 3D chuyển động Dữ liệu thể hiện chuỗi các hành động dữ ra từ Vở diễn. Dữ liệu Đa phương tiện Bao gồm video, file âm thanh, hình ảnh, văn bản, ... được thu lại liên quan tới nội dung văn hóa phi vật thể của dân tộc. Hệ thống 3DRecognization Là hệ thống thực hiện nhiệm vụ trích xuất Dữ liệu 3D chuyển động từ Dữ liệu Đa phương tiện. Khung xương 3D Dữ liệu khung xương của nhân vật đang thực hiện điệu nhảy. Yêu cầu Nội dung 3D chuyển động Là đầu vào của hệ thống 3DRecognization. 67 4.2.2. Tài liệu tham khảo STT Tên tài liệu 1 Bài giảng bộ môn kịch hát dân tộc Trường Đại học Sân khấu Điện ảnh HN 2 Nội dung thông tin từ website: 3 Các bài viết, tiểu luận về bộ môn kịch hát dân tộc cũng như nhóm ngành Văn hoá Nghệ thuật 4.2.3. Các yêu cầu ban đầu  Là phần mềm hỗ trợ giảng dạy cho giảng viên, hỗ trợ học tập cho sinh viên, cho phép giảng dạy và học tập theo hình thức “vai mẫu” thông qua các dữ liệu tích hợp video, âm thanh, hình ảnh, chuyển động 3D, bài giảng dạng văn bản.  Kế thừa kho tư liệu về văn hóa phi vật thể của Bộ Văn hóa, Thể thao và Du lịch, và các cơ quan liên quan. o Hỗ trợ Đơn vị cung cấp nội dung nhận các yêu cầu nội dung, upload Nội dung đa phương tiện theo yêu cầu tương ứng. o Hỗ trợ quá trình nhận dữ liệu và lưu trữ dữ liệu vào hệ thống bằng nhiều hình thức khác nhau như Người dùng chuyển dữ liệu cho bộ phận kỹ thuật của Trường Đại học Sân khấu Điện ảnh, sau đó bộ phận kỹ thuật sẽ tổng hợp vào lưu vào hệ thống hoặc người dùng upload dữ liệu và nhập các thông tin mô tả về tệp dữ liệu, sau đó dữ liệu được kiểm duyệt và hiển thị.  Hệ thống cho phép thể hiện nội dung được xây dựng từ tập Dữ liệu Đa phương tiện bao gồm: Tệp video 2D, video 3D, âm thanh, hình ảnh, và văn bản.  Hệ thống được xây dựng trên nền web (Web-based) và được sử dụng trong môi trường Internet.  Hệ thống cho phép xem và so sánh giữa những vở diễn của các người diễn khác nhau hoặc cùng một vở diễn hoặc người diễn nhưng ở các góc quay khác nhau.  Hệ thống cho phép lọc, tìm kiếm nội dung với các tiêu chí khác nhau như: Người diễn, tên vở diễn, nội dung trong bài giảng,  Hệ thống cho phép phân loại nội dung với các tiêu chí khác nhau như theo: Độ dài, người diễn, tên vở diễn, nội dung trong bài giảng, động tác cơ bản trong vở diễn, ... 68  Hệ thống cho phép thêm, sửa, xóa tài nguyên bao gồm các Dữ liệu Đa phương tiện (Video 2D, video 3D, tệp âm thanh, hình ảnh, văn bản) một cách thuận lợi.  Hệ thống cho phép xây dựng bài giảng điện tử gồm các phần viết lý luận tích hợp với dữ liệu video, âm thanh, hình ảnh cho một số loại hình kịch hát dân tộc  Hệ thống cho phép xây dựng một số dữ liệu chuyển động 3D về một số loại hình kịch hát dân tộc theo hình thức “Vai mẫu”.  Hệ thống cung cấp bộ công cụ tái tạo chuyển động từ các loại hình kịch hát dân tộc, văn hóa phi vật thể trên các mô hình 3D.  Hệ thống cho phép đánh giá, góp ý từ người học đối với các vai diễn mẫu.  Hệ thống cho phép quản lý danh sách học viên tham gia các lớp học.  Hệ thống cho phép phân quyền chức năng đối với các nhóm người dùng cụ thể.  Hệ thống có thể quản trị bởi nhóm người dùng có kiến thức phần mềm cơ bản.  Hệ thống cần đảm bảo tính sẵn sàng của dữ liệu sau nhiều năm hoạt động. 4.2.4. Mô hình phân rã chức năng của hệ thống Các yêu cầu được mô hình hoá theo các khối chức năng, phi chức năng chính bao gồm: Hình 22: KEEP Package Diagram cho yêu cầu chức năng và phi chức năng 69 4.2.5. Yêu cầu Chức năng 4.2.5.1. Người sử dụng hệ thống Bảng 4: Người sử dụng hệ thống 4.2.5.2. User Story Bảng 5: Danh sách User Story ID User Story Mức độ Tác nhân Hành động ST-1 Là một Người dùng (Người quản trị, Giảng viên, Sinh viên, Người dùng ẩn danh) Tôi có thể xem toàn bộ nội dung bao gồm Dữ liệu: Video 2D, video 3D, âm thanh, hình ảnh, văn bản về loại hình kịch hát dân tộc. 10 pts ST-2 Là một Người dùng ẩn danh Tôi có thể đăng nhập hệ thống để sử dụng các chức năng tương ứng với Quyền người dùng hiện tại. 8 pts ST-3 Là một Người dùng đã đăng nhập hệ thống Tôi có thể đăng xuất hệ thống. 8 pts ST-4 Là một Người quản trị Tôi có thể sử dụng các chức năng để theo dõi các log hệ thống, nhận các thông báo lỗi hệ thống, clean tài nguyên hệ thống 5 pts ST-5 Là một Giảng viên Tôi có thể biên soạn bài giảng sử dụng Dữ liệu Đa phương tiện bao gồm: Dữ liệu video 2D, 3D, dữ liệu âm thanh, hình ảnh và dữ liệu dạng văn bản. 10 pts Người sử dụng Mô tả Người quản trị hệ thống (Admin) Là người cán bộ thuộc Phòng Công Nghệ Thông Tin; Trường Đại học Sân khấu Điện ảnh Hà Nội Giảng viên Là giảng viên Trường Đại học Sân khấu Điện ảnh Hà Nội Sinh viên Là sinh viên Trường Đại học Sân khấu Điện ảnh Hà Nội Người dùng ẩn danh Là những người dùng chưa đăng nhập hệ thống Đại diện đơn vị cung cấp nội dung Là đại diện của những Đơn vị cung cấp nội dung 70 ST-6 Là một Người dùng đã đăng nhập hệ thống Tôi có thể upload Dữ liệu và nhập thông tin mô tả về dữ liệu vào hệ thống 8 pts ST-7 Là một Người quản trị Tôi có thể kiểm duyệt Dữ liệu được người dùng lưu vào hệ thống nhưng chưa được hiển thị tới toàn bộ người dùng cuối 5 pts ST-8 Là một Người dùng đã đăng nhập hệ thống Tôi có thể gửi yêu cầu cung cấp Dữ liệu Đa phương tiện phục vụ cho quá trình giảng dạy và học tập 5 pts ST-9 Là một Người dùng thuộc nhóm Đơn vị cung cấp nội dung Tôi có thể nhận các yêu cầu nội dung, upload Nội dung đa phương tiện theo yêu cầu tương ứng. 5 pts ST-10 Là một người dùng đã đăng nhập hệ thống Tôi có thể xem và so sánh giữa những vở diễn của các người diễn khác nhau hoặc các góc quay khác nhau 10 pts ST-11 Là một người dùng đã đăng nhập hệ thống Tôi có thể tìm kiếm nội dung với các tiêu chí khác nhau như: Người diễn, tên vở diễn, nội dung trong bài giảng, 10 pts ST-12 Là một người dùng đã đăng nhập hệ thống Tôi có thể đánh giá, góp ý một chủ đề Kịch hát dân tộc hoặc một nội dung bài giảng 5 pts ST-13 Là một Người dùng đã đăng nhập hệ thống Tôi có thể lọc, phân loại nội dung với các tiêu chí khác nhau như theo: Độ dài, người diễn, tên vở diễn, nội dung trong bài giảng, động tác cơ bản trong vở diễn, ... 10 pts ST-14 Là một Người dùng đã đăng nhập hệ thống Tôi có thể thêm, sửa, xóa nội dung thuộc Quyền người dùng được phép. 10 pts ST-15 Là một Người dùng đã đăng nhập hệ thống Tôi được cung cấp công cụ phần mềm để có thể xem hoặc cấu hình Dữ liệu Chuyển động 3D về một số loại hình kịch hát dân tộc theo hình thức “vai mẫu”. 10 pts 71 4.2.5.3. Các yêu cầu liên quan tới quản lý nội dung giảng dạy, học tập Hình 23: KEEP Package Diagram cho yêu cầu chức năng quản lý nội dung giảng dạy, học tập 4.2.5.4. Các yêu cầu chung của hệ thống Hình 24: KEEP Package Diagram cho yêu cầu chức năng chung của hệ thống 72 4.2.6. Yêu cầu Phi chức năng Các Yêu cầu Phi chức năng (Non-Functional requirements) được sử dụng để nêu rõ tập hợp các yêu cầu chung được định nghĩa thêm ở mức hệ thống, mức nghiệp vụ (Business Level), là những yêu cầu không ở mức chức năng (Functional Level). Hình 25: KEEP Package Diagram cho yêu cầu phi chức năng 73 4.3. Thiết kế hệ thống 4.3.1. Mô hình tổng thể Hệ thống Mô hình tổng thể hệ thống phải được mô tả dưới dạng hình vẽ và có diễn giải đầy đủ với các nội dung của mô hình kiến trúc logic và mô hình kiến trúc vật lý 4.3.1.1. Mô hình kiến trúc logic Mô tả mối quan hệ, luồng trao đổi dữ liệu giữa các phân hệ trong hệ thống và giữa các phân hệ này với các hệ thống bên ngoài như: Hệ thống skda.edu.vn Web Server, và các hệ thống của các Đơn vị cung cấp nội dung (có thể bổ sung sau này). Hình 26: KEEP Component Diagram Người dùng tương tác với hệ thống thông qua giao diện Web 74 Hình 27: Mô hình kiến trúc logic 4.3.1.2. Mô hình kiến trúc vật lý Mô tả các thành phần vật lý có liên quan của hệ thống như máy chủ, máy trạm, kết nối mạng, máy in, thiết bị cầm tay và cách thức tương tác, kết nối giữa các thành phần vật lý này. 75 Hình 28: KEEP Network Diagram Kiến trúc vật lý của hệ thống 4.3.2. Thiết kế chi tiết 4.3.2.1. Tác nhân tham gia Hệ thống (Actor) Hình 29: KEEP Package Diagram cho tác nhân tham gia hệ thống Người quản trị Giảng v iên Sinh v iên Người dùng ẩn danh Đại diện Đơn v ị cung cấp nội dung 76 4.3.2.2. Bảng mô tả chi tiết Use Case Bảng 6: Bảng mô tả chi tiết Use Case Tên Usecase: Mức độ BMT: Tác nhân chính: Tác nhân phụ: Mô tả Usecase: Điều kiện để bắt đầu Usecase: Điều kiện để kết thúc Usecase: Trình tự các sự kiện trong quá trình hoạt động của Usecase: Hoàn cảnh sử dụng thành công cơ bản: Hoàn cảnh sử dụng phụ (thay thế) trong trường hợp không thành công: Hành động liên quan sẽ xảy ra sau khi Usecase kết thúc: Các yêu cầu phi chức năng: Các Biểu đồ mô tả có liên quan đến: Ghi chú: Mức độ BMT theo 3 cấp: Bắt buộc, Mong muốn, Tuỳ chọn 4.3.2.3. Biểu đồ về các trường hợp sử dụng theo ngôn ngữ UML Bao gồm các biểu đồ sau: 1. Biểu đồ Use Case tổng quát và chi tiết 2. Đối với mỗi Usecase, cần mô tả: a. Activity diagram của từng Use Case; riêng đối với các Use Case chỉ có một trường hợp sử dụng thì không cần xây dựng Activity Diagram b. Biểu đồ cộng tác (Collaboration diagram) (tùy chọn) c. Biểu đồ tuần tự (Sequence diagram) (tùy chọn) d. Biểu đồ trạng thái (State diagram) (tùy chọn) 3. Biểu đồ lớp (Class diagram): Nêu các lớp chính của hệ thống và mối quan hệ giữa các lớp này. 4. Biểu đồ gói (Package diagram) (tùy chọn) 5. Biểu đồ thành phần (Component diagram) (tùy chọn) 6. Biểu đồ triển khai (Deployment diagram) (tùy chọn) 77 1. Quản trị Hệ thống Hình 30: KEEP Package Diagram cho các Use Case Quản trị Hệ thống Hiển thị Log hệ thống Gửi cảnh báo Lỗi hệ thống Hiển thị trạng thái Tài nguyên hệ thống Đánh lại chỉ mục Tài nguyên Clean Database Cache Clean Web Servlet Cache Thu gom rác, giải phóng bộ nhớ Cấu hình Tham số Hệ thống Thiết lập Giao diện Người dùng Cấu hình Tích hợp Mạng xã hội KIểm tra Tốc độ Trước v à Sau quá trình Đánh lại Chỉ mục Tạo lỗi Hệ thống v à Theo dõi Phản hồi So sánh Trạng thái Tài nguyên v ới OS commands Kiểm tra RAM trước v à sau Quá trình Thu gom, giải phóng Người quản trị (from Tác nhân tham gia Hệ thống) «invokes» «invokes» «invokes» «invokes» 78 2. Quản lý Quyền người dùng Hình 31: KEEP Package Diagram cho các Use Case Quản lý Quyền người dùng Người quản trị (from Tác nhân tham gia Hệ thống) Thêm, sửa, xóa Quyền người dùng Gán Rule cho từng Quyền người dùng Quản lý Rule Phân quyền Người dùng Phân quyền Trang theo Quyền người dùng Kiểm tra khi thực hiện Xóa, sửa quyền Người dùng Kiểm tra sự thay đổi khi Gán, hủy gán Rule Kiểm tra giới hạn quyền Người dùng khi Sửa, xóa Rule Kiểm tra giới hạn quyền Người dùng sau khi Phân quyền Kiểm tra giới hạn quyền truy cập Trang «invokes» «invokes» «invokes» «invokes» «invokes» 79 3. Quản trị Người dùng a. Quản trị Người dùng diagram Hình 32: KEEP Package Diagram cho các Use Case Quản trị Người dùng Quản trị Người dùng A Hiển thị Thông tin chi tiết Tài khoản Đóng Tài khoản Người dùng Hiển thị các Tạc vụ quá khứ Xóa Người dùng Hiển thị Lịch sử Người dùng Đăng nhập Giảng viên (from Tác nhân tham gia Hệ thống) Người quản trị (from Tác nhân tham gia Hệ thống) Sinh viên (from Tác nhân tham gia Hệ thống) Tạo Tài khoản Người dùng Quản lý Tạc vụ Người dùng Gán thông tin Người dùng cho từng Tạc vụ, Dữ liệu Kiểm thử v ới toàn bộ Tạc v ụ, Dữ liệu «extend» «include» «invokes» «extend» «extend» 80 b. Hiển thị Lịch sử Người dùng Hình 33: TEMP Sequence Diagram cho Use Case Hiển thị Lịch sử Người dùng c. Hiển thị Thông tin chi tiết Tài khoản Hình 34: TEMP Sequence Diagram cho Use Case Hiển thị Thông tin chi tiết Tài khoản :View History retrieveAccountDetails() loadAccountHistory() :Hiển thị Thông tin chi tiết Tài khoản ref Hiển thị Lịch sử Người dùng ref Hiển thị các Môn học đang tham gia 81 d. Hiển thị các Tạc vụ quá khứ Hình 35: TEMP Sequence Diagram cho Use Case Hiển thị các Tạc vụ trong quá khứ e. Xóa Người dùng Hình 36: TEMP Sequence Diagram cho Use Case Xóa Người dùng :View Prev ious Actions loadPreviousActions () loadAccountDetails() :Delete User ref Close Account select Delete User command() retrieveAccountDetails() 82 f. Đóng Tài khoản Người dùng Hình 37: TEMP Sequence Diagram cho Use Case Đóng Tài khoản g. Đăng nhập Hình 38: TEMP Sequence Diagram cho Use Case Đăng nhập CheckOrdersAccountDetails :Close AccountConfirm return confirmation () loadAccountDetails() get confirmation() markAccountClosed() get confirmation() return confirmation () checkForOutstandingOrders() :LoginAcount:Login ValidateUser(String, String) Login() 83 4. Quản lý Thông tin chung Hình 39: KEEP Package Diagram cho các Use Case Quản lý Thông tin chung Người quản trị (from Tác nhân tham gia Hệ thống) Quản lý Đơn v ị cung cấp nội dung Quản lý Chuyên ngành Quản lý Môn học Quản lý Nghệ sĩ Quản lý Nhãn nội dung Quản lý Loại hình Nghệ thuật Quản lý Lớp học Quản lý Học v iên Lớp học Kiểm tra ảnh hưởng sau khi Sửa, xóa Môn học Kiểm tra ảnh hưởng sau khi Sửa, xóa Lớp học «invokes» «invokes» 84 5. Quản lý Dữ liệu Đa phương tiện a. Quản lý Dữ liệu Đa phương tiện_Người quản trị diagram Hình 40: KEEP Package Diagram cho các Use Case Quản lý dữ liệu Đa phương tiện_Người quản trị Người quản trị (from Tác nhân tham gia Hệ thống) Kiểm duyệt Dữ liệu Đa phương tiện Liệt kê Dữ liệu Đa phương tiện Đăng ký Thu thập Dữ liệu Đa phương tiện Lưu v à Quản lý Dữ liệu Đa phương tiện Thêm mới Dữ liệu Đa phương tiện Cập nhật Danh mục Dữ liệu Đa phương tiện Hiển thị Dữ liệu Đa phương tiện Trình diễn Dữ liệu 3D Đánh giá song song nhóm Dữ liệu Đa phương tiện Kiểm tra giới hạn Quyền người dùng v ới Dữ liệu đã/chưa kiểm duyệt Kiểm tra Tính toàn v ẹn, dư thừa Dữ liệu Kiểm tra thay đổi Dữ liệu Khung xương, Dữ liệu Lớp da «trace» «trace» «trace» 85 b. Quản lý Dữ liệu Đa phương tiện_Giảng viên diagram Hình 41: KEEP Package Diagram cho các Use Case Quản lý Dữ liệu Đa phương tiện_Giảng viên Giảng v iên (from Tác nhân tham gia Hệ thống) Kiểm duyệt Dữ liệu Đa phương tiện Liệt kê Dữ liệu Đa phương tiện Đăng ký Thu thập Dữ liệu Đa phương tiện Lưu v à Quản lý Dữ liệu Đa phương tiện Thêm mới Dữ liệu Đa phương tiện Cập nhật Danh mục Dữ liệu Đa phương tiện Hiển thị Dữ liệu Đa phương tiện Trình diễn Dữ liệu 3D Đánh giá song song nhóm Dữ liệu Đa phương tiện Kiểm tra giới hạn Quyền người dùng v ới Dữ liệu đã/chưa kiểm duyệt Kiểm tra Tính toàn v ẹn, dư thừa Dữ liệu Kiểm tra thay đổi Dữ liệu Khung xương, Dữ liệu Lớp da «trace» «trace» «trace» 86 c. Quản lý Dữ liệu Đa phương tiện_Sinh viên diagram Hình 42: KEEP Package Diagram cho các Use Case Quản lý Dữ liệu Đa phương tiện_Sinh viên Kiểm duyệt Dữ liệu Đa phương tiện Liệt kê Dữ liệu Đa phương tiện Đăng ký Thu thập Dữ liệu Đa phương tiện Lưu v à Quản lý Dữ liệu Đa phương tiện Thêm mới Dữ liệu Đa phương tiện Cập nhật Danh mục Dữ liệu Đa phương tiện Hiển thị Dữ liệu Đa phương tiện Trình diễn Dữ liệu 3D Đánh giá song song nhóm Dữ liệu Đa phương tiện Kiểm tra giới hạn Quyền người dùng v ới Dữ liệu đã/chưa kiểm duyệt Kiểm tra Tính toàn v ẹn, dư thừa Dữ liệu Kiểm tra thay đổi Dữ liệu Khung xương, Dữ liệu Lớp da Sinh v iên (from Tác nhân tham gia Hệ thống) «trace» «trace» «trace» 87 6. Quản lý Bài giảng a. Quản lý Bài giảng_Người quản trị diagram Hình 43: KEEP Package Diagram cho các Use Case Quản lý Bài giảng_Người quản trị Biên soạn Nội dung bài giảng Người quản trị (from Tác nhân tham gia Hệ thống) Xây dựng Cấu trúc Bài giảng Cập nhật Nội dung Bài giảng Xóa Nội dung Bài giảng Tìm kiếm Nội dung Bài giảng Đánh giá Nội dung Bài giảng Quản lý Nhóm chuyên gia Quản lý Nhóm người học Phân loại Nội dung Bài giảng Hiển thị Nội dung Bài giảng Kiểm tra ảnh hưởng Xóa Nội dung Bài Giảng Kiểm tra Hiển thị Nội dung Bài giảng Kiểm tra ảnh hưởng thay đổi Cấu trúc Bài giảng Kiểm tra ảnh hưởng Thay đổi Nội dung Bài giảng «trace» «invokes» «trace» «trace» 88 b. Quản lý Bài giảng_Giảng viên diagram Hình 44: KEEP Package Diagram cho các Use Case Quản lý Bài giảng_Giảng viên Biên soạn Nội dung bài giảng Giảng v iên (from Tác nhân tham gia Hệ thống) Xây dựng Cấu trúc Bài giảng Cập nhật Nội dung Bài giảng Xóa Nội dung Bài giảng Tìm kiếm Nội dung Bài giảng Đánh giá Nội dung Bài giảng Quản lý Nhóm chuyên gia Quản lý Nhóm người học Phân loại Nội dung Bài giảng Hiển thị Nội dung Bài giảng Kiểm tra ảnh hưởng Xóa Nội dung Bài Giảng Kiểm tra Hiển thị Nội dung Bài giảng Kiểm tra ảnh hưởng thay đổi Cấu trúc Bài giảng Kiểm tra ảnh hưởng Thay đổi Nội dung Bài giảng «invokes» «trace» «trace» «trace» 89 c. Quản lý Bài giảng_Sinh viên diagram Hình 45: KEEP Package Diagram cho các Use Case Quản lý Bài giảng_Sinh viên Biên soạn Nội dung bài giảng Sinh v iên (from Tác nhân tham gia Hệ thống) Xây dựng Cấu trúc Bài giảng Cập nhật Nội dung Bài giảng Xóa Nội dung Bài giảng Tìm kiếm Nội dung Bài giảng Đánh giá Nội dung Bài giảng Quản lý Nhóm chuyên gia Quản lý Nhóm người học Phân loại Nội dung Bài giảng Hiển thị Nội dung Bài giảng Kiểm tra ảnh hưởng Xóa Nội dung Bài Giảng Kiểm tra Hiển thị Nội dung Bài giảng Kiểm tra ảnh hưởng thay đổi Cấu trúc Bài giảng Kiểm tra ảnh hưởng Thay đổi Nội dung Bài giảng «trace» «trace» «trace» «invokes» 90 d. Biên soạn Nội dung bài giảng Hình 46: TEMP Sequence Diagram cho Use Case Biên soạn Nội dung bài giảng 4.3.3. Thiết kế Cơ sở dữ liệu 4.3.3.1. Mô hình cơ sở dữ liệu Mô tả phương án xây dựng CSDL với các nội dung: Tên CSDL: PostgreSQL_FolkDance Database Sơ đồ mô tả mối quan hệ giữa các bảng: Giảng viên (from Tác nhân tham gia Hệ thống) Màn hình biên soạn Danh sách video 3D, 2D Nội dung Bài giảng LH Adapter loop loop Thêm video 3D() Thêm video 2D() 91 Hình 47: KEEP Class Diagram mô tả mối quan hệ giữa các bảng 92 Các Bảng của CSDL cần đặc tả các thông tin như bảng sau: Tên bảng: [tên bảng] – [Giải thích tên bảng] STT Tên trường Kiểu dữ liệu và kích thước Ràng buộc dữ liệu Ý nghĩa Ghi chú 1..n Khoá chính, khoá ngoại... 4.3.3.2. Giải pháp xây dựng và vận hành CSDL  Mô tả phần mềm quản trị CSDL PostgreSQL  Mô tả giải pháp sao lưu dữ liệu định kỳ; Giải pháp phục hồi CSDL khi có sự cố. 4.3.4. Thiết kế giao diện Mô tả thiết kế các giao diện cơ bản của phần mềm ứng dụng, bao gồm: Giao diện chính, giao diện nhập liệu, giao diện thống kê, báo cáo và giao diện quản trị hệ thống. Chi tiết về các prototype được xây dựng trong quá trình thiết kế giao diện được tôi trình bày tại Phụ lục IV. Danh sách các Prototype 4.4. Tóm lược Nội dung chính của chương này là kết quả của quá trình phân tích, thiết kế hệ thống và xây dựng tài liệu dự án nhằm đạt được các thoả thuận với khách hàng. Công việc xây dựng tài liệu đặc tả yêu cầu người dùng và tài liệu đặc tả yêu cầu hệ thống không phù hợp với hướng tiếp cận vấn đề của Agile tuy nhiên các biểu đồ hệ thống trực quan (KEEPS) thu được sau quá trình này giúp cho việc trao đổi nội bộ cũng như với các bên liên quan trong các cuộc họp, buổi hội thảo trở nên dễ dàng và khoa học. Sau quá trình phân tích hệ thống giai đoạn đầu, tôi đề xuất sử dụng Liferay portal làm nền tảng (platform) của hệ thống quản trị nội dung. Liferay giúp rút ngắn thời gian phát triển và giúp nhóm sớm có được các bản mẫu (prototype) ở Sprint đầu tiên, qua đó giúp nhóm phát triển có được các phản hồi từ khách hàng. 93 KẾT LUẬN Luận văn được xây dựng tập trung vào nghiên cứu các kỹ thuật trong Kỹ nghệ yêu cầu. Cách tiếp cận chúng là khác nhau cho từng phương pháp phát triển phần mềm và trong luận văn tôi tập trung vào phương pháp Agile Scrum. Tôi chọn Scrum vì thực tế đã chứng minh đây là công cụ hiệu quả trong việc đổi mới, sáng tạo, đảm bảo chất lượng sản phẩm và khả năng thành công của dự án. Ngoài ra, lý do chính là phương pháp này đã hệ thống lại một cách hoàn chỉnh quá trình xử lý yêu cầu người dùng và đưa tác nhân người dùng vào làm trọng tâm của quá trình phát triển sản phẩm. Agile Scrum đề cao quá trình phát triển và kiểm thử phần mềm hơn là các công tác liên quan như xây dựng tài liệu dự án cũng là yếu tố để tôi nghiên cứu thêm các phương pháp nhằm tinh gọn công cụ mô hình hoá UML nhằm sử dụng nó hợp lý trong các buổi họp có sự tham gia của người dùng hay các buổi họp chỉ trong nội bộ các thành viên nhóm phát triển. Và kết quả của quá trình xây dựng luận văn được tóm tắt thành các phần như sau: Thứ nhất, tôi nghiên cứu lý thuyết các kỹ nghệ yêu cầu cổ điển trong các mô hình Xã hội – Kỹ thuật (Socio – Technical model) như: USTM, CUSTOM VÀ OSTA cùng với các phương pháp khác như Phương pháp Hệ thống mềm (Soft Systems Methodology), Phương pháp Thiết kế hợp tác (Participatory Design) và phương pháp phát triển phần mềm truyền thống Waterfall. Sau đó, từ thực nghiệm thông qua các dự án Agile tôi đã tham gia, tôi xác định điểm chung của Agile so với phần còn lại từ đó đi tìm câu trả lời vì sao dự án Agile có tỉ lệ thành công cao hơn nhiều so với dự án truyền thống thông qua cách giải quyết của phương pháp này với các vấn đề về tổ chức gặp phải khi áp dụng hệ thống phần mềm hay các vấn đề khi yêu cầu người dùng không rõ ràng cụ thể hoặc phát sinh thay đổi, phát sinh yêu cầu mới trong quá trình phát triển. Thứ hai, tôi nghiên cứu vai trò và trách nhiệm của Chủ sản phẩm (Product Owner), quá trình mà họ làm việc cùng các Bên liên quan, cũng như các thành viên trong nhóm phát triển, và cách họ quản lý vòng đời của một yêu cầu người dùng đi từ các Epic, các Product Backlog sau đó được làm mịn dần qua từng Sprint để chuyển hoá thành các đầu việc, là đầu vào cho quá trình coding và xây dựng test case. Thứ ba, để trình bày một chức năng hay một vấn đề của hệ thống một cách khoa học không thể chỉ sử dụng Prototype và Mockup và quá trình xây dựng tài liệu dự án dù không là yếu 94 tố quan trọng trong Agile nhưng vẫn cần thiết cho quá trình nghiệm thu hoặc quá trình bảo trị hệ thống. Vì vậy tôi đã nghiên cứu hướng áp dụng phù hợp kỹ thuật mô hình hoá UML vào các buổi họp với khác hàng cũng như các cuộc họp nội bộ giữa các thành viên trong đội dự án, các sơ đồ UML được chia làm 2 nhóm KEEPs và TEMPs với mục tiêu là tối thiểu hoá, chỉ sử dụng những sơ đồ cần thiết nhất. Tôi đã áp dụng kiến thức này vào việc xây dựng Bản đặc tả yêu cầu người dùng và Bản đặc tả yêu cầu hệ thống của Phần mềm Giảng dạy Kịch hát dân tộc Trường Đại học Sân khấu Điện ảnh. Thứ tư, trong các UML Diagram, các phần tử có thể thừa kế hay nói cách khác các phần tử trong các Diagram có mối quan hệ với nhau và để đảm bảo các phần tử này được quản lý một cách hướng đối tượng và có thể sử dụng lại được, tôi đề xuất sử dụng công cụ Enterprise Architecture – EA. Ngoài ra EA đặc biệt nên dùng với các dự án phức tạp và các vấn để được trình bày qua nhiều các cuộc họp giữa các bên yêu cầu các Diagram cần thay đổi và chia sẻ xuyên suốt quá trình thực hiện dự án. Thứ năm, nắm vững kiến thức về Liferay Portal và vận dụng framework này làm nền tảng để hiện thực các yêu cầu chức năng liên quan tới quản trị nội dung trong dự án E-Learning. Điều này giúp nhóm nghiên cứu tập trung vào các bài toán xây dựng vai mẫu 3D và các vấn đề liên quan. 95 DANH MỤC TÀI LIỆU THAM KHẢO 1. Bill Opdyke, Dennis Mancl, Steve Fraser (2010), “Architecture in an Agile world, 2010”, SPLASH workshop 2. Craig Larman (2007), “Applying UML and Patterns: An Introduction to Object- Oriented Analysis and Design and Iterative Development” 3. Jack Reeves (1992), “What is Software Design?” 4. Kenji Hiranabe (2015), “Modeling in the Agile age”, Change Vision, Inc 5. Lee Ackerman (2011), “Agile Modeling: Enhancing Communication and Understanding” 6. Martin Fehrenbach, "A Survey on Requirements Elicitation" 7. Martin Fowler (2004), “Is Design Dead?” 8. Martin Fowler (1997), “The Almighty Thud” 9. Scott Ambler (2002), “Agile Modeling”, John Wiley & Sons Ltd. 10. Steve McConnell (1996), Rapid Development 11. Roman Pichler (2016), “Epics and Ready Stories” 12. Roman Pichler (2016), “User Story Modelling” 13. Roman Pichler (2016), “User Stories or Use Cases?” 96 PHỤ LỤC Phụ lục I. Bộ câu hỏi phỏng vấn các bên liên quan (Q&A) Cán bộ quản lý khoa Kịch hát dân tộc Q: Hiện tại trường đang đào tạo các loại hình Sân khấu truyền thống nào? A: Sân khấu, Kịch hát dân tộc, Múa, Tuồng, Chèo, Cải lương Q: Từ trước tới nay, nhà trường đã áp dụng CNTT vào các công tác đào tạo chưa? A: Từ năm 2012 đến nay, Viện Sân khấu - Điện ảnh thuộc Trường ĐH Sân khấu & Điện ảnh Hà Nội đã thực hiện ghi hình (file mẫu) trong các trích đoạn sân khấu truyền thống, với sự trình diễn của các nghệ nhân, nghệ sĩ tài danh để đưa vào giảng dạy cho sinh viên ngành kịch hát dân tộc của nhà trường. Tiến trình ghi hình diễn ra tại cả ba miền ở nước ta với cả ba thể loại: Chèo, tuồng, cải lương. Đến nay, nhiều trích đoạn sân khấu đã được ghi hình thành công với những vai mẫu quen thuộc của nghệ thuật chèo truyền thống như Thị Mầu, Thị Kính, Lưu Bình - Dương Lễ, Châu Long... Q: Phần mềm giảng dạy có áp dụng cho toàn bộ các khoa không? A: Chỉ áp dụng cho khoa Kịch hát dân tộc, các khoa khác không áp dụng hệ thống này. Q: Các loại hình đó có bao nhiêu giảng viên giảng dạy, truyền nghề? Tổng bao gồm 22 người cho bộ môn Nghệ thuật sân khấu bao gồm: Giảng viên cơ hữu có khoảng 10 người; Giảng viên thỉnh giảng có hơn 10 người có phương pháp giảng dạy tương tự Giảng viên cơ hữu. Q: Các loại hình đó có bao nhiêu sinh viên theo học? A: Mỗi khoá học có 4 năm học, trung bình mỗi năm có 25 học sinh cho chuyên ngành chèo, cải lương. Từ năm 2017, chèo tăng thêm 50 sinh viên, cải lương tăng thêm 40 sinh viên. Q: Cơ sở vật chất trong lớp học bao gồm những gì? 97 A: Nhà trường có trang bị Wifi nhưng độ ổn định không cao. Hiện tại ở các lớp học (Sân khấu) chỉ trang bị: Kho quần áo, phục trang, đạo cụ, cảnh trí, sân khấu riêng, màn hình, đầu video. Nhà trường sẵn sàng trang bị máy tính và các thiết bị cần thiết để sử dụng phần mềm. Q: Hệ thống có xây dựng nhằm hỗ trợ cho việc học tại nhà của sinh viên không? A: Cần hỗ trợ cả việc học tại trường và tại nhà. Q: Phần mềm có có phần vào việc đánh giá quá trình học tập của sinh viên không? Nếu có sẽ dựa trên những tiêu chí nào? A: Giáo viên đánh giá và chấm điểm thông qua các vai diễn trực tiếp và vẫn theo cách đánh giá cũ. Chắc chắn sẽ không sử dụng phần mềm này trong quá trình đánh giá. Q: Kỹ năng sử dụng phần mềm của các thầy cô có đồng đều không, có bao nhiêu người không thể sử dụng phần mềm? A: Cần có các buổi đào tạo, hướng dẫn sử dụng phần mềm vì kỹ năng CNTT của giảng viên không đồng đều, có nhiều giảng viên lớn tuổi. Q: Có bắt buộc sử dụng phần mềm này trong quá trình giảng dạy và học tập không? A: Không bắt buộc, chỉ được xem là một công cụ phục vụ cho quá trình giảng dạy và học tập. Q: Phần mềm có nhằm hỗ trợ Giảng viên biên soạn bài giảng không? A: Có hỗ trợ. Q: Phần mềm cần xây dựng bộ dữ liệu: Video, âm thanh, hình ảnh, tài liệu để sử dụng vào quá trình xây dựng Bài giảng, vậy dữ liệu được upload khi nào? A: Cần hỗ trợ giảng viên upload trực tiếp hoặc Giảng viên làm việc với phòng CNTT của khoa. Q: Hệ thống có xây dựng chức năng như một trang tin, blog phục vụ Giảng viên, Sinh viên đăng các tin bài liên quan tới việc học không? 98 A: Có, mục đích tạo ra hệ thống không chỉ cho việc dạy và học mà góp phần bản tồn văn hoá, truyền bá rộng rãi. Phần mềm sẽ cần liên kết với hệ thống website của trường cũng như các đơn vị khác. Giảng viên Khoa kịch hát dân tộc Q: Thầy, cô đang giảng dạy những môn nào? Loại hình nghệ thuật nào? Q: Mỗi buổi học thường diễn ra bao lâu? A: 1 đến 4 tiết học trong một buổi. Q: Loại hình Thầy, Cô đang giảng dạy có những vai diễn nào? Vở diễn nào? Có tư liệu về những vai diễn đó không? Q: Những vai diễn Thầy, Cô giảng dạy có nhiều diễn viên thể hiện không? Diễn viên nào là tiêu biểu nhất? A: Có nhiều diễn viên, trung bình có 3 diễn viên cho một vai mẫu. Q: Các vai mẫu nào điển hình có trong giáo trình đào tạo? A: Thị Mầu, Thị Kính, Lưu Bình - Dương Lễ, Châu Long, Mẹ mõ lý trưởng, Q: Thầy, Cô đang giảng dạy các vai diễn đó cho sinh viên như thế nào? A: Dạy sinh viên lý thuyết; Biểu diễn mẫu các nhân vật vai mẫu; Phân nhóm sinh viên và yêu cầu nhóm tự biểu diễn; Có thể quay video về nhà xem; Sinh viên trả bài ở các buổi tiếp theo. Q: Cách giảng dạy đó có thuận lợi gì và khó khăn gì? A: Thuận lợi là sinh viên được lên lớp và trực tiếp học cách biểu diễn của giảng viên. Khó khăn như thiếu trang thiết bị phục vụ học tập; Đội ngũ giảng viên dạy chuyên môn là những nghệ sĩ thực sự có tài năng thì hiếm hoi; Phương pháp truyền nghề theo vai mẫu thiếu khoa học, thiếu “chất lửa” nghề nghiệp; Những yếu tố này đã phần nào làm cho học sinh hụt hẫng, khiếm khuyết về kiến thức và sinh ra những vai diễn “bản sao” của thầy, nghèo nàn, cứng nhắc, thiếu cái riêng, độc đáo. 99 Q: Sử dụng phần mềm để xây dựng toàn bộ bài giảng của môn học có đáp ứng đầy đủ nội dung muốn truyền tải không? A: Đáp ứng được nếu thể hiện được đầy đủ sắc thái của diễn viên ở nhiều góc độ. Ví dụ: Thể hiện được sắc thái của ánh mắt, khuôn mặc, dáng đi, điệu bộ, cử chỉ, Q: Thay vì biểu diễn trực tiếp, hoặc trình chiếu video của các Nghệ sĩ tới sinh viên, việc sử dụng nhân vật vai mẫu 3D có mang lại hiệu quả giảng dạy cao hơn không? A: Cần hỗ trợ song song, mang đến cho người học càng nhiều cách tiếp cận càng tốt. Sinh viên Q: Bạn đang học cách diễn của các Nghệ sĩ như thế nào? Q: Cách học đó có hiệu quả và dễ tiếp thu không? Q: Với cách học cũ bạn đang gặp khó khăn gì? A: Chỉ được theo dõi giảng viên biểu diễn khi lên lớp; Góc nhìn nhân vật hạn chế nên khó theo dõi toàn bộ động tác, cử chỉ, ánh mắt Q: Hệ thống phần mềm mới sẽ cho phép bạn so sánh giữa các người diễn khác nhau, các động tác tiêu biểu của người diễn. Theo bạn giao diện người dùng cho chức năng này nên trình bày như thế nào? Q: Bạn có thường xem video, youtube phục vụ cho quá trình học không? Q: Bạn tìm tài liệu học tập qua kênh nào? Việc tìm kiếm có dễ dàng không? Q: Hệ thống sẽ cho phép bạn tìm kiếm vai diễn mẫu theo thể loại, nhân vật mẫu, vai diễn dưới dạng 2D và 3D bạn thấy thế nào? Q: Hệ thống cho phép lọc, phân loại nội dung với các tiêu chí khác nhau như theo: độ dài, theo người diễn, tên vở diễn, động tác cơ bản, nội dung trong bài giảng, ...; bạn thấy thế nào? Q: Bạn mong muốn có những nguồn dữ liệu, thông tin nào trong quá trình học? 100 Q: Cách học các vai diễn như thế nào là hiệu quả đối với bạn? Q: Bạn có muốn một thư viện dữ liệu đa phương tiện giúp bạn có thể so sánh các vai diễn của các Nghệ sĩ khác nhau không? Q: Nếu sử dụng HTTT để đánh giá quá trình học tập của bạn, bạn nghĩ như thế nào về điều đó? Q: Các bạn mong muốn tích hợp hệ thống với mạng xã hội như Facebook, Twitter để cá nhân hoá nội dung, hoặc xây dựng blog cá nhân không? Ban lãnh đạo nhà trường ĐH Sân khấu Điện ảnh Q: Nếu có một HTTT mới, quá trình Đào tạo có thể thay đổi, áp dụng không? A: Có, nhà trường muốn đa dạng cách học tập cho sinh viên, đổi mới cách giảng dạy của giảng viên cho phù hợp với thực tiễn xã hội Nhân viên Phòng CNTT Q: Nhà trường hiện có những hệ thống phần mềm nào? Hệ thống bao gồm những thiết bị gì? A: Chỉ có website của nhà trường. 101 Phụ lục II. Danh sách các Epic 1. Epic: Người dùng cần một phần mềm hỗ trợ cho việc giảng dạy và học tập 102 2. Phần mềm cần kế thừa kho dữ liệu của các đơn vị liên quan 3. Áp dụng công nghệ 3D vào việc học, giảng dạy 103 4. Phân nhóm người dùng với các chức năng khác nhau 5. Phần mềm phục vụ mọi người quan tâm tới Kịch hát dân tộc và có thể sử dụng trên nhiều thiết thiết bị 104 6. Người dùng muốn đăng tin bài, thảo luận về các nội dung Văn hoá Nghệ thuật 7. Phần mềm cần có tài liệu kỹ thuật và hướng dẫn sử dụng 105 Phụ lục III. Danh sách các User Story 1. LÀ MỘT người dùng, TÔI MUỐN xem vở diễn 2D 2. LÀ MỘT người dùng, TÔI MUỐN xem đồng thời các video mẫu khác nhau của cùng một vở diễn đã chọn ĐỂ tôi so sánh giữa các người diễn với nhau 106 3. LÀ MỘT người dùng, TÔI MUỐN xem một vở diễn ở các góc quay khác nhau ĐỂ tôi quan sát người diễn ở các góc quay khác nhau 4. LÀ MỘT người dùng, TÔI MUỐN sử dụng toàn bộ dữ liệu văn hóa phi vật thể của Bộ Văn Hóa, Thể Thao và Du Lịch và các cơ quan liên quan ĐỂ phục vụ cho việc học, nghiên cứu 107 5. LÀ MỘT người dùng, TÔI MUỐN tìm kiếm các nội dung đa phương tiện 6. LÀ MỘT người dùng, TÔI MUỐN lọc các nội dung đa phương tiện theo các "vai mẫu", theo diễn viên, theo loại hình động tác cơ bản 108 7. LÀ MỘT người dùng, TÔI MUỐN phân loại các nội dung đa phương tiện theo các "vai mẫu", theo diễn viên, theo loại hình động tác cơ bản 8. LÀ MỘT người dùng, TÔI MUỐN xem vở diễn ở dạng 3D ĐỂ chọn xem vở diễn ở các góc nhìn khác nhau 109 9. LÀ MỘT người dùng đã xác thực, TÔI MUỐN làm việc với những chức năng phù hợp với vai trò của mình 10. LÀ MỘT người dùng đã xác thực, TÔI MUỐN lưu vết những thông tin của các lần sử dụng trước đó 110 11. LÀ MỘT giảng viên hoặc sinh viên, TÔI MUỐN đăng các blog có nội dung về Kịch hát dân tộc 12. LÀ MỘT giảng viên hoặc sinh viên, TÔI MUỐN góp ý kiến cá nhân cho các blog tôi quan tâm 111 13. LÀ MỘT giảng viên, TÔI MUỐN biên soạn bài giảng sử dụng các nội dung đa phương tiện về Kịch hát dân tộc 112 Phụ lục IV. Danh sách các Prototype 1. Màn hình Đăng nhập 2. Màn hình Quản lý Quyền người dùng 113 3. Màn hình Cập nhật Người dùng 4. Màn hình Tạo mới Trang 114 5. Màn hình Upload Dữ liệu đa phương tiện 6. Màn hình Quản lý Dữ liệu đa phương tiện 115 7. Màn hình Soạn thảo Bài giảng chế độ trực quan 8. Màn hình Soạn thảo Bài giảng chế độ HTML 116 9. Màn hình Hiển thị Bài giảng 10. Màn hình Tìm kiếm 117 11. Màn hình Hiển thị vai mẫu 3D 12. Màn hình Quản trị hệ thống

Các file đính kèm theo tài liệu này:

  • pdfluan_van_thiet_ke_xay_dung_he_thong_phan_mem_giang_day_kich.pdf
Luận văn liên quan