Thành công của dự án phần mềm

GS John Vu06/07/2024 12:00
Thành công của dự án phần mềm

Ba nhân tố mấu chốt quan trọng có thể xác định sự thành công của dự án phần mềm: Con người, Qui trình và Công cụ.

Dự án phần mềm cần các qui trình để hoàn thành công việc phát triển và cần công cụ để hỗ trợ cho những qui trình này nhưng chính con người thực hiện công việc bằng cách tuân theo các qui trình này và dùng các công cụ này. Do đó, con người chịu trách nhiệm cho thành công hay thất bại của dự án.

Là người quản lí dự án, bạn phải luôn lưu tâm tới nhân tố con người. Phần lớn các vấn đề trong dự án phần mềm là vấn đề con người chứ không phải là vấn đề kĩ thuật. Trong 40 năm quản lí dự án phần mềm của mình, tôi chưa bao giờ thấy dự án thất bại bởi vì các kĩ sư không thể lập trình hay thiết kế, họ tất cả đều được huấn luyện làm điều đó, nhưng bị thất bại bởi vì ước lượng sai, thay đổi trong yêu cầu, hay không có lịch biểu được lập tốt.

Tôi tin vai trò của người quản lí dự án KHÔNG phải là làm cho mọi người làm việc mà TẠO KHẢ NĂNG cho mọi người làm việc. Người quản lí tốt sẽ thuê người đúng; làm cho họ thoả mãn nên họ không muốn ra đi, và hỗ trợ họ trong việc tạo ra môi trường làm việc ưa thích để cho họ có thể làm hết sức mình. Khi một nhóm người chia sẻ cùng một mục đích và hình thành nên tổ có động cơ cao, toàn thể môi trường làm việc sẽ thay đổi. Trong một tổ, tương tác là mọi điều và đó là lí do tại sao mọi người thích làm việc với nhau, hỗ trợ nhau, và gắn mọi nỗ lực vào công việc để vượt qua chướng ngại.

Hành vi của một người được xác định bởi niềm tin và giá trị. Niềm tin được hình thành từ kinh nghiệm có trước và thông tin nhận được. Giá trị là điều từng cá nhân coi là quan trọng. Niềm tin được tổ hợp với các giá trị dẫn lái hành động của từng cá nhân. Chẳng hạn, người kĩ sư có thể không thích kiểm điểm mã chương trình bởi vì người đó có thể bị đánh giá xấu trong con mắt bạn bè vì việc kiểm điểm có thể làm lộ ra nhiều lỗi của anh ta. Có lẽ vài năm trước, anh ta có thể đã có kinh nghiệm xấu trong kiểm điểm mã.

Để ảnh hưởng tới hành vi của một cá nhân, người quản lí tốt phải hiểu các giá trị và niềm tin gây ra hành vi của người ta và rồi nếu cần, giúp đỡ sửa chữa lại các niềm tin dựa trên thông tin sai. Người quản lí tốt phải giúp cho mọi người hiểu  các ưu tiên bằng việc thiết lập mục đích dự án và trao đổi chúng một cách rõ ràng cho tổ dự án.

Theo kinh nghiệm của tôi, các mục đích đơn giản và được viết rõ ra có nhiều khả năng thu được thành tựu. Người quản lí phải để cho tổ dự án biết điều mình muốn từ họ, cách mình đo nó, và vào lúc nào. Điều quan trọng là các mục đích là đạt được, điều đó có nghĩa là chúng ở trong phạm vi kiểm soát của tổ, bằng không họ coi các mục đích là không thể được và chẳng làm gì về nó cả. Phải có một cách thức khách quan để kiểm chứng việc đạt được mục đích. Bằng không tổ sẽ không có cách nào biết được nó thực tế đã đạt tới chúng hay chưa.

Tôi đã thấy nhiều người phạm phải sai lầm bằng việc đặt mục đích được phát biểu trong thời tương lai và để cho mọi người nghĩ họ đang suy nghĩ ước muốn. Chẳng hạn, với mục đích “tôi sẽ làm việc nhiều hơn,” tôi có thể coi mục đích này được đạt tới cho dù không tiến hành hành động nào, bởi vì tôi có thể ngồi trong ghế tự bảo mình rằng “tôi sẽ làm việc nhiều hơn.” Lưu ý rằng bởi vì thời tương lai, phát biểu này là đúng bởi vì nó không xảy ra hôm nay.

Tuy nhiên, nếu mục đích là “Do yêu cầu của khách hàng và vấn đề nghiệp vụ, mọi người phải làm việc 10 giờ một ngày, ba lần một tuần cho tới khi dự án được thực hiện xong ” thế thì mọi người không thể bỏ qua nó được và cố gắng làm cho nó đúng. Mục đích cũng cần có ngày tháng để có hiệu lực.

Ví dụ:

  • Giảm lỗi chương trình 20% trước 1/07/ 2008.
  • Tăng việc lập kế hoạch chính xác thêm 10% khi so với dữ liệu năm ngoái vào tháng 7/2007.
  • Tăng năng suất lập trình (số dòng mã lệnh trên 40 giờ) lên 10% mỗi năm từ bây giờ trở đi.

Hãy chắc chắn giữ cân bằng giữa con người, qui trình và công cụ. Nếu bạn không thể giúp được cho mọi người làm việc như một tổ và làm hết sức họ thì bạn sẽ không thành công và dự án của bạn sẽ thất bại.

English version

Success of Software Projects

There are three important key factors that can determine the successful of software project: People, Process, and Tools.

Software project needs processes to accomplish development works and tools to support these processes but it is people that do the work by following these processes and using these tools. Therefore, people are responsible for the success or failure of the project.

As project manager, you must keep the people factor in mind. Most problems in software project are people issues not technical. In my 40 years of managing software projects, I never see a project failed because engineers can not program or design, they are all trained to do that, but failed because wrong estimates, changes in requirements, or not well planned schedule.

I believe the project manager’s role is NOT to make people work but to MAKE IT POSSIBLE for people to work. A good manager will hire the right people; make them happy so they don’t want to leave, and supporting them by creating a favorable work environment so they can do their best. When a group of people share the same goal and form a highly motivated team, the entire work environment will change. In a team, interactions are everything and that is why people like to work together, support one another, and put all efforts into works to overcome obstacles.

A person’s behavior is determined by beliefs and values. Beliefs are formed from previous experiences and information received. Values are what an individual considers important. Beliefs combined with values drive the actions of each individual. For example, an engineer may not like code review because he believes that he may look bad in front of his friends because review may identify more of his defects.  Probably few years ago, he may have bad experience during a code review.

To influence the behavior of an individual, a good manager must understand the values and beliefs that are causing the behavior of a person then if needed; help correct any beliefs that are based upon false information. A good manager must help people understand priorities by setting up project goals and communicate them clearly to the project team.

From my own experiences, goals that are simple and well written are more likely to get achieved. Manager must let project team know what do he wants from them, how does he measure it, and by what time. It is important that goals are achievable, that mean they are within the control of the team, otherwise they think the goals are impossible and not doing anything about it.  There must be an objective way to verify the achievement of the goals. Otherwise the team would have no way to tell that it had actually reached them or not.

I have seen people making mistake by setting goals that are stated in the future tense and let people think they are wishful thinking. For example, with the goal “I will work more,” I can consider the goal reached even if no action is taken, because I can sit in my chair and tell myself that “I will work more.” Notice that because of the future tense, the statement is true because it doe not have to happen today.

However, if the goal is “Due to customer ‘s requirements and critical business issue, People must work 10 hours per day, three times a week until the project is done” then people can not ignore it and tries to make it true. Goals also need to have a date in order to be effective.

Examples:

  • Reduce code defects 20% by July 1, 2008.
  • Improve planning 10% more accurate as compared with last year data in July 2007.
  • Increase productivity for coding (lines of code per 40 hours) by 10% each year from now on.

Be sure to keep a balanced on people, process, and tools. If you can not help people to work as a team and do their best then you will not succeed and your project will fail.

 


Gửi bình luận
(0) Bình luận
1

Nhu cầu cấp bách

Tuần trước, tôi đã viết về vài “khu vực nóng” trong thị trường công nghệ và tôi tin nền di động sẽ là một trong chúng trong vài năm tới.
2

Phần mềm di động

Phát triển ứng dụng di động là qui trình qua đó phần mềm được phát triển cho điện thoại di động hay thiết bị cầm tay tương tự.
3

Kinh nghiệm của kỹ sư phần mềm

“Em đã làm năm việc trong ba năm. Chẳng có gì để tự hào nhưng hồi tưởng lại, em đã học được bài học tốt và đó là lí do tại sao em quay lại thăm thầy.”
4

Lời khuyên từ bạn bè

Năm ngoái, một sinh viên năm thứ nhất nói với tôi trong ngày đầu tiên lên lớp: “Thầy nói cứ như là bố mẹ em nói, học, học và học nữa. Cuộc sống KHÔNG chỉ là học tập và là sinh viên đại học, em KHÔNG cần những lời khuyên có vẻ như của bố mẹ thế.”
5

Khu vực nào sẽ nóng

Tuần trước, một sinh viên năm thứ nhất ở Trung Quốc hỏi tôi: “Công nghệ thông tin là lĩnh vực lớn với nhiều miền đặc biệt. Em nên tập trung vào miền nào để khi em tốt nghiệp trong bốn năm nữa kể từ bây giờ, em sẽ có khả năng có việc làm tốt? Nếu em muốn làm việc ở Mĩ hay châu Âu tôi cần làm gì khác nữa?”

Ấn Độ sẽ chi phối ngành công nghiệp dịch vụ Công nghệ thông tin

Sau khi gặp vận may kì lạ, cộng đồng công nghệ Ấn Độ thấy mình đang phải giải quyết thách thức với việc nở hoa của kinh tế Trung Quốc.

Đào tạo người quản lý dự án

Ngày nay nhiều dự án phần mềm thất bại bởi vì người quản lí dự án không được huấn luyện, hay họ được huấn luyện bởi những người không có kinh nghiệm quản lí dự án . Sau đây là vài lời khuyên có thể có ích cho bạn.

Qui trình phần mềm

Qui trình là nhân tố thành công quan trọng cho bất kì doanh nghiệp nào nhưng nó là điều mấu chốt nhất trong phần mềm.

Quy trình phần mềm

Tuần trước, một sinh viên nói với tôi: “Phần mềm quá phức tạp và không thể nào loại bỏ mọi lỗi được. Em càng thử phần mềm, càng tìm ra nhiều lỗi hơn, và càng chữa các lỗi đó, lại càng nhiều lỗi xuất hiện thêm”.

Người quản lý dự án phần mềm

Hàng nghìn năm trước đây, triết gia Hi Lạp Socrates đã dạy học trò của mình “Tự biết mình”. Ngày nay, tôi muốn dùng cùng cách tiếp cận đó trong kĩ nghệ phần mềm bằng việc gợi ý rằng người quản lí dự án phần mềm.

Học tập

Khái niệm về học tập đang đối diện với những thay đổi nền tảng do sự thay đổi trong công nghệ và nền kinh tế toàn cầu.

Người kỹ sư phần mềm giỏi nhất

Bạn tôi hỏi tôi: Làm sao anh biết người kĩ sư phần mềm giỏi nhất so với người trung bình? Sau đây là ý kiến cá nhân của tôi:

Kỹ nghệ: Ham muốn đột nhiên xảy tới cho sinh viên tốt nghiệp đại học

Khi cuộc khủng hoảng tài chính sâu sắc thêm, sinh viên tốt nghiệp khoa học và toán học, những người đã có thời lũ lượt kéo vào Kinh doanh, Tài chính và Ngân hàng, bây giờ đang xem xét việc làm trong kĩ nghệ phần mềm.

Làm chủ ai -  Sách dành cho người muốn tìm hiểu về trí tuệ nhân tạo

Kể từ khi ChatGPT ra mắt, dường như ngày nào chúng ta cũng nghe nhắc đến AI và cách nó làm thay đổi thế giới xung quanh. Vậy rốt cuộc những công cụ này hoạt động ra sao? Và một người bình thường có thể sử dụng AI như thế nào? Quyển sách này sẽ giúp bạn trả lời những câu hỏi đó.

Một số sự kiện về cách tiếp cận Agile

Blog GS John VU - GS John Vu - 30/05/2026 12:00
Một sinh viên hỏi tôi: “Nếu Agile là cách tiếp cận tốt để phát triển phần mềm thì tại sao chúng ta phải học cách tiếp cận khác?”

Anthropic ra mắt "trợ lý AI ngành luật", thu hút hơn 20.000 người đăng ký

Kỹ năng - Lại Dịu - 30/05/2026 11:00
Anthropic đang biến Claude thành “trợ lý pháp lý AI” có thể kết nối trực tiếp với các phần mềm luật chuyên dụng, làm nóng thêm cuộc đua AI trong ngành pháp lý.

“Thần kinh doanh” Kazuo Inamori: Nếu không tài năng, cần biết 1 con đường “lợi hại” này để làm giàu

Suy ngẫm - Kim Linh - 30/05/2026 10:00
Theo tỷ phú Nhật Bản Inamori Kazuo, muốn trở thành một người giàu có và thành công cần có sự kiên nhẫn phi thường trong công việc.

Từ chiếc máy tính cũ, nam sinh Bách khoa thắng lớn với “Tiệm phở anh Hai”

Truyền cảm hứng - Mỹ Hà - 30/05/2026 09:00
Từ chiếc máy tính cũ và những dự án trò chơi âm thầm suốt nhiều năm, nam sinh Đại học Bách khoa Hà Nội tạo nên “cơn sốt” với “Tiệm phở anh Hai”, đồng thời thắng lớn hai giải thưởng.

Làm chủ ai -  Sách dành cho người muốn tìm hiểu về trí tuệ nhân tạo

Từ sách - Phim - Thu An - 30/05/2026 08:00
Kể từ khi ChatGPT ra mắt, dường như ngày nào chúng ta cũng nghe nhắc đến AI và cách nó làm thay đổi thế giới xung quanh. Vậy rốt cuộc những công cụ này hoạt động ra sao? Và một người bình thường có thể sử dụng AI như thế nào? Quyển sách này sẽ giúp bạn trả lời những câu hỏi đó.

Hệ thống giáo dục mới

Blog GS John VU - GS John Vu - 29/05/2026 12:00
Tôi để ba tuần giảng dạy ở Trung Quốc.

Lời khuyên cho tất cả những ai hay dùng ChatGPT tìm kiếm thông tin

Kỹ năng - Nhật Hạ - 29/05/2026 11:00
Để tận dụng AI hiệu quả mà vẫn an toàn, người dùng nên lưu ý một số điều dưới đây.

6 cách giúp bạn tăng cường từ trường cá nhân nhanh nhất, càng thực hiện đều may mắn đổ về càng nhiều

Suy ngẫm - Diêu Dương - 29/05/2026 10:00
Muốn gặp người tốt, cơ hội đẹp và chuyện thuận lợi hơn. Hãy bắt đầu bằng việc chỉnh lại từ trường cá nhân của chính mình. Sáu thói quen sau đây dễ làm, chi phí gần như bằng không nhưng hiệu quả thì thấy rõ từng ngày.

Hà Nội, một gia đình chi hơn 2 tỷ đồng làm “nhà di động” xuyên Việt 3-5 lần/năm

Phong cách sống - Mộc Khải - 29/05/2026 09:00
Năm 2022, khi mô hình du lịch bằng "nhà di động" còn khá mới ở Việt Nam, anh Nguyễn Ngọc Thắng (Hà Nội) đã bắt đầu tự cải tạo một chiếc xe 16 chỗ thành “nhà di động” đầu tiên của gia đình.

Không khóc giữa nhân gian

Tủ sách - FN - 29/05/2026 08:00
Đau khổ vốn không trừ một ai, và nó có trăm hình vạn trạng: một sự mất mát, cảm giác cô độc giữa đám đông, hay đơn giản là nỗi thất vọng khi không đạt được thứ mà mình mong chờ. Vậy phải làm sao để ta hết khổ? Đau khổ có thực sự đáng sợ như người ta vẫn nghĩ? Hay chúng ta vẫn có thể nhìn đau khổ dưới một góc độ bao dung hơn?

Phần mềm di động

Blog GS John VU - GS John Vu - 28/05/2026 12:00
Phát triển ứng dụng di động là qui trình qua đó phần mềm được phát triển cho điện thoại di động hay thiết bị cầm tay tương tự.

WhatsApp biến phòng chat AI thành khu vực "bất khả xâm phạm", Mark Zuckerberg muốn đọc cũng phải bó tay!

Kỹ năng - Anh Phương - 28/05/2026 11:00
Với chế độ ẩn danh sắp ra mắt trên WhatsApp, CEO Mark Zuckerberg khẳng định đây là sản phẩm AI lớn đầu tiên trên thế giới hoàn toàn không lưu trữ lịch sử hội thoại trên máy chủ nhằm bảo vệ quyền riêng tư tuyệt đối cho người dùng.

Bậc thầy EQ luôn mang theo 8 chữ: Chính Lưu Bị cũng ‘giắt túi’ để tránh tai hoạ

Suy ngẫm - Diệu Đan - 28/05/2026 10:00
Khi đối mặt với những lời khiêu khích và lăng mạ, ông điềm đạm, không tranh hơn thua. Khi đối mặt với những lợi nhuận nhỏ và những cám dỗ, ông bình tĩnh không tranh hơn thiệt. Ấy chính là cách đối đãi của bậc cao thủ!

“Thế hệ dâu tây”: Đi làm mệt quá thì nghỉ, việc khó quá không làm nữa là xong

Phong cách sống - Ngọc Linh - 28/05/2026 09:00
Khả năng chịu khổ và vượt khó “bằng 0”.

Minh triết từ nỗi bất an: Cái nhìn sáng suốt về sự bất định của đời sống

Từ sách - Phim - Minh Hằng - 28/05/2026 08:00
Giữa một thế giới đầy rẫy những biến động khó lường, "Minh triết từ nỗi bất an" nhắc nhở chúng ta rằng điểm tựa vững chắc, kiên cố nhất của một con người không bao giờ nằm ở một thế giới vật chất bên ngoài, mà ở ngay khả năng dũng cảm hòa mình vào dòng chảy của hiện tại, bởi vì ngay trong chính sự vô định đó, bạn sẽ tìm thấy sự tự do đích thực của tâm hồn.
HẠT GIỐNG TÂM HỒN
2019 Bản quyền thuộc về hatgiongtamhon.com.vn. Phát triển bởi ONECMS