Hotline

0963 801 047
APEX Global
ACADEMY FOR PROFESSIONAL EXCELLENCE

Tại sao tái sử dụng phần mềm (Software Reuse) thất bại?

2016-04-19  (1281)

Rất nhiều lãnh đạo, quản lý của doanh nghiệp phát triển phần mềm hình dung rất rõ giá trị mà tái sử dụng phần mềm (Software Reuse) mang lại như: Việc phát hành một phiên bản nhanh hơn, chất lượng hơn, hạn chế được lỗi tốt hơn, ít tốn nguồn lực hơn, và kinh tế hơn so với việc phát triển ngay từ đầu một ứng dụng. Việc tái sử dụng phần mềm bằng cách xây dựng tài nguyên chung dưới dạng hệ thống và áp dụng sự tái sử dụng trong quy trình phát triển phần mềm như Architectures, Patterns, Components, Platforms, những đoạn mã hay.

Software Reuse Failure

Dưới đây là những trở ngại phi kỹ thuật khiến doanh nghiệp phát triển phần mềm thất bại trong việc tái sử dụng phần mềm:

  • Trở ngại cơ cấu tổ chức: Việc phát triển, triển khai, hỗ trợ xậy dựng tài sản tái sử dụng phần mềm một cách hệ thống đòi hỏi phải có một sự hiểu biết rõ nhu cầu của các nhà phát triển và yêu cầu kinh doanh. Khi số lượng các nhà phát triển và các dự án có nhu cầu sử dụng các tài sản có thể dùng lại (reusable assets) tăng lên, nó trở nên khó khăn để cấu trúc một tổ chức cung cấp thông tin có tính phản hồi hiệu quả và được duy trì liên tục.
  • Trở ngại kinh tế: Hỗ trợ các tài sản tái sử dụng toàn công ty đòi hỏi một sự đầu tư kinh tế, đặc biệt là nếu các nhóm tái sử dụng hoạt động như trung tâm chi phí độc lập. Nhiều công ty gặp khó khăn trong việc đánh thuế, hoặc tìm phương án thích hợp để tài trợ chi phí cho các nhóm tái sử dụng của họ.
  • Trở ngại hành chính: Thật khó để phân loại, lưu trữ và thu thập thông tin có thể tái sử dụng được từ các đơn vị kinh doanh khác nhau trong các tổ chức lớn. Mặc dù nó phổ biến để thu thập tự các classs hay hoặc các chức năng hay trong các chương trình đang có. Các nhà phát triển phần mềm thường gặp khó khăn để định vị tài sản có thể tái sử dụng lại bên ngoài nhóm làm việc trực tiếp của họ.
  • Trở ngại chính trị: Nhóm phát triển các nền tảng middleware (như distributed cache, message queue, transaction monitor, packet rewriter, automated backup system,…) có thể sử dụng lại thường bị nghi ngờ bởi các nhà phát triển ứng dụng, Họ tỏ ra bất mãn với với thực tế rằng họ không còn được trao quyền để quyết định các kiến trúc quan trọng. Tương tự như vậy, sự ganh đua lẩn nhau giữa các đơn vị kinh doanh có thể kiềm chế tái sử dụng tài sản được phát triển bởi nhóm phát triển sản phẩm nội bộ khác, đó được coi là một mối đe dọa cho chất lượng công việc của tất cả thành viên hoặc ảnh hưởng đến hoạt động của công ty.
  • Trở ngại tâm lý: Các nhà phát triển ứng dụng có thể có cảm nhận việc sử dụng nguồn lực “Top-down” như là một dấu hiệu cho thấy quản lý thiếu tự tin vào khả năng kỹ thuật của họ. Ngoài ra, những cái hội chứng “not invented here” là phổ biến trong nhiều tổ chức, đặc biệt là giữa các lập trình rất tài năng.

Nếu như những trở ngại phi kỹ thuật không được giải quyết triệt để thì nỗ lực tái sử dụng cũng thường xuyên thất bại vì các nhà phát triển thiếu các kỹ năng kỹ thuật và tổ chức thiếu năng lực cốt lõi cần thiết để tạo ra và / hoặc tích hợp các thành phần có thể tái sử dụng lại một cách hệ thống. Ví dụ, các nhà phát triển thường thiếu kiến ​​thức và kinh nghiệm về cách thiết kế cơ bản các patterns trong phạm vi của họ, mà làm cho nó khó khăn cho họ để hiểu làm thế nào để tạo và / hoặc tái sử dụng các framework và các components hiệu quả.

APEX Learning Content Development Team

(nguồn: vanderbilt.edu)


APEX Global thường xuyên tổ chức khoá đào tạo về Software Reuse & Integration Professional. Bạn có thể tham khảo lịch đào tạo ở link Public Training Schedule. Hoặc đọc thêm các bài viết chuyên đề về kỹ năng nghề, kỹ năng mềm, kỹ năng quản lý, xu thế công nghệ,… liên quan đến CNTT ở link APEX Global News.

Để được tư vấn thêm về các khoá đào tạo của APEX Global, bạn hãy gọi hoặc email đến:  (+84-8) 62 718 187; info@apexglobal.com.vn