1. Điện toán đám mây (cloud computing ) là gì? và dịch vụ kiểm thử phần mềm hướng cloud
- Ra đời từ năm 2007 - Điện toán đám mây đã châm ngòi cho một cuộc cách mạng trong cách cung cấp thông tin và dịch vụ của các tổ chức. Nó hứa hẹn nhiều lợi ích nhưng cũng đặt ra cho nhà cung cấp nhiều thách thức hơn mặc dù điện toán đám mây chỉ là một cách khác để cung cấp tài nguyên máy tính chứ chưa phải là một công nghệ mới mẻ.
Vậy điện toán đám mây là gì? Có thể hiểu đơn giản, các nguồn điện toán khổng lồ như phần mềm, các dịch vụ… sẽ nằm tại các máy chủ ảo (đám mây) trên Internet thay vì trong máy tính gia đình và văn phòng (trên mặt đất) để mọi người kết nối và sử dụng mỗi khi họ cần. Với các dịch vụ sẵn có trên Internet, doanh nghiệp không phải mua và duy trì hàng trăm, thậm chí hàng nghìn máy tính cũng như phần mềm mà chỉ cần tập trung sản xuất bởi đã có người khác lo cơ sở hạ tầng và công nghệ thay họ. Ta có thể truy cập đến bất kỳ tài nguyên nào tồn tại trong “đám mây (cloud)” tại bất kỳ thời điểm nào và từ bất kỳ đâu thông qua hệ thống Internet.
Cũng như các nhà cung cấp phần mềm tại Việt Nam, một số công ty cũng đang tận dụng thế mạnh của các đơn vị trực thuộc từng bước đưa những phần mềm dùng chung của các bưu điện trên khắp các tỉnh/ thành trở thành các dịch vụ phần mềm dưới dạng phần mềm hướng cloud based. Bên cạnh đó còn tích cực đẩy mạnh việc cung cấp, kinh doanh các dịch vụ CNTT ra ngoài thị trường. Đây là mảng hứa hẹn nhiều tiềm năng nhưng cũng bị cạnh tranh gay gắt không kém các dịch vụ Viễn thông. Với vai trò kinh doanh các dịch vụ như vậy, Tập đoàn có hai phương thức để tạo các sản phẩm dịch vụ: tự phát triển hoặc mua để kinh doanh dịch vụ.
Cả hai phương thức này đều đặt ra yêu cầu kiểm định phần mềm chặt chẽ bởi việc kinh doanh các dịch vụ CNTT cũng giống như các dịch vụ Viễn thông, cần đảm bảo cam kết chất lượng phần mềm, dịch vụ tới khách hàng. Với những yêu cầu như vậy, cộng với xu thế các phần mềm, hệ thống được cung cấp dưới dạng cloud nêu yêu cầu kiểm định phần mềm cloud là một bài toán cần phải giải quyết ngay.
2. Đặc điểm khác biệt giữa phần mềm hướng cloud với các phần mềm truyền thống
Phần mềm hướng cloud có nhiều đặc điểm khác so với phần mềm và ứng dụng web truyền thống. Đây là phần mềm có kiến trúc multi-tenant (nhiều bên thuê) trong đó tất cả người dùng và các ứng dụng được chia sẻ trong một cơ sở hạ tầng và một nền code chung được duy trì tập trung. Đây là một điểm mạnh của phần mềm hướng cloud vì nó tiết kiệm được khá nhiều chi phí cho cả nhà cung cấp lẫn người sử dụng. Ngoài ra, nó còn thuận tiện trong việc triển khai trên diện rộng và dễ dàng trong việc sửa chữa, bảo trì, v.v...
Tuy nhiên, bên cạnh những điểm mạnh thì phần mềm hướng cloud cũng ẩn chứa một số rủi ro, nguy cơ do những đặc điểm kiến trúc phần mềm của mình. Một số rủi ro mà
các phần mềm hướng cloud thường gặp phải bao gồm: rủi ro về mặt hiệu năng, bảo mật, khả năng sẵn sàng hay khả năng bảo trì, v.v....
3. Một số nguy cơ cần kiểm soát đối với phần mềm hướng cloud
Những nguy cơ liên quan đến hiệu năng là mục tiêu quan trọng trong một thời gian dài. Với điện toán đám mây, càng nhiều kết nối được thực hiện trên Internet thì rủi ro về hiệu năng càng nhiều hơn.
Khi nhiều hệ thống khác được sử dụng với sự trợ giúp của đám mây thì việc sử dụng internet có thể dẫn đến nguy cơ về hiệu năng đối với tất cả các quy trình nghiệp vụ.
Một hướng quan trọng trong lựa chọn điện toán đám mây là khả năng mở rộng của dịch vụ. Khi nhu cầu tăng thì năng lực của hệ thống tự động tăng một cách nhanh chóng, sau đó khi nhu cầu giảm thì năng lực hệ thống cũng sẽ giảm đi. Đây chính là khả năng đàn hồi, một khía cạnh test riêng trong cloud.
Những rủi ro xuất hiện đối với hiệu năng cũng đi cùng với bảo mật: đây cũng chính là điều mà người quản lý kiểm thử luôn luôn quan tâm. Khi sử dụng đám mây có nghĩa là những nguy cơ về bảo mật phải được giải quyết một cách rõ ràng. Sự cố bảo mật có thể dẫn đến thiệt hại ngay lập tức cho doanh nghiệp và có thể dẫn đến vi phạm pháp luật. Có rất nhiều các quy định về an toàn thông tin và bảo mật.
Việc chia sẻ tài nguyên CNTT với các khách hàng khác cũng sẽ dẫn đến các vấn đề an ninh. Trong tất cả các mô hình thực hiện điện toán đám mây thì sự nguy hiểm nhất là một nhân viên không được quyền nhưng lại truy cập được vào các dữ liệu nhạy cảm.
Đây chính là vấn đề cần phải được kiểm soát. Một đặc điểm quan trọng khác của các dịch vụ trên đám mây là việc không khóa Internet, thông qua các dịch vụ có thể thu được ở khắp mọi nơi và trên tất cả các loại nền tảng.
Hiện nay có một xu hướng mới, đó là nhân viên sử dụng các thiết bị của mình để làm việc. Mọi người thường làm việc ở nhiều địa điểm khác nhau, hầu hết là ngoài văn phòng và sử dụng thiết bị riêng của mình. Điều này dẫn đến một lỗ hổng mới. Vậy làm thế nào để giữ an toàn cho các thiết bị và làm thế nào để người dùng sử dụng một cách an toàn. Đó cũng là điều mà các bài kiểm thử cần phải đưa ra để kiểm tra. Rủi ro về tính sẵn sàng và liên tục ảnh hưởng trực tiếp ngay đến quá trình kinh doanh của người sử dụng.
Một số vấn đề có thể xảy ra như mất kết nối Internet, một thiết bị bị lỗi trong dịch vụ riêng của mình, hoặc không truy cập được vào dữ liệu công ty. Việc phân tích rủi ro sẽ đánh giá được những gián đoạn có thể xảy ra và lường trước được hậu quả của nó.
Tùy thuộc vào nguy cơ để đưa ra các phương pháp kiểm thử nhằm làm giảm nhẹ các rủi ro đó.
4. Các khía cạnh kiểm thử của phần mềm hướng cloud
- Kiểm thử bảo mật
Mục đích: nhằm đảm bảo hệ thống phòng chống được các sự tấn công từ bên ngoài, đảm bảo an ninh dữ liệu của các bên thuê.
Bao gồm :
Đánh giá bảo mật mạng
Kiểm tra bảo mật thông tin khách hàng
Kiểm thử khả năng mã hóa
Kiểm thử khả năng xác thực
Kiểm thử khả năng ủy quyền
Kiểm thử bảo mật chống lại những tấn công từ Internet.
Kiểm thử những bản vá bảo mật
- Kiểm thử hiệu năng
Mục đích: nhằm kiểm tra hiệu suất hoạt động, phản ứng của hệ thống trong các trường hợp tải khác nhau, trường hợp quá tải cũng như khi hệ thống sử dụng tải lớn trong một thời gian đủ dài.
Bao gồm : + Kiểm thử tải (Load test)
+ Kiểm thử quá tải (Stress test),
+ Kiểm thử độ bền hoặc kiểm thử khối lượng,
+ Kiểm thử tính mềm dẻo và khả năng mở rộng
- Kiểm thử chức năng
Mục đích: nhằm đảm bảo các quy trình nghiệp vụ được thực hiện chuẩn xác, có thể cấu hình theo từng bên thuê.
- Kiểm thử tương thích
Mục đích: nhằm bảo đảm khả năng tương thích của ứng dụng với các mục tiêu khác nhau như trình duyệt web, các nền tảng phần cứng, người dùng (ngôn ngữ, vùng miền khác nhau) hay hệ điều hành, v.v...)
Bao gồm :
+ Kiểm thử khả năng tương thích của dịch vụ với các quy tŕnh nghiệp vụ
+ Kiểm thử tính tương thích với các trình duyệt
+ Kiểm thử tính tương thích với các hệ điều hành khác nhau
+ Kiểm thử khả năng nội địa hoá (Localization)
+ Kiểm thử khả năng quốc tế hoá (Internationalization testing)
+ Kiểm thử khả năng tương thích ngược về mặt giao diện
- Kiểm thử Live
Mục đích: Mục đích của kiểm thử live nhằm đảm bảo ứng dụng được test trong một môi trường thực sự. Có hai loại kiểm thử live cần được quan tâm là:
Kiểm thử khả năng phục hồi sau thảm hoạ và Kiểm thử khả năng nâng cấp trực tuyến
- Kiểm thử tính sẵn sàng và liên tục
Gồm :
Kiểm thử độ tin cậy của phần cứng
Kiểm thử độ tin cậy của phần mềm
Kiểm tra kết nối internet
Kiểm thử dự phòng
5. Kết Luận
Từ những phân tích rủi ro và các khía
cạnh kiểm thử cho phần mềm hướng cloud,
chúng tôi đưa ra khung để đánh giá, kiểm tra
nhằm xác định các bài kiểm thử cụ thể cho
từng phần mềm với đặc điểm riêng của nó
(sưu tầm)
---------------------------------------------------------------------------------------------------
Chú ý nho nhỏ cho những người lười đọc như mình : Nếu bạn thuộc típ người lười đọc nhiều chữ, củm thấy hoa mắt chóng mặt vì phải tìm những ý chính trong búa lua xua chữ thì các bạn đọc những dòng chữ màu xanh nhé :)) . Màu đen lướt qua là được rồi nhưng dù gì cũng khuyến khích đọc hết ;)) nếu đã lở tay mở trang này ra
---------------------------------------------------------------------------------------------------