1. Tôi đã gặp nhiều Kỹ sư phần mềm tin rằng họ bằng cách nào đó vượt trội so với các kỹ sư QA. Tôi nghĩ rằng nó có thể giúp dập tắt niềm tin này nếu họ làm công việc của một kỹ sư QA một thời gian và nhận ra rằng đó là một bộ kỹ năng độc đáo và có giá trị của riêng mình.
Một kỹ thuật phần mềm tốt có một nền tảng về chất lượng, bao gồm kiểm tra, số liệu và thống kê. Bất cứ ai làm bất kỳ loại phát triển phần mềm nào cũng cần lưu ý (nếu không quen thuộc) duy trì mã nguồn chất lượng và sản xuất / duy trì các trường hợp thử nghiệm hiệu quả. Theo thời gian, tôi sẽ nghi ngờ rằng bất kỳ nhà phát triển phần mềm nào cũng sẽ hiểu được các khía cạnh khác nhau của chất lượng - chất lượng mã, tính di động, khả năng bảo trì, khả năng kiểm tra, khả năng sử dụng, độ tin cậy, hiệu quả và bảo mật.
Các kỹ sư phần mềm có thể tập trung vào một khía cạnh cụ thể của vòng đời - yêu cầu kỹ thuật, kiến trúc và thiết kế, xây dựng, thử nghiệm và bảo trì. Tuy nhiên, bất kể trọng tâm của bạn (là công việc hay ở giai đoạn hiện tại của dự án), điều quan trọng là phải nhớ chất lượng.
2. Kỹ sư phần mềm càng giỏi trong việc kiểm tra các chương trình của riêng họ, thì chi phí phát sinh mã của họ càng ít khi đi qua phần còn lại của vòng đời phát triển phần mềm.
Điều đó có thể đúng. Nhưng một số vấn đề được nhìn thấy tốt nhất sau này trong phát triển. Ví dụ, các vấn đề về hiệu suất và hiệu quả có thể không được nhìn thấy cho đến khi tích hợp. Có mã tốt, vững chắc và kiểm tra đơn vị hiệu quả chỉ là khởi đầu. Chất lượng cần phải bắt đầu với các yêu cầu, và làm theo tất cả các cách thông qua các hoạt động bảo trì.
3. Kỹ sư phần mềm càng dành nhiều thời gian suy nghĩ về cách chương trình có thể phá vỡ, họ càng thường xuyên xem xét các trường hợp này khi họ đang phát triển chúng, do đó giảm lỗi trong sản phẩm cuối.
Đó là một tuyên bố hoàn toàn đúng. Nhưng một lần nữa, các kỹ sư cũng yêu cầu xác minh rằng không có xung đột trong yêu cầu, các kiến trúc sư để đảm bảo rằng thiết kế thực sự giải quyết các yêu cầu, v.v. Mọi người nên cố gắng chọc lỗ trong công việc của họ và sau đó làm việc với những người thích hợp để niêm phong chúng thật đẹp và chặt chẽ.
4. Định nghĩa "hoàn thành" của Kỹ sư phần mềm luôn thú vị ... nếu họ dành thời gian làm kỹ sư QA, định nghĩa này sẽ phù hợp hơn với người thiết kế phần mềm.
"Hoàn thành" chỉ có thể được đo theo yêu cầu. Hoặc là các yêu cầu được thỏa mãn và dự án hoàn thành, hoặc có những yêu cầu không đầy đủ và dự án không hoàn thành. Bất kỳ biện pháp hoàn thành khác là vô ích.