Lý do hình thành đề tài
Dashboard được định nghĩa là bảng báo cáo tiến độ dưới dạng trực quan hóa dữ liệu bằng cách kết nối với các nguồn dữ liệu và sau đó hiển thị tất cả dữ liệu này dưới dạng bảng, biểu đồ đường, biểu đồ thanh Dashboard giúp thấy được bức ảnh doanh nghiệp một cách nhanh chóng và toàn diện nhất Ngoài ra nó cung cấp cái nhìn sâu sắc về dữ liệu, giúp giám sát thời gian thực của nhiều bộ phận khác nhau và giúp tổ chức cải tiến năng suất của doanh nghiệp.
Với sự phát triển của các kỹ thuật trực quan hóa dữ liệu, kỹ thuật dashboard đã thu hút rất nhiều sự chú ý nhưng đã bị cản trở do thiếu các công cụ tự động hóa Trong các hệ thống doanh nghiệp ngày nay, người dùng doanh nghiệp mong muốn bảng điều khiển hướng đến quy trình nhiều hơn ngoài việc tập trung vào ngữ cảnh Trong khi nhiều công cụ Business Intelligence (BI) hiện nay cung cấp bảng điều khiển dựa trên vai trò, ý tưởng xây dựng dashboard hướng quy trình đã thu hút sự chú ý của tôi Bởi vì sự theo dõi và kiểm soát của quy trình kinh doanh đặt người sử dụng trước những thách thức: nguồn dữ liệu đa dạng và không tương thích để tích hợp, nhu cầu cụ thể cho việc giám sát mục đích rõ ràng hoặc kiểm soát khả năng của các giá trị xác định quy trình yêu cầu phức tạp và khó để sử dụng giải pháp Business Intelligence (BI), công cụ dùng cho các chuyên gia để phân tích dữ liệu.
Xem xét các kỹ thuật và ngôn ngữ mô tả hướng đến tạo ra các đồ biểu trực quan hóa dữ liệu tùy thuộc vào quy trình nghiệp vụ đang mô tả, vốn được xem như ngữ cảnh Còn người dùng đăng nhập vào hệ thống sẽ giúp xác định vai trò Kết hợp ngữ cảnh và vai trò sẽ dẫn đến khả năng tự động hóa lựa chọn các biểu đồ vốn rất đa dạng trong thế giới trực quan hóa dữ liệu ngày nay Ngoài ra, quảng cáo đã trở thành động lực chính thúc đẩy nền
Chương 1 Mở đầu 2 kinh tế hiện đại, sự tiến bộ công nghệ gần đây trong tính toán di động và các ứng dụng Internet đã mở ra cánh cửa cho quảng cáo kỹ thuật số Vì thế dashboard dành riêng cho Ngành Quảng cáo cũng rất cần thiết, giúp cho các nhà quản lý thấy bức tranh tổng thể của đội nhóm mình một cách rõ ràng.
Trước đây dashboard công ty tạo ra giúp cho việc điều chỉnh chiến dịch quảng cáo kịp thời và nhanh chóng, nên nhu cầu tại thời điểm đó là trực quan hóa đơn giản các dữ liệu ở thời gian thực Tuy nhiên, với cách mạng công nghiệp 4.0 hiện nay, dữ liệu ở thời gian thực không còn đáp ứng đủ nhu cầu của Khách hàng, nhân viên đặt hàng cần các thông số chi tiết hơn theo từng tháng, từng quý của từng loại hình quảng cáo chạy để đàm phán hiệu quả hơn, đem lại lợi nhuận tốt hơn và hệ thống có thể dành thêm được vị trí cho các đơn hàng khác Cho nên cả nhân viên bán hàng và người quản lý thường yêu cầu nhóm kỹ thuật thực hiện các truy vấn cơ sở dữ liệu và xuất dữ liệu được lấy từ máy chủ của công ty theo cách thủ công để làm báo cáo Để giảm thiểu vấn đề này, nhóm dữ liệu của công ty chuẩn bị các bộ dữ liệu quảng cáo và nhập chúng vào MS Power BI 1 để tạo tùy chỉnh dashboard cho ban quản lý và bộ phận bán hàng của công ty Quy trình này, mặc dù được hỗ trợ bởi công cụ chỉnh sửa bảng điều khiển hiện đại, nhưng không hiệu quả Các trang dashboard đã tạo không có phạm vi phù hợp và phải chỉnh sửa liên tục, vì các biểu đồ cần thiết bị thiếu trong khi các biểu đồ không sử dụng được hiển thị một cách không cần thiết.
Mục tiêu
Dựa trên tính cấp thiết và thực tiễn của việc tìm ra giải pháp để khắc phục các vấn đề trên Tôi đã nghiên cứu và tìm hiểu để lựa chọn đề tài luận văn "Phát triển dashboard linh hoạt theo quy trình nghiệp vụ trong lĩnh vực quảng cáo" Nghiên cứu này giúp xây dựng một cơ chế hệ thống dashboard linh hoạt theo quy trình nghiệp vụ trong lĩnh vực quảng cáo Bằng cách tìm hiểu các quy trình nghiệp vụ hiện nay trong lĩnh vực quảng cáo, về quyền hạn của từng vai trò ở công ty FPT Telecom và các biểu đồ nào nhà quản lý và nhân viên cần xem để đề xuất dashboard phù hợp theo quy trình nghiệp vụ và vai trò trong lĩnh vực quảng cáo.
Từ đó, mang lại lợi ích trực tiếp, sự minh bạch và thuận tiện để theo dõi các chiến dịch, quy trình nghiệp vụ cho từng vai trò trong từng bộ phận của công ty thông qua trực quan hóa dữ liệu thời gian thực Khi nhìn vào dashboard các nhà quản lý sẽ hình dung được
1 https://powerbi.microsoft.com/en-us/ năng suất công ty và nhân viên đặt hàng sẽ minh bạch các số liệu để đàm phán với khách hàng Đồng thời hỗ trợ cho việc ra quyết định để đem lại nguồn thu nhập trực tiếp cho công ty và giảm tải được vấn đề chạy dư thừa quảng cáo ở các chiến dịch Như vậy đề tài sẽ dựa vào vai trò và quy trình nghiệp vụ để trích xuất dashboard phù hợp với người sử dụng.
Giới hạn và đối tượng nghiên cứu
Mặc dù luận án nhắm đến một dashboard linh hoạt tuy nhiên phạm vi cho việc phát triển, ứng dụng và kiểm thử một dashboard như vậy vẫn có một số giới hạn nhất định.
• Đề tài phát triển dashboard linh hoạt theo quy trình nghiệp vụ trong lĩnh vực quảng cáo được thực hiện giới hạn trong phạm vi ngành Quảng cáo ở công ty FPT Telecom.
Vì đây là bộ dữ liệu sơ cấp được hỗ trợ từ công ty nên sẽ có một vài giới hạn nhất định theo quy định.
• Dashboard linh hoạt sẽ giúp trực quan hóa dữ liệu tùy theo các vai trò và một số quy trình nghiệp vụ trong lĩnh vực chạy quảng cáo tại công ty đã đề cập.
• Dashboard chưa thực sự sống động theo thời gian vì đang dùng bộ dữ liệu chưa theo thời gian thực.
• Dashboard được xây dựng sẽ không được hiển thị chính xác khi đối tượng dữ liệu (data object) không khớp với cơ sở dữ liệu.
• Nghiên cứu của tôi chỉ hỗ trợ một vài loại biểu đồ như biểu đồ tròn, biểu đồ thước đo và biểu đồ đường.
• Không thể chỉnh sửa dashboard được tạo từ tài liệu JSON để thêm các biểu đồ và các yếu tố đa phương tiện cho nó.
Cuối cùng, như mục tiêu đưa ra là xác định được phương pháp phù hợp và chính xác trong quy trình nghiệp vụ trong lĩnh vực quảng cáo Vì vấn đề thời gian nên đề tài sẽ tập trung đề xuất một dashboard linh hoạt theo quy trình theo dõi số liệu của Flight quảng cáo đang chạy của chiến dịch và tập trung vào hai vai trò chủ yếu là người dùng và quản trị viên.
Ý nghĩa thực tiễn
Về mặt học thuật đến thời điểm hiện tại, có khá ít nghiên cứu khoa học liên quan đến vấn đề tạo ra một dashboard tự động hướng quy trình cụ thể, điều đó chứng tỏ đây cũng là vấn đề khá khó khăn trong cả lĩnh vực nghiên cứu và công nghiệp Nghiên cứu này giúp đóng góp thêm một phần vào vấn đề tạo ra một dashboard tự động hướng quy trình, bằng cách lặp qua tất cả các nhóm (pools) và đối tượng dữ liệu (data object) được mô tả trực quan trong quy trình nghiệp vụ và tạo mã nguồn đại diện cho các biểu đồ trực quan tương ứng.
Ngoài ra, hiện nay có quá nhiều công cụ thông minh dùng để hỗ trợ xuất ra một dashboard hướng vai trò, dashboard này cần có nhân viên nắm rõ được các quy trình trong công ty, nhân viên chuyên gia về vẽ dashboard và nhân viên xem xét các đồ thị để sinh ra một dashboard sao cho phù hợp với các vai trò đó Công trình nghiên cứu của tôi sẽ hướng đến sinh ra một dashboard tự động từ một quy trình cụ thể cho các vai trò liên quan mà không cần thông qua quá nhiều bước để có thể hình thành Và có thể giải quyết được các vấn đề khi tạo ra dashboard hiện nay của công ty:
• Thứ nhất, tránh được vấn đề mất thời gian khi cả nhân viên bán hàng và người quản lý thường xuyên yêu cầu nhóm kỹ thuật thực hiện các truy vấn cơ sở dữ liệu và xuất dữ liệu được lấy từ máy chủ của công ty theo cách thủ công để làm báo cáo.
• Thứ hai, các trang dashboard đã tạo có phạm vi phù hợp và tránh việc các biểu đồ cần thiết bị thiếu trong khi các biểu đồ không sử dụng được hiển thị một cách không cần thiết.
• Thứ ba, giúp gia tăng hiệu quả phân tích khi khai thác dữ liệu và tạo tiền đề cho việc tối ưu hóa các chiến dịch quảng cáo giúp công ty tăng lợi nhuận, lợi thế so với các đối thủ cạnh tranh khác.
Cấu trúc luận văn
Đề tài luận văn bao gồm 5 chương như sau:
Chương 1: Giới thiệu đề tài về lý do lựa chọn đề tài, các mục tiêu và các ý nghĩa thực tiễn mà đề tài mang lại.
Chương 2: Tổng quan về công ty, các khái niệm trong quảng cáo, các công nghệ sử dụng trong quá trình tạo dashboard và những thách thức khó khăn của đề tài.
Chương 3: Phương pháp nghiên cứu của đề tài gồm các sơ đồ khối tổng quát, các quy trình nghiệp vụ, cách hiện thực và kết quả trên Grafana.
Chương 4: Trình bày và đánh giá kết quả dashboard hướng quy trình đem lại trong thực tiễn.
Chương 5: Kết luận và đưa ra khuyến nghị trong tương lai.
Chương 6: Danh mục công trình khoa học đã được công bố.
Tổng quan về công ty FPT Telecom
Lịch sử hình thành và phát triển
FPT Telecom 2 thành lập ngày 31/01/1997, khởi nguồn từ Trung tâm Dịch vụ Trực tuyến do 4 thành viên sáng lập cùng sản phẩm mạng Internet đầu tiên của Việt Nam mang tên
“Trí tuệ Việt Nam – TTVN”, sản phẩm được coi là đặt nền móng cho sự phát triển của Internet tại Việt Nam Sau 25 năm hoạt động, FPT Telecom đã và đang hoạt động trong các lĩnh vực:
• Cung cấp hạ tầng mạng viễn thông cho dịch vụ Internet băng rộng.
• Dịch vụ giá trị gia tăng trên mạng Internet, điện thoại di động.
• Dịch vụ Truyền hình trả tiền.
• Dịch vụ tin nhắn, dữ liệu, thông tin giải trí trên mạng điện thoại di động.
• Thiết lập hạ tầng mạng và cung cấp các dịch vụ Viễn thông, Internet.
• Xuất nhập khẩu thiết bị Viễn thông và Internet.
• Dịch vụ Viễn thông cố định nội hạt.
• Dịch vụ Viễn thông giá trị gia tăng.
• Dịch vụ Viễn thông cố định đường dài trong nước.
• Cung ứng dịch vụ trung gian thanh toán.
2 https://fpt.vn/vi/ve-fpt-telecom/gioi-thieu-chung.html
Hình 2.1 mô tả rõ hơn về lịch sử hình thành và phát triển của công ty FPT Telecom qua từng năm từ năm 1997 đến 2018.
Hình 2.1: Lịch sử hình thành và phát triển của công ty FPT Telecom
Tổng quan về ngành quảng cáo
Trong thời điểm bùng nổ công nghệ và truyền thông số hiện nay, quảng cáo đang phát triển chóng mặt và phong phú cả về nội dung và hình thức sáng tạo Quảng cáo có rất nhiều dạng, từ nội dung đến video đều đã phát triển và trở thành một trong những thành phần quan trọng trong kế hoạch phát triển của mỗi doanh nghiệp mà không chỉ đơn thuần là những băng rôn, biển hiệu ngoài đường hay những clip trên ti vi nữa.
Quảng cáo số 3 (digital advertising) là một mảng đang phát triển nhanh nhất trong quảng cáo Các công việc quảng cáo bao gồm: chạy quảng cáo Google và quảng cáo Facebook, tối ưu hóa SEO (trình tối ưu hóa công cụ tìm kiếm), nhắm mục tiêu theo địa lý (chạy quảng
3 https://swinburne-vn.edu.vn/nganh-quang-cao/
Chương 2 Tổng quan 8 cáo dựa vào vị trí của đối tượng), tiếp thị qua email Và đó là cách nhanh, đơn giản để đẩy mạnh thương hiệu, gia tăng doanh số thời công nghệ 4.0.
Ngoài hai “ông lớn” Facebook và Google, gần đây còn có sự nổi lên của truyền hình OTT(nội dung được cung cấp thông qua nền tảng Internet), ví như FPT Play 4 , những nội dung quảng cáo được đánh giá là nhắm đúng đối tượng, tiếp cận người xem nhẹ nhàng và gần gũi.
Giới thiệu về dashboard
Dashboard 5 có thể được hiểu là một bảng điều khiển kỹ thuật số (Digital Control), hay một giao diện số được dùng để thu thập và tổng hợp dữ liệu của toàn bộ tổ chức Đồng thời nó còn đưa ra một cái nhìn tổng quát về năng suất của từng bộ phận, các xu hướng, các hoạt động, các chỉ số KPI (Key Performance Indicator – hay còn gọi là chỉ số đánh giá thực hiện công việc).
Dashboard đưa ra cái nhìn tổng quan về mọi mặt trong hoạt động kinh doanh của tổ chức sao cho việc trình bày dễ hiểu và toàn diện Phần giải thích dù ngắn gọn nhưng phải bao hàm toàn bộ vấn đề cần thiết, bao gồm các thước đo mỗi hạng mục và một vài từ khóa quan trọng Với báo cáo linh hoạt tùy biến, nhà quản lý có thể thấy được các thước đo chỉ số hoạt động của doanh nghiệp mình bằng hình ảnh đồ thị đa chiều, việc gom các báo cáo vào mục những tính năng thường xuyên được sử dụng cũng sẽ tiết kiệm thời gian hơn rất nhiều.
Dashboard thường được lập ra bởi các nhà phân tích kinh tế chuyên nghiệp Nó phải bao hàm tất cả nội dung mà người lập muốn trình bày Các vấn đề được tổng hợp từ các báo cáo (Report) thu thập trong quá trình hoạt động sản xuất kinh doanh Có thể thấy trong một dashboard có rất nhiều báo cáo trong đó. Để tránh hiểu nhầm giữa hai định nghĩa báo cáo và dashboard, ta cần biết dashboard là Bảng thông tin tổng hợp kết hợp nhiều báo cáo trên một màn hình hiển thị, giúp cho người xem có cái nhìn tổng quát và nhanh chóng nhiều thông tin quản trị khác nhau Còn báo cáo đơn giản là những báo cáo quản trị thể hiện các số liệu ở nhiều nội dung và góc độ khác nhau tùy theo nhu cầu của người quản lý.
Một hệ thống dashboard có những ưu điểm điển hình như:
4 https://fpt.vn/vi/tin-fpt/nhung-uu-diem-cua-quang-cao-tren-truyen-hinh-ott 4880. html
5 http://thuthuatphanmem.vn/dashboard-la-gi-the-nao-la-dashboard-dinh-nghia-dashboard/
• Trực quan và sinh động vì chủ yếu bao gồm các biểu đồ, đồ thị và hình ảnh giúp cho các nhà phân tích có thể tìm ra vấn đề một cách nhanh chóng.
• Trình bày thông tin mang tính hỗ trợ đưa ra hành động, quyết định.
• Linh hoạt, dễ dàng cho phép người dùng tương tác để lựa chọn các phương án hoặc chỉ tiêu khác nhau từ tổng quan đến chi tiết một cách nhanh chóng và kịp thời cho việc đưa ra quyết định.
Giới thiệu về dashboard hướng đến quy trình, vai trò
Một cách tự nhiên, dashboard có thể thiết lập cho vai trò nhất định [1] và có một số công cụ hiện hữu 6 cũng đi theo cách thức tạo dashboard cho vai trò cụ thể [2, 3].
Kiến trúc doanh nghiệp hướng dịch vụ đóng vai trò quan trọng trong kỹ thuật doanh nghiệp ngày nay khi số hóa và dịch vụ hóa thu hút trong các hệ thống doanh nghiệp kỹ thuật số ngày nay [4, 5] Việc cung cấp dịch vụ không phải là đổi thương hiệu cũng không phải là cú pháp cho các khối xây dựng khác trong kỹ thuật doanh nghiệp Ví dụ: khi một quy trình được thực hiện để đạt được mục tiêu kinh doanh, thì một dịch vụ được thiết kế để cung cấp các giá trị [6] Một quy trình nghiệp vụ có thể được tiến hành bằng cách kết hợp các dịch vụ Nói cách khác, hoạt động của một dịch vụ kinh doanh liên quan đến nhiều quy trình hỗ trợ phía sau [7].
Dù bằng cách nào, tôi cần một kỹ thuật lập mô hình hiệu quả để thể hiện Kiến trúc Doanh nghiệp (EA) – được biết đến rộng rãi là Mô hình Kiến trúc Doanh nghiệp Mục đích của
EA là xác định cách một tổ chức có thể đạt được các mục tiêu hiện tại và tương lai một cách hiệu quả [8] Phương pháp lập mô hình EA này liên quan đến việc tạo ra một đại diện tổng thể, đa góc nhìn của một doanh nghiệp Độ phức tạp và tính không đồng nhất là một trong những thuộc tính điển hình của các mô hình EA vì chúng có thể trải rộng trên nhiều cấp độ phân cấp và một số chức năng 7 Trong quá trình thực hiện dự án EA, nhóm
EA có thể xây dựng nhiều sơ đồ để thể hiện mô hình EA từ các góc nhìn khác nhau Mô hình EA này bao gồm một số lượng lớn các yếu tố mô hình nắm bắt các khía cạnh khác nhau của doanh nghiệp, có thể được phân loại thành những người sau đây và vai trò, dữ
6 https://distone.com/role-based-dashboards/
7 Cái trước thường được trình bày theo chiều ngang trong khi cái sau theo chiều dọc trong nhiều biểu đồ tổng quan thể hiện tổ chức của một doanh nghiệp.
Chương 2 Tổng quan 10 liệu, quy trình, dịch vụ, thông tin, ý định và động lực, tài nguyên và thiết bị vật lý Với sự phát triển của khoa học dữ liệu, những người thực hành EA mong muốn làm phong phú thêm các mô hình EA của họ bằng các phân tích nâng cao và trực quan hóa dữ liệu [9,10] Khi các tiêu chuẩn giao diện người dùng và đồ họa máy tính tiếp tục phát triển với tốc độ nhanh chóng, kỹ thuật dashboard ngày càng trở thành một công cụ phổ biến cho hoạt động kinh doanh thông minh ngày nay Việc cung cấp chế độ xem nhanh về các lớp khác nhau của doanh nghiệp được đại diện đã tỏ ra hữu ích để hiểu các hoạt động nội bộ, luồng vào và luồng ra của nó [11] Nói chung, dashboard có thể dựa trên vai trò hoặc theo quy trình, mặc dù tôi nhận được sự hỗ trợ đáng kể cho dashboard dựa trên vai trò trong tài liệu và khuôn khổ thương mại [12,13, 14, 15], nhưng việc thiết kế một dashboard phù hợp cho một quy trình nghiệp vụ nhất định vẫn chưa được tập trung quan tâm.
Việc tạo dashboard hướng quy trình nghiệp vụ có thể được thực hiện bằng cách tuân theo cái gọi là phương pháp giám sát dựa trên mô hình quy trình [16] bằng cách khớp các loại dữ liệu và mục tiêu với các nguồn dữ liệu Theo một cuộc khảo sát thông tin dashboard [17], phương pháp này là một phần của quá trình phát triển dựa trên mô hình, đây là một kỹ thuật phổ biến sử dụng siêu mô hình để tạo mã nguồn cần thiết để hiển thị dashboard [18, 19] Phương pháp thiết kế hướng quy trình sử dụng quy trình BPMN 8 để chuyển hóa dashboard [20] Đầu tiên lấy một biểu diễn quy trình nghiệp vụ mà máy có thể đọc được làm đầu vào, từ đó trích xuất danh sách các đối tượng dữ liệu và những người tham gia quy trình Sau đó chọn những đối tượng khớp với tập dữ liệu được cung cấp và tương ứng với vai trò của người dùng được xác định bởi một trong những người tham gia quy trình. Tuy nhiên, phương pháp này yêu cầu kiến thức trực quan thông tin [21] để tạo thiết kế hiệu quả Giúp cho việc tự tạo quy trình và khả năng tự động hóa Dashboard được sẽ mô tả bởi ngôn ngữ mà bao gồm thông tin về đồ thị trực quan, tập dữ liệu, các yếu tố tương tác và điều khiển, thông báo và quy trình ngữ cảnh.
Các thuật ngữ và khái niệm trong lĩnh vực quảng cáo
Lượt hiển thị (Impression)
Lượt hiển thị(Impression) nghĩa là tần suất quảng cáo/nội dung được hiển thị.
Impression = Ads TVC/Banner View = Reach * Frequency;
TVC (Television Commercials) – Video hiển thị để truyền tải đến người dùng
Banner – Hình ảnh hiển thị để truyền tải đến người dùng
Ad View – Lượt xem quảng cáo.
Reach – Số lượng người mà quảng cáo/nội dung tiếp cận được.
Frequency – Số lần quảng cáo hiển thị đến một người.
Ví dụ: Nếu quảng cáo hiển thị một lần tới mười người trong nhóm A và hai lần với năm người nhóm B thì có nghĩa tổng impressions là hai mươi nhưng tổng lượt reach chỉ là mười lăm.
Hiện nay, trước sự gia tăng của các hành vi gian lận các chỉ số, đặc biệt là impression, các công ty có ngân sách quảng cáo lớn còn sử dụng thêm một chỉ số có liên quan là viewability impression (VI) VI được tính trên số lần quảng cáo có khả năng được xem, chứ không phải lượt xuất hiện Viewability có thể sẽ trở thành một chuẩn đo lường mới cho ngành quảng cáo khi các cách đo lường phổ biến (ví dụ CTR) chỉ phù hợp trong ngắn hạn và không hoàn toàn phản ánh những gì người tiêu dùng nghĩ về thương hiệu.
Click
Lượt Click nghĩa là người dùng thao tác chọn để xem chi tiết hơn về quảng cáo đang hiển thị.
User Click Ad – Người dùng click vào quảng cáo/nội dung.
Ví dụ: Một người nào đó thấy hứng thú với quảng cáo A, họ click vào quảng cáo để qua trang đích (Landing Page) và xem chi tiết hơn về thông tin.
Bắt đầu (Start)
Lượt bắt đầu (Start) được áp dụng với TVC quảng cáo được tính khi người dùng vừa bắt đầu xem TVC.
TVC (Television Commercials) – Video hiển thị để truyền tải đến người dùng
View TVC Ads 1–2s – Xem TVC quảng cáo một đến hai giây.
Ví dụ: Một người nào đó thấy hình và tắt quảng cáo đi, được tính là một impression. Nhưng khi người đó thấy TVC hiện lên và xem một đến hai giây sẽ tính một impression và một start.
Xem 25% (View 25%)
Lượt xem 25% (View 25%) được áp dụng với TVC quảng cáo được tính khi người dùng xem TVC được 25% trên tổng thời lượng TVC.
View 25% = View TVC Ads (25% / 100% TVC)
TVC (Television Commercials) – Video hiển thị để truyền tải đến người dùng
View TVC Ads (25% / 100% TVC) – xem TVC quảng cáo được 25% trên tổng thời lượng TVC.
Ví dụ: Ta có TVC hai mươi giây Một người nào đó xem TVC năm giây sẽ tính là một view 25%.
Xem 50% (View 50%)
Lượt xem 50% (View 50%) được áp dụng với TVC quảng cáo được tính khi người dùng xem TVC được 50% trên tổng thời lượng TVC.
View 50% = View TVC Ads (50% / 100% TVC)
TVC (Television Commercials) – Video hiển thị để truyền tải đến người dùng
View TVC Ads (50% / 100% TVC) – xem TVC quảng cáo được 50% trên tổng thời lượng TVC.
Ví dụ: Ta có TVC hai mươi giây Một người nào đó xem TVC mười giây sẽ tính là một view 50%.
Xem 75% (View 75%)
Lượt xem 75% (View 75%) được áp dụng với TVC quảng cáo (Television Commercials) được tính khi người dùng xem TVC quảng cáo được 75% trên tổng thời lượng TVC.
View 75% = View TVC Ads (75% / 100% TVC)
TVC (Television Commercials) – Video hiển thị để truyền tải đến người dùng
View TVC Ads (75% / 100% TVC) – xem TVC quảng cáo được 75% trên tổng thời lượng TVC.
Ví dụ: Ta có TVC hai mươi giây Một người nào đó xem TVC mười lăm giây sẽ tính là một view 75%.
Lượt xem hết (Complete View)
Lượt xem hết (Complete View hoặc Played100) được áp dụng với TVC quảng cáo (Televi- sion Commercials) được tính khi người dùng xem hết toàn bộ thời lượng của 1 TVC quảng cáo.
Complete View = View TVC Ads (100% / 100% TVC)
TVC (Television Commercials) – Video hiển thị để truyền tải đến người dùng
View TVC Ads (100% / 100% TVC) – xem 100% tổng thời lượng TVC quảng cáo.
Ví dụ: Ta có TVC hai mươi giây Một người nào đó xem hết toàn bộ hai mươi giây TVC sẽ tính là một complete view hoặc một played100.
CTR(Click-through Rate)
CTR dùng để đo lường sự thành công của một chiến dịch quảng cáo trực tuyến cho một trang web cụ thể và được đo lường bằng số lượng người dùng đã nhấp vào quảng cáo.
Ví dụ: Một chiến dịch quảng cáo có bảy mươi người click vào quảng cáo trên một trăm người thấy quảng cáo Lúc này CTR = 70%
VTR (View-through Rate)
VTR dùng để đo lường sự thành công của một trang web phát TVC quảng cáo trực tuyến bằng cách đo lường số lần người dùng xem hết quảng cáo.
Ví dụ: một chiến dịch quảng cáo có năm mươi người xem hết TVC trên một trăm người thấy quảng cáo Lúc này VTR = 50%
Công nghệ sử dụng
ReactJS
ReactJS 10 là thư viện JavaScript phổ biến nhất để xây dựng giao diện người dùng (UI) Nó cho tốc độ phản hồi tuyệt vời khi người dùng nhập liệu bằng cách sử dụng phương pháp mới để kết xuất trang web.
Components của công cụ này được phát triển bởi Facebook Nó được ra mắt như một công cụ JavaScript mã nguồn mở vào năm 2013 Hiện tại, nó đã đi trước các đối thủ chính như Angular và Bootstrap, hai thư viện JavaScript bán chạy nhất thời bấy giờ rất dễ dàng để ta quản lý, sửa chữa và mở rộng hệ thống vì:
• Hiệu suất tốt hơn với Virtual DOM – nơi mà các linh kiện phần mềm (component) thực sự tồn tại trên đó Điều này sẽ giúp cải thiện hiệu suất rất nhiều ReactJS cũng tính toán những thay đổi nào cần cập nhật lên DOM và chỉ thực hiện chúng Điều này giúp ReactJS giảm chi phí.
• Viết component dễ dàng hơn, ReactJS giúp việc viết các đoạn code Javascript dễ dàng hơn, nó dùng cú pháp đặc biệt là JSX (Javascript mở rộng) cho phép ta trộn giữa code HTML và Javascript Ta có thể thêm vào các đoạn HTML vào trong hàm hiển thị (render) mà không cần phải nối chuỗi Đây là đặc tính thú vị của ReactJS.
Nó sẽ chuyển đổi các đoạn HTML thành các hàm khởi tạo đối tượng HTML bằng bộ biến đổi JSX.
• ReactJS là một thư viện linh kiện phần mềm (component), nó có thể vừa hiển thị (render) ở ngoài trình duyệt sử dụng DOM và cũng có thể hiển thị (render) bằng các chuỗi HTML mà server trả về.
• Hiệu năng cao đối với các ứng dụng có dữ liệu thay đổi liên tục, dễ dàng cho bảo trì và sửa lỗi.
• Hỗ trợ Reusable Component trong Java.
10 https://www.hostinger.vn/huong-dan/react-la-gi-va-no-hoat-dong-nhu-the-nao
MySQL
MySQL 11 là hệ quản trị cơ sở dữ liệu tự do nguồn mở 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.
Vì MySQL là hệ quản trị cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet Người dùng có thể tải về MySQL miễn phí từ trang chủ MySQL có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS,
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL) Ngoài ra, MySQL được sử dụng cho việc bổ trợ NodeJs, PHP, Perl, và nhiều ngôn ngữ khác, làm nơi lưu trữ những thông tin trên các trang web viết bằng NodeJs, PHP hay Perl,
Quy trình BPMN
BPMN 12 (Ví dụ như Hình 2.2) là cụm từ viết tắt Business Process Modeling Notation, chúng ta có thể hiểu BPMN là tập hợp các ký hiệu để mô hình hóa trực quan các quy trình nghiệp vụ xử lý.
Hình 2.2: Ví dụ của quy trình BPMN
11 https://viblo.asia/p/tim-hieu-ve-my-sql-gDVK2Ov2ZLj
12 https://viblo.asia/p/tim-hieu-ve-mo-hinh-quy-trinh-nghiep-vu-bpmnphan-1-oOVlYMNrl8W
Mục đích chính là cung cấp các ký hiểu để giúp cả người không làm kỹ thuật lần người làm kỹ thuật dễ hiểu, dễ đọc Đối với dân lập trình viên thì có trách nhiệm trong việc cài đặt, triển khai, vận hành, sử dụng công nghệ Đối với dân business thì sẽ chịu trách nhiệm quản lý, giám sát quy trình và nghiệm thu kết quả.
Nhìn vào ảnh trên chúng ta có thể thấy được BPMN được coi như là công cụ để kết nối giữa việc phân tích quy trình nghiệp vụ và việc triển khai, cài đặt.
Camunda Modeler
Camunda 13 (Ví dụ như Hình 2.3) là một nền tảng công nghệ tự động hóa quy trình hoàn chỉnh với các công cụ thực thi mạnh mẽ cho sơ đồ BPMN được ghép nối với các ứng dụng thiết yếu để lập mô hình, vận hành và phân tích Camunda Modeler là một ứng dụng được cài đặt trên máy tính để lập mô hình quy trình làm việc BPMN Ứng dụng này thân thiện với người dùng (dễ dàng sử dụng ngay từ những lần đầu), cho phép nhiều thành viên làm việc cùng nhau trên cùng một sơ đồ.
Hình 2.3: Ví dụ của ứng dụng Camunda Modeler Camunda Modeler có các ưu điểm như sau:
13 https://www.bacs.vn/vi/blog/cong-cu-ho-tro/cac-cong-cu-ve-bpmn-de-su-dung-15631.html
• Mã nguồn mở và có khả năng mở rộng.
• Camunda Modeler cho phép chỉnh sửa tất cả các thuộc tính cần thiết để thực thi kỹ thuật.
• Camunda Modeler có một cộng đồng hơn 100.000 người dùng tại các công ty trên toàn thế giới.
• Là công cụ hỗ trợ tuyệt vời không chỉ cho từng đội ngũ phát triển sản phẩm mà còn cho cả cộng đồng phát triển.
• Hỗ trợ cho việc nhúng sơ đồ hoặc sử dụng sơ đồ một cách độc lập đều được
• Giao diện đơn giản, dễ tiếp cận và sử dụng.
Grafana
Grafana 14 (Ví dụ như Hình 2.4) là một nền tảng open-source chuyên phục vụ mục đích theo dõi và đánh giá các số liệu thu được Theo định nghĩa này có thể thấy tính ứng dụng của Grafana rất rộng chứ không chỉ trong khối công nghệ thông tin Bất kì lĩnh vực nào có thể thu được dữ liệu theo dòng thời gian đều có thể hiển thị tối ưu trên Grafana Ngoài khả năng kết nối đa dạng với các nguồn dữ liệu, phần giao diện của công cụ này rất thân thiền với người dùng Dễ dàng đưa ra thông tin và cảnh báo.
Hình 2.4: Ví dụ Prometheus trong Grafana
14 https://ubunlog.com/vi/grafana-software-analisis-supervision/
Grafana có các ưu điểm như:
• Là một phần mềm phân tích và giám sát.
• Mã nguồn mở, nhiều tính năng, mạnh mẽ và có khả năng mở rộng cao.
• Có thể chạy trên nhiều hệ điều hành như Gnu / Linux, Windows và MacOS.
• Được sử dụng trong một số trang web nổi tiếng như Stack Overflow, PayPal hoặc Uber.
• Hỗ trợ hơn 30 nguồn mở cũng như cơ sở dữ liệu / nguồn dữ liệu thương mại bao gồm MySQL, PostgreSQL, Graphite, Elasticsearch, OpenTSDB, Prometheus và In- fluxDB.
• Có thể ứng dụng trong dữ liệu lớn hoạt động trong thời gian thực.
Ý nghĩa của việc tích hợp
Việc tạo một dashboard hướng quy trình cần có quy trình BPMN, vai trò và tập dữ liệu làm đầu vào Vì thế khi dùng ứng dụng Camunda Modeler cho phép vẽ quy trình BPMN ngay trên ứng dụng, giúp người dùng có một quy trình đầu vào một cách dễ dàng Thứ hai, ứng dụng Camunda Modeler có mã nguồn mở hỗ trợ cho việc tích hợp một plugin trên ứng dụng và plugin này có thể được viết bằng nhiều ngôn ngữ, trong đề tài này tối dùng React, một ngôn ngữ khá phổ biến hiện nay Thứ ba, Camunda Modeler cho phép truy xuất các đối tượng dữ liệu, các tác vụ, của quy trình BPMN hiện tại chuyển sang định dạng JSON Như vậy ta sẽ giải quyết được vấn đề đầu vào và có thể chuyển đổi quy trình thành định dạng có thể trao đổi được bằng plugin.
Ngoài ra, để có một tập dữ liệu từ nguồn dữ liệu thô ta sẽ truy vấn bằng MySQL và đưa dữ liệu đã truy vấn lên máy chủ đám mây, việc này giúp dễ dàng đưa dữ liệu vào plugin và khi plugin đã xuất ra tài liệu JSON, vì ứng dụng Grafana cho phép dùng JSON như tài liệu đầu vào để sinh ra một dashboard và giúp hiện thị các biểu đồ theo thời gian thực nên ta dùng ứng dụng Grafana kết xuất dashboard.
Tổng quan về các công nghệ cho phép tạo dashboard
Google Analytics
Google Analytics 15 (Ví dụ xem Hình 2.5) là công cụ theo dõi, đo lường, phân tích và báo cáo số liệu về lượt truy cập của website Google phát triển Analytics với mục đích hỗ trợ các quản trị viên website kiểm tra tổng thể tình trạng của website và có các giải pháp cải thiện phù hợp.
Hình 2.5: Ví dụ dashboard sử dụng công cụ Google Analytics
Những tính năng hữu ích của Google Analytics 16 mang lợi như sau:
15 https://analytics.google.com/analytics
16 https://seoims.com/google-analytics-la-gi/
• Theo dõi toàn bộ dữ liệu và thấy cách dữ liệu hoạt động sẽ giúp có sự đánh giá chính xác hơn về tình hình kinh doanh và có cơ sở để thực hiện các chiến dịch quảng cáo hiệu quả.
– Cung cấp số liệu về mỗi lượt truy cập của người dùng giúp dễ dàng đánh giá được hiệu quả của nội dung và có các giải pháp sửa đổi phù hợp.
– Kết nối với các phần mềm quản lý kinh doanh, CRM đem đến bộ dữ liệu hoàn thiện của riêng doanh nghiệp kết hợp giữa website và số liệu kinh doanh thực tế.
• Khám phá ra những tiềm năng giúp thu hút người dùng, đem lại lợi nhuận, gia tăng chuyển đổi và có cơ sở vững chắc để xây dựng kế hoạch nội dung riêng cho từng nhóm đổi tượng như:
– Người dùng nào có khả năng chuyển đổi thành khách hàng cao nhất.
– Khách hàng nào có xu hướng sẽ mua hàng giá trị cao (đến từ nguồn nào, ở lại trang bao lâu, xem những trang nào ).
– Khách hàng nào vào trang web nhiều lần trước khi quyết định mua (tại sao khách phân vân, gửi chương trình khuyến mãi đến email của khách ).
• Biết được chính xác sau khi khách hàng nhấp vào quảng cáo trên mạng xã hội: facebook, youtube, tiktok vào website, họ sẽ làm gì tiếp theo và có giải pháp giúp gia tăng chuyển đổi (mua hàng, để lại thông tin ) Đồng bộ dữ liệu giữa Insights và kết quả thực tế
– Đồng bộ hóa dữ liệu giữa Insights và các công cụ quảng cáo để tiếp cận khách hàng tiềm năng chính xác và hiệu quả hơn.
– Có thể dễ dàng kết hợp dữ liệu từ Google Analytics với công cụ quảng cáo từ các nền tảng khác: Facebook, Youtube, Google Ads, Adsense, Display, để tiến hành các chiến dịch remarketing quảng cáo hiệu quả hơn.
• Google Analytics có khả năng chia sẻ dữ liệu dễ dàng với độ bảo mật cao, được toàn quyền truy cập, sử dụng dữ liệu:
– Tích hợp thêm APIs để sử dụng kết hợp dữ liệu từ nguồn khác.
– Định nghĩa thêm đối tượng, thuộc tính mới.
– Cài đặt thương mại điện tử, phễu đa kênh.
• Analytics đo lường và thu nhập mọi dữ liệu có thể của mỗi lượt truy cập như thời gian, địa lý, thiết bị, trình duyệt, nhân khẩu học, .
• Đa dạng các loại báo cáo.
• Phân tích dữ liệu thông minh.
• Thu nhập và quản lý dữ liệu
• Dễ dàng tích hợp công cụ.
• Thống kê thời gian thực.
Bên cạnh các ưu điểm Google Analytics 17 vẫn còn các hạn chế sau:
• Nó phức tạp đối với người dùng mới.
• Cấu hình của hình ảnh chưa sắc nét.
• Không hoàn toàn độc lập.
Power BI
Power BI 18 (Ví dụ xem Hình 2.6) là tập hợp các dịch vụ phần mềm, ứng dụng và trình kết nối hoạt động cùng nhau để biến các nguồn dữ liệu không liên quan thành thông tin chi tiết mạch lạc, trực quan và tương tác.
Power BI Studio có các đặc điểm là một công cụ giúp kết nối, tổng hợp, phân tích, báo cáo dữ liệu và giúp kết nối dữ liệu từ nhiều nguồn khác nhau Đồng thời phân tích để đưa ra được những báo cáo trực quan, dễ dàng chia sẻ và ra quyết định Nó cho phép chuyển đổi dữ liệu thành những bảng báo cáo trực quan và sinh động, thân thiện với người dùng. Ngoài ra Power BI còn là một công cụ hữu ích để theo dõi, phân tích, báo cáo dữ liệu để phục vụ cho mục tiêu kinh doanh của doanh nghiệp hoặc cá nhân và theo dõi các KPI chính cho khách hàng, trực quan hóa xu hướng và so sánh hiệu suất theo thời gian.
2.6.2.1 Ưu điểm Ưu điểm của Power BI [22] mang lại là
17 https://ecd.vn/google-analytics/
18 https://docs.microsoft.com/en-us/power-bi/fundamentals/power-bi-overview
Hình 2.6: Hình ảnh ví dụ dashboard khi dùng công cụ PowerBI
• Trực quan hóa tùy chỉnh.
• Dễ dùng, thân thiện với người dùng.
• Kết nối dữ liệu thông minh.
• Nhiều biểu đồ đa dạng.
Bên cạnh đó Power BI 19 cũng có các nhược điểm:
• Cấu hình của hình ảnh chưa sắc nét.
• Liên kết bảng biểu chưa hoàn hảo.
• Công thức còn cứng nhắc.
• Giao diện người dùng cồng kềnh.
• Phức tạp để hiểu và làm chủ nếu là người mới bắt đầu.
19 https://a1digihub.com/power-bi-la-gi/
Những thách thức khó khăn của việc tạo ra dashboard tự động
Vì dashboard thường được coi là giao diện người dùng đồ họa, nên các kỹ sư dữ liệu và nhà phân tích kinh doanh cũng phải xem xét kĩ lưỡng để có thể đề xuất một dashboard hiệu quả Về cơ bản, họ phải đưa ra một vài lựa chọn thiết kế không đơn giản Chẳng hạn, những loại biểu đồ nào nên xem xét? Đối với mỗi biểu đồ, kích thước dữ liệu nào sẽ được chiếu trên? Các biểu đồ sẽ được sắp xếp và đặt trong dashboard nói trên theo bố cục nào để thu hút sự chú ý của người xem tốt nhất? Nguồn cấp dữ liệu nào sẽ được sử dụng để điền vào dashboard trong thời gian chạy? Cuối cùng, việc tự động tạo dashboard cho quy trình nghiệp vụ phù hợp với vai trò của người dùng đặt ra một số thách thức Hãy xem xét chúng sau đây. Đầu tiên, nội dung của dashboard sắp được tạo phải khớp với luồng thông tin trong một quy trình nghiệp vụ Thật không may, nhiều kỹ thuật mô hình hóa quy trình không đáp ứng được yêu cầu này, đòi hỏi một kỹ thuật mô hình hóa chuyên dụng như Sơ đồ luồng dữ liệu Nếu không có sơ đồ mô hình hóa dữ liệu như vậy, thì chúng tôi dựa vào các đối tượng dữ liệu được mô hình hóa trong quy trình nghiệp vụ quan tâm để thiết lập luồng thông tin dựa vào đó chúng tôi sẽ xây dựng dashboard Một quy trình được mô hình hóa trong BPMN thường chứa các thành phần mô hình khác nhau thuộc các danh mục khác nhau (nhiệm vụ, sự kiện, đối tượng dữ liệu, v.v.) Một mô hình quy trình trực quan như vậy cần được chuyển đổi thành định dạng có thể trao đổi, từ đó có thể trích xuất các đối tượng dữ liệu theo cú pháp.
Thứ hai, thông tin được trực quan hóa cho dashboard sắp được xây dựng phải phân biệt vai trò vì những người dùng khác nhau mong đợi các chế độ xem nhanh khác nhau trong cùng một quy trình Để xây dựng dashboard theo vai trò như vậy, chúng ta nên áp dụng bộ lọc cho luồng thông tin đã thiết lập để trích xuất các đối tượng mà một vai trò nhất định quan tâm Làm như vậy để biểu diễn chi tiết là một thách thức vì một số thuộc tính và mẩu thông tin của một đối tượng có thể phù hợp với ý định của người dùng trong khi một số khác thì không.
Thứ ba, do trực quan hóa dữ liệu ngày nay cung cấp quá nhiều biểu đồ dữ liệu, chúng ta cần xác định rõ ràng biểu đồ nào sẽ được sử dụng cho dashboard đang được xây dựng Ví dụ: biểu đồ đường sẽ được sử dụng tốt nhất để trực quan hóa tập dữ liệu chuỗi thời gian hay biểu đồ đo là lựa chọn tốt để hiển thị giá trị tức thời có liên quan đến cấp dưới và cấp trên.
Sơ đồ khối tổng quát
Để tạo được một dashboard hướng quy trình, vai trò về mặt dữ liệu cũng cần đi qua nhiều giai đoạn Đầu tiên, chuyên gia dữ liệu phải tiền xử lý dữ liệu thô ở dạng CSV thành dữ liệu khớp với quy trình trong hệ thống như đoạn mã như Hình 3.1.
Code 3.1: Đoạn mã sql tiền xử lý dữ liệu thô SELECT DAY,FLIGHT_ID, FLIGHT_NAME,
SUM(CASE WHEN METRIC LIKE ’impression’ THEN total ELSE 0 END) AS Impression, SUM(CASE WHEN METRIC LIKE ’click’ THEN total ELSE 0 END) AS Click,
SUM(CASE WHEN METRIC LIKE ’played100’ THEN total ELSE 0 END) AS Played100
GROUP BY FLIGHT_ID, DAY
ORDER BY FLIGHT_ID, DAY
Sau đó phải trích lọc lần nữa để thêm trường dữ liệu tống số lượng đã chạy cho đến từng ngày (ví dụ: ngày đầu tien có 3 impression, ngày thứ hai có 4 impression thì Impression-Count sẽ bằng 7) và đặt tên của trường dữ liệu phải giống với tên của đối tượng dữ liệu trong quy trình BPMN nhưng không có khoảng trắng giống với đoạn mã ở Hình 3.1.
Code 3.2: Đoạn mã SQL để lấy thêm các trường dữ liệu tính năng SELECT FLIGHT_ID, DAY, Impression, sum(Impression) over (partition by FLIGHT_ID order by DAY) as
Click, sum(Click) over (partition by FLIGHT_ID order by DAY) as ClickCount,
Played100, sum(Played100) over (partition by FLIGHT_ID order by DAY) as Play100Count
GROUP BY FLIGHT_ID, DAY
ORDER BY FLIGHT_ID, DAY
Tiếp theo sẽ xuất dữ liệu vừa truy vấn và đưa tập tin dữ liệu lên máy chủ đám mây, ở đề tài này tôi dùng GitHub, và lưu giữ đường dẫn lại trước khi gọi chương trình plugin trong ứng dụng Camunda Modeler và sao chép vào vị trí nguồn dữ liệu của plugin.
Từ quy trình BPMN hiện tại trong ứng dụng, tôi tìm kiếm các đối tượng dữ liệu và chú thích ngữ nghĩa sao cho các đối tượng đó nằm trong pool giống với vị trí Role của plugin mà người dùng chọn Bước tiếp theo là lọc ra thành đối tượng dữ liệu có chú thích ngữ nghĩa và không có chú thích ngữ nghĩa.
Sau đó đối với nhóm đối tượng dữ liệu có chú thích ta dùng thêm mẫu biểu đồ đo còn nhóm còn lại sẽ chỉ vừa tạo biểu đồ tròn, vừa tạo biểu đồ đường Từng mẫu biểu đồ sẽ ở dạng tài liệu JSON và thay đổi tài liệu ở:
• Trường "tittle" của biểu đồ sẽ thay bằng tên của đối tượng dữ liệu.
• Trường "url" của biểu đồ thay bằng đường dẫn cơ sở dữ liệu đã đưa lên GitHub và người dùng sẽ sao chép và đưa vào vị trí DataSource của plugin.
• Vì trong mẫu biểu đồ chưa có các dữ liệu tính năng để vẽ ra biểu đồ phù hợp nên ta cũng phải có bước xử lý bằng cách xóa khoảng trắng trong tên của đối tượng dữ
Chương 3 Phương pháp nghiên cứu 26 liệu để phù hợp với dữ liệu tính năng trong cơ sở dữ liệu.
• Và thay tên dữ liệu trong biểu đồ thành tên của đối tượng dữ liệu cộng với "Run", thể hiện chú thích trong biểu đồ giúp người dùng khi xem có thể dễ hiểu.
Cuối cùng, kết hợp các biểu đồ trên vào trường "panels" trong mẫu dashboard ở dạng JSON và plugin sẽ tạo tài liệu trong máy Sau khi mở ứng dụng Grafana và nhập tài liệu JSON dashboard vừa tạo vào, ứng dụng sẽ kết xuất thành một dashboard hoàn chỉnh.
Nhìn chung, để thực hiện xuất ra một dashboard hướng quy trình, tôi tạo ra một plugin, trong plugin tôi có các mẫu của dashboard và các biểu đồ Tôi dùng plugin lấy dữ liệu, vai trò người dùng cùng với quy trình BPMN làm đầu vào Quy trình BPMN được ứng dụng Camunda Modeler hỗ trợ đầy đủ để vẽ Còn đối với dữ liệu cần tải lên đám mây – một phương thức để lưu dữ liệu trực tuyến và lấy đường dẫn trực tuyến này đưa vào công cụ plugin, nếu có thay đổi thì lấy đường dẫn cơ sở dữ liệu mới làm đầu vào Và vai trò người dùng sẽ dựa trên các tên pool của quy trình BPMN trên để người dùng có thể lựa chọn Từ plugin trên Camunda Modeler, tôi xuất ra được một tài liệu JSON biểu diễn dashboard có các biểu đồ phù hợp với đối tượng dữ liệu, vai trò và cơ sở dữ liệu Khi đưa tài liệu JSON đó vào Grafana, nền tảng này sẽ từ động vẽ đồ họa như đã biểu diễn qua các tham số trong JSON. Để dễ hình dung tôi dùng sơ đồ Hình 3.1 để nhấn mạnh tần số tải lên dữ liệu, hiện nay là hai lần một ngày, và nếu cần hãy dùng link cũ nhưng có các dữ liệu mới để tránh mất thêm thời gian cho việc tạo file JSON nhiều lần Từ đó tạo mới tài liệu JSON cho một quy trình cụ thể từ plugin khi và chỉ khi đổi vai trò người dùng, đường dẫn dữ liệu hoặc quy trình nghiệp vụ.
Hình 3.1: Sơ đồ khối tổng quát Ý tưởng chính của Hình 3.2 là nhúng công cụ sinh mã nguồn JSON vào trong trình soạn thảo quy trình trong ứng dụng Camunda Modeler như là một plugin Điều này giúp đơn giản hóa việc đọc các phần tử của một quy trình, tránh được khả năng phải xuất quy trình trong Camunda dưới dạng XML – việc này được hỗ trợ bởi chính ứng dụng CamundaModeler, rồi lại phải phân rã ngược lại để trích xuất các đối tượng cần thiết thành dạngJSON mà Grafana có thể kết xuất được.
Chương 3 Phương pháp nghiên cứu 28
Hình 3.2: Sơ đồ khối cho việc sinh mã nguồn JSON để nạp vào thư viện hiển thị dashboard
Các quy trình nghiệp vụ trong lĩnh vực quảng cáo
Quy trình cài đặt quảng cáo
Trước tiên, công ty phải có một chiến dịch quảng cáo được lên lịch sẵn Hình 3.3 mô tả quy trình cài đặt quảng cáo được vẽ trên công cụ BPMN, trong đó quản trị viên của nhóm kỹ thuật tạo chiến dịch quảng cáo và lên lịch cho chiến dịch đó sau khi giành được hợp đồng quảng cáo từ khách hàng Chiến dịch đã tạo sẽ tự động được kích hoạt trong khoảng thời gian đã được lên lịch Quy trình như sau:
• Đầu tiên quản trị viên sẽ cài đặt chiến dịch quảng cáo, bao gồm cả thời gian chiến dịch bắt đầu chạy.
• Tiếp theo quản trị viên sẽ cài dặt và lên lịch cho các Flight, cả thời gian và tổng đặt hàng (Total booking).
• Sau đó tạo một Creative, có thể là một banner hay là video quảng cáo.
• Và cuối cùng là lưu các dữ liệu vừa tạo vào cơ sở dữ liệu đám mây do công ty quản lý.
Hình 3.3: Quy trình cài đặt quảng cáo
Quy trình theo dõi số liệu của Flight quảng cáo đang chạy
Trong Hình 3.4 là một trong những quy trình nghiệp vụ cốt lõi của công ty Flight bắt đầu chạy theo đúng lịch đã đặt ra và số liệu đã được cập nhật vào khi có người dùng xem
Chương 3 Phương pháp nghiên cứu 30 quảng cáo, dựa trên flight ID được lấy từ cơ sở dữ liệu đám mây do công ty quản lý Mỗi flight được liên kết với đối tượng dữ liệu trong BPMN: Impression Count, Click Count và Play100 Count – hay còn gọi là Complete Count Khi quảng cáo hiển thị hệ thống sẽ tiến hành cộng vào đối tượng dữ liệu Impression Count Quá trình tiếp tục cập nhật một trong các đối tượng dữ liệu này theo hành động của người dùng, hành động này sẽ kích hoạt sự kiện tương ứng:
• Nếu người xem click vào quảng cáo đang chạy, hệ thống sẽ tiến hành cộng vào đối tượng dữ liệu Click Count và trang web hoặc ứng dụng sẽ chuyển sang trang đích (Landing Page) đã được cài đặt từ quy trình phần3.2.1.
• Nếu người xem bấm vào nút bỏ qua quảng cáo, trang web hoặc ứng dụng sẽ tắt quảng cáo và chuyển về nội dung đang xem.
• Nếu người xem có hứng thú và xem hết nội dung quảng cáo, hệ thống sẽ tiến hành cộng vào đối tượng dữ liệu Play100 Count và trang web hoặc ứng dụng sẽ tắt quảng cáo và chuyển về nội dung đang xem.
Tác vụ cuối cùng trong quy trình này cập nhật cho các đối tượng dữ liệu trên cơ sở dữ liệu đám mây và lưu các số liệu Lưu ý quy trình này đã được cải tiến từ quy trình cũ để thêm các đối tượng dữ liệu và chú thích ngữ nghĩa để có thể dùng plugin xuất ra tài liệu JSON để kết xuất sang dashboard.
Hình 3.4: Quy trình theo dõi số liệu của Flight
Quy trình tối ưu quảng cáo
Hình 3.5 là quy trình tối ưu hóa quảng cáo được vẽ trên công cụ BPMN khi chiến dịch quảng cáo đang chạy và số liệu đang được cập nhật vào Flight, nhân viên đặt hàng sẽ theo dõi báo cáo hằng ngày.
• Nếu chiến dịch quảng cáo bị thiếu số, nhân viên đặt hàng sẽ báo quản trị viên kiểm tra lại xem có vấn đề sơ sót về mặt cài đặt không?
– Nếu có, quản trị viên sẽ chỉnh lại và tiếp tục theo dõi.
– Nếu không có vấn đề nhưng vẫn bị thiếu số, quản trị viên sẽ
∗ Giảm Weigh (độ ưu tiên) của các chiến dịch quảng cáo có độ ưu tiên thấp hơn và tăng Weigh(độ ưu tiên) của các chiến dịch quảng cáo có độ ưu tiên cao hơn.
∗ Có thể tắt các chiến dịch quảng cáo chạy nội bộ (sẽ thông báo để các đội chạy quảng cáo nội bộ nắm tình hình chiến dịch của mình).
• Nếu có sự thay đổi về số lượng đặt hàng của chiến dịch quảng cáo hoặc tăng, giảm thời gian chạy, nhân viên đặt hàng sẽ thông báo lại với quản trị viên để điều chỉnh và đàm phán lại với khách hàng.
– Nếu việc giảm thời gian và tăng số lượng đặt quảng cáo dẫn đến tình trạng không đảm bảo đủ số, quản trị viên sẽ yêu cầu nhân viên bán hàng đàm phán lại sao cho phù hợp với chiến dịch quảng cáo mà vẫn đảm bảo đủ số.
– Nếu việc giảm thời gian và tăng số lượng đặt quảng cáo vẫn đảm bảo đủ số,quản trị viên sẽ cài đặt lại chiến dịch quảng cáo.
Chương 3 Phương pháp nghiên cứu 32
Hình 3.5: Quy trình tối ưu hóa quảng cáo
Quy trình kết thúc chiến dịch quảng cáo
Trước khi đặt hàng chạy quảng cáo, nhân viên đặt hàng đã thương lượng về giá của các loại hình Khách hàng mong muốn đặt.
• Nếu không đạt được thỏa thuận khách hàng có thể chọn loại hình quảng cáo phù hợp hơn về giá cả và mong muốn.
• Nếu hai bên đều chấp thuận thì sẽ tiến hành kí kết hợp đồng và chạy quảng cáo.
Hình 3.6 là quy trình khi kết quảng cáo được vẽ trên công cụ BPMN khi kết thúc chiến dịch quảng cáo, nhân viên đặt hàng sẽ gởi báo cáo bao gồm Tổng lượt hiển thị quảng cáo, số lượng Click hay số lượt Complete View tùy theo chiến dịch quảng cáo mà khách hàng đã đặt và tổng giá trị hợp đồng.
• Nếu có sự sai sót, Khách hàng liên hệ với nhân viên đặt hàng để kiểm tra lại số liệu của cả 2 bên.
– Nếu thấy có sự sai sót đến từ bảng báo cáo, nhân viên đặt hàng sẽ liên hệ với quản trị viên để đưa bảng báo cáo chuẩn và đúng nhất cho Khách hàng.– Nếu thấy sư sai sót đến từ phía khách hàng, khách hàng sẽ kiểm tra và thông báo lại với nhân viên đặt hàng.
• Nếu không có vấn đề và đạt được thống nhất, Khách hàng sẽ thanh toán theo đúng Hợp đồng đề ra ban đầu.
Hình 3.6: Quy trình kết thúc chiến dịch quảng cáo
Phần sinh mã dashboard
Sau đây là các quy trình thuật toán để tạo ra dashboard từ một quy trình cụ thể phục vụ vai trò người dùng nhất định Thuật toán 1 đóng vai trò là đầu vào Thuật toán này lấy quy trình BPMN, vai trò và dữ liệu làm đầu vào Ý tưởng là cung cấp cho dashboard dữ liệu được liên kết với quy trình nghiệp vụ cụ thể Trong vòng lặp chính của thuật toán này, tôi tìm kiếm một nhóm quy trình nghiệp vụ phù hợp với vai trò người dùng được chỉ định Nếu khớp, tôi thu thập các đối tượng dữ liệu của quy trình trên Ý tưởng chính là xây dựng một dashboard nơi mỗi đối tượng dữ liệu trong quy trình đó sẽ được hiển thị bằng một hoặc nhiều biểu đồ Tại các dòng mã số 11–12 của thuật toán 1, chúng tôi gọiThuật toán 2 để tạo tài liệu JSON dưới dạng mã nguồn và hiển thị nó sử dụng thư việnGrafana.
Chương 3 Phương pháp nghiên cứu 34
Algorithm 1: Xây dựng dashboard hướng quy trình, vai trò
Input:Pbpmn: representation of a business process in BPMN; role: user’s role; dat: a dataset fed to the to-be-constructed dashboard;
3 L pool ← list of all pools represented inP bpmn ;
6 foreacho∈list of all objects represented in P bpmn do
7 if o is contained in pthen
Thuật toán 2 lấy danh sách các đối tượng dữ liệu cùng với tập dữ liệu được truyền từ Thuật toán1làm đầu vào Khi lặp qua danh sách các đối tượng dữ liệu, với mỗi đối tượng, tôi tìm kiếm các dữ liệu tính năng tương ứng Khi đã trích xuất các dữ liệu tính năng cần thiết cho các đối tượng này, đầu tiên tôi tạo biểu đồ hình tròn để trực quan hóa từng đối tượng dữ liệu được trình bày trong quy trình nghiệp vụ nói trên Để nắm bắt được bức tranh tổng thể, tôi dùng biểu đồ đường trực quan hóa tất cả các đối tượng dữ liệu cùng nhau Tôi giả định rằng nếu một đối tượng dữ liệu được đính kèm bằng chú thích ngữ nghĩa (Text Annotation trên BPMN), thì nó sẽ là giới hạn trên của biểu đồ 21 , ví dụ: tổng số lượng đặt là giới hạn trên của cả Click Count và Impression Count Để làm phong phú cho dashboard, tôi chèn biểu đồ đo – thường được sử dụng để hiển thị số lượng đã chạy dưới dạng biểu đồ bổ sung Để hiển thị trực tiếp các biểu đồ đã tạo, chúng tôi cần cung cấp các giá trị được lấy từ tập dữ liệu đang được cung cấp.
21 Để đơn giản hóa, chúng tôi giả định rằng giới hạn dưới bằng 0.
Algorithm 2: Tạo tài liệu JSON để trực quan hóa danh sách các đối tượng dữ liệu Input:Lobj: list of data objects establishing the information flow for which the dashboard will be generated; dat: a dataset fed to the to-be-constructed dashboard;
Output: D json : a JSON document capturing the source code of the dashboard to be built
2 // A single overacting line chart for all objects in L obj ;
3 tf ← temporal feature of dat;
8 L f eature ← data features of datmatchingo;
10 f ield← a feature ofLf eature that best matches the name ofo;
11 if o comes with text annotation then
12 // We shall create a gauge chart for o;
14 max←numeric value of the annotated text;
16 setValues(gauge, SELECTf ieldFROM dat,max);
19 // Now let’s create a pie chart foro;
22 setValues(pie, SELECT f ieldFROM dat, SUM (SELECT f ieldFROMdat));
24 // We populate the overarching line chart with a line foro;
26 setValues(line,o, SELECT f ieldFROMdat WHERE tf matched);
Chuẩn bị dữ liệu
Tập dữ liệu thô được thu thập trong tháng 1 năm 2021 từ máy chủ của công ty, chứa 52019 bản ghi Được thu thập hai lần một ngày, dữ liệu theo dõi quảng cáo được gửi đến máy chủ này Mỗi bản ghi tương ứng với một vị trí đặt quảng cáo của flight Lưu ý rằng với tư cách là một Publisher, tại một thời điểm lấy dữ liệu công ty đang quản lý nhiều hợp đồng.
Chương 3 Phương pháp nghiên cứu 36
Vì thế, tập dữ liệu sẽ là số liệu thống kê của nhiều flight đang hoạt động trong khoảng thời gian lấy mẫu Bộ dữ liệu có các tính năng sau: tên flight (di động hoặc Web), số liệu thu thập được trên các nền tảng và tính năng dữ liệu chuỗi thời gian đại diện cho ngày dương lịch Khi được tải vào các thuật toán để hiển thị dashboard, tôi truy vấn một phần của tập dữ liệu này để tìm nạp các mục dữ liệu phù hợp để cung cấp cho dashboard.
Hình3.7là dữ liệu thô thu thập từ công ty, mỗi dòng là một dữ liệu máy chủ ghi nhận được khi hiển thị quảng cáo trên các thiết bị, nền tảng và dữ liệu sau khi được truy vấn qua hai đoạn mã 1và 2sẽ lọc bỏ những dữ liệu không cần thiết sẽ được dữ liệu như Hình 3.8, bảng dữ liệu sau khi đã truy vấn sẽ hiển thị số lượng chạy của impression, click, played100, impressioncount, clickcount, played100count theo từng ngày của flight 21007.
Hình 3.7: Dữ liệu thô thu thập được
Hình 3.8: Dữ liệu đã truy vấn
Hiện thực plugin
Mục đích là nhằm cụ thể hóa mong muốn phát triển một công cụ tạo mã nguồn ở dạngJSON của dashboard để có thể dễ dàng nhập vào Grafana Công cụ này như là một mô đun trong ứng dụng Camunda Modeler (một trình giúp mô hình hóa quy trình nghiệp vụ).Công cụ sẽ lấy trực tiếp mô hình quy trình đang soạn làm đầu vào Ngoài ra, công cụ còn yêu cầu người dùng cung cấp thêm thông tin đầu vào bao gồm vai trò và nguồn dữ liệu để nạp cho dashboard hiển thị sau này. Ý tưởng hiện thực được trình bày như sau:
• Ta có các tài liệu JSON mẫu của dashboard và từng đồ thị.
• Đầu tiên plugin sẽ dùng quy trình BPMN hiện thời làm đầu vào trên ứng dụng Camunda Modeler như Hình 3.9.
Hình 3.9:Plugin trên ứng dụng Camunda Modeler khi chưa nhập thông tin
• Sau đó trích xuất ra các pool có chưa các đối tượng dữ liệu và lấy đó làm dữ liệu cho Role của biểu mẫu plugin.
• Bước tiếp theo là trích xuất các đối tượng dữ liệu cùng với chú thích ngữ nghĩa liên kết với đối tượng dữ liệu đó.
• Sau đó dựa trên thông tin người dùng nhập vào là nguồn dữ liệu tương ứng với dữ liệu lưu trên đám mây đã giải thích ở phần 3.1.
• Sau khi nhập đầy đủ các thông tin yêu cầu, nút Generate JSON sẽ được kích hoạt như Hình 3.10 và sau khi nhấn vào, plugin dựa trên thông tin các đối tượng ở bước trên để đưa vào tài liệu JSON mẫu của từng đồ thị tương ứng.
Chương 3 Phương pháp nghiên cứu 38
Hình 3.10: Plugin trên ứng dụng Camunda Modeler khi đã nhập đủ các thông tin
• Và bước cuối cùng plugin gắn các tài liệu JSON của từng đồ thị vào tài liệu JSON dashboard.
• Tài liệu JSON như Hình 3.11 sẽ được xuất ra và nhập vào Grafana.
Hình 3.11: Mã nguồn JSON được tạo ra từ plugin
Kết quả trực quan hóa dashboard trên ứng dụng Grafana
Sau khi đã nhập tài liệu JSON vào Grafana theo bước sau:
• Bước 2: Chọn Import như Hình3.12.
Hình 3.12: Bước mở chức năng nhập tài liệu JSON trong Grafana
• Bước 3: Click vào Upload JSON file giống Hình 3.13và chọn tài liệu JSON vừa tạo.
• Bước 4: Sau khi có thông tin giống Hình 3.14 ta nhấn chọn Import.
Chương 3 Phương pháp nghiên cứu 40
Hình 3.13: Bước tải tài liệu JSON lên ứng dụng Grafana
Hình 3.14: Bước nhập tài liệu JSON
• Bước 5: Ứng dụng Grafana sẽ tự kết xuất thành các biểu đồ. Đầu tiên là biểu đồ đo Hình3.15,3.16, ta sẽ thấy rõ được số lượng chạy của flight 21007 là bao nhiêu, mỗi biểu đồ đo tương ứng với từng ngày và chạy so với tổng đặt hàng từ khách hàng Nếu số lượng chạy nhỏ hơn 80% so với tổng đặt hàng, biểu đồ sẽ là màu xanh, còn nếu từ 80% trở lên biểu đồ sẽ là màu vàng Việc chỉ có hai biểu đồ là do đối tượng dữ liệu có liên kết với văn bản chú thích
Hình 3.15: Biểu đồ đo dùng để đo lượt impression – Gauge Chart
Hình 3.16: Biểu đồ đo dùng để đo lượt click – Gauge Chart Đối với biểu đồ tròn trong Hình 3.17 biểu hiện tổng số lượng đã chạy được của từng đối tượng dữ liệu trong flight 21007, mỗi một màu trên biểu đồ tương ứng với mỗi ngày trong tháng Chú thích bên phải có thể hiện số lượng phần trăm của một ngày đóng góp cho flight trong tháng 1.
Hình 3.17: Biểu đồ tròn đo lường các chỉ số – Pie Chart
Còn biểu đồ đường trong Hình3.18 cho thấy cả ba chỉ số đã chạy được trong cùng một đồ thị, giúp quản trị viên có thể nhận biết được việc tăng giảm đột ngột, xem xét có vấn đề xảy ra hay không.
Chương 3 Phương pháp nghiên cứu 42
Hình 3.18: Biểu đồ đường đo lường các chỉ số – Line Chart
Ta có thể dựa vào các biểu đồ trên để phục vụ cho cả quy trình 3.2.2 – Theo dõi số liệu của Flight quảng cáo đang chạy và quy trình 3.2.3 – Tối ưu quảng cáo Giúp cho cả quản trị viên và nhân viên bán hàng theo dõi được tiến độ của chiến dịch, ở đây là Flight 21007 và có những hướng xử lý nếu có vấn đề xảy ra một cách kịp thời và nhanh chóng.
Trình bày và đánh giá kết quả
Sau khi vừa hoàn thành hiện thực công cụ tạo dashboard từ quy trình nghiệp vụ trong lĩnh vực quảng cáo, tôi thấy trong thực tế biểu đồ đo được tạo ra còn quá nhiều và chưa theo thứ tự nên việc theo dõi của các quản trị viên vẫn sẽ gặp khó khăn và hiện còn quá ít các biểu đồ để có thể cho các lãnh đạo xem được.
Tuy nhiên công cụ vẫn có tiềm năng khi tạo dashboard từ quy trình nghiệp vụ trong lĩnh vực quảng cáo giúp các biểu đồ dễ hiểu hơn khi gần với quy trình nghiệp vụ mà người đọc cần xem Và tạo tiền đề để phát triển thêm các biểu đồ khác cho dashboard Vì hạn chế về mặt thời gian nên tôi nhờ trực tiếp các đồng nghiệp có chuyên môn sâu về mặt theo dõi quảng cáo và trực tiếp vận hành hệ thống setup chiến dịch và flight quảng cáo cho nhận xét nên thiếu sót các biểu mẫu để tăng thêm sự tin cậy về plugin Tuy nhiên rất may mắn các đồng nghiệp đều cho lời khuyên một cách khách quan để có thể cải thiện hơn plugin trong tương lai Về mặt ưu điểm, đội kỹ thuật đánh giá cao việc công cụ sẽ giúp rút gọn thời gian xử lý trung gian qua cho các đội khác nhau khi có đến 75% sự đồng tình vì tránh được việc xem quá nhiều báo cáo Đồng thời khi nhìn vào biểu đồ cũng nắm được số lượng chạy của các chiến dịch quảng cáo, giúp cho việc tối ưu chiến dịch dễ dàng hơn.
Bên cạnh nhưng ưu điểm, công ty vẫn còn xem xét khi ứng dụng ra bên ngoài vì việc tìm kiếm nhân sự vẽ quy trình BPMN bên ngoài thị trường cũng khá khó khăn, và nhân sự đó phải cần thời gian để có thể nắm rõ được quy trình nghiệp vụ của công ty Ngoài ra công cụ vẫn còn khá ít biểu đồ nên cần phát triển thêm để có thể cho các đội khác, quản lý và lãnh đạo xem.
Kết luận và kiến nghị
Đóng góp của nghiên cứu
Kỹ thuật dashboard đã thu hút sự chú ý trong mô hình kiến trúc doanh nghiệp, dịch vụ và quản lý quy trình nghiệp vụ Một dashboard hiệu quả sẽ mang lại nhiều lợi ích cho việc ra quyết định bằng cách cung cấp cho người dùng doanh nghiệp nhiều chế độ xem nhanh về các cấp độ hoạt động, tài nguyên, tài sản, thiết bị, v.v của doanh nghiệp.
Nghiên cứu này tập trung vào việc phát triển công cụ sao cho nó lấy quy trình BPMN hiện thời trong ứng dụng Camunda Modeler, vai trò và tập dữ liệu làm đầu vào để tạo ra một tài liệu JSON mà khi nhập tài liệu đó vào Grafana thì ứng dụng Grafana sẽ tạo ra được một dashboard Việc này dựa vào việc chuyển đổi quy trình thành định dạng có thể trao đổi được bằng cách lọc ra các nhóm phù hợp với vai trò người dùng đã chọn Khi đó trích lọc ra các đối tượng dữ liệu (Data Object) và các chú thích ngữ nghĩa (Text Annotation) đi kèm với đối tượng để tạo thành một hoặc nhiều biểu đồ Ngoài ra tập dữ liệu người dùng đưa vào sẽ được nằm trong từng biểu đồ ở dạng đường dẫn để nạp dữ liệu thời gian thực cho từng biểu đồ.
So với mục tiêu đã đề ra, tôi đã xây dựng cơ chế tổng quát để tạo ra dashboard, cơ chế đề xuất hoạt động được cho nhiều lĩnh vực khác nhau như lĩnh vực thuê xe tự lái hay trong lĩnh vực nông nghiệp thông minh bên cạnh lĩnh vực theo dõi quảng cáo được lựa chọn để trình bày cho tiết Nhín chung, công cụ sinh mã nguồn cho dashboard có thể chạy cho bất kì quy trình nghiệp vụ nào khi tuân theo sơ đồ khối Hình 3.1 và Hình 3.2 đã đề xuất ở phần 3.1.
Qua quá trình tìm hiểu và hiện thực, tôi thấy hiện nay mặc dù có rất nhiều sự hỗ trợ cho dashboard dựa trên vai trò trong cả nghiên cứu và học thuật, tuy nhiên vẫn khá ít chủ đề liên quan đến dashboard hướng quy trình cho nên nghiên cứu này đóng góp thêm một phần về mặt học thuật về vấn đề tạo dashboard hướng quy trình, vai trò.
Về mặt thực tiễn, dashboard sau khi giới thiệu bước đầu qua việc chọn lĩnh vực cụ thể là theo dõi quảng cáo cũng nhận được nhiều góp ý, công ty đánh giá cao về mặt giúp tránh được mất khá nhiều thời gian khi trao đổi giữa các đội với nhau và dễ hình dung ra số lượng chạy của quảng cáo Bên cạnh đó công ty vẫn đang xem xét vì công cụ hiện vẫn còn khá ít biểu đồ để ứng dụng thực tiễn và khó khăn khi tìm kiếm nhân sự để vẽ quy trìnhBPMN Tuy nhiên đó vẫn là tiền đề để có thể phát triển thêm các biểu đồ khác trong dashboard một cách dễ dàng từ quy trình nghiệp vụ trong quảng cáo.
Hạn chế của nghiên cứu
Mặc dù đã tạo ra được dashboard hướng quy trình trong lĩnh vực quảng cáo nhưng đề tài vẫn đối mặt với một số thiếu sót và thách thức:
• Đầu tiên, trong trường hợp có các đối tượng dữ liệu không khớp với bất kỳ tính năng dữ liệu nào của tập dữ liệu được cung cấp, dashboard được tạo ra sẽ không được hiển thị chính xác Trong thực tế còn tồi tệ hơn, khi các nhà lập mô hình quy trình có thể bỏ qua các đối tượng dữ liệu hoàn toàn vì việc sử dụng chúng là không bắt buộc trong mô hình hóa quy trình.
• Thứ hai, cách tiếp cận của tôi chỉ hỗ trợ một vài loại biểu đồ, cụ thể là biểu đồ hình tròn, thước đo và biểu đồ đường.
• Thứ ba, gần như không thể điều chỉnh dashboard được tạo vì tôi không cung cấp công cụ hỗ trợ để chỉnh sửa trực quan tài liệu JSON để thêm các biểu đồ và thành phần đa phương tiện khác vào.
Định hướng nghiên cứu trong tương lai
Lĩnh vực thuê xe tự lái
Thuê xe tự lái là mảng kinh doanh có dư địa tăng trưởng mạnh ở các thị trường mới nổi. Ở các nước phát triển, các công ty cho thuê xe không ngừng số hóa sử dụng công nghệ Internet vạn vật nhằm tự động hóa hơn nữa các quy trình nghiệp vụ.
Quy trình thuê xe đối với khách hàng chủ yếu bao gồm:
1 Việc đầu tiên khách hàng cần thống nhất các yêu cầu:
• Loại xe mong muốn thuê khi đi du lịch.
• Có bao nhiêu người tham gia.
• Số ghế cần thiết là bao nhiêu.
• Thời gian thuê xe bắt đầu từ mấy giờ.
• Ngày dự kiến là khi nào.
• Thời gian đón là mấy giờ.
• Địa điểm xuất phát ở đâu.
• Thời gian kết thúc chuyến đi là khi nào.
2 Sau khi thông nhất yêu cầu, khách hàng bắt đầu kí hợp đồng và tiến hành đặt cọc. Còn quy trình thuê xe đối với người cung cấp dịch vụ sẽ tiến hành theo các bước
1 Tiếp nhận yêu cầu: Cần cho người cung cấp dịch vụ biết mọi yêu cầu về lộ trình,quãng đường và dòng xe mà khách hàng muốn nhắm tới
2 Xử lý thông tin: Từ những thông tin của khách hàng cung cấp, người cung cấp dịch vụ sẽ xác nhận để tư vấn – báo giá(khuyến mãi cho thuê xe) phù hợp với lộ trình của khách hàng.
• Loại xe, mầu xe muốn đặt thuê.
• Thời gian lộ trình: Ngày đi, thời gian, địa điểm xuất phát.
• Thời gian dùng xe: Ngày về thời gian, địa điểm trả.
• Số km cho cả lịch trình: số km dự kiến hoặc điểm đến.
• Các vấn đề phát sinh.
3 Làm hợp đồng: Sau khi chốt phương án tối ưu, một bản hợp đồng cho thuê xe rõ ràng được soạn thảo để đảm bảo quyền lợi cho hai bên
4 Triển khai dịch vụ: Người cung cấp dịch vụ sẽ triển khai dịch vụ theo đúng hợp đồng quy định.
5.3.1.2 Dashboard mong muốn hiển thị Đối với các quy trình thuê xe nói trên, thường chủ doanh nghiệp hoặc người cung cấp dịch vụ sẽ cần xem các thông tin:
• Các loại xe nào khách hàng thường sẽ thuê Giúp tập trung nhiều chi phí cũng như bảo trì vào dòng xe đó, thay vì tốn nhiều ở các dòng xe không được ưa chuộng.
• Nếu là doanh nghiệp có nhiều chi nhánh ở các tỉnh, người cung cấp hoặc chủ doanh nghiệp cũng sẽ xem về địa điểm nào thường được khách hàng thuê xe để có thể trang trí chi nhánh cũng như tìm tài xế, người dẫn chương trình phù hợp với khách hàng.
• Thời gian thuê khi của từng loại xe như thế nào Việc này giúp tránh việc thiếu xe trong những thời gian cao điểm.
• Các loại chi phí phát sinh thường là gì giúp có việc trao đổi và tư vấn với khách hàng dễ dàng và khiến họ có thể hài lòng hơn.
Chương 5 Kết luận và kiến nghị 48
Lĩnh vực nông nghiệp thông minh
Nông nghiệp thông minh 22 đề cập đến việc quản lý trang trại bằng công nghệ Thông tin và truyền thông hiện đại để tăng số lượng và chất lượng sản phẩm đồng thời tối ưu hóa sức lao động của con người.
Mục tiêu của chương trình nông nghiệp thông minh [23] là nhằm vào việc phát triển và thương mại hóa các công nghệ nông nghiệp chính xác; phát triển nguồn nhân lực chất lượng cao trong khoa học nông nghiệp thông qua chương trình nghiên cứu tương thích mang tính quốc tế; tăng cường kết nối với các tổ chức trong và ngoài nước; phát triển mối liên kết với ngành công nghiệp để tiếp cận, chuyển giao công nghệ, phát triển kỹ năng và dịch vụ cộng đồng.
5.3.2.1 Quy trình triển khai nông nghiệp thông mình
Các thiết bị IoT được lắp đặt trong trang trại phải thu thập và xử lý dữ liệu theo chu kỳ lặp đi lặp lại để cho phép nông dân phản ứng nhanh chóng với các vấn đề mới và những thay đổi trong điều kiện môi trường xung quanh Nông nghiệp thông minh sẽ tuân theo quy trình 23 như sau:
1 Quan sát: Các cảm biến ghi lại dữ liệu quan sát từ cây trồng, vật nuôi, đất hoặc khí quyển.
2 Chẩn đoán: Các giá trị cảm biến được cung cấp cho nền tảng IoT được lưu trữ trên đám mây với các mô hình và quy tắc quyết định được xác định trước – còn được gọi là “logic nghiệp vụ” – xác định tình trạng của đối tượng được kiểm tra và xác định mọi thiếu sót hoặc nhu cầu.
3 Quyết định: Sau khi các vấn đề được tiết lộ, người dùng và các thành phần dựa trên máy học của nền tảng IoT sẽ xác định xem liệu có cần xử lý vị trí cụ thể hay không và nếu có thì sẽ xử lý như thế nào.
4 Hành động: Sau khi người dùng cuối hành động, hệ thống sẽ đánh giá và chu trình sẽ lặp lại từ đầu.
5.3.2.2 Dashboard mong muốn hiển thị
Từ quy trình trên, chủ doanh nghiệp thường sẽ mong muốn xem:
22 https://www.iotforall.com/smart-farming-future-of-agriculture
23 https://www.iotforall.com/smart-farming-future-of-agriculture
• Cây trồng nào được trồng tươi tốt nhất
• Những cây trồng nào kết hợp đất sẽ màu mỡ
• Nhưng cây trồng nào đem lại lợi nhuận tốt nhất
• Những vấn đề nào xảy ra nhiều nhất trong nông trại
• Dự đoán tương lai về việc trồng trọt của doanh nghiệp
Bên canh đó, người trồng trọt cũng sẽ muốn xem:
• Thời gian thu hoạch của cây trồng hiện tại
• Các thông báo, cảnh báo về cây trồng
• Nhiệt độ, độ ẩm, độ màu mỡ của đất, tốc độ gió, dự báo mưa như thế nào
Danh mục công trình khoa học đã công bố
1 N Nguyen and L.-S Lê,"Toward Code Generation for Process-oriented, Role-basedDashboards: An Example of Digital Advertising in Vietnam," in Proceedings of16th International Conference on Advanced Computing and Analytics, IEEE Com- puter Society, pp 20–26,Ho Chi Minh City,Vietnam, November2022
Toward Code Generation for Process-oriented, Role-based Dashboards
An Example of Digital Advertising in Vietnam
Nga Nguyen and Lam-Son Lˆe Faculty of Computer Science & Engineering
Ho Chi Minh City University of Technology (HCMUT) Vietnam National University (VNU-HCM)
268 Ly Thuong Kiet Street, District 10, Ho Chi Minh City, Vietnam
Abstract—With the rise of data visualization techniques, dash- board engineering has attracted a great deal of attention in the last decade, but has been hampered by a lack of automation tools In today’s enterprise systems, business users expect dashboards to be more process-oriented in addition to being context-sensitive While many commercial business intelligence tools offer role-based dashboard, the idea of constructing a process-oriented dashboard has drawn the attention of scholars in recent years The paper reports on our preliminary work in the generation of such a dashboard by iterating through all the pools and data objects visually depicted in a business process and generating the computer-interpretable source code that represents the corresponding visualization charts To make this process-oriented dashboard lively visible, we load a real dataset together with the generated source code into a dashboard- rendering library To demonstrate the relevance of our work, we walk through a real-life digital advertising project and illustrate how a dashboard could be generated and rendered for a given business process.
Index Terms—Dashboard, Business Process Management, Busi- ness Intelligence.
Service-oriented enterprise architecture plays a central role in today’s enterprise engineering as digitization and servitization gather traction in the present-day’s digital en- terprise systems [1], [2] Service provisioning is neither a rebranding of nor a syntax sugar for other building blocks in enterprise engineering For example, while a process is in place to achieve a business goal, a service is designed to deliver values [3] A business process could be enacted by concatenating services In the other way around, the operation of a business service involves multiple supporting processes behind the scene [4] In either way, we are in need of an effective modeling technique to represent Enterprise
Architecture (EA) – widely known as Enterprise Architec- ture Modeling The intent of EA is to determine how an organization can effectively achieve its current and future objectives [5] This EA modeling practice involves creating a holistic, multi-view representation of an enterprise Com- plexity and heterogeneity are among the typical properties of
EA models since they could span multiple hierarchical levels and several functions 1 During the course of an EA project, an EA team may construct multiple diagrams to express an EA model from different perspectives This EA model consists of a large number of model elements capturing various aspects of the enterprise, which could be categorized into the following people & role, data, processes, services, information, intention & motivation, resources & physical equipment With the rise of data science, EA practitioners expect to enrich their EA models with advanced analytics and data visualization [6], [7] As computer graphics and user interface standards continue to evolve at a rapid pace, dashboard engineering increasingly becomes a popular tool for present-day business intelligence Providing at-a-glance views on different layers of the enterprise being represented has proved useful for understanding its internal, in-flow and out-flow operations [8] In general, a dashboard could either be role-based or process-oriented While we enjoy substan- tial support for role-based dashboards in the literature and the commercial frameworks [9], [10], [11], [12], attempts to engineer a dashboard that is geared up for a given business process still stay on the sidelines.
Generating a dashboard in accordance to a business process could be done by following the so-called process- model-driven monitoring methodology [13] by matching data types and goals to the data sources According to a survey on information dashboards [14], this approach is part of model-driven development, which is a common technique that employs a meta-model to generate the source code necessary for rendering a dashboard [15], [16] This paper reports our preliminary work towards the creation of process-oriented dashboards We take a machine-readable representation of business process as the input, from which a list of data objects and process participants are extracted be- fore we proceed further We select those objects that match the dataset provided and correspond to a user’s role who is identified by one of the process participants Our algorithms
1 The former usually is presented horizontally while the latter vertically in many overview charts showing the organization of an enterprise.
DOI 10.1109/ACOMPA57018.2022.00010 shall generate a textual description of the dashboard to be built, which could be rendered thanks to Grafana 2 – an open source library that allows us to monitor and analyze metrics, logs and traces.
The rest of this paper is structured as follows In Section
2, we describe our running example and formulate our re- search questions We propose the algorithms and a prototype for generating a process-oriented, role-based dashboard in
Section 3 In Section 4, we briefly survey the related work.
Section 5 offers final remarks and outlines our future work.
In this section, we first provide the definition of com- mon advertising terms (Subsection 2.1) and describe the advertising business of a real-life company in Subsection
2.2 before presenting the main business process (Subsection
2.3) for which we will illustrate how a dashboard might be generated later on Subsection 2.4 formulates up our research motivation.
To make the paper self-contained, in the following we borrow from online sources 345 the definition of common advertising terms that we refer to in our case-study.
• Advertiser An advertiser is a brand or company (e.g. advertising agency) that wants to get its product or service in front of its target audience to build brand awareness, develop brand loyalty, and increase sales.
• Publisher A publisher can be defined as any com- pany that produces content that attracts an audience.
Traditional publishers include newspapers and mag- azines in the offline world In our digital world, they are Web portals, online entertainment websites and mobile apps.
• Campaign An advertising campaign is a specifically designed strategy that is carried out across different mediums in order to achieve desired results such as increased brand awareness, increased sales, and improved communication within a specific market.
• Flight Flighting involves allocating your advertising budget to ensure maximum exposure during optimal periods No advertising occurs during suboptimal periods, conserving your advertising dollars.
• Placement Ad placement refers to the location a display ad will be shown Ad placements can vary in effectiveness and often require a level of testing to understand where the optimal placement will be.
This will also be dictated by the platform being uses.