Technology information sharing system faculty of high quality training graduations thesis of the information technology

147 3 0
Technology information sharing system   faculty of high quality training graduations thesis of the information technology

Đ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

CONTENTS CHAPTER INTRODUCTION 1.1 Problem 1.2 Current situation 1.3 Proposed solution 1.3.1 Purpose 1.3.2 Research object 1.3.3 Scope CHAPTER 2.1 TECHNOLOGIES Overview of ASP.NET Core 2.1.1 Introduction to ASP.NET Core 2.1.2 Features 2.1.3 Introduction to Web APIs in ASP.NET Core 2.1.4 Advantages of Asp.NET Core 2.1.5 ASP.NET Core in Project 2.2 Angular Framework 2.2.1 Introduction to Angular 2.2.2 Angular concepts 2.3 ASP.NET Core Identity 2.3.1 Introdution to Identity Server 2.3.2 Identity Server in Project CHAPTER 3.1 REQUIREMENTS User requirements 3.1.1 Main functions 3.1.1.1 Unauthenticated User’s functions: 3.1.1.2 Authenticated User’s functions 3.1.1.3 Manager’s functions 3.1.1.4 Admin’s functions iii | P a g e 3.2 System requirements 3.2.1 Actors 3.2.1.1 Table of the main functions of the actor 3.2.1.2 Usecase structure 11 3.2.2 Usecase Diagram 14 3.2.3 Usecase Description 15 3.2.3.1 Functional requirements of “Unauthenticated User” 15 3.2.3.1.1 Use case “Register Account” 15 3.2.3.1.2 Usecase “Login” 17 3.2.3.1.3 Use case “Search Post” 19 3.2.3.1.4 Use case “View Detail Post” 20 3.2.3.2 Functional requirement of “Authenticated User” 21 3.2.3.2.1 Use case “Create Post” 21 3.2.3.2.2 Use case “Vote Post” 23 3.2.3.2.3 Use case “Report Post” 24 3.2.3.2.4 Use case “Edit Personal Post” 26 3.2.3.2.5 Use case “Comment Post” 27 3.2.3.2.6 Use case “Reply Comment” 29 3.2.3.2.7 Use case “Edit Personal Information” 31 3.2.3.3 Functional requirements of “Manager” manage post 32 3.2.3.3.1 Use case “View List Post” 32 3.2.3.3.2 Use case “Update Post” 33 3.2.3.3.3 Use case “Delete Post” 35 3.2.3.4 Functional requirements of “Manager” manage report 36 3.2.3.4.1 Use case “View List Reports” 36 3.2.3.4.2 Use case “Delete Report” 37 3.2.3.5 Functional requirements of “Manager” manage statistic 39 3.2.3.5.1 Use case “Statistic new account monthly” 39 3.2.3.5.2 Use case “Statistic comment monthly” 40 iv | P a g e 3.2.3.5.3 Use case “Statistic new post monthly” 41 3.2.3.6 Functional requirements of “Manager” manage comment 43 3.2.3.6.1 Use case “View List Comment” 43 3.2.3.6.2 Use case “View Details Comment” 44 3.2.3.6.3 Use case “Delete Comment” 46 3.2.3.7 Functional requirements of “Manager” manage roles 48 3.2.3.7.1 Use case “Manage roles” 48 3.2.3.7.1.1 Use case “Create Role” 48 3.2.3.7.1.2 Use case “Update Role” 49 3.2.3.7.1.3 Use case “Delete Role” 51 3.2.3.7.2 Use case “Set function for role” 52 3.2.3.8 Functional requirements of “Manager” manage categories 54 3.2.3.8.1 Use case “Create Category” 54 3.2.3.8.2 Use case “Update Category” 56 3.2.3.8.3 Use case “Delete Category” 58 3.2.3.9 Functional requirements of “Manager” manage user 59 3.2.3.9.1 Use case “Set role for user” 59 3.2.3.9.1.1 Use case “Add Role” 59 3.2.3.9.1.2 Use case “Delete Role” 61 3.2.3.9.2 Use case “Create User” 63 3.2.3.9.3 Use case “Edit User” 65 3.2.3.9.4 Use case “Delete User” 67 3.2.4 Non-functional requirements 68 3.2.4.1 Usability of website 68 3.2.4.2 Reliability of website 68 3.2.4.3 Availability of website 68 3.2.4.4 Security of website 68 3.2.4.5 Durability of website 69 3.2.4.6 Ability of website 69 v|Page 3.2.5 Entity-Relationship Diagram (ERD) 69 CHAPTER SYSTEM DESIGN & IMPLEMENTATION 70 4.1 System architecture 70 4.2 Activity Diagram 72 4.2.1 Search Post 72 4.2.2 Vote Post 73 4.3 Class Diagram 74 4.3.1 Class diagram 74 4.3.2 Class diagram description 74 4.3.2.1 Class “ActivityLog” 74 4.3.2.2 Class “Attachment” 75 4.3.2.3 Class “Category” 75 4.3.2.4 Class “Command” 75 4.3.2.5 Class “Comment” 76 4.3.2.6 Class “Function” 76 4.3.2.7 Class “KnowledgeBase” 76 4.3.2.8 Class “Label” 77 4.3.2.9 Class “Permission” 78 4.3.2.10 Class “Report” 78 4.3.2.11 Class “User” 78 4.3.2.12 Class “Vote” 79 4.4 4.4.1 Database Diagram 79 4.5 Physical diagram 79 Sequence Diagram 81 4.5.1 Register 81 4.5.2 Login 82 4.5.3 Create new post 83 4.6 4.6.1 State Machine Diagram 84 Login 84 vi | P a g e 4.7 Component Diagram 85 4.7.1 4.8 Backend server api 85 User interface 87 4.8.1 End-user Website 87 4.8.1.1 SCU001 UHomePage Screen 89 4.8.1.2 SCU002 Login Screen 90 4.8.1.3 SCU006 Post Details Screen 92 4.8.1.4 SCU007 Create New Post Screen 94 4.8.1.5 SCU008 Personal Post Screen 96 4.8.1.6 SCU009 Profile Screen 97 4.8.2 Admin Website 98 4.8.2.1 SCA001 Login Screen 100 4.8.2.2 SCA002 HomePage Screen 102 4.8.2.3 SCA003 Manage Posts categories Screen 103 4.8.2.4 SCA004 Manage Posts Screen 105 4.8.2.5 SCA005 Manage comments Screen 106 4.8.2.6 SCA006 Bad news management Screen 107 4.8.2.7 SCA007 Registration information each month Screen 108 4.8.2.8 SCA008 Information posts per month Screen 109 4.8.2.9 SCA009 Information monthly comment Screen 110 4.8.2.10 SCA010 Manage functions Screen 111 4.8.2.11 SCA011 Authority management Screen 113 4.8.2.12 SCA012 Manage permissions groups Screen 114 4.8.2.13 SCA013 User management Screen 115 4.9 Implementation development environment 116 4.9.1 Software process 116 4.9.2 Tools in Project 117 4.9.3 Technologies in Project 117 CHAPTER SYSTEM TESTING 119 vii | P a g e 5.1 5.1.1 Test Plan 119 5.2 Test Scenarios 119 Testcases & test results 120 5.2.1 Unauthenticated user - Login 120 5.2.2 Authorized user - Create post 122 5.2.3 Manager - Update post 127 5.2.4 Admin - Add an user 130 CHAPTER CONCLUSION 134 6.1 Result 134 6.2 Advantage 134 6.3 Disadvantage 134 6.4 Future plan 134 REFERENCES 135 viii | P a g e LIST OF ACRONYMS TISS: Technology Information Sharing System Uhomepage: Unauthenticated user homepage Ahomepage: Authenticated user homepage ix | P a g e LIST TABLES Table 3.1 - Unauthenticated User’s functions Table 3.2 - Authenticated User’s functions Table 3.3 - Manager’s functions Table 3.4 - Admin’s functions Table 3.5 - The main functions of the actor 11 Table 3.6 - Usecase structure 13 Table 3.7 - Usecase “Register Account” 16 Table 3.8 - Use case “Login” 18 Table 3.9 - Use case “Search Post” 20 Table 3.10 - Use case “View Detail Post” 21 Table 3.11 - Use case “Create Post” 23 Table 3.12 - Use case “Vote Post” 24 Table 3.13 - Use case “Report Post” 26 Table 3.14 - Use case “Edit Personal Post” 27 Table 3.15 - Use case “Comment Post” 29 Table 3.16 - Use case “Reply Comment” 30 Table 3.17 - Use case “Edit Personal Information” 32 Table 3.18 - Use case “View List Post” 33 Table 3.19 - Use case “Update Post” 35 Table 3.20 - Use case “Delete Post” 36 Table 3.21 - Use case “View List Reports” 37 Table 3.22 - Use case “Delete Report” 39 Table 3.23 - Use case “Statistic new account monthly” 40 Table 3.24 - Use case “Statistic comment monthly” 41 Table 3.25 - Use case “Statistic new post monthly” 42 Table 3.26 - Use case “View List Comments” 44 Table 3.27 - Use case “View Details Comment” 45 Table 3.28 - Use case “ Delete Comment” 47 Table 3.29 - Use case “Create Role” 49 Table 3.30 - Usecase “Update Role” 51 Table 3.31 - Use case “Delete Role” 52 Table 3.32 - Use case “Set function for role” 54 Table 3.33 - Use case “Create Category” 56 Table 3.34 - Use case “Update Category” 57 Table 3.35 - Use case “Delete Category” 59 x|Page Table 3.36 - Use case “Add Role” 61 Table 3.37 - Use case “Delete Role” 63 Table 3.38 - Use case “Create user” 65 Table 3.39 - Use case “Edit user” 66 Table 3.40 - Use case “Delete user” 68 Table 4.1 - Class “ActivityLog” description 75 Table 4.2 - Class “Attechment” description 75 Table 4.3 - Class “Category” description 75 Table 4.4 - Class “Command” description 76 Table 4.5 - Class “Comment” description 76 Table 4.6 - Class “Funtion” description 76 Table 4.7 - Class “KnowledgeBase” description 77 Table 4.8 - Class “Label” description 77 Table 4.9 - Class “Permission” description 78 Table 4.10 - Class “Report” description 78 Table 4.11 - Class “User” description 79 Table 4.12 - Class “Vote” description 79 Table 4.13 - Physical diagram description 80 Table 4.14 - Component of backend server api description 86 Table 4.15 - Interface specification for Unauthenticated user and Authenticated user 88 Table 4.16 - Description of UHomePage Screen 90 Table 4.17 - Description of Login Screen 91 Table 4.18 - Description of Post Details Screen 93 Table 4.19 - Description of Create New Post Screen 96 Table 4.20 - Description of Personal Post Screen 97 Table 4.21 - Description of Profile Screen 97 Table 4.22 - Interface specification for Admin 100 Table 4.23 - Description of Login Screen 101 Table 4.24 - Description of HomePage Screen 103 Table 4.25 - Description of Manage Posts categories Screen 105 Table 4.26 - Description of Manage Posts Screen 106 Table 4.27 - Description of Manage comments Screen 107 Table 4.28 - Description of Bad news management Screen 108 Table 4.29 - Description of Registration information each month Screen 109 Table 4.30 - Description of Information posts per month Screen 110 Table 4.31 - Description of Information monthly comment Screen 111 Table 4.32 - Description of Manage functions Screen 112 xi | P a g e Table 4.33 - Description of Authority management Screen 113 Table 4.34 - Description of Manage permissions groups Screen 114 Table 4.35 - Description of User management Screen 115 Table 4.36 - Tools using for project 117 Table 4.37 - Technologies using for project 118 Table 5.1 - Test Scenarios 119 Table 5.2 - Test results of Login function 121 Table 5.3 - Test results of Create post function 125 Table 5.4 - Test results of Update post function 129 Table 5.5 - Test results of Add a user function 132 xii | P a g e Table 5.2 - Test results of Login function Figure 5.1 - Expected & Actual result of TC_LI_01 Figure 5.2 - Expected & Actual result of TC_LI_02 121 | P a g e Figure 5.3 - Expected & Actual result of TC_LI_03 5.2.2 Authorized user - Create post ID Description Test steps Test data TC_CK _01 Test response of the website when user enters all the information and enters the correct confirmation code Click “Đăng Step 2: “Danh mới” button mục”= “Angular” Pick “Danh mục” Step 3: “Tiêu Enter “Tiêu đề” đề” = “Giải input đáp thắc măc Enter “Mô tả ” Angular” Expected Result Actual Status Result A Post has As added to the expect system and ed displayed to all the people same view Pass Enter “Môi Step 4: “Môi trường” input trường”= Enter “Vấn đề” “Visual Studio code” input tái Step 7: “Vấn đề” = “Mọi người cho em Enter “Thông báo Enter “Cách hiện” input 122 | P a g e lỗi” input Enter “Cách sửa nhanh” input Enter “Giải pháp” input Enter “Thêm đính kèm” (Confirmation code) Click “Đăng bài” button hỏi khác AngularJS Angular Em tìm kiếm internet có nhiều nguồn thơng tin em khơng biết có xác không ạ” Step 8: “Cách tái hiện” = “Không” Step 9: “Thông báo lỗi” =”Không” Step 10: “Cách sửa nhanh” = “Không” Step 11: “Giải pháp” = “Không” Step “Thêm kèm” 12: đính = 123 | P a g e “6TP8” TC_CK _02 Test response of the website when user enters all the information and enters the incorrect confirmation code Click “Đăng Step 2: “Danh mới” button mục”= “Angular” Pick “Danh mục” Step 3: “Tiêu Enter “Tiêu đề” đề” = “Giải input đáp thắc măc Enter “Mô tả ” Angular” Errors appear As of the screen expect “Mã xác nhận ed không đúng” Pass Enter “Môi Step 4: “Môi trường” input trường”= Enter “Vấn đề” “Angular” input Enter “Cách hiện” input tái Enter “Thông báo lỗi” input Enter “Cách sửa nhanh” input Enter “Giải pháp” input Enter “Thêm đính kèm” (Confirmation code) Click “Đăng bài” Step 7: “Vấn đề” = “Mọi người cho em hỏi khác AngularJS Angular Em tìm kiếm internet có nhiều nguồn thơng tin em khơng biết có xác khơng ạ” 124 | P a g e button Step 8: “Cách tái hiện” = “Không” Step 9: “Thông báo lỗi” =”Không” Step 10: “Cách sửa nhanh” = “Không” Step 11: “Giải pháp” = “Khơng” Step 12: “Thêm đính kèm” = “6TP9” Table 5.3 - Test results of Create post function 125 | P a g e Figure 5.4 - Expected & Actual result of TC_CK_01 Figure 5.5 - Expected & Actual result of TC_CK_02 126 | P a g e 5.2.3 Manager - Update post ID Description Test steps TC_U K_01 Test response of the website when when user leaves one of the fields blank (User can enter new information or update information want to change) Click “Sửa” post in the “Bài viết” page of the “Nội dung” category in the menu on the left side of the screen Pick “Danh mục” Enter “Tiêu đề” input Leave Enter “Mô tả” input Enter “Môi trường” input Enter “Vấn đề” input Enter “Các bước để tái hiện” input Enter “Lỗi” input Enter “Sửa nhanh” input Enter “Chú ý” input Enter “Nhãn” input Pick “Đính kèm” Cick “Lưu lại” button Expected Result Step 2: Danh Information mục = “lập has not saved trình” Step 3: Tiêu đề = “Giải đáp thắc mắc ngôn ngữ lập trình C#” Step 4: Mơi trường = “Windows” Step 5: Vấn đề = “Các anh chị có nhiều kinh nghiệm lĩnh vực C# cho em hỏi khác override overload ạ” Step 6: Các bước để tái = “Không” Step 7: Lỗi = “Không” Step 8: Sửa nhanh = Test data Actual Result As expected Status Pass 127 | P a g e TC_U K_02 Test response of the website when user does not leave the data field blank Click “Sửa” post in the “Bài đăng” page of the “Nội dung” category in the menu on the left side of the screen Pick “Danh mục” Enter “Tiêu đề” input Enter “Mô tả” input Enter “Môi trường” input Enter “Vấn đề” input Enter “Các bước để tái hiện” input Enter “Lỗi” input Enter “Sửa nhanh” input Enter “Chú ý” input “Không” Step 9: Chú ý = “Không” Step 9: Nhãn =“Giaidaptha cmacveC#” Step 10: Đính kèm = “c#image.jpg ” Step 2: Danh mục = “lập trình” Step 3: Tiêu đề = “Giải đáp thắc mắc ngơn ngữ lập trình C#” Step 4: “Mơ tả” = “Thơng tin tìm hiểu từ nhiều nguồn chưa giải thích rõ câu trả lời” Website message green nhật công” shows As on the expected “Cập thành Pass Step 5: Môi trường = “C#” Step 6: Vấn đề = “Các anh chị có nhiều kinh nghiệm lĩnh vực 128 | P a g e Enter “Nhãn” input Pick “Đính kèm” Cick “Lưu lại” button C# cho em hỏi khác override overload ạ” Step 7: Các bước để tái = “Không” Step 8: Lỗi = “Không” Step 9: Sửa nhanh = “Không” Step 10: Chú ý = “Không” Step 11: Nhãn = “Giaidapthac macveC#” Step 12: Đính kèm = “c#image.jpg ” Table 5.4 - Test results of Update post function 129 | P a g e Figure 5.6 - Expected & Actual result of TC_UK_01 Figure 5.7 - Expected & Actual result of TC_UK_02 5.2.4 Admin - Add an user ID Description Test steps TC_A Test response of Go the website when to the Test data Expected Result Actual Result “Hệ Step 3: “Tài Error appears As khoản” = to the right of Status Pass 130 | P a g e U_01 user enters the full information and enters the wrong email format “PhuongThao ” the input “Bạn expected phải nhập Click “Thêm” user định dạng button Step 4: Email” “Password” = Enter “Tài khoản” “Thao@1234 input ” Enter “Password” Step 5: “Tên” input = “Thao” Enter “Tên” input Step 6: “Họ” Enter “Họ” input = “Nguyen” thống” category Pick “Ngày sinh” Enter input Step 7: “Ngày = “Email” sinh” “08/10/1999” Step 8: “Email” = lại” “PhuongThao o” Enter “Điện thoại” Click “Lưu button Step 9: “Điện thoại”= “0394932051 131 | P a g e TC_A U_02 Test response of the website when user enters the full information and enters the correct email format Go to the “Hệ Step 3: “Tài thống” category khoản” = “PhuongThao Click “Thêm” user 99” button Step 4: Enter “Tài khoản” “Password” = input “Thao@123” Enter “Password” Step 5: “Tên” input = “Thao” Enter “Tên” input Step 6: “Họ” Enter “Họ” input = “Nguyen” Website shows As message on the expected green “Thêm thành công” Pick “Ngày sinh” Enter input Step 7: “Ngày = “Email” sinh” “08/10/1999” Step 8: “Email” = lại” “PhuongThao o@gmail.com ” Enter “Điện thoại” Click “Lưu button Step 9: “Điện thoại”= “0394932057 ” Table 5.5 - Test results of Add a user function 132 | P a g e Pass Figure 5.8 - Expected & Actual result of TC_AU_01 Figure 5.9 - Expected & Actual result of TC_AU_02 133 | P a g e CHAPTER CONCLUSION 6.1 Result The project is complete, providing an overview of the architecture and system design From there, we have an overview of the operation of website technology information sharing We have applied our learned knowledge as well as new knowledge to build our website − Source:https://dev.azure.com/christranvn/KnowledgeSpace?fbclid=IwAR04p69VJr j0hSQmdTwKYi6HabrdQZEIcutjnFidxkJsaR03EO_X2I8MgVs 6.2 Advantage − − − − − Targeting many different users: users, managers, admins, Help users can track the list of posts and user information quickly and efficiently The project is highly realistic, with diverse options for users to choose from User-friendly interface Easy maintenance and development 6.3 Disadvantage − The ability to handle business is not flexible and sensitive − The problems arising in the management process have not been fully resolved − Some functions of the system are still incomplete 6.4 Future plan − Combine login with social accounts like Facebook, Google − Use machine learning to analyze demand to suggest users suitable posts, rank users who have a lot of contributions to the system − Use chatbots to support online users and build chat boxes for online members 134 | P a g e REFERENCES [1] Microsoft (2020) ASP.NET.Core Retrieved from https://dotnet.microsoft.com/learn/aspnet/what-is-aspnet-core [2] Wikipedia (12 / 2020) ASP.NET Core Retrieved from https://en.wikipedia.org/wiki/ASP.NET_Core [3] Tutorialsteacher (2020) ASP.NET Web APIs Retrieved from https://www.tutorialsteacher.com/webapi/web-api-tutorials [4] Shrimant Telgave (2018) Advantages Of Using ASP.NET Core Retrieved from https://www.c-sharpcorner.com/article/what-is-asp-net-core-andadvantages-of-using-asp-net-core-how-to-setup-asp-net/ [5] Angular (2020) Introduction to the Angular and Angular concepts Retrieved from https://angular.io/guide/architecture [6] Microsoft (2021) Introdution Identity Server Retrieved from https://docs.microsoft.com/en-us/dotnet/architecture/cloudnative/identity-server [7] Brock Allen and Dominick Baier, (2020) IdentityServer4 Image of object model use a certain terminology Retrieved from https://identityserver4.readthedocs.io/en/latest/intro/terminology.html [8] Brock Allen and Dominick Baier, (2016) Introduction to IdentityServer Retrieved from: https://sddconf.com/brands/sdd/library/Introduction_to_IdentityServer.pdf 135 | P a g e ... priority Therefore, in order to solve the above problem, the implementation team has focused on understanding and implementing the topic of building a system of ? ?TECHNOLOGY INFORMATION SHARING SYSTEM? ??... view all the statistical information of the website such as the number Manage Statistical Table of registered users by month, the number of articles created by month, the number of comments The manager... Success Scenario: Step Actor Action System Response Unauthenticated user click on The website displays content detail of the title of the post the post for the title of the post Alternative Scenario:

Ngày đăng: 05/06/2022, 17:33

Hình ảnh liên quan

Mã Tên màn hình Mô tả - Technology information sharing system   faculty of high quality training graduations thesis of the information technology

n.

màn hình Mô tả Xem tại trang 110 của tài liệu.
4.8.2 Admin Website - Technology information sharing system   faculty of high quality training graduations thesis of the information technology

4.8.2.

Admin Website Xem tại trang 110 của tài liệu.

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan