Những điều cơ bản về ALM với Microsoft Power Platform
Bài viết
Bài viết này mô tả các thành phần, công cụ và quy trình cần thiết để thực hiện quản lý vòng đời ứng dụng (ALM).
Môi trường
Môi trường là một không gian để lưu trữ, quản lý và chia sẻ dữ liệu, ứng dụng và dòng quy trình công việc của tổ chức. Chúng cũng đóng vai trò là nơi chứa các ứng dụng riêng biệt có thể có vai trò, yêu cầu bảo mật hoặc đối tượng mục tiêu khác nhau. Mỗi môi trường chỉ có thể có một cơ sở dữ liệu Microsoft Dataverse. Thông tin thêm: Tổng quan về môi trường
Quan trọng
Khi bạn tạo một môi trường, bạn có thể chọn cài đặt các ứng dụng Dynamics 365, chẳng hạn như Dynamics 365 Sales và Dynamics 365 Marketing. Điều quan trọng là xác định tại thời điểm đó các ứng dụng này có được yêu cầu hay không bởi vì chúng không thể được gỡ cài đặt hoặc cài đặt sau này. Nếu bạn không xây dựng các ứng dụng này và sẽ không yêu cầu chúng trong tương lai, chúng tôi khuyên bạn không nên cài đặt chúng trong môi trường của mình. Điều này sẽ giúp tránh các biến cố phụ thuộc khi bạn phân phối giải pháp giữa các môi trường.
Các loại môi trường được sử dụng trong ALM
Sử dụng trung tâm quản trị Power Platform, bạn có thể tạo các loại môi trường Power Platform:
Sandbox Môi trường sandbox là bất kỳ môi trường nào không phải môi trường sản xuất Dataverse. Đã được cách ly khỏi môi trường sản xuất, môi trường hộp cát là nơi phát triển an toàn và thử nghiệm các thay đổi đối với ứng dụng có rủi ro thấp. Môi trường hộp cát bao gồm các khả năng có hại trong môi trường sản xuất, chẳng hạn như đặt lại, xóa và sao chép các hoạt động. Thông tin thêm: Quản lý môi trường hộp cát
Sản xuất Môi trường nơi các ứng dụng và phần mềm khác được đưa vào hoạt động để sử dụng theo mục đích dự kiến.
Nhà phát triển (trước đây gọi là Cộng đồng). Gói nhà phát triển Power Apps cho bạn quyền truy cập vào chức năng cao cấp của Power Apps, Dataverse và Power Automate để phục vụ mục đích sử dụng cá nhân. Kế hoạch này chủ yếu nhằm xây dựng và thử nghiệm với Power Apps, Power Automate và Microsoft Dataverse hoặc cho mục đích học tập. Môi trường dành cho nhà phát triển là môi trường một người dùng và không thể dùng để chạy hoặc chia sẻ các ứng dụng sản xuất.
Mặc định Một môi trường mặc định duy nhất sẽ tự động được tạo cho mỗi đối tượng thuê và được chia sẻ bởi tất cả người dùng trong đối tượng thuê đó. Người thuê xác định khách hàng, người có thể có một hoặc nhiều Microsoft đăng ký và dịch vụ liên quan đến mình. Bất cứ khi nào người dùng mới đăng ký Power Apps, họ được tự động thêm vào vai trò Người tạo của môi trường mặc định. Môi trường mặc định được tạo ở vùng gần nhất với vùng mặc định của Microsoft Entra người thuê và được đặt tên là: "{Microsoft Entra tên người thuê} (mặc định)"
Tạo và sử dụng đúng môi trường cho một mục đích cụ thể, chẳng hạn như phát triển, thử nghiệm hoặc sản xuất.
Xác định và quản lý sự bảo mật của nguồn lực và dữ liệu của bạn trong Microsoft Dataverse. Microsoft Power Platform cung cấp vai trò quản trị viên cấp môi trường để thực hiện các nhiệm vụ. Dataverse bao gồm các vai trò bảo mật xác định mức độ truy cập vào ứng dụng, thành phần ứng dụng và người tạo cũng như người dùng ứng dụng nguồn lực có trong Dataverse.
Mục đích môi trường
Các vai trò có quyền truy cập
Bình luận
Phát triển
Những người tạo và phát triển ứng dụng.
Người dùng ứng dụng không nên có quyền truy cập. Các nhà phát triển yêu cầu tối thiểu vai trò bảo mật Người tạo môi trường để tạo nguồn lực.
Kiểm tra
Quản trị viên và những người đang thử nghiệm.
Người tạo ứng dụng, nhà phát triển và người dùng ứng dụng sản xuất không nên có quyền truy cập. Người dùng thử nghiệm phải có đủ đặc quyền để thực hiện thử nghiệm.
Sản xuất
Tất cả các quản trị viên và người dùng ứng dụng. Người dùng nên có đủ quyền truy cập để thực hiện các tác vụ của mình cho các ứng dụng họ sử dụng.
Những người tạo và phát triển ứng dụng không nên có quyền truy cập hoặc chỉ nên có các đặc quyền cấp người dùng.
Mặc định
Theo mặc định, mọi người dùng trong đối tượng thuê của bạn có thể tạo và chỉnh sửa ứng dụng trong một môi trường mặc định Dataverse có cơ sở dữ liệu.
Bạn nên tạo môi trường cho một mục đích cụ thể và chỉ cấp các vai trò và đặc quyền phù hợp cho những người cần chúng.
Các giải pháp được dùng để truyền tải ứng dụng và thành phần từ môi trường này sang môi trường khác hoặc để áp dụng một bộ tùy chỉnh cho ứng dụng hiện có.
Các giải pháp có các tính năng sau:
Chúng bao gồm siêu dữ liệu và các thực thể nhất định với dữ liệu cấu hình. Giải pháp không chứa bất kỳ dữ liệu kinh doanh.
Chúng có thể chứa nhiều thành phần Microsoft Power Platform khác nhau, chẳng hạn như ứng dụng dựa trên mô hình, ứng dụng canvas, sơ đồ trang web, quy trình, thực thể, biểu mẫu, trình kết nối tùy chỉnh, nguồn lực web, bộ tùy chọn, biểu đồ và trường. Lưu ý rằng không phải tất cả các thực thể đều có thể được bao gồm trong một giải pháp. Ví dụ: không thể thêm Người dùng ứng dụng, API tùy chỉnh và bảng hệ thống Thiết đặt tổ chức vào giải pháp.
Chúng được đóng gói dưới dạng một đơn vị được xuất và nhập vào các môi trường khác hoặc được giải mã và đưa vào kiểm soát nguồn dưới dạng mã nguồn cho tài sản.
Các giải pháp cũng được dùng để áp dụng các thay đổi cho các giải pháp hiện có.
Giải pháp được quản lý dùng để triển khai đến mọi môi trường không phải là môi trường phát triển của giải pháp đó. Điều này bao gồm các môi trường thử nghiệm, thử nghiệm sự chấp nhận của người dùng (UAT), kiểm tra tích hợp hệ thống (SIT) và môi trường sản xuất. Giải pháp được quản lý có thể được nhận dịch vụ (nâng cấp, vá lỗi và xóa) độc lập với các giải pháp được quản lý khác trong một môi trường. Là một phương pháp tốt nhất cho quy trình ALM, giải pháp được quản lý nên được tạo bởi một máy chủ bản dựng và được coi là một thành phần lạ của bản dựng.
Cập nhật cho giải pháp được quản lý được triển khai cho phiên bản trước của giải pháp được quản lý. Điều này không tạo ra một lớp giải pháp bổ sung.
Bạn không thể xóa thành phần bằng cách sử dụng bản cập nhật.
Một bản vá chỉ chứa các thay đổi cho giải pháp được quản lý mẹ. Bạn chỉ nên sử dụng các bản vá khi thực hiện các bản cập nhật nhỏ (tương tự như sửa lỗi nóng) và bạn cần có để có thể được gỡ cài đặt. Khi các bản vá được nhập, chúng được xếp chồng lên trên cùng của giải pháp cha. Bạn không thể xóa thành phần bằng cách sử dụng bản vá.
Nâng cấp một giải pháp sẽ cài đặt một lớp giải pháp mới ngay trên lớp cơ sở và mọi bản vá hiện có.
Việc áp dụng bản nâng cấp giải pháp bao gồm đến việc xóa tất cả các bản vá hiện có và lớp cơ sở.
Bản nâng cấp giải pháp sẽ xóa các thành phần tồn tại nhưng không còn có trong phiên bản nâng cấp.
Kiểm soát nguồn, còn được gọi là kiểm soát phiên bản, là một hệ thống duy trì và lưu trữ an toàn các tài sản phát triển phần mềm và theo dõi các thay đổi đối với các tài sản đó.
Theo dõi thay đổi đặc biệt quan trọng khi nhiều người tạo và phát triển ứng dụng đang làm việc trên cùng một bộ tệp. Hệ thống kiểm soát nguồn cũng cung cấp cho bạn khả năng khôi phục các thay đổi hoặc khôi phục các tệp đã xóa.
Hệ thống kiểm soát nguồn giúp các tổ chức đạt được ALM lành mạnh vì các tài sản được duy trì trong hệ thống kiểm soát nguồn là "nguồn tin tưởng duy nhất" hoặc, nói cách khác, điểm truy cập và sửa đổi duy nhất cho các giải pháp của bạn.
Chiến lược phân nhánh và sáp nhập
Gần như mọi hệ thống kiểm soát nguồn đều có một số hình thức hỗ trợ phân nhánh và hợp nhất. Phân nhánh có nghĩa là bạn phân chia khỏi dòng phát triển chính và tiếp tục thực hiện công việc mà không thay đổi dòng chính. Quá trình hợp nhất bao gồm kết hợp một nhánh này với nhánh khác, chẳng hạn như từ nhánh phát triển thành nhánh dòng chính. Một số chiến lược phân nhánh phổ biến là phân nhánh dựa trên thân cây, phân nhánh phát hành và phân nhánh tính năng. Thêm thông tin: Áp dụng chiến lược phân nhánh Git
Quy trình kiểm soát nguồn sử dụng giải pháp
Có hai đường dẫn chính mà bạn có thể sử dụng khi làm việc với các giải pháp trong hệ thống kiểm soát nguồn:
Xuất giải pháp không được quản lý và đặt nó dưới dạng giải nén trong hệ thống kiểm soát nguồn. Quá trình xây dựng nhập giải pháp đóng gói dưới dạng không được quản lý vào môi trường xây dựng tạm thời (môi trường hộp cát). Sau đó, xuất giải pháp dưới dạng được quản lý và lưu trữ dưới dạng thành phần lạ xây dựng trong hệ thống kiểm soát nguồn của bạn.
Xuất giải pháp dưới dạng không được quản lý và cũng xuất giải pháp dưới dạng được quản lý và đặt cả hai trong hệ thống kiểm soát nguồn. Mặc dù phương pháp này không yêu cầu môi trường xây dựng, nhưng nó yêu cầu duy trì hai bản sao của tất cả các thành phần (một bản sao của tất cả các thành phần không được quản lý từ giải pháp không được quản lý và một bản sao của tất cả các thành phần được quản lý từ giải pháp được quản lý).
Tự động hóa là một phần quan trọng trong vòng đời của ứng dụng giúp cải thiện năng suất, độ tin cậy, chất lượng và hiệu quả của ALM. Các công cụ và nhiệm vụ tự động hóa được sử dụng để xác thực, xuất, đóng gói, giải nén và xuất các giải pháp bên cạnh việc tạo và đặt lại môi trường hộp cát.
Phát triển nhóm bằng cách sử dụng kiểm soát nguồn chia sẻ
Điều quan trọng là xem xét cách bạn và nhóm phát triển của bạn sẽ làm việc cùng nhau để xây dựng dự án. Phá vỡ các rào cản và thúc đẩy các quan điểm và cuộc trò chuyện có thể cho phép nhóm của bạn cung cấp phần mềm tốt hơn. Một số công cụ và quy trình làm việc – chẳng hạn như những công cụ và quy trình được cung cấp trong Git, GitHub và Azure DevOps – được thiết kế cho mục đích rõ ràng là cải thiện chất lượng truyền thông và phần mềm. Lưu ý rằng làm việc với các cấu hình trong một hệ thống giải pháp có thể tạo ra những thách thức cho phát triển nhóm. Các tổ chức phải phối hợp các thay đổi từ nhiều nhà phát triển để tránh xung đột khi hợp nhất càng nhiều càng tốt, bởi vì các hệ thống kiểm soát nguồn có những hạn chế về cách hợp nhất. Bạn nên tránh các tình huống có nhiều người thay đổi các thành phần phức tạp – chẳng hạn như biểu mẫu, quy trình và ứng dụng canvas – cùng một lúc.
Bạn có thể sử dụng bất kỳ hệ thống kiểm soát nguồn nào và xây dựng một quy trình để bắt đầu tích hợp và triển khai liên tục (CI/CD). Tuy nhiên, hướng dẫn này tập trung vào GitHub và Azure DevOps. GitHub là một nền tảng phát triển được sử dụng bởi hàng triệu nhà phát triển. Azure DevOps cung cấp các dịch vụ dành cho nhà phát triển cho các nhóm hỗ trợ để lập kế hoạch công việc, hợp tác phát triển mã cũng như xây dựng và triển khai ứng dụng.
Bạn cần các mục sau để bắt đầu:
Tài khoản GitHub, nơi bạn có thể tạo một kho lưu trữ. Nếu chưa có, bạn có thể tạo miễn phí.
Tổ chức Azure DevOps. Nếu chưa có, bạn có thể tạo miễn phí.
Để tạo hoặc chỉnh sửa các ứng dụng và quy trình bằng cách sử dụng Power Apps và Power Automate tương ứng, người dùng sẽ được yêu cầu phải có giấy phép cho mỗi người dùng cho Power Apps hoặc Power Automate hoặc giấy phép ứng dụng Dynamics 365 thích hợp. Để biết thêm thông tin, hãy xem Tổng quan giấy phép cho Microsoft Power Platform. Chúng tôi cũng khuyên bạn nên liên hệ với đại diện tài khoản của mình để thảo luận về nhu cầu cấp phép của bạn. Microsoft
Cân nhắc ALM
Khi bạn coi ALM là một phần không thể thiếu trong việc xây dựng các ứng dụng trên Microsoft Power Platform, nó có thể cải thiện đáng kể tốc độ, độ tin cậy và trải nghiệm người dùng của ứng dụng. Nó cũng đảm bảo rằng nhiều nhà phát triển, cả nhà phát triển truyền thống viết mã và nhà phát triển cộng đồng, có thể cùng đóng góp cho ứng dụng đang được xây dựng.
Xem các bài viết sau thảo luận về một số mục để xem xét khi bắt đầu phát triển ứng dụng:
Application lifecycle management (ALM) is important as the applications your organization builds becomes more complex and as more of your company depends on their stability. ALM is not a one size fits all concept, it can vary from organization to organization and even within based on the type of solution being built. This learning path can help you with ALM best practices.