Những điểm lưu ý khi phát triển phần mềm theo đặc thù riêng

Ngày đăng: 2016-09-05 10:06:41 - Ngày cập nhật: 2017-01-24 14:32:32 - Số lần xem: 2790
Điểm: 0/5 (0 phiếu)

Có thể khẳng định rằng không một phần mềm nào có thể áp dụng 100% cho doanh nghiệp ngay lần đầu triển khai. Do vậy, yêu cầu phát triển các đặc thù riêng thường được đặt ra. Nhưng không phải yêu cầu nào cũng mang lại lợi ích cho dự án. Bài viết chia sẻ kinh nghiệm được đúc kết từ những nhà triển khai dự án.

Chỉnh sửa theo yêu cầu riêng (customize) - hiểu thế nào?

Tùy vào tính chất của các công việc, có thể phân loại customize gồm các việc sau:

  • Phát triển thêm các nghiệp vụ mà hệ thống chưa có hoặc đáp ứng chưa đầy đủ các tình huống xuất hiện tại DN.
  • Phát triển thêm các bài toán riêng của ngành hoặc do quy trình công nghệ sản xuất khác biệt có tại DN.
  • Phát triển các báo cáo đặc thù mà DN mong muốn khai thác từ CSDL của phần mềm.
  • Phát triển hoàn thiện các tiện ích nâng cao năng suất khai thác và sử dụng phần mềm.

Với mục tiêu nâng cao hiệu quả quản lý trong DN bằng áp dụng CNTT thì việc phát triển theo yêu cầu riêng là phải có. Tuy nhiên, việc đưa ra yêu cầu thường có 2 mặt lợi – hại mà nhà cung cấp (NCC) và khách hàng cần cân nhắc mỗi khi đưa ra.

Với những bài toán customize kiểu đầu tiên cần phân định rõ nghiệp vụ còn thiếu hay chưa xử lý đủ tình huống với việc bắt chương trình đi theo quy trình cũ hiện có của DN. Người sử dụng, đặc biệt là người dùng cuối thường có xu hướng đưa nguyên công việc xử lý hiện tại vào hệ thống mà ít chú ý đến yếu tố thay đổi quy trình quản lý cho tối ưu hơn dẫn đến các yêu cầu customize bị sai.

Với các bài toán riêng theo yêu cầu đặc thù ngành thì cần chú ý đến độ khó và ảnh hưởng của thời gian thực thi customize đến tiến độ dự án cũng như kinh phí phát sinh để quyết định thực thi. Có nhiều trường hợp do DN quá chú tâm vào yêu cầu này dẫn đến tiến độ bị ảnh hưởng lớn, đến khi vận hành khai thác lại đạt hiệu quả thấp.

Một trong các yêu cầu customize mà khách hàng thường đề ra là chỉnh sửa các tiện ích có trong phần mềm. Đây là yêu cầu cần xem xét nghiêm túc dưới góc độ nhà quản lý vì biên giới giữa thuận lợi (cho người dùng) và việc phá vỡ quy trình chuẩn (cho DN) là rất mong manh. Vì thế khi gặp các yêu cầu thay đổi về mặt “tiện ích”, đặc biệt là vấn đề hiệu chỉnh dữ liệu, NCC cần phải giữ vững nguyên tắc để tránh sa lầy vào những yêu cầu không cần thiết giúp hệ thống khai thác đúng với quy trình đã đặt ra.

Customize ra sao?

Khi tiến hành customize bản thân NCC cần phân định rõ các lớp bài toán phải làm và thống nhất được với khách hàng khối lượng công việc. Tuy nhiên, thực tế đây là vấn đề rất khó khăn do yêu cầu của khách hàng không được nêu ra hết mà thường phát sinh trong quá trình thực thi triển khai. Điều này sẽ gây nhiều khó khăn cho đơn vị cung ứng. Tương tự như việc xây nhà, nếu yêu cầu thiết kế đầy đủ ngay từ đầu thì dễ nhưng vừa làm vừa thiết kế, sửa chữa, thay đổi sẽ rất tốn công sức và thời gian. Khắc phục điều này, khách hàng cần phải biết hoạch định rõ và giới hạn bài toán đặc thù hóa trong phạm vi cho phép và tuân thủ theo yêu cầu này, tránh phát sinh tiếp trong quá trình triển khai.

Ngay cả khi đã có yêu cầu customize bản thân khách hàng cũng nên theo sát quá trình phân tích, thiết kế trước khi NCC tiến hành phát triển các chức năng cộng thêm. Điều này cho phép giảm thời gian thử nghiệm, kiểm tra trước khi quyết định tích hợp vào bài toán chung. Nếu thực thi tốt, thời gian customize sẽ giảm đáng kể và ít khả năng phát sinh rủi ro khi triển khai.

Customize dưới góc nhìn của NCC

Bản thân nhà cung cấp (NCC) không thích việc customize vì khả năng không kiểm soát được chi phí và thời gian phát sinh. Mặt khác, khi thực thi customize, do áp lực về thời gian NCC thường bỏ qua giai đoạn kiểm thử (test) để đưa chương trình vào hoạt động sớm, vì thế thường kéo theo các sai sót do dữ liệu nhập vào trước đó là dữ liệu “sống” chưa qua sàng lọc.

Hiện nay, có 2 xu hướng. Một số NCC thì gần như áp đặt việc bán đóng gói và chỉ thực thi customize trong khâu lập báo cáo đặc thù. Một số nhà NCC khác thì thực hiện các customize theo yêu cầu của khách hàng.

Tính toán chi phí cho customize

Như đã phân tích ở trên, việc hình thành khối lượng công việc customize chỉ được hiểu thật rõ trong bước khảo sát chi tiết dự án. Tuy nhiên, việc hoạch định customize thuộc công việc có tính chi phí thêm hay không là điểm thường gây tranh luận và phát sinh mâu thuẫn. Xu hướng hiện nay của khách hàng là ít chấp nhận các khoản chi phí phát sinh này hoặc chấp nhận với chi phí thấp. Kinh nghiệm cho thấy rằng cả khách hàng lẫn NCC cần phải hiểu rõ công việc của nhau để cân đối hài hòa chi phí phát sinh này. Nếu khách hàng không chấp nhận chi phí này cho nhà cung cấp (NCC), hiệu quả hoạt động của họ giảm, trong nhiều trường hợp sẽ kéo theo sự thua lỗ. Kết quả, dự án sẽ có nguy cơ bị “sa lầy” hoặc “phá sản” sau một thời gian. Điều này gây thiệt hại cho cả 2 bên - NCC và khách hàng.

Thực tế trong thời gian qua, việc triển khai dự án ERP tại một số DN được gọi là thành công tại VN, chi phí phát sinh nhiều khi vượt gấp hai ba lần chi phí chào giá ban đầu. Đây cũng là điểm khiến các NCC phần mềm VN đau đầu khi thỏa hiệp và phân tích với khách hàng. Do vậy, NCC nên có những khung giá cụ thể cho việc customize ngay trong quá trình thương thảo hợp đồng để giúp khách hàng lường trước được chi phí phát sinh và xác định giới hạn khi đưa ra yêu cầu customize.

Có thể nói, customize là bạn đồng hành trong việc triển khai các giải pháp CNTT. Tuy nhiên, để việc customize thuận lợi và hiệu quả, NCC và khách hàng cần hiểu rõ lợi – hại của việc customize, từ đó hoạch định tốt nội dung, thời gian thực thi, chi phí dự kiến để hợp lý cho cả hai bên. Trong việc customize, bên nào tổn thất cũng sẽ ảnh hưởng tới kết quả chung của dự án.

(Dựa theo nguồn erp4vn.net, 3.2011)

Bài liên quan