Vì sao 50% phần mềm thất bại

Các dự án công nghệ thông tin (CNTT) có tỷ lệ thất bại cao nhất trong các loại dự án, đặc biệt là dự án lập trình phần mềm. Một đặc tính quan trọng của nó là không thấy, không sờ được. Mọi người chỉ thấy được sự tồn tại của phần mềm khi nó được đem ra sử dụng.

Vì tính trừu tượng này sẽ phát sinh ra nhiều nguyên nhân mà đa số là nguyên nhân chủ quan dẫn tới thất bại của dự án.

Có nhiều nguyên nhân gây ra sự thất bại của dự án. Có nguyên nhân của chủ đầu tư (bên A), có nguyên nhân của đối tác gia công lập trình phần mềm (Bên B).

Sau đây chúng tôi xin liệt kê các nguyên nhân từ bên chủ đầu tư.

Nhận thức sai về phần mềm

Nhận thức sai về phần mềm là nguyên nhân hàng đầu. Khách hàng không rõ dùng để làm gì, giải quyết bài toán nào trong doanh nghiệp.

Nhiều chủ doanh nghiệp ảo tưởng về việc ứng dụng, coi phần mềm là đũa thần giải quyết mọi vấn đề của doanh nghiệp, kể cả việc tăng doanh số và lợi nhuận. Thực tế phần mềm chỉ là công cụ giúp cho bộ máy doanh nghiệp hoạt động tốt hơn mà thôi.

Và vì ôm đồm, chủ doanh nghiệp vẽ ra bức tranh hoành tráng, ứng dụng vào mọi ngóc ngách của doanh nghiệp. Trong khi doanh nghiệp chưa chuẩn hóa quy trình, hoạt động chưa ổn định,  nhân viện nghỉ việc liên tục.

Hãy nghĩ tới phần mềm khi doanh nghiệp của bạn hoạt động ổn với excel và giấy tờ. Lúc này lập trình phần mềm sẽ giúp doanh nghiệp chuẩn hóa quy trình hiện có một cách nhanh chóng, chính xác và tiết kiệm nhân lực.

Chủ doanh nghiệp không quan tâm sâu sát

Nhiều người cho rằng chỉ cần chi tiền mua là xong. Phần mềm tốt cho doanh nghiệp, tốt cho mọi người nên mọi người sẽ vui vẻ đón nhận.

Tuy nhiên việc áp dụng lập trình phần mềm vào doanh nghiệp sẽ làm thay đổi cách thức làm việc cũ, điều mà hầu như tất cả nhân viên đều không muốn: “Đang yên ổn dùng phần mềm mới làm gì”.

Phần mềm sẽ làm minh bạch các thông tin và không phải nhân viên nào cũng muốn minh bạch. Vì thế khi triển khai cần có một sức mạch quyền lực để áp đặt, để lôi kéo và động viên.

Tức là lãnh đạo doanh nghiệp cần sâu sát vào toàn bộ quá trình chuyển đổi đầy khó khăn này. Vì suy cho cùng, mục tiêu cuối cùng tối thượng của phần mềm là phục vụ doanh nghiệp, phục vụ ông chủ.

Phần mềm giúp chủ doanh nghiệp quản lý, theo dõi điều hành và ra quyết định. Nhưng 100% người vận hành lại là nhân viên, vì thế có sự khác biệt giữa mong muốn kỳ vọng của ông chủ với những khó khăn mà nhân viên gặp phải khi triển khai.

Chủ đầu tư thay đổi yêu cầu liên tục

Việc chủ đầu tư thay đổi yêu cầu, thêm các chức năng mới hoặc thay đổi quy trình nghiệp vụ gây ra khó khăn cho việc hoàn thành phần mềm. Thường các công ty có quy trình quản lý chuẩn mới nên viết phần mềm.

Phần mềm chỉ là bước chuyển hóa từ quy trình thủ công lên quy trình quản lý bằng máy tính với công nghệ mới,  thiết bị mới như web, app nhằm tăng tốc độ xử lý, chính xác trong các báo cáo.

Nếu doanh nghiệp chưa chuẩn hóa quy trình, việc viết phần mềm sẽ thất bại do khi lấy yêu cầu thì quy trình A, khi viết xong thì đổi thành quy trình B, khi sửa xong quy trình B thì công ty lại dùng quy trình C.

Các bộ phận tham gia không đồng lòng

Phần mềm - Khi các bộ phận tham gia không đồng lòng

Các dự án ứng dụng CNTT thường liên quan đến nhiều bộ phận và cá nhân trong tổ chức. Nhiều ứng dụng CNTT còn có liên quan đến cả các cơ quan, tổ chức cá nhân ở bên ngoài (cung cấp dịch vụ công trực tuyến, một cửa điện tử liên thông…).

Chỉ cần một bộ phận không hiểu, không tham gia, không đồng lòng, không cùng được đào tạo, huấn luyện đầy đủ thì sự gẫy vỡ ở một khâu có thể làm sụp đổ cả một hệ thống.

Ví dụ phần mềm hoạt động rất ổn cho các phòng ban, riêng phòng kế toán có vấn đề, người ta lại phải làm động tác rút trích dữ liệu từ phần mềm ra riêng cho phòng kế toán.

Lâu ngày việc này sẽ làm thay đổi dòng chảy thông tin, mọi người sẽ có xu thế chuyển thẳng dữ liệu cho phòng kế toán thay vì đưa vào lập trình phần mềm rồi lại phải xuất dữ liệu ra cho kế toán.

Cuối cùng thì phần mềm càng ít người cập nhật thông tin và dẫn đến việc loại bỏ khỏi hoạt động doanh nghiệp.

Không đầu tư vào quá trình vận hành

Việc đầu tư phần mềm cho doanh nghiệp không giống mua một chiếc máy in. Mua xong về gắn dây là dùng. Phần mềm trong suốt qua trình vận hành phải có đội ngũ bảo trì, vận hành, hỗ trợ.

Doanh nghiệp sau khi mua phần mềm lại thiếu nhân viên phụ trách CNTT có đủ trình độ để quản trị hệ thống. Không có người hỗ trợ nhân viên trong quá trình sử dụng, khắc phục sự cố sau khi triển khai phần mềm.

Đây cũng là nguyên nhân dẫn đến sự không bền vững của dự án. Việc này có thể khắc phục bằng cách ký hợp đồng bảo trì với bên cung cấp phần mềm.

Đầu tư viết phần mềm nửa vời

Đầu tư không tới là một nguyên nhân thường thấy. Dự án ứng dụng phần mềm đòi hỏi phải được đầu tư đồng bộ cả về phần cứng, phần mềm, đào tạo chuyển giao, vận hành.

Do đó, kinh phí cần phải được cấp đủ, trong một khoảng thời gian tối đa là 1 năm để có thể thực hiện được đồng bộ việc lắp đặt thiết bị, cài đặt và chuyển giao công nghệ.

Tuy nhiên, hiện nay rất nhiều người cho rằng viết phần mềm không tốn nhiều tiền chỉ vài ba chục triệu mua phần mềm, mà không biết có hiệu quả không. Phần mềm cứ làm từ từ xem thế nào, mọi thứ cũng đang tạm ổn.

Kết quả là nhiều dự án CNTT được cấp kinh phí “nhỏ giọt”, dự án được thực hiện từng phần trong khoảng thời gian dài dẫn đến hệ thống khi được đầu tư đủ thì sẽ thiếu đồng bộ làm ảnh hưởng đến mặt kỹ thuật, hiệu quả dự án, gây ra chán nản cho nhân viên tham gia dự án

Dưới đây là những nguyên nhân từ phía công ty phần mềm

Dự toán sai

Việc lên dự toán sai sẽ dẫn đến báo giá sai, ước lượng thời gian hoàn thành dự án sai. Việc dự đoán sai thường do người lấy yêu cầu không đủ kinh nghiệm.

Đánh giá sai một vài chức năng trong hệ thống, hoặc đánh giá sai phần cốt lõi. Ví dụ khách hàng yêu cầu viết phần mềm đếm số lượng ô tô ra vào nhà máy thì cái khó nằm ở chỗ phân biệt xe tải, xe con, xe đi sát nhau. Mà yêu cầu doanh nghiệp là phải đếm chính xác không sai sót. Nếu chọn công nghệ nhận dạng vào bài toán này sẽ dẫn đến bế tắc. Công nghệ nhận dạng hiện nay khó có thể đạt tới mức độ chính xác trên 95%.

Nhân lực triển khai dự án phần mềm không đủ trình độ

Để triển khai phần mềm thành công, đội ngũ triển khai phải có sự hiểu biết ở cả lĩnh vực phần mềm và kiến thức chuyên môn nghiệp vụ doanh nghiệp. Đội ngũ triển khai này có vai trò như cầu nối giữa doanh nghiệp và đội ngũ phát triển phần mềm.

Trong rất nhiều dự án phần mềm, đội ngũ tham gia triển khai các dự án là nhân viên CNTT không hiểu biết về chuyên môn, hoặc người có chuyên môn cao am hiểu nghiệp vụ thì không am hiểu về CNTT.

Những rủi ro không lường trước

Trên đây chỉ là những nguyên nhân cơ bản trong số rất nhiều nguyên nhân làm cho việc triển khai dự án ứng dụng phần mềm khó khăn phải đầu tư đến 2,3 lần mới thành công.

Để có cái nhìn rõ hơn về dự án bạn đang triển khai, để được tư vấn cách thức triển khai đảm bảo tỷ lệ thành công cao. Hãy liên hệ Maytech để đựơc tư vấn nhé.

Chúc thành công!