Mối quan tâm khác với CMMI

GS John Vu16/06/2024 12:00
Mối quan tâm khác với CMMI

Một người quản lí dự án viết cho tôi: “Tôi không biết gì về CMMI, tôi lo lắng rằng chúng tôi có thể không đạt tới Mức 3. Xin thầy lời khuyên.”

Một người quản lí dự án viết cho tôi: “Công ti của tôi muốn đạt tới CMMI Mức 3 để nhận được tài trợ khuyến khích từ chính phủ. Người chủ của công ti ra lệnh cho mọi người học CMMI và làm tài liệu để qua được đánh giá vào cuối năm khi tư vấn Ấn Độ tới và tiến hành đánh giá. Người chủ công ti yêu cầu tôi quản lí hoạt động này. Tôi không biết gì về CMMI, tôi lo lắng rằng chúng tôi có thể không đạt tới Mức 3. Xin thầy lời khuyên.”

Đáp: Dường như là công ti của bạn đã không có đánh giá CMMI. Trong tình huống đó, bạn không biết về mức độ CMMI hiện thời của bạn, liệu bạn là mức 1, 2, 3, 4 hay 5. Đặt mục đích mà không biết bạn đang ở đâu là sai lầm. Dường như là người chủ công ti của bạn bị thông tin sai và không hiểu cải tiến qui trình. Không ai trong công ti sẽ cảm thấy thoải mái với cái gì đó mà họ không biết nhưng bị áp đặt lên họ. Nếu họ cảm thấy theo cách đó thì từng cải tiến sẽ là trận chiến giữa người quản lí và người phát triển.

Bạn cần hiểu rằng cải tiến qui trình nghĩa là qui trình phải tồn tại để cho bạn có thể cải tiến được nó. Nếu qui trình không được làm tài liệu và nó là trong đầu ai đó thì bạn không thể cải tiến nó được. Để thành công, mọi người trong công ti phải tham gia vào kiểm điểm qui trình hiện có, nhận diện điểm yếu, cung cấp cái vào, và thực hiện những điều cần thiết để cải tiến nó. Người của bạn cần qui trình mà họ đã dùng hàng ngày để cải tiến, không phải cái gì đó mới. Sẽ là hại nhiều hơn nếu bạn bổ sung những điều không cần thiết và làm tài liệu cho qui trình hiện có chỉ để qua được đánh giá. Nói cách khác, ra lệnh cho mọi người học CMMI (quãng 700 trang) và bổ sung tài liệu mới mà không biết cách họ có thể cung cấp ích lợi nào đó, chỉ là ý tưởng sai.

Dường như là công ti của bạn cần nhà tư vấn tốt, người có kinh nghiệm trong CMMI để giúp giải thích và diễn giải về các thực hành của CMMI để khớp với công ti của bạn. Người chủ nên nhìn vào CMMI như cái gì đó giúp cho công ti của mình trở nên cạnh tranh hơn trong thị trường. Mục đích nên là cải tiến chất lượng, giải lỗi, giảm chi phí chứ KHÔNG chỉ là CMMI Mức 3 vô nghĩa. Nếu chính phủ khăng khăng chỉ ở mức 3 như sự khuyến khích, vậy thì họ đang trả tiền cho cái gì đó không có giá trị thực.

Để cải tiến thực xảy ra, động cơ cải tiến phải tới từ những người trong công ti. Người phát triển bao giờ cũng muốn cải tiến các khu vực gây ra cho họ thất vọng. Để làm cho mọi sự tốt hơn, bạn phải bắt đầu từ những vấn đề này trước. Lập kế hoạch dự án tốt hơn, có ước lượng lịch biểu chính xác hơn là then chốt cho thành công của dự án. Có nhiều cuộc họp kiểm điểm để giảm lỗi cũng là cách khác làm cho người phát triển sung sướng vì họ muốn dành thời gian xây dựng sản phẩm mới thay vì sửa lỗi trong dự án cũ. Người chủ công ti của bạn cần xác định mục đích doanh nghiệp của mình mà ông ta muốn đạt tới rồi dùng điều đó để ưu tiên hoá các hoạt động cải tiến để cho kết quả không phải là ‘Mức’ mà là một công ti phần mềm tốt hơn.

English version

Another concern with the CMMI

A project manager wrote to me: “My company wants to achieve CMMI Level 3 to receive incentive funding from the government. The company owner orders everybody to learn the CMMI and document materials to pass the appraisal by the end of the year when Indian consultant come and conduct the appraisal. The company owner asks me to manage this activity. I do not know anything about CMMI, I am worry that we may not achieve the Level 3. Please advise.”

Answer: It seems that your company has not had a CMMI appraisal. In that situation, you do not know about your current CMMI level, whether you are level 1, 2, 3, 4 or 5. Setting a goal without knowing where you are is a mistake. It seems that your company owner is misinformed and do not understand process improvement. No one in the company would feel comfortable to something that they do not know being forced upon them. If they feel that way than each improvement will be a battle between managers and developers.

You need to understand that process improvement means the process must exist so you can improve it. If the process is not documented and is in somebody‘s mind then you cannot improve it. To succeed, everybody in the company must participate in reviewing the existing process, identify weaknesses, provide inputs, and implement necessary things to improve it. Your people needs the process that they already used every day to improve, not something new. It is more harms if you add unnecessary things and documents to existing process just to pass the appraisal. In other word, order everybody to learn the CMMI (About 700 pages) and add new materials without knowing how they can provide some benefits, is a wrong idea.

It seems that your company needs a good consultant who is experienced in the CMMI to help explain and interpret the practices of the CMMI to fit your company. The owner should look at the CMMI as something to help his company to become more competitive in the market. The goals should be improve quality, reduce defects, reduce cost NOT just a meaningless CMMI level 3. If the government insists on just a level 3 as an incentive, then they are paying for something does not have any real value.

For real improvement to happen, motivation to improve must comes from the people within the company. Developers always want to improve areas that are causing them frustration. To make things better, you must start with those problems first. Planning project better, have more accurate schedule estimates are key to a project’s success. Have more reviews to reduce defect is also another way to make developers happy as they want to spend their time building new products rather than fixing defects in old projects. Your company owner needs to define his business goals that he wants to achieve then using that to prioritize improvement activities so result is not a ‘Level’ but to be a better software company.

Một giáo sư máy tính nói với tôi: “Tôi đã từng dạy về khoa học máy tính trong mười lăm năm. Quan sát của tôi là ở chỗ hầu hết sinh viên vào đại học đều kích động với việc theo đuổi  nghề máy tính, đầy ảo tưởng và hiểu nhầm về điều họ có thể đạt tới. Ngay khi họ thấy rằng nó không phải là như trò chơi video, hay tải xuống phim mà là nhiều việc vất vả, thì họ bỏ. Theo ý kiến tôi, đấy tất cả là về cách họ được dạy trong trường trung học. Họ dường như nghĩ rằng nếu cái gì đó là khó, thầy giáo phải “làm cho nó dễ ra” với họ. Không thành vấn đề họ học thế nào, mọi người đều phải qua được kì thi. Đó là lí do tại sao nhiều sinh viên thế đã rời khỏi trường.”

Theo một nghiên cứu mới, nhiều sinh viên đại học không biết cách học khoa học máy tính. Họ học nó chỉ giống như họ học trong các lớp khác: Họ đọc cả đoạn dài trong sách giáo khoa và cố ghi nhớ chúng. Nhiều người ghi chép nhiều trong lớp, lập dàn bài, và dựa trên trí nhớ của họ khi làm việc với kĩ năng lập trình của họ. Đó là lí do tại sao nhiều người thấy các lớp này là khó thế. Học khoa học máy tính  không phải là về ghi nhớ sách mà bạn học bằng việc làm nó. Việc học được xây dựng trên hai thực nghiệm. Trong thực nghiệm thứ nhất, sinh viên được phép học từ sách giáo khoa giống như họ đã làm ở các lớp khác. Trong thực nghiệm thứ hai, sinh viên được cho hướng dẫn ngắn để xây dựng một chương trình từng bước mỗi lúc, họ chỉ đọc một văn bản trực tuyến ngắn về khái niệm nhưng phải thực hiện điều họ học ngay lập tức. Sau một tuần, cả hai nhóm được yêu cầu viết một chương trình ngắn. Nhóm thứ hai được điểm cao hơn về hoàn thành và ít lỗi hơn nhóm thứ nhất. Điều đó chứng minh rằng “học qua hành” là hiệu quả nhiều trong dạy khoa học máy tính hơn là theo phương pháp đào tạo truyền thống.

Từ khảo cứu này, tôi tin rằng không phải là sinh viên không thể học được kĩ năng máy tính mà đấy là phương pháp đào tạo, cách chúng ta dạy sinh viên có thể tạo ra khác biệt. Cách tốt nhất để học cách lập trình là viết các lệnh ngắn, từng bước mỗi lúc. Sinh viên học bằng việc làm nó trong nhiều bước nhỏ.

Sinh viên nên bắt đầu với một ngôn ngữ lập trình như C. Tôi nghĩ C là ngôn ngữ cơ sở để dạy bạn cách chương trình chạy và tương tác với phần cứng. Sau đó, sinh viên có thể chuyển sang C++ nơi họ sẽ học nhiều hơn về hướng đối tượng. Cũng có thể bắt đầu bằng một ngôn ngữ đa năng như Python, tương đối dễ học ngôn ngữ này rồi chuyển sang Java. Sinh viên nên hội tụ vào kết cấu trước khi chuyển vào các khái niệm trừu tượng như “hướng đối tượng”, “song hành” hay “động” vì họ sẽ không có khả năng hiểu được chúng chừng nào họ chưa thực tế có kinh nghiệm lập trình nào đó.

Ngày nay có nhiều website cung cấp các bài học về ngôn ngữ lập trình. Khi bạn sẵn lòng và quyết tâm, bạn có thể học lập trình cơ bản trong vài ngày. Thỉnh thoảng, bài học đại cương có thể gây thất vọng nếu bạn không thể có được câu trả lời cho những câu hỏi xác định. Trong trường hợp đó, lên các diễn đàn máy tính để đăng câu hỏi hay tìm ai đó đã biết cách lập trình để giúp đỡ. Nhớ rằng bạn đang học một bước mỗi lúc, cho nên đừng vội vàng. Bạn không thể viết vài nghìn dòng mã được trong vài tuần cho nên thực hành viết mã của bạn trong chương trình nhỏ thôi (10 tới 50 dòng mã) để thử kĩ năng của bạn. Không ai có thể chạy được trước khi họ có thể bước, để cho bản thân bạn vài tuần để làm chủ ngôn ngữ cơ bản đã.

Lập trình máy tính là kĩ năng mà chỉ có thể được xây dựng cùng thời gian. Nó cần nhiều giờ thực hành kĩ năng giải quyết vấn đề trên các kiểu vấn đề trước khi bạn có thể thực sự là giỏi về nó. Khi bạn có mọi kĩ năng cơ bản, bạn có thể bắt đầu học về thuật toán và lưu đồ. Mọi người học về máy tính đều có thể bảo bạn rằng việc đó có thể là đáng thất vọng, nhưng hoàn thành một chương trình cũng có thể là rất thoả mãn. Đừng từ bỏ nếu bạn không hiểu khái niệm. Lập trình có thể là việc trừu tượng để học. Khi làm việc trên vấn đề đặc biệt phức tạp, để thời gian để cho não bạn được thảnh thơi. Khi bạn làm chủ một ngôn ngữ, việc học ngôn ngữ thứ hai là dễ dàng hơn. Cuối cùng bạn sẽ biết nhiều ngôn ngữ lập trình và thấy rằng nó không khó chút nào.

—-English version—-

Learning computer language

Today, students are familiar with technology gadgets such as smart-phones, laptops, and video games devices. Many are interested in learning about computer or pursue a degree in information technology. Unfortunately when they go to college, many found that computer science or software engineering classes are more difficult than they thought so many drop out or change to another field of study.

A computer professor told me: “I have been teaching computer science for fifteen years. My observation is that most students come to college excited about pursuing a computer career, full of illusions and misconceptions about what they can achieve. As soon as they find out that it is not all about videogames, or download movies but a lot of hard work, then they drop out. In my opinion, it is all about how they are taught in high school. They seem to think that if something is difficult, teachers should “make it easy” for them. It does not matter how they study, everybody should pass the exams. That is why it is hard to change them by the time they go to college. That is why so many students quit school”

According to a new research, many college students do not know how to study computer sciences. They study it just like they do in other classes: They read long paragraphs in text books and try to memorize them. Many take a lot of notes in classes, build outlines, and rely on their memory when work on their programming skills. That is why many found these classes are so difficult. Study computer science should not be about memorizing books but you learn by doing it. The study was built upon two experiments. In the first, students were allowed to study from text books just like they did in other classes. In the second, students were given short instructions to build a program one step at a time, they only read an short online text about the concept but must implement what they learn immediately. After a week, both group were asked to write a short program. The second group scored higher on completion and less defects than the first group. It proved that the “learning by doing” is much more effective in teaching computer science than the traditional training method.

From this study, I believe that it is not the students that could not learn computer skills but it is the training method, the way we teach students could make the difference. The best way to learn how to program is to write short instruction, one step at a time. Students learn by doing it in several small steps.

Students should start with a programming language such as C. I think C is a basic language to teach you how the programs run and interact with the hardware. After that, students can move to C++ where they will learn more about object- oriented. It is also possible to start with a general purpose language such as Python, a relative easy to learn language then move to Java. Students should focus on construction first before move into abstract concepts like “Object oriented”, “Concurrent” or “Dynamic” because they will not be able to understand them well until they actually have some programming experience.

Today there are many websites provide tutorials on programming languages. As long as you are willing and determine, you can learn the basic programming in few days. Sometime, online tutorials can be frustrating if you cannot get answers to specific questions. In that case, go to a computer forum to post questions or find someone who already knows how to program to help. Remember that you are learning one step at a time, so do not hurry. You cannot write a few thousand lines of code in few weeks so practicing writing your code in small program (10 to 50 lines of code) to test your skills. No one can run before they can walk, give yourself a few weeks to master the basic language.

Computer programming is the skills that can only be built with time. It takes many hours of practicing problem-solving skills on different types of problems before you can really be good at it. When you have all the basic skills, you may want to start to learn about algorithms and flowcharts. Everybody who study computer can tell you that it can be frustrating, but completing a program can also be very satisfying. Do not give up if you do not understand a concept. Programming can be a abstract thing to learn. When working on a particularly complex problem, take time to let your brain relax. Do not force yourself too hard. When you master one language, learning the second language is easier. Eventually you will know several programming languages and find out that it is not too difficult at all.

 


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

Công nghệ cao

Trong bài diễn văn hàng năm với quốc hội Mĩ để báo cáo về hoàn cảnh quốc qua và nêu đại cương kế hoạch mà chính phủ Mĩ muốn theo đuổi trong tương lai, tổng thống Barack Obama đã làm nổi bật tiềm năng cho tạo việc làm trong các lĩnh vực công nghệ sinh học và công nghệ thông tin.
2

Thiếu hụt kỹ năng công nghệ thông tin

Trong vài năm qua, vấn đề thiếu hụt kĩ năng CNTT thường được nhắc tới ở Mĩ và nó làm khuấy động nhiều cuộc tranh cãi.
3

Đối thoại với sinh viên ở Nam Kinh, Trung Quốc

Tháng trước khi tôi đọc bài giảng ở Nam Kinh, Trung Quốc, tôi có cơ hội nói chuyện với sinh viên đại học và họ hỏi tôi nhiều câu hỏi. Một sinh viên ghi lại nó và công bố nó trong báo trường như sau:
4

Cách học tốt hơn

Ngày nay sinh viên đại học có nhiều sao lãng ngăn cản họ học tập.
5

Tại sao học công nghệ tính toán?

Một người mẹ hỏi tôi: “Tại sao thầy cổ vũ học công nghệ tính toán? Con gái tôi sẽ tốt nghiệp phổ thông năm nay và nó quan tâm tới khu vực công nghệ. Chọn lựa của nó là gì?”

Cải tiến qui trình với CMMI

Làm sao để bắt đầu cải tiến qui trình dùng CMMI? Phải mất bao lâu để chuyển lên một mức CMMI? Xin thầy lời khuyên.”

Cuộc hành trình CMMI

Tôi đã nhận được nhiều email hỏi về việc dùng CMMI cho cải tiến qui trình. Tôi đã viết nhiều bài trên website này, cho nên xin xem lại chúng. Khi mọi người nghĩ về cải tiến qui trình, họ phải cân nhắc ba cấu phần: qui trình, con người và công cụ.

Câu chuyện CMMI

Nhiều công ti đăng hăm hở dùng Mô hình trưởng thành năng lực tích hợp (CMMI) nhưng người quản lí không biết điều gì sẽ xảy ra khi công nhân của họ bắt đầu làm cho cải tiến xảy ra.

CMMI-39

39.01 Hỏi: Tại sao thầy tán thành thoả mãn của khách hàng là mục đích quan trọng nhất của cải tiến qui trình? Là tổ chức kĩ thuật chúng tôi có nên tập trung vào mục đích kĩ thuật trước hết không?

CMMI-38

Hỏi: Năng lực lõi là gì? Tại sao nó là quan trọng cho tổ chức?

CMMI-37

Hỏi: Trong nhiều năm, phần mềm bao giờ cũng bị trách cứ vì mọi sự đi sai. “Căn nguyên” của phần lớn thất bại phần mềm là gì và làm sao cải tiến nó?

CMMI-36

36.01 Hỏi: SEPG hay người hành nghề phần mềm có phải tạo ra Qui trình phần mềm chuẩn của tổ chức Organization Standard Software Process (OSSP) không? Ai nên làm cho nó có hiệu lực, người quản lí hay SEPG?

CMMI-35

Hỏi: Tại sao chúng ta cần cải tiến phần mềm? Thầy có dữ liệu nào chỉ ra rằng phần mềm cần cải tiến không?

Tiệm bánh nửa đêm

Ở Hwawoldang, mỗi món bánh sẽ giúp người đã khuất tìm lại ký ức, nói lời còn dang dở trước khi đi qua thế giới bên kia. Đó là Tiệm bánh nửa đêm.

Vi công nhân: Xu hướng khoán ngoài toàn cầu mới

Blog GS John VU - GS John Vu - 02/08/2026 11:00
Thiếu hụt kĩ năng CNTT toàn cần đã đạt tới điểm găng vào lúc nền kinh tế toàn cầu đang phục hồi chậm chạp.

Bức ảnh này có bao nhiêu khuôn mặt?

Thư giãn - PV - 02/08/2026 10:00
Bức ảnh này có bốn khuôn mặt, và sau nhiều ngày tìm kiếm, tôi chỉ tìm thấy ba khuôn mặt. Tôi sẽ rất ấn tượng nếu bạn có thể tìm thấy cả bốn khuôn mặt.

TP.HCM, vợ chồng mang "nhà di động" 1,5 tỷ đồng đưa bố mẹ phượt 2.000km

Phong cách sống - Mộc Khải - 02/08/2026 09:00
Mong muốn đưa bố mẹ đi khám phá những vùng đất mới, gia đình chị Đoàn Thanh Giang đã huy động hai chiếc ô tô, trong đó có một "nhà di động", đưa 3 thế hệ rong ruổi hơn 2.000km xuyên miền Bắc.

Tiệm bánh nửa đêm

Tủ sách - FN - 02/08/2026 08:00
Ở Hwawoldang, mỗi món bánh sẽ giúp người đã khuất tìm lại ký ức, nói lời còn dang dở trước khi đi qua thế giới bên kia. Đó là Tiệm bánh nửa đêm.

Đối thoại với sinh viên ở Nam Kinh, Trung Quốc

Blog GS John VU - GS John Vu - 01/08/2026 11:00
Tháng trước khi tôi đọc bài giảng ở Nam Kinh, Trung Quốc, tôi có cơ hội nói chuyện với sinh viên đại học và họ hỏi tôi nhiều câu hỏi. Một sinh viên ghi lại nó và công bố nó trong báo trường như sau:

Sự im lặng là hình thức bác bỏ cao nhất

Suy ngẫm - Tr. Quang - 01/08/2026 10:00
Trong các mối quan hệ giữa người với người, khi đối mặt với mưu mô và những lời vu khống vô căn cứ, phản ứng đầu tiên của hầu hết mọi người là tranh cãi, phản bác và đối đầu trực diện.

Cứ 10 người trẻ Hàn Quốc thì 9 người sợ gặp bạn bè, khi các mối quan hệ thành khoản chi tiêu bị cắt giảm

Phong cách sống - Dun - 01/08/2026 09:00
Khi giá một bữa ăn tăng nhanh hơn thu nhập, thứ bị cắt không phải là món ăn mà là chính cuộc hẹn. Từ Seoul đến New York và Tokyo, "friendflation" đang cho thấy lạm phát không chỉ làm nhẹ giỏ hàng đi chợ mà còn làm nguội đi các mối quan hệ, và với nền kinh tế, đó là cú đòn giáng thẳng vào sức cầu nội địa.

‘Sức mạnh của Đạo’ - Nghệ thuật sống trong dòng chảy của Đạo

Từ sách - Phim - FN - 01/08/2026 08:00
​​​​​​​Trong nhịp sống hiện đại, hội chứng cuồng công việc (workaholism) hay kiệt sức (burnout) đang dần trở thành “căn bệnh thời đại”. Con người bận rộn theo đuổi thành công, không ngừng tối ưu hiệu suất và lấp kín từng khoảng thời gian trong ngày, nhưng lại hiếm khi cảm thấy viên mãn, hạnh phúc trong việc mình làm.

Công nghệ cao

Blog GS John VU - GS John Vu - 31/07/2026 11:00
Trong bài diễn văn hàng năm với quốc hội Mĩ để báo cáo về hoàn cảnh quốc qua và nêu đại cương kế hoạch mà chính phủ Mĩ muốn theo đuổi trong tương lai, tổng thống Barack Obama đã làm nổi bật tiềm năng cho tạo việc làm trong các lĩnh vực công nghệ sinh học và công nghệ thông tin.

Giới khoa học chụp não người đang toan tính trả thù và phát hiện ra thứ đáng sợ hơn cả ma túy

Suy ngẫm - Long Vân - 31/07/2026 10:00
"Quân tử trả thù mười năm chưa muộn", câu nói cửa miệng quen thuộc hóa ra không chỉ đơn thuần là một triết lý sống. Dưới lăng kính của thần kinh học hiện đại, nó là mô tả chính xác về một chu kỳ gây nghiện đáng sợ.

Nhạc sĩ Trần Tiến đi xe ôm lên tận đỉnh núi, ước mơ bỏ hết thế gian

Phong cách sống - Tùng Ninh - 31/07/2026 09:00
"Tôi đi 43 nước, không nước nào thân yêu bằng Việt Nam" – nhạc sĩ Trần Tiến nói.

Thế giới trong giọt nước - Khi những người tử tế không đồng ý với nhau

Từ sách - Phim - Quang Anh - 31/07/2026 08:00
Trong "Thế giới trong giọt nước", Regina Linke không đặt các nhân vật trước lựa chọn giữa thiện và ác. Họ đều muốn giúp một con chim sẻ bị thương, nhưng lại không thống nhất về cách giúp. Cũng từ những bất đồng ấy, câu chuyện không còn chỉ nói về lòng tốt.

Bạn có thể tìm thấy bao nhiêu khuôn mặt trong bức ảnh

Thư giãn - Tr. Quang - 30/07/2026 11:00
Chúng vô cùng khó tìm. Người ta nói rằng chỉ những người có khả năng quan sát cực kỳ tinh tường mới có thể tìm thấy chúng. Liệu bạn có phải là một trong số họ?

Người EQ cao vay tiền như thế nào?

Kỹ năng - Hà Nguyên - 30/07/2026 10:00
Ai cũng có lúc cần vay tiền để giải quyết một việc cấp bách. Nhưng điều khiến một người được tin tưởng không nằm ở số tiền họ vay, mà ở cách họ mở lời, giữ cam kết và ứng xử với khoản tiền mình đang mượn. Đó cũng là một biểu hiện của EQ tài chính.

Hành trình 3.000 km vượt sa mạc đến chiếc huy chương World Cup trên cổ của mẹ Nico Williams

Truyền cảm hứng - Minh Ngọc - 30/07/2026 09:00
Sau khi Tây Ban Nha bước lên ngôi vô địch, cầu thủ 24 tuổi của La Roja đã nhìn lên khán đài rồi tiến thẳng về phía mẹ mình - bà Maria, ôm bà thật chặt rồi tháo chiếc huy chương vô địch vừa nhận được để đeo lên cổ người phụ nữ đã đứng khóc suốt trận đấu.
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