CMMI-21

GS John Vu26/05/2024 12:00
CMMI-21

Hỏi: Tại sao tách bạch phần mềm và phần cứng? Tại sao tập trung vào quản lí phần mềm, là kĩ sư phần cứng, tôi nghĩ rằng tôi có thể xoay xở làm được phần mềm nữa.

Đáp: Có khác biệt giữa phần cứng và phần mềm:

a)     Bạn có thể chạm tới phần cứng nhưng bạn không thể chạm tới phần mềm.

b)     Bạn có thể nhìn vào phần cứng nhưng bạn không thể nhìn vào phần mềm.

c)     Bạn có thể quan sát hệ thống phần cứng được xây dựng và biết quãng 50% hệ thống phần cứng ngay tại chỗ, nhưng bạn không biết về điều này với phần mềm.

d)     Bạn có thể giải quyết các vấn đề phần cứng bằng việc lắp CPU hiệu năng cao, thêm bộ nhớ, tăng giải thông, hay đổi bo mẹ để cho hệ thống phần cứng có thể chạy nhanh hơn hay thực hiện tốt hơn. Điều này không bao giờ xảy ra trong phần mềm.

e)     Để xây dựng phần cứng nhanh hơn bạn có thể thêm nhiều người hơn và tăng khối lượng sản xuất nhưng điều này không đúng trong phần mềm. Đôi khi nhiều người còn tạo ra nhiều vấn đề hơn với phần mềm.

f)       Qui trình phát triển phần cứng có thể được xác định chính xác, bạn biết cái gì phải làm trước và cái gì phải làm sau cùng và bạn có thể đo thời gian tốn cho từng bước trong qui trình một cách chính xác. Nhưng bạn không thể làm điều đó với phần mềm bởi vì mọi người làm mọi thứ khác nhau không chính xác.

Khi tổ chức phần mềm được quản lí bởi những người thành công trong nghiệp vụ phần cứng, rắc rối nghiêm trọng sẽ xảy ra. Cả hai phía đều phải tranh đấu để thuyết phục nhau bởi vì cách nghĩ khác nhau. Sản phẩm phần mềm là duy nhất tới mức các phương pháp và công cụ chung không có tác dụng tốt. Không có “một phương pháp phù hợp cho tất cả” trong phần mềm. Bạn phải nhìn vào các phương pháp và công cụ chuyên lĩnh vực bởi vì ưu tiên là khác nhau giữa các lĩnh vực. Chẳng hạn, qui trình mấu chốt cho phần mềm thương mại là việc sửa luồng dữ liệu nhưng phần mềm khoa học lại tập trung vào thuật toán đúng. Với phần mềm thương mại trên thị trường (COTS) điều quan trọng là thiết kế giao diện tốt nhưng với hệ thống nhúng thì điều quan trọng là đẩy các lệnh vào chip bộ nhớ ít nhất. Người thiết kế phần mềm cho vệ tinh viễn thông không làm theo cùng cách họ làm khi thiết kế website e-commerce.

Hỏi: Tại sao chúng ta cần Ban chỉ đạo, SEPG, và nhóm công tác hay cải tiến qui trình? Thầy có đang biện bộ cho quan liêu hơn không đấy?

Đáp: Sau nhiều năm quản lí cải tiến qui trình phần mềm, tôi thấy rằng kết cấu nền là điều mấu chốt nhất cho sự thành công hay thất bại của cải tiến. Theo kinh nghiệm riêng của mình, tôi mạnh mẽ thúc giục tổ chức thành lập một cấu trúc ba bên như sau:

1)    Ban chỉ đạo bao gồm những người lãnh đạo điều hành cấp cao và người quản lí then chốt của tổ chức. Vai trò của họ là thiết lập hướng đi cho cải tiến, lập ưu tiên và cấp quyền cho các hoạt động cải tiến, cấp phát tài nguyên và thúc đẩy các hoạt động cải tiến.

2)    SEPG bao gồm những người có kĩ năng và kinh nghiệm trong tổ chức để phối hợp và tạo điều kiện cho các hoạt động cải tiến và giữ thông báo thường xuyên cho ban chỉ đạo biết.

3)    Các nhóm công tác bao gồm những người kĩ thuật được thành lập để trển khai các hoạt động cải tiến, để giải quyết các vấn đề được nhận diện trong kế hoạch hành động và để làm cho cải tiến xảy ra.

Cải tiến qui trình là về thay đổi và thay đổi chủ yếu là về cách làm. Nếu mọi người không thay đổi cách làm của mình, không có cải tiến. Ban Chỉ đạo đặt ra mục đich và mong đợi về thay đổi cách làm và trông đợi thấy nó xảy ra. SEPG ủng hộ thay đổi cách làm, và quản lí các hoạt động thay đổi. Để thành công, họ phải có kĩ năng đúng để quản lí các hoạt động cải tiến hay động viên việc thay đổi cách làm. Nhiều người có thể được huấn luyện bằng việc tham dự lớp học nhưng có thể không phát triển các kĩ năng này nếu họ không áp dụng điều họ đã học vào thực tế. Nếu tổ chức có thể nhận diện các sai lầm hay thất bại, thì họ có thể phát triển và duy trì các kĩ năng cần để giữ cho thất bại không xảy ra nữa. Tôi thực sự tin SEPG giúp cho tổ chức trở nên có kĩ năng mà không mất mặt.  Nhóm công tác phải được lựa chọn cẩn  thẩn cho hoạt động cải tiến vì họ giải quyết cho việc thay đổi cách làm và nêu gương về hành vi mong muốn. Bạn không thể lấy bất kì ai sẵn có rồi bảo họ “cứ làm điều đó đi” mà phải chọn người cẩn thận bởi vì họ sẽ đóng vai trò mô hình cho toàn bộ tổ chức.

Hỏi: Những điều mà tổ chức thành công đã làm để cải tiến qui trình và đạt tới mức độ trưởng thành cao hơn là gì?

Đáp: Dựa trên bài học rút ra, mọi tổ chức thành công đều có chung những điều sau:

1)     Cam kết của cấp quản lí hỗ trợ cho việc đang diễn ra, tài trợ và tạo kết cấu nền (như Ban chỉ đạo, SEPG, và Nhóm công tác qui trình)

2)     Những người quản lí dự án đồng ý cam kết để mọi người làm việc theo các hoạt động cải tiến. Điều này là rất quan trọng, không cải tiến qui trình nào có thể thành công mà không có hỗ trợ từ quản lí dự án dự ứng và mạnh mẽ

3)     Phần lớn mọi người làm việc về cải tiến qui trình đều được lấy từ các dự án trong toàn tổ chức.

4)     Nhóm SEPG nhỏ tồn tại để tạo điều kiện thuận lợi cho việc chia sẻ thông tin và tư vấn về hoạt động cải tiến.

5)     Hội tụ vào hành động thực, không chỉ vào chính sách và thủ tục mà xác định các qui trình, thử nghiệm thực tế, và làm mịn chúng trước khi huấn luyện cho mọi người dùng chúng một cách có hiệu quả.

6)     Nhiều phiên “nâng cao nhận biết” được tiến hành để giúp tập trung vào qui trình then chốt.

7)     Thiết lập dự án và cách đo qui trình và lập tuyến cơ sở để đo.

8)     Có cơ chế theo dõi tại chỗ và theo dõi các hoạt động hàng tháng.

9)     Cấp quản lí liên tục trao đổi về tầm quan trọng của cải tiến qui trình lặp đo lặp lại.

10)   Họ tất cả đều vui đùa khi làm điều đó

Hỏi: Tổ chức của tôi bắt đầu cải tiến qui trình phần mềm vài năm trước đây và chúng tôi đang tạo ra tiến bộ. Tuy nhiên, do thay đổi nghiệp vụ chúng tôi không chắc làm sao duy trì được sáng kiến này. Thầy có gợi ý nào không?

Đáp: Bao giờ cũng có thăng giáng trong vòng nghiệp vụ nhưng bạn có thể duy trì chương trình cải tiến của mình bằng cách:

1) Giữ cho mọi hoạt động cải tiến đều thấy được:

Bạn nên giữ các hoạt động cải tiến qui trình là thấy được cho mọi cấp quản lí để cho họ không thể bỏ qua được nó. Bạn cần gióng thẳng các mục đích của cải tiến qui trình với mục đích nghiệp vụ và trao đổi về nhu cầu cải tiến nghiệp vụ trong toàn tổ chức.

2) Làm cho mọi người đều tham dự:

Không việc cải tiến qui trình  nào có thể thành công trong chân không. Mọi người trong tổ chức phải tham gia vào thực hiện một số nhiệm vụ cải tiến. Bạn cần theo dõi dấu vết của những hoạt động này và thông báo cho mọi cấp quản lí về điều đang diễn ra.

3) Đo kết quả cải tiến:

Mọi chương trình cải tiến qui trình đều phải có mục đích đo được rõ ràng có liên quan tới nghiệp vụ. Mọi kết quả cải tiến qui trình đều phải được thu thập, phân tích và theo dõi dấu vết về tới các mục đích nghiệp vụ, và phải được trao đổi trong toàn tổ chức. Nếu xu hướng này là có triển vọng, đó là hoạt động cải tiến của bạn quả đạt tới các mục tiêu của nó, không ai muốn làm xáo trộn thành công.

Hỏi: Tôi nghĩ tiến hành nhiều kiểm điểm hơn là tốt nhưng không hiện thực. Chúng tôi cần phần mềm có thể được tạo ra nhanh nhất.  Tại sao kiểm điểm và để trễ việc đưa ra? Sao chúng ta không có “phần mềm đủ tốt” thôi?

Đáp: Câu hỏi của tôi là “Thế nào là đủ tốt?” Tôi không biện hộ cho việc tiến hành nhiều kiểm điểm chỉ vì mục đích kiểm điểm nhưng trong thế giới thay đổi nhanh chóng và cạnh tranh cao này, thành công của doanh nghiệp bao giờ cũng phụ thuộc vào chất lượng của sản phẩm chúng ta sản xuất ra cho khách hàng và chúng ta không thể chấp nhận được việc có cái gì có thể gây nguy hiểm cho tương lai của chúng ta ở đây.

Hỏi: Nhà cung cấp của tôi được xác nhận ISO 9001 và tôi muốn tổ chức phần mềm của tôi tiến theo cùng hướng để cho chúng tôi có thể so sánh lưu ý và chia sẻ bài học rút ra. Thầy nghĩ gì về ISO 9001?

Đáp: Theo ý kiến tôi, IS0 9001 là chỗ bắt đầu tốt cho cải tiến chất lượng nhưng vì nó mông lung thế, tôi nghĩ tổ chức của bạn có lẽ sẽ có nhiều câu hỏi hơn là có câu trả lời. Tôi nghĩ nhiều về điều này khi tôi học trở thành  người kiểm định ISO 9001 năm 1991. ISO 9001 “chung chung” tới mức gần như bất kì tổ chức phần mềm nào cũng có thể có đủ tư cách cho nó. Tôi biết nhiều công ti đã nhận chứng chỉ ISO 9001 khi họ chắc chắn vẫn là công ti “CMMI mức 1” khi được thẩm định theo CMMI. Trong những năm qua, tôi đã thẩm định 3 tổ chức ở mức 1 nhưng tất cả đều có xác nhận ISO 9001. Những người ở đó bảo tôi “Dễ lừa kiểm định viên ISO lắm.” Bình luận này làm tôi bận tâm nhiều bởi vì thời gian và tiền bạc bị phí hoài vào “chơi” xác nhận ISO 9001.

Vừa là cả kiểm định viên ISO 9001 và người lãnh đạo thẩm định CMMI, tôi mạnh mẽ tin ISO 9001 là mô hình rất tốt để bắt đầu cuộc hành trình cải tiến chất lượng. Điều không may là nhiều tổ chức cảm nhận việc có chứng chỉ ISO 9001 như chỗ kết thúc thay vì chỗ bắt đầu.

Hỏi: Liệu có khả năng cho một tổ chức đưa vào hoạt động cải tiến mà không có hỗ trợ của cấp quản lí không?

Đáp: Phần lớn việc cải tiến đều yêu cầu sự hỗ trợ của cấp quản lí nhưng nếu bạn muốn cải tiến qui trình riêng của mình, bạn có thể bắt đầu với việc giám định chính thức tại cuối các pha vòng đời (Yêu cầu, Thiết kế, Viết mã, và Kiểm thử) hay tiến hành nhiều kiểm thử hơn để cải tiến chất lượng phần mềm.

Hỏi: Làm sao SEPG giúp được cho tổ chức đạt tới mức trưởng thành cao hơn nếu họ chưa bao giờ làm việc trong một tổ chức mức cao hơn trước đây? Cái gì là đặc trưng của mức 4 và 5?

Đáp: Theo hiểu biết của tôi, rất ít thành viên SEPG có đủ may mắn để làm việc ở các tổ chức trưởng thành mức cao hơn. Chỉ có vài tổ chức ở mức 4 và 5. Đó là lí do tại sao tôi cổ vũ SEPG lấy ưu thế của việc huấn luyện nhiều hơn, chia sẻ nhiều hơn các kinh nghiệm.

Tôi đã tiến hành mười bốn thẩm định ở các tổ chức mức 4 và 5 và tôi phải nói rằng bên cạnh việc thoả mãn tất cả các mục đích miền qui trình của mức 4 và 5, các tổ chức này còn vượt ra ngoài thực hành trong CMMI.  Không thành vấn đề điều bạn có thể hình dung ra trước, một tổ chức như vậy sẽ có nhiều điều làm bạn ngạc nhiên — những canh tân mà họ đã nghĩ tới và thực hiện mà tác giả của CMMI cũng không thể nhìn thấy trước được. (Điều này có lẽ là vì đã không có các tổ chức mức 4 hay 5 tồn tại khi CMM được tạo ra)  Chẳng hạn: Không có chỗ nào mà CMMI khuyến cáo rằng quyết định đưa ra sản phẩm phần mềm nên là kết quả của nhóm SQA (không phải của người phát triển) hay chức năng tính toán theo thuật toán lớn phải dựa trên việc đo: nếu ít hơn một ngưỡng nào đó, thì cho ra; ngược lại, làm lại.  Nhưng tất nhiên, một số tổ chức mức 4 sẽ làm điều đó.  Và khi bạn thấy một qui trình như vậy, có sự thừa nhận lập tức về phần người lãnh đạo thẩm định cho dù bạn còn chưa thấy điều này trước đó.  Và phản ứng của bạn là — “Ồ vâng, điều đó có nghĩa đấy.  Sao mình không nghĩ về điều đó trước đây?  Nó hiển nhiên thế khi mình thấy nó!”

Hỏi: Thầy đạt tới việc thoả mãn khách hàng thế nào bên cạnh việc chuyển giao sản phẩm đúng thời gian?

Đáp: Bạn cần tự hỏi mình những câu hỏi này:

Khách hàng của chúng ta là ai?

Chúng ta có hiểu trông đợi của họ không?

Chúng ta có hiểu cách họ đo những trông đợi này không, và chúng ta có hiểu cách chúng ta đang làm ngược với những cách đo đó không?

Chúng ta có hiểu cái gì là quan trọng đối với khách hàng theo quan điểm cải tiến?

Chúng ta có kế hoạch đưa những cải tiến đó vào thực tế không?

Hỏi: Kiến trúc sư hệ thống làm việc thế nào? Chúng ta cần loại vấn đề gì khi tích hợp hệ thống?

Đáp: Cũng như nhà thầu yêu cầu bản kế hoạch tổng thể trước khi bắt đầu xây dựng, kiến trúc sư hệ thống cần bản kế hoạch chi tiết khi thiết kế hệ thống máy tính. Khi nhiều hệ thống và ứng dụng phải cùng tồn tại bên trong cùng một công ti, việc lập kế hoạch thậm chí còn trở nên mấu chốt hơn. Số lớn các công nghệ khác nhau và các chuẩn cạnh tranh có thể dẫn tới chi phí bảo trì cực kì cao và thất vọng vô tận với các yêu cầu tích hợp. Khi tích hợp công nghệ mới hay nâng cao hệ thống hiện có, kiến trúc sư hệ thống phải đảm bảo rằng chúng nhất quán với kiến trúc kĩ thuật tổng thể phục vụ cho nghiệp vụ.  Các khía cạnh then chốt của kiến trúc công nghệ tại từng mức là: tính đổi qui mô được, tính an ninh, tính khả chuyển, tính dùng lại, tính bảo trì được và tính thích nghi được theo các qui tắc nghiệp vụ mới.

English version 

CMMI-21

Question: Why separate software and hardware? Why focus on software management, as hardware engineer, I think that I can manage software too.

Answer: There are differences between hardware and software:

a)     You can touch hardware but can not touch software.

b)     You can look at hardware but can not look at software.

c)      You can watch the hardware system being built and knowing that about half or 50% of the hardware system is in place, but you do not know about this with software.

d)     You can solve hardware problem by installing high performance CPU, add more memory, increase bandwidth, or change motherboard so the hardware system can run faster or perform better. This never happen in software.

e)     To build hardware faster you can put more people and increase production volume but this is not true in software. Sometime more people create more problems with software.

f)        A hardware development process can be defined precisely, you know what to do first and what to do last and you can measure the time it takes for each step in the process precisely. But you can not do that with software because people do things differently not precisely.

When a software organization is managed by managers who succeeded in hardware business, serious trouble will take place. Both sides have to struggle in persuading each others because different mindset. Software products are unique so that generic methods and tools do not work well. There is no “one size fits all” in software. You must look at domain specific methods and tools because priority is different between domains. For example, the critical process of commercial software is fixing data flow but scientific software is focusing on select the right algorithm. With commercial of the shelf software (COTS) the important is the designing of good interface but embedded system is pushing instructions into least memory chips. People who design software for the telecommunication satellite do not do it the same way they would when design a website e-commerce.

Question: Why do we need a Steering committee, a SEPG, and a Working group for process improvement? Are you advocating more bureaucracy?

Answer: After many years of managing software process improvement, I found that infrastructure is the most critical to the success or failure of improvement. Based on my own experiences, I strongly urge the organization to set up a three-tier structure as follows:

1)     A Steering committee consists of senior executives and key managers of the organization. Their role is to set direction for improvement, prioritizes and authorizes improvement activities, allocates resources and promotes improvement activities.

2)     The SEPG consists of skilled and experienced people from the organization to coordinate and facilitate improvement activities and keep the steering committee informed.

3)     The Working groups consist of technical people formed to deploy improvement activities, to solve problems identified in the action plan and to make improvement happen.

Process improvement is about change and change is mostly behavior. If people do not change their behavior, then there is no improvement. The Steering committee sets goals and expectations for behavior change and expects to see it happen. The SEPG advocates behavior change, and manages the change activities. In order to succeed, they must have the right skills to manage improvement activities or encourage behavior changes. Many people maybe trained by taking classes but may not develop the skills if they do not apply what they learned into practice. If the organization can identify the mistakes or failure, then they can develop and maintain the skills needed to keep failure from happening again. I really believe the SEPG helps the organization become skilled without losing face.  The working group must be carefully selected for improvement activities since they deal with behavior change and set an example for the desired behavior. You can not take anybody that are available and tell them “just do it” but choose the people carefully because they will serve as the role model for the entire organization.

Question: What are things that successful organizations did to improve the process and achieved higher levels of maturity?

Answer: Based on lessons learned, all successful organizations share the following common things:

1)     Management commitment back up with on-going support, funding and infrastructure. (i.e. Steering committee, SEPG, and Process Working Group)

2)     Project managers agree to commit people to work on improvement activities. This is very important, no process improvement can be successful without strong and proactive project management support

3)     Most people working on process improvement come from projects across the organization.

4)     A small SEPG group exists to facilitate the sharing of information and consult on improvement activities.

5)     Focusing on real actions, not just policies and procedures but define the actual processes, pilots and refine them before train people to use them effectively.

6)     A lot of “awareness” sessions are held to focus on key process.

7)     Establish project and process measurements and a baseline to measure against.

8)     Having a tracking mechanism in place and track activities monthly.

9)     Management continues to communicate the importance of process improvement over and over again.

10) They all have fun doing it

Question: My organization started software process improvement several years ago and we are making progress. However, due to business changes we are not sure how to sustain this initiative. Do you have any suggestion?

Answer: There are always up and down in business cycle but you can sustain your process improvement program by:

1) Keep all improvement activities visible:

You should keep process improvement activities visible to all levels of management so they can not ignore it. You need to align the goals of process improvement to the business goals and communicate the need to improve the business throughout the organization.

2) Make everyone involve:

No process improvement can succeed in a vacuum. Everybody in the organization must involve in implementing some improvement tasks. You need to keep track of these activities and inform all levels of management of what is going on.

3) Measure the improvement results:

Every process improvement program must have clear measurable goals that relate to the business. All process improvement results must be collected, analyzed and tracked against business goals, and communicated across the organization. If the trend is favorable, that is your improvement activities do achieve its objectives, no one will like to tamper with success.

Question: I think conducting more reviews is good but not realistic. We need software as fast as we can produce them.  Why reviews and delay the release? Why don’t we have “just good enough software”?

Answer: My question is “How good is enough?” I do not advocate conducting more reviews for review sake but in the fast changing and highly competitive world, the success of business always depends on the quality of the product that we produce to the customer and we can not afford to have anything that may jeopardize our future here.

Question: My supplier is ISO 9001 certified and I want my software organization to move in the same direction so that we can compare note and share lessons learned. What do you think of ISO 9001?

Answer: In my opinion, IS0 9001 is a good start for quality improvement but since it is so vague, I think your organization probably will have more questions than getting answers. I thought a lot about this when I was in training to become ISO 9001 auditor in 1991. The ISO 9001 is so “generic” that almost any software organization could qualify for it. I knew many companies have received ISO 9001 certified when they were without a doubt still a “CMMI level 1” when assessed against the CMMI. In the past years, I have assessed 3 organizations at level 1 but all got ISO 9001 certifications. The people there told me “It is easy to cheat the ISO auditors”. This comment bothers me a lot because the time and money wasted on “gaming” the ISO 9001 certification.

As both ISO 9001 auditor and CMMI Lead Assessor, I strongly believe ISO 9001 is a very good model to start on the quality improvement journey. The unfortunate is many organizations perceive ISO 9001 certification as the end rather the beginning.

Question: Is it possible for an organization to put in place an improvement activity without management support?

Answer: Most process improvement does require management support but if you want to improve your own process, you can start with formal inspections at the end of each life-cycle phases (Requirements, Design, Code, and Test.) or conducting more tests to improve software quality.

Question: How can SEPG help organizations reach higher levels of maturity if they never work in a higher level organization before? What are the characteristics of a level 4 and 5?

Answer: From my knowledge, very few SEPG members are lucky enough to work at higher maturity organizations. There are only few level 4 and 5 organizations. That is why I encourage SEPG to take advantage of more training, more sharing of experiences.

I have conducted fourteen assessments in level 4 and 5 organizations and I have to say that besides satisfy all the Process Area goals of the level 4 and 5, these organizations go beyond the practices in the CMMI.  No matter what you may envision beforehand, such an organization will have lots of surprises for you — innovations that they have thought of and implemented which the authors of the CMMI could not foresee. (This is probably because there were no level 4 or 5 organizations exist when the CMM was created)  For example: Nowhere does the CMMI recommend that the decision to release a software product should be the result of the SQA group (not the developers) or computing a heavy algorithm-driven function based on measurements: if less than the threshold, release; else, rework.  But of course, some Level 4 organization will do just that.  And when you see such a process, there is instant recognition on the part of the Lead Assessor even if you haven’t seen this before.  And your reaction is — “Oh yeah, that makes sense.  Why didn’t I think of that before?  It’s so obvious once I see it!”

Question: How do you achieve customer satisfaction beside deliver a product on time?

Answer: You need to ask yourself these questions:

Who are our customers?

Do we understand their expectations?

Do we understand how they measure those expectations, and do we understand how we are doing against those measurements?

Do we understand what is important to our customer from an improvement standpoint?

Do we have a plan to put those improvements in place?

Question: How does System Architect work? What kind of issues do we need to consider when integrate systems?

Answer: Just as contractors require blueprints before beginning construction, system architects need detailed plans when designing computer systems. When multiple systems and applications must coexist within the same company, planning becomes even more critical. A mass of different technologies and competing standards can lead to extremely high maintenance costs and endless frustration with integration requirements. When integrate new technologies or enhance existing systems, System Architect must ensure that they are consistent with the overall technical architecture for the business.  The key aspects of technology architecture at each level are: Scalability, Security, Portability, Reuse, Maintainability and Adaptability to new business rules.

 


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

Vòng đời kiểm thử

Nhiều người trong các bạn đã hỏi tôi về kiểm thử và mối quan hệ của nó với vòng đời phát triển phần mềm. Về căn bản kiểm thử tuân theo vòng đời tương ứng với mọi pha của vòng đời phát triển.
2

Một dòng mã

Khi tôi là sinh viên khoa học máy tính, tôi chưa bao giờ học về Quản lí cấu hình phần mềm Software Configuration Management (SCM).
3

Cách đo và độ đo

Tôi nhận được một email người gửi viết: “Cái gì là khác biệt giữa cách đo và độ đo và có bao nhiêu cách đo hay độ đo phần mềm?”
4

Thành công ở đại học

Thành công nghĩa là đạt tới mục đích của bạn, dù chúng là bất kì cái gì.
5

Cách đo

Tôi nhận được một email từ một sinh viên: “Tại sao chúng ta phải đo công việc của mình? Đo là khó và phí thời gian vì nó không cung cấp cho tôi giá trị. Nếu chúng ta có lỗi, chúng ta có thể sửa chúng về sau bất kể chúng có bao nhiêu. Tôi không biết tại sao chúng ta cần đo?”

CMMI-20

Hỏi: Làm sao chúng tôi phân công người vào SEPG? Chúng tôi muốn cải tiến qui trình phần mềm nhưng không có nhân lực có kĩ năng.

CMMI-19

Hỏi: Thầy định nghĩa “Thể lệ hoá” là thế nào?

CMMI-18

Hỏi: Tại sao các thành viên SEPG cần huấn luyện về cải tiến qui trình? Họ có là chuyên gia trong cải tiến không?

CMMI-17

Hỏi: Tại sao dự án phần mềm vẫn thất bại với tỉ lệ rất cao?

CCMI-16

Hỏi: Làm sao người lập trình có thể cải tiến kĩ năng để là người giỏi nhất? Thầy có lời khuyên nào không?

CMMI-15

Hỏi: Tổ chức của chúng tôi muốn tiến hành việc đánh giá để xác định chúng tôi ở đâu trong mức trưởng thành CMMI. Các bước và vấn đề là gì?

CMMI-14

Nguồn của rủi ro phần mềm là gì? Tại sao mọi người không thích nói về nó?

CMMI-13

Hỏi: Tôi tin chúng ta nên học từ các công ti khác đã từng làm cải tiến qui trình. Họ có công bố các bài học rút ra của họ không?

Kỹ năng của nhà doanh nghiệp

Blog GS John VU - GS John Vu - 14/07/2026 11:00
Tuần trước trong lớp, một sinh viên đã hỏi tôi: “Em muốn là một nhà doanh nghiệp như Steve Jobs hay Bill Gates và bắt đầu công ti riêng của em. Em cần làm gì để biết trước khi em tốt nghiệp?” Đột nhiên, vài sinh viên cũng muốn biết cách bắt đầu công ti riêng của họ. Dường như là mọi người đều muốn là ông chủ riêng của họ thay vì làm việc cho ai đó khác.

Những cải tiến quan trọng về AI và đồng bộ dữ liệu

Kỹ năng - 14/07/2026 10:00
Theo Zalo, các tính năng Dịch AI, AI Agent, đồng bộ dữ liệu hiện đang mở thử nghiệm cho người dùng từ tháng 7 và sẽ sớm được phổ biến đến toàn bộ người dùng.

AI tranh việc, đất sống nào cho người làm nghề thiết kế?

Phong cách sống - Đoàn Thủy - Việt Anh - 14/07/2026 09:00
Mất dự án vì khách chọn AI, bị khách dùng AI nhận xét sản phẩm, đó là những gì người làm thiết kế đang đối mặt. Trước làn sóng công nghệ, người làm nghề phải tìm lời giải cho giá trị của chính mình.

Không khóc giữa nhân gian - Khổ đau chỉ là ảo tưởng do chính mình tạo

Từ sách - Phim - PV - 14/07/2026 08:00
Tất cả chúng ta, không ngoại trừ bất kỳ ai trong đời này, đều đang bước vào một kỳ thi tâm linh.

Ưu tiên cho người quản lý dự án phần mềm

Blog GS John VU - GS John Vu - 13/07/2026 11:00
Phần lớn những người quản lí dự án được đào tạo để hội tụ vào lịch biểu nhưng theo kinh nghiệm của tôi, có lẽ điều quan trọng nhất là về đặt ưu tiên dự án.

10 câu trích dẫn ý nghĩa dành cho những ai đang cảm thấy lạc lối

Suy ngẫm - Trinh Quang - 13/07/2026 10:00
Khi bạn không thích những người xung quanh, cách tốt nhất để thể hiện sự không thích đó không phải là tranh cãi với họ, mà là chủ động rời bỏ họ.

Bức ảnh bữa cơm gia đình của tỷ phú Jensen Huang khiến nhiều người suy ngẫm

Truyền cảm hứng - Mi Vân - 13/07/2026 09:00
Một bữa cơm gia đình giản dị của Jensen Huang - CEO Nvidia và là một trong những tỷ phú giàu nhất thế giới - đang khiến nhiều người suy ngẫm về giá trị của gia đình giữa cuộc sống hiện đại.

Không khóc giữa nhân gian: Gặp lại chính mình trong vô lượng khổ đau

Từ sách - Phim - TĐ - 13/07/2026 08:00
"Không khóc giữa Nhân gian" không phải là một quyển sách chữa lành, mà là lời nhắn nhủ chánh niệm rằng chúng ta đừng sợ nỗi buồn. Nỗi buồn không đáng sợ, cái đáng sợ là hiểu sai và có thái độ chưa đúng với nỗi buồn mình đang trải qua.

Một dòng mã

Blog GS John VU - GS John Vu - 12/07/2026 10:00
Khi tôi là sinh viên khoa học máy tính, tôi chưa bao giờ học về Quản lí cấu hình phần mềm Software Configuration Management (SCM).

10 câu trích dẫn giúp bạn khi lạc lối

Suy ngẫm - Trinh Quang - 12/07/2026 09:00
Một khi đã đánh mất điều gì đó, bạn sẽ không bao giờ có thể lấy lại được. Có những việc, nếu bạn không làm ngay bây giờ, bạn sẽ không bao giờ làm lại được nữa.

Không khóc giữa nhân gian - Làm sao để hết khổ?

Từ sách - Phim - FN - 12/07/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?

Cách đo và độ đo

Blog GS John VU - GS John Vu - 11/07/2026 11:00
Tôi nhận được một email người gửi viết: “Cái gì là khác biệt giữa cách đo và độ đo và có bao nhiêu cách đo hay độ đo phần mềm?”

Không thích ai đó, cách khéo léo để xử lý việc này là thông qua "Phương pháp Sedona"

Suy ngẫm - PV - 11/07/2026 10:00
Trong cuộc sống, chúng ta sẽ luôn gặp những người mình không thích: đó có thể là một đồng nghiệp luôn nhắm vào bạn ở nơi làm việc, một người quen giả tạo và hay buôn chuyện, hoặc một người lạ có giá trị sống trái ngược với bạn và bạn không thể hòa hợp.

Mẹ tỷ phú Elon Musk chỉ cách nuôi dạy con thành tài: điều tuyệt đối không nên làm

Phong cách sống - Hân Ly - 11/07/2026 09:00
Mẹ của người giàu nhất thế giới cho rằng việc nuôi dạy con không nằm ở sự áp đặt, mà ở điều này cực kỳ quan trọng và cần thiết.

Sắp phát hành: Hồi ký của hy vọng

Tủ sách - PV - 11/07/2026 08:00
Hồi ký của hy vọng (Saving Five: A Memoir of Hope) thu hút sự chú ý của truyền thông quốc tế không chỉ bởi câu chuyện có thật của Amanda Ngọc Nguyễn, mà còn bởi cách cô kể lại cuộc đời mình vượt ra ngoài khuôn mẫu của một hồi ký về sang chấ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