MỞ ĐẦU Hệ sinh thái dịch vụ và các thành phần phần mềm phục vụ nhu cầu của các thành phố [3, 4] ngoài việc phân phối dịch vụ còn phải tạo ra môi trường, khung thức, chuẩn mực để các ứng dụng phần mềm, máy móc trang thiết bị, quy trình nghiệp vụ, quy trình tự động, v. có thể trực tiếp lựa chọn sử dụng dịch vụ được cung cấp [5]. Điều đó làm nền tảng cho việc con người và các đơn vị kỹ thuật xã hội (socio-technical) cùng cộng tác một cách hiệu quả nhằm đem lại giá trị mới theo tinh thần của thành phố thông minh [6] và thời đại Công nghiệp 4. Sự tham gia của công nghệ thông tin giúp số hóa chính phủ điện tử [8, 9] đã làm nên một cuộc thay đổi lớn từ các công việc, dịch vụ công truyền thống thành dịch vụ chính phủ điện tử [10].
Các dịch vụ này đã trở thành một trong những yếu tố cốt lõi của cải cách và quản lý chính phủ điện tử để có thể góp phần nổi bật trong quản trị trong tương lai. Đã có một số cơ quan, tổ chức nhà nước quan tâm và đề xuất nhiều giải pháp về việc phát triển, xác định vai trò của các dịch vụ này trong đó Cục tin học hoá của Bộ truyền thông cũng đưa ra cách tiếp cận ứng dụng ngôn ngữ mô hình hóa kiến trúc nghiệp vụ số và quy trình nghiệp vụ1 để mô tả quy trình, kiến trúc của chính phủ điện tử thể hiện rõ hơn về các dịch vụ công và nghiệp vụ cũng như sự tương tác của chúng với lớp ứng dụng công nghệ thông tin. Thuật ngữ hệ sinh thái dùng ở đây có hai hàm ý. Thứ nhất, theo cách nhìn của sinh học, hệ sinh thái có logic và nghi thức sống được hình thành và ổn định qua thời gian.
Nếu có sự thay đổi nhất định mà không quá đường đột vào một phần của hệ sinh thái, các thành phần khác có thể bị ảnh hưởng ít nhiều và sau đó trải qua tiến trình tái ổn định để tiếp tục sự sống. Các dịch vụ và thành phần ứng dụng phục vụ thành phố thông minh hay chuẩn Công nghiệp 4.0 cần được tổ chức như một hệ sinh thái có tương tác qua lại và đạt được sự cân bằng động cho các thực thể như con người, quy trình, máy móc. Thứ hai, theo cách nhìn hình tượng hóa, hệ sinh thái là một tập hợp các dịch vụ hay thành phần 1 Ứng dụng công nghệ thông tin trong cơ quan nhà nước https://aita.vn/ 18 ứng dụng cần được tổ chức lại ở mức độ trên hẳn mức lắp ráp thuần túy của đa số kiến trúc phần mềm hay còn gọi là kiến trúc vi mô2 hiện nay. Một kịch bản điển hình của cân bằng động và trừu tượng hóa cao là nhu cầu tổ hợp các dịch vụ hay thành phần ứng dụng để phục vụ quy trình nghiệp vụ, quy trình sản xuất diễn ra tùy theo nhu cầu mới xuất hiện [12].
Việc tổ hợp này cũng dẫn đến giải tán tổ hợp khi không còn cần thiết nữa, rồi lại dẫn đến một tổ hợp khác. Kiến trúc phần mềm truyền thống chỉ chấp nhận lắp ráp chúng với thiết kế cho một ứng dụng và hầu như không áp dụng cách nhìn linh động này [13]. Năm thách thức của hệ sinh thái dịch vụ Dịch vụ được định nghĩa là các hoạt động giao dịch trao đổi giữa hai bên có hoặc không có sự giám sát của bên thứ ba [14]. Hai bên ở đây ám chỉ bên cung cấp dịch vụ và bên thụ hưởng – còn gọi là khách hàng.
Một giao dịch của dịch vụ, vốn có thể được xem như một hợp đồng với các cam kết cụ thể, giúp tạo ra giá trị và có thể hoặc không liên quan đến các thực thể vật lý. Tầng dịch vụ cung cấp các đầu mối để các đề án hoặc sáng kiến của Tp. HCM cần vận dụng theo thể thức các nhu cầu về tính toán đều ở dạng dịch vụ. Các dịch vụ có thể ở mức cung cấp năng lực tính toán trong khi che giấu nền tảng kết nối, lưu trữ dữ liệu khổng lồ (bigdata), các máy chủ mạnh và khả năng cảm biến linh hoạt – tạm gọi là hạ tầng cốt lõi.
Tầng dịch vụ nên được đặc tả ở dạng tổng quát nhưng cũng không thể thiếu các chi tiết cụ thể. Đây là thách thức thứ nhất. Đặc tả tổng quát giúp đón đầu sự thay đổi về định hướng ứng dụng của thành phố khi trọng tâm bị dịch chuyển trong thời đại năng động ngày nay. Nói cách khác, đặc tả các dịch vụ mở theo cách tổng quát đem lại sự linh động cần thiết giúp điều chỉnh định hướng nhu cầu tính toán theo góc nhìn quản lý quy hoạch vĩ mô của thành phố như: chiến lược quy hoạch (tactical management goals), quy trình nghiệp vụ (business processes), các ưu tiên trọng điểm dưới dạng luật nghiệp vụ (business rules) hay các ràng buộc xung quanh thế giới quan chúng ta (environmental constraints) [15].
Đặc tả chi tiết tầng dịch vụ giúp tìm 2 Tác giả Sommerville định nghĩa hai kiến trúc vi mô và vĩ mô khi nói đến các hệ thống phần mềm ngày nay [11]. Kiến trúc vĩ mô ám chỉ mối tương quan tổng thể con người, quy trình nghiệp vụ và phần mềm. 19 kiếm, vận hành các dịch vụ. Cụ thể, dịch vụ cần được đặc tả bao gồm các yếu tố kỹ thuật và phi kỹ thuật cùng với các thuộc tính về chất lượng dịch vụ.
Mặc dầu dịch vụ cho định hướng thành phố thông minh có thể rất đa dạng và rơi vào nhiều phân loại khác nhau, chung quy chúng ta cần liệt kê một số yếu tố cốt lõi khi miêu tả chúng như khả năng nghiệp vụ (capability), thỏa thuận cấp độ dịch vụ, mục tiêu dịch vụ (goal), yếu tố đầu vào và đầu ra (input/output), giao tiếp (touchpoint), kênh trao đổi (service encounter), các điều kiện tiên quyết (pre-condition), điều kiện kết quả (post-condition), giá trị tạo ra (values) và giá trị đồng tạo ra (co-created values) của dịch vụ. Thách thức thứ hai đến từ mức độ trừu tượng hóa và khả năng che giấu việc khai thác nền tảng hỗ trợ khi đặc tả và công bố dịch vụ cho nhu cầu tìm kiếm, vận hành hệ thống dịch vụ theo nhu cầu riêng của từng đối tác của thành phố. Dịch vụ cung cấp nên được đặc tả theo góc độ nghiệp vụ. Dưới góc nhìn thiết kế dịch vụ, dịch vụ cần được chia nhỏ ra thành các dịch vụ con trong đó các dịch vụ con này sẽ khai thác nền tảng kết nối, phân tích dữ liệu khổng lồ, vận hành chức năng cảm biến để cụ thể hóa đặc tả dịch vụ đã được miêu tả.
Tuy nhiên, cách khai thác nền tảng bên dưới này chỉ nên được phơi bày một cách hạn chế cho các đối tác vận hành dịch vụ của thành phố nhằm làm tăng mức độ trừu tượng hóa để có thể thay thế hạ tầng cốt lõi khi cần thiết. Trong khi đó nghiệp vụ thiết kế dịch vụ lại cần làm rõ việc khai thác hạ tầng cốt lõi bao gồm sự kết nối, xử lý, lưu trữ dữ liệu khổng lồ và vận hành chức năng cảm biến. Thách thức thứ ba xuất phát từ nhu cầu có được một tuyến kết nối chung giúp đăng ký các dịch vụ, tìm kiếm chúng theo nhu cầu, tổ chức chúng vào các thành phần ứng dụng hay các quy trình và triệu gọi các dịch vụ mà không cần biết các chi tiết chúng được triển khai ở vị trí vật lý hay dùng kỹ thuật nào. Trong một hệ sinh thái dịch vụ, ứng dụng như đã minh họa, việc khai thác dịch vụ cần được khái quát hóa theo đa chiều (ví dụ, có thể tìm kiếm khai thác dịch vụ theo nghiệp vụ, theo vị trí, theo chất lượng dịch vụ).
Cách thức triệu gọi cần được tổng quát hóa cho nhiều thể thức ví dụ như giữa máy và người, giữa máy với máy, giữa phần mềm với nhau, giữa con người với quy trình, giữa quy trình với máy hay ứng dụng. Ở đây có sự phân biệt giữa máy (hay thiết bị) với ứng 20 dụng phần mềm theo tinh thần chuẩn Công nghiệp 4. Như vậy tuyến giao tiếp chung phải có được nghi thức độc lập với bản chất của các thể thức vừa kể. Để đạt được điều này, dễ nhận thấy phải đánh đổi một phần hiệu năng của toàn bộ hệ sinh thái dịch vụ, ứng dụng.
Tuy nhiên lợi ích về sự tổng quát hóa cùng với băng thông ngày càng tốt lý giải được sự đánh đổi này. Riêng về vấn đề tổ chức dịch vụ theo quy trình nghiệp vụ, với tinh thần Công nghiệp 4.0 ngày nay, các quy trình có thể được phân loại vào nhiều nhóm chuyên biệt (sản xuất, tự động hóa, phân phối, hành chính sự nghiệp). Cách thức mô hình hóa việc tìm kiếm, tổ hợp kết nối các dịch vụ để phục vụ tốt các quy trình theo các nhóm đó cần được nâng lên tầm mới. Nói cách khác, chúng ta cần phương pháp luận, gợi ý (heuristics) chuyên biệt giúp tăng tính hiệu quả của việc tổ hợp dịch vụ.
Thách thức thứ tư đặt trọng tâm ở việc kiểm thử dịch vụ và thành phần ứng dụng trong hệ sinh thái đặc biệt này. Về quy ước, có hai thể loại kiểm thử là kiểm thử nghiệm (validation testing) và kiểm thử khiếm khuyết (defect testing). Triết lý này vẫn có thể áp dụng cho kiểm thử hệ sinh thái dịch vụ và ứng dụng. Ở đây, chiến thuật kiểm thử nghiệm cần xem xét các thuộc tính phi chức năng như hiệu năng, tính tin cậy, mức độ sẵn sàng, v.
của việc khai thác các dịch vụ và thành phần ứng dụng. Chiến thuật kiểm thử nghiệm cần có các lý thuyết phù hợp như phân hoạch đầu vào như thế nào để có được tập hợp các miền đại diện, kiểm thử tại biên hay ngưỡng con số zero ra sao. Thách thức cao hơn trong mảng này ở chỗ đưa ra được phương pháp luận kiểm thử khiếm khuyết cho các dịch vụ và thành phần ứng dụng như là các đơn vị độc lập. Vấn đề nằm ở chỗ các dịch vụ và thành phần ứng dụng có tính mở cao.
Sẽ không khả thi khi cố gắng liệt kê hết các tổ hợp có thể có của các dịch vụ và thành phần ứng dụng được đăng ký trên hệ sinh thái đang miêu tả. Chúng được tổ hợp theo yêu cầu, theo quy trình nghiệp vụ hay quy trình tự động. Các tính chất của sự tổ hợp chỉ xuất hiện khi vận hành tổ hợp. Phương pháp luận kiểm thử khiếm khuyết cần xâm nhập vào các dòng lệnh kết dính (glue code) các dịch vụ hay thành phần ứng dụng để ra lỗi thực thi, sự đụng độ, tranh chấp hạ tầng tính toán, kết nối mạng.