Mô hình “Phần mềm là dịch vụ” cung cấp truy cập dựa vào mạng đến phần mềm thương mại có sẵn. Có khả năng là bạn đã từng sử dụng SaaS, dù vào lúc ấy bạn chưa biết điều đó. Ví dụ về SaaS gồm có Netflix, Photoshop.com, Acrobat.com, Intuit QuickBooks Online, Gmail, và Google Docs. Việc triển khai SaaS cũng bao gồm cả một phần đáng kể của thị trường ứng dụng di động đang ngày càng tăng, dù điều này có phần không rõ ràng lắm.
SaaS tiêu biểu cho tiềm năng sử dụng phần mềm với chi phí thấp hơn cho các doanh nghiệp — sử dụng phần mềm theo yêu cầu chứ không mua một giấy phép cho mỗi máy tính, đặc biệt là khi bạn thấy rằng hầu hết các máy tính hầu như nằm im gần 70% thời gian. Thay vì phải mua nhiều giấy phép cho một người dùng duy nhất, doanh nghiệp có thể đưa thời gian sử dụng giấy phép lên gần đến 100% thời gian, thì càng tiết kiệm được nhiều tiền hơn.
Ma trận khái niệm chéo của ba dịch vụ được cung cấp trong Phần 1 của loạt bài này cũng được trình bày lại trong Bảng 1 để thuận tiện cho bạn.
Bảng 1. Ma trận khái niệm chéo của ba nhóm điện toán đám mây
Chuyển dịch mẫu hình | Các đặc điểm | Các thuật ngữ chính | Các lợi thế | Các bất lợi và nguy cơ | Khi nào không nên sử dụng | |
Cơ sở hạ tầng là dịch vụ (IaaS) | Cơ sở hạ tầng là tài sản | Luôn độc lập về nền tảng; chia sẻ chi phí cơ sở hạ tầng và do đó làm giảm chi phí này; các thỏa thuận ở mức dịch vụ (SLA); trả tiền theo mức sử dụng, tự điều chỉnh quy mô | Điện toán lưới, điện toán tiện ích, cá thể tính toán, siêu giám sát, bùng nổ lên đám mây, điện toán nhiều bên thuê, phân lượt tài nguyên | Tránh được chi phí vốn cho phần cứng và nguồn nhân lực; giảm rủi ro lợi tức đầu tư (ROI); rào cản thấp khi tham gia vào; điều chỉnh quy mô tự động hóa và trơn tru | Năng xuất và hiệu quả kinh doanh phụ thuộc nhiều vào khả năng của nhà cung cấp; chi phí dài hạn có tiềm năng lớn hơn; sự tập trung hóa đòi hỏi các biện pháp an ninh khác hoặc mới | Khi ngân sách vốn lớn hơn so với ngân sách hoạt động |
Nền tảng là dịch vụ (PaaS) | Mua giấy phép sử dụng | Dùng cơ sở hạ tầng đám mây; cung cấp các phương pháp quản lý dự án nhanh | Chồng giải pháp | Triển khai phiên bản trơn tru | Sự tập trung hóa đòi hỏi các biện pháp an ninh khác hoặc mới | Không có |
SaaS | Phần mềm là tài sản (doanh nghiệp và người tiêu dùng) | Các thỏa thuận ở mức dịch vụ (SLA); giao diện người dùng do các ứng dụng máy khách nhẹ (thin-client) cung cấp; các thành phần điện toán đám mây qua các API; được ghép lỏng; theo mô đun; khả năng tương tác theo ngữ nghĩa | Máy khách nhẹ; ứng dụng khách-chủ | Tránh được chi phí vốn cho phần mềm và phát triển tài nguyên; giảm rủi ro lợi tức đầu tư (ROI); cập nhật lặp nhiều lần và trơn tru | Sự tập trung hóa đòi hỏi các biện pháp an ninh khác hoặc mới | Không có |
Bốn nhân tố làm tăng lợi tức đầu tư (ROI) của SaaS
SaaS đưa ra các cơ hội mới cho các nhà cung cấp phần mềm. Cụ thể là, bốn nhân tố động lực được các nhà cung cấp phần mềm SaaS trích dẫn như là các nhân tố hàng đầu để làm tăng lợi tức đầu tư:
- Tốc độ triển khai tăng lên
- Sự chấp nhận của người dùng tăng lên
- Các yêu cầu hỗ trợ giảm xuống
- Chi phí triển khai thực hiện và nâng cấp giảm xuống
Tốc độ triển khai
Các ứng dụng máy tính để bàn truyền thống từ lâu nay đã liên quan đến các rào cản triển khai đáng kể. Thực vậy, tôi đã nhiều lần nghe các nhà phát triển ứng dụng máy tính để bàn nói đến việc cập nhật các ứng dụng của họ như là một "cơn ác mộng triển khai". Như Tariq Ahmed đã nói trong chương đầu tiên của cuốn sách Flex 4 in Action (Manning Press), "Sự phức tạp hậu cần khi cố gắng để cho hàng ngàn, nếu không phải là hàng trăm ngàn, máy khách chạy đúng phiên bản phần mềm của bạn tại chính xác cùng một thời điểm, là rất lớn."
Ahmed còn nói rằng những phức tạp này lớn đến mức mà hầu hết các công ty phát triển phần mềm máy tính để bàn không coi nó là hợp lý hoặc thậm chí khả thi. Các nhà phát triển, những người đã đấu tranh với điều này trong quá khứ là những ứng cử viên tốt để triển khai phiên bản SaaS của phần mềm của họ. Tuy nhiên, rào cản lớn nhất để đi vào thị trường SaaS mà các công ty phần mềm truyền thống đã kinh qua là cho phép các ứng dụng máy tính để bàn chạy như các ứng dụng SaaS. Trong nhiều trường hợp, làm như vậy sẽ liên quan đến việc viết lại phần mềm ở một mức nào đó, mà một số công ty nhận thấy có chi phí quá cao không chấp nhận được.
Đây là một trong những lý do chính làm cho trào lưu tiến tới điện toán đám mây là một quá trình chậm và từng bước. Trong hầu hết các trường hợp, giải pháp hợp lý là di chuyển phần mềm lên các đám mây theo các giai đoạn, bắt đầu bằng một phiên bản thu nhỏ đáng kể của ứng dụng ban đầu được cung cấp như SaaS. Điều này rất có ý nghĩa khi xem xét mức độ kiểm soát mà nhà phát triển cần có đối với phiên bản phần mềm. Đó cũng là nơi việc mổ xẻ cụ thể SaaS đóng một vai trò quan trọng.
Bạn có thể thấy nhiều điểm tương đồng giữa điện toán đám mây và "điện toán mạng LAN" của những năm qua. Một kiến trúc mạng LAN điển hình gồm có một loạt các máy trạm tại chỗ, thường được nói đến như là các thiết bị đầu cuối giả, chạy các ứng dụng bằng cách kết nối với một máy tính lớn mạnh mẽ, thường là do IBM cung cấp, như đã thấy trong Hình 1.
Hình 1. Mối quan hệ của các thiết bị đầu cuối khách và hệ thống máy tính lớn
trên một mạng LAN cơ bản
Kiểu điện toán này phục vụ tốt cho các doanh nghiệp, bởi vì các bộ phận CNTT có quyền kiểm soát cuối cùng đối với phiên bản và có thể triển khai các bản cập nhật trên cơ sở lặp lần lượt và liên tục với rất ít hoặc không có rắc rối nào. Tương tự như vậy, các rào cản hậu cần đã cản trở việc kiểm soát phiên bản với các nhà phát triển các ứng dụng phần mềm máy tính để bàn trong quá khứ không tồn tại trong đám mây, bởi vì phần mềm chạy trên một cơ sở hạ tầng mà các công ty phát triển có quyền truy cập trực tiếp vào đó.
Kích thước và quy mô của một cơ sở hạ tầng SaaS rõ ràng là đồ sộ so với cơ sở hạ tầng của một mạng LAN nếu xét đến số lượng máy khách có thể được phục vụ. Nhưng khái niệm cơ bản là như nhau. Trong khi Hình 1 cho thấy một máy tính lớn duy nhất có thể lưu trữ các cá thể phần mềm đủ để phục vụ tất cả các máy khách đang kết nối với nó trong mạng cục bộ, thì Hình 2 cho thấy một đám mây có nhiều tài nguyên máy tính khác nhau, tất cả đang đóng góp vào sức mạnh tính toán tổng thể có thể chạy nhiều cá thể phần mềm cần thiết để phục vụ các máy khách trên toàn thế giới.
Hình 2. Mối quan hệ của các thiết bị khách hàng với đám mây trong SaaS
Sự chấp nhận tăng lên
Nếu bạn tách ra xa khỏi doanh nghiệp và nhìn vào những gì SaaS đã làm cho người tiêu dùng thông thường, bạn sẽ thấy rằng SaaS làm cho phần mềm trở nên có sẵn, điều mà trước đây có thể phải trả khoản phí cấp giấy phép quá cao, không phù hợp với người dùng thông thường. Một ví dụ hay là những nỗ lực của Adobe để làm cho Adobe® Photoshop® thành một SaaS. Mặc dù đây vẫn còn là một công việc đang tiến triển và là một thí nghiệm phát triển của Adobe, nó vẫn cho thấy các tiến bộ. Ví dụ, tôi đã nhận thấy rằng một số lượng ngày càng tăng các bạn bè và người thân trong gia đình tôi bắt đầu thích sử dụng Photoshop.com để làm các chỉnh sửa ảnh cơ sở chứ không khởi chạy phiên bản đầy đủ khi họ chỉ cần tiến hành các thao tác chỉnh sửa ảnh sơ cấp. Ý nghĩa của việc này là ở chỗ những người không cần các chức năng của phiên bản đầy đủ bây giờ sẽ tiết kiệm được tiền. Trong khi đó, những người khác đang sử dụng Photoshop.com là những người sẽ không phải thử nữa, điều này đưa ra một cơ hội để Adobe nắm giữ các khách hàng lâu dài mà nếu trái lại, nó sẽ không với tới được.
Các mô hình kinh doanh khác nhau đối với SaaS đặc biệt hấp dẫn. Ví dụ, Intuit QuickBooks Online là một SaaS với một khoản phí dịch vụ hàng tháng. Là một chủ doanh nghiệp thường nay đây mai đó, tôi đã nhận thấy điều này rất có ích, nhất là vì đối tác kinh doanh của tôi sống tại một bang khác cách xa 400 dặm. Trong khi đó, Adobe thúc đẩy sức mạnh của SaaS với Photoshop.com và Acrobat.com bằng cách cung cấp phần mềm như một dịch vụ thưởng thêm (freemium)— một thuật ngữ được đặt ra để mô tả một mô hình kinh doanh khác biệt dựa trên việc cung cấp SaaS thu nhỏ của một sản phẩm phần mềm có cấp phép.
SaaS thưởng thêm dựa vào một mô hình doanh thu mà ở đó người ta dự đoán rằng một tỷ lệ phần trăm nhất định những người dùng miễn phí cuối cùng sẽ nhận thấy là có ích nếu nâng cấp lên hoặc là một phiên bản trả tiền của SaaS có các tính năng bổ sung được bật lên thêm hoặc là một bản sao có cấp phép của phần mềm phiên bản máy tính để bàn, bao gồm tất cả các đặc tính và chức năng bổ sung có sẵn. Việc này có xu hướng trở thành một phương pháp ưa thích để thử nghiệm phần mềm trong chế độ "trình diễn hạn chế" so với việc phải cài đặt một ứng dụng trên máy tính để bàn của bạn mà kết cuộc bạn có thể không mua. Ngoài ra, mô hình này có thể được bổ sung thêm các quảng cáo nếu tỷ lệ người dùng miễn phí so với số nâng cấp thấp hơn dự kiến. Đây là một phương pháp phổ biến mà các nhà cung cấp phần mềm máy tính để bàn truyền thống sử dụng như là một cách để thích nghi với thị trường luôn thay đổi, khi điện toán đám mây tiếp tục phát triển.
Các yêu cầu hỗ trợ giảm xuống
Chi phí cho các bàn trợ giúp của dịch vụ khách hàng lớn và các vấn đề hỗ trợ gia tăng thêm đã xảy ra như là kết quả của việc phải hỗ trợ nhiều nền tảng phần lớn sẽ được giảm nhẹ bằng SaaS. Đối với những người mới bắt đầu, việc dễ dàng triển khai cho phép các nhà phát triển thực hiện các bản vá lỗi ngay sau khi bắt đầu tìm thấy lỗi, điều đó có nghĩa rằng hầu hết các lỗi có thể được sửa trước khi phần lớn người dùng bắt gặp chúng, kết quả là có ít cuộc gọi điện thoại đòi hỗ trợ khách hàng hơn, cũng như sự hài lòng và tiếp tục sử dụng của khách hàng có nhiều khả năng sẽ cao hơn.
Ngoài ra, các nhà sản xuất các ứng dụng phần mềm máy tính để bàn truyền thống thường phải hỗ trợ nhiều hơn một nền tảng. Ví dụ, một nhà phát triển phải hỗ trợ hệ điều hành Windows® 7 và Apple Mac OS X phiên bản 10.6 đã tăng gần gấp đôi chi phí phát triển chỉ do thêm sự hỗ trợ cho hệ điều hành thứ hai — và đây là trước khi đi vào những vấn đề liên quan đến việc hỗ trợ nhiều phiên bản khác nhau của các hệ điều hành ấy. Việc hỗ trợ nhiều phiên bản của một hệ điều hành cũng để lộ ra những hạn chế.
Ví dụ, nếu bạn đang xây dựng một chương trình để chạy trên Windows 7 nhưng nó phải tương thích với Windows XP, bạn phải rất cẩn thận để các tính năng và chức năng sẽ có thể chạy trên cả hai phiên bản; nếu không, bạn sẽ buộc phải phân nhánh dự án, bị phó mặc với các cơ sở mã riêng biệt của mỗi nhánh, điều này chắc chắn làm giảm năng suất và hiệu quả và làm tăng thời gian hoàn thành dự kiến của bạn. Một trong những cách nhanh nhất để làm cho một giám đốc kinh doanh bị sốc là bảo họ rằng các giới hạn thời gian đã dự kiến của hai năm tiếp theo đã bị tăng lên gấp đôi. Thêm vào đó là gia tăng ngân sách để hỗ trợ các hệ điều hành khác nhau và các phiên bản khác nhau của những hệ điều hành đó, và (một trong nhiều điều khác nữa) không có gì đáng ngạc nhiên khi bạn thấy một tỷ lệ thất bại cao như vậy đối với các dự án phát triển phần mềm hiện nay.
Chi phí triển khai thực hiện và nâng cấp giảm xuống
Nhân tố động lực thứ tư với lợi tức đầu tư cho SaaS hơi giống như nhân tố đầu tiên. Tuy nhiên, tốc độ triển khai nói đến những lợi thế có được từ việc có thể triển khai một cách nhanh chóng và dễ dàng các bản cập nhật ứng dụng. Ngược lại, chi phí triển khai thực hiện và nâng cấp giảm xuống nói đến các lợi ích tài chính cho công ty phát triển, có được nhờ kết quả của việc kiểm soát phiên bản và cơ sở hạ tầng chạy phần mềm đó.
Các khoản tiết kiệm lớn cho nhà phát triển đến từ việc không có thêm các chi phí kiểm thử và triển khai các bản vá lỗi và các tính năng mới trên nhiều nền tảng, vì nhà phát triển kiểm soát được nền tảng mà phần mềm chạy trên đó — thường hoàn toàn trong suốt với người dùng. Điều này làm cho lộ trình nâng cấp cho các ứng dụng SaaS không có chi phí quá cao. Kết quả tài chính gián tiếp đến từ sự hài lòng và tiếp tục sử dụng của khách hàng, vì các khoản tiết kiệm quan trọng về cả thời gian lẫn tiền bạc tạo cho nhà phát triển cơ hội để có một mức sẵn sàng đáp ứng cao hơn các yêu cầu về tính năng và khả năng sử dụng nâng cao.
SaaS và thiết kế trải nghiệm người dùng
Các ứng dụng SaaS đại diện cho một cách tiếp cận thế hệ mới tiếp theo tới thiết kế ứng dụng. Mặc dù về mặt kỹ thuật, có lẽ nó chưa được nêu trong bất kỳ tài liệu nào mà tôi đã thấy cho đến nay, nhưng có vẻ là các chương trình SaaS cũng bao gồm một cách tiếp cận hiện đại tới thiết kế giao diện người dùng, nhất quán hơn với quá trình thiết kế sản phẩm đã thấy trong hầu hết các ngành công nghiệp khác. Cách tiếp cận này bao gồm một quá trình được gọi là thiết kế trải nghiệm người dùng (UXD), ở đây giao diện người dùng đồ họa (GUI) được thiết kế bởi nhóm sản phẩm chứ không phải là nhóm phát triển.
Mục tiêu chính của UXD là xác định điều gì sẽ làm cho ứng dụng có ích nhất với cơ sở khách hàng nhằm đến và bao gồm cả kiến thức đó như là một phần của thiết kế. Mặc dù có thể lập luận một cách hợp lý rằng điều này cần có trong sự phát triển của bất kỳ loại phần mềm nào, nhưng nó có vẻ phổ biến nhất trong việc phát triển ứng dụng SaaS. Có lẽ lý do cho việc này là phải làm việc với các mô hình nghiệp vụ khác nhau có sẵn với SaaS so với các mô hình của phần mềm truyền thống cũng như các khoản tiết kiệm đáng kể thu được từ việc phát triển SaaS.
SaaS dành cho các nhà phát triển
Như bạn đã tìm hiểu, điện toán đám mây đang phát triển mạnh là một quá trình chuyển tiếp to lớn đối với cả doanh nghiệp lẫn người dùng, và có nhiều thách thức phải vượt qua. Kết quả là, quá trình này sẽ mất thời gian và phải trải qua các thời kỳ thay đổi từng bước. Trong quá trình tiến hóa điện toán này, điều cốt yếu đối với các công ty phần mềm là có thể thích ứng với môi trường luôn thay đổi nhằm tiếp tục đáp ứng các nhu cầu của các doanh nghiệp cũng như của người tiêu dùng.
Cũng như các doanh nghiệp phải có khả năng chuyển động cùng với môi trường luôn thay đổi khi điện toán đám mây tiến triển, các nhà lập trình phần mềm sẽ cần phải thích nghi với các kỹ năng của họ và hiểu được các mô hình lập trình SaaS để tiếp tục sắc bén và giữ cho mình không tụt hậu. Điện toán đám mây không chỉ là về các cơ sở hạ tầng có khả năng mở rộng và tính di động đối với nền tảng thông qua ảo hóa. Nó cũng đưa phần mềm lên một cấp độ hoàn toàn mới và đại diện cho những gì có thể được coi một cách có lý là thế hệ mới tiếp theo của lập trình máy tính. Đó có thể là một tuyên bố táo bạo, nhưng hãy xem xét những cơ hội mà SaaS đưa ra, được thảo luận trong bài viết này.
Ví dụ, khả năng chi trả có nghĩa là tính sẵn sàng lớn hơn, tương đương với một cơ sở khách hàng tiềm năng lớn hơn. Thêm vào đó các khoản tiết kiệm có được như là kết quả trực tiếp của việc kiểm soát được nền tảng, cơ sở hạ tầng, quản lý phiên bản phần mềm. Và sẽ nhanh chóng trở nên rõ ràng rằng SaaS mang theo nó một mức độ "dân chủ hóa" nhất định, ở đó các xưởng phát triển nhỏ và vừa có thể chơi trên cùng một bình diện như các công ty lớn.
Kết luận
Trong bài viết này, bạn đã tìm hiểu và mổ xẻ SaaS, nhóm thứ ba của điện toán đám mây. Quan trọng hơn, bạn đã học về các cơ hội và các thách thức đã xuất hiện do sự phổ biến ngày càng tăng của các ứng dụng SaaS. Hy vọng là sau khi đã đọc ba bài viết trong loạt bài này, bạn có một hình ảnh rõ ràng hơn về điện toán đám mây có ý nghĩa gì với tương lai nghề nghiệp hay kinh doanh của bạn.
Minh Phượng
(Theo nguồn IBM)