Sunday, October 11, 2015

Những ngộ nhận thường gặp trong công việc kiểm thử phần mềm



Những ngộ nhận, lầm tưởng
 Làm lạc lối, quên đường
Sớm tìm ra lối đi
Để hòa vào xu hướng
Chúng ta cần nhận diện
Sớm cải tiến công việc
Đáp ứng được nhu cầu 
Công việc đã đề ra





Tôi cũng đã có cơ hội tiếp xúc với những tân sinh viên. Những định hướng nghề nghiệp cho các em sau 4 năm – 5 năm học là gì. Với một số doanh nghiệp đã cung cấp sơ lược những kỹ năng cần có và sự chia sẻ của những chuyên gia về lĩnh vực mà họ đang làm. Kiểm thử phần mềm (KTPM) hầu như đã trở thành một môn học chính thức trong một số trường Đại học(ĐH). Nhưng với những kỹ năng cần thiết để đáp ứng như thế nào là một người kiểm thử phần mềm và những quy trình trong cách thức làm việc, làm việc đội nhóm như thế nào, những cơ hội và những thử thách trong nghề testing vẫn chưa được chia sẽ nhiều trong môn học này. KTPM đã trở nên thịnh hành và phổ biến ở thị trường Việt Nam. Với sự phát triển bùng nổ của outsourcing Việt Nam là nơi thu hút một lượng lớn đối tác doanh nghiệp nước ngoài trên khắp thế giới chịu đầu tư và thu hút một lượng lớn nguồn nhân lực cho ngành KTPM dưới nhiều hình thức khác nhau. Và ngày nay với sự hội nhập TPP đã mang đến những làn gió mới, những con sóng mới trong ngành KTPM.
 Tôi muốn chia sẻ một số quan điểm cá nhân và những nhận xét liên quan tới công việc KTPM nhằm giúp cho các em có cái nhìn cũng như sự chuẩn bị tốt hơn nếu các em thật sự xác định lựa chọn nghề nghiệp cho mình – Em sẽ làm công việc gì (BA, tester, developer, designer,...) và nhầm tránh được những “hiểu lầm” trong công việc KTPM. Để các em có thể có những lựa chọn phù hợp hơn với khả năng và sở trường của mình trong công việc KTPM nói riêng và ngành CNTT nói chung.

Dưới đây là những ngộ nhận thường thấy trong công việc KTPM
1. KTPM không cần niềm đam mê, thử thách
Hiện nay một số công ty đã có chương trình Freshers cho các em mới tốt nghiệp. Chương trình này cung cấp một số kiến thức cơ bản của công việc KTPM. Tuy nhiên đó chỉ là những trải nghiệm cơ bản của một fresher. Trong giai đoạn các em bước vào một dự án thật sự, đòi hỏi các em phải hiểu về Domain Knowledge một cách sâu sắc và những kỹ năng cần có của một tester như: khả năng phân tích, khả năng nhìn nhận vấn đề, tư duy sáng tạo, khả năng trình bày, làm việc đội nhóm và kỹ năng lập trình. Những kỹ năng này đòi hỏi chúng ta phải trau dồi thường xuyên và liên tục trong quá trình làm việc của mình. Có nhiều tester nghĩ rằng chỉ cần viết được test cases, viết được test script, thực thi test, kiếm được lỗi thì đó là công việc của một người kiểm thử phần mềm. Và ai cũng có thể làm được. Nhưng thực tế để trở thành một người kiểm thử phần mềm chuyên nghiệp chúng ta cần có cái nhìn bao quát hơn, đam mê với công nghệ và sử dụng công nghệ một cách hiệu quả hơn. Nó sẽ giúp cho ta tiết kiệm được thời gian và đóng góp để đưa ra một sản phẩm với chất lượng và dịch vụ tốt nhất. Ngoài ra, cũng đòi hỏi các em khả năng tự tìm tòi, sáng tạo trong cách thức “vừa học vừa làm”. Đó là con đường chúng ta muốn trở thành là một tester chuyên nghiệp cho mai sau.


2. KTPM là công việc dễ dàng và nhàm chám
Nhìn chung khi bước vào công việc, nó thoạt nhìn khá dễ cho những ai làm manual testing vì hầu hết những người này sẽ dựa vào những domain knowledge để họ thực công việc một cách trôi chảy. Nhưng để có thể tìm được những lỗi hóc búa, khó, thì các bạn sẽ thấy được rằng những môn các bạn học luôn có liên quan trong quá trình bạn tìm ra được những lỗi đó như: các môn Kỹ thuật phân tích và thiết kế hệ thống, quy trình quản lý dự án, cơ sở dữ liệu … Và các bạn có thể làm được điều này trong khoảng sau 1 năm các bạn đi làm. Nhưng thực tế để làm được việc và khả năng đi lên (gọi là chuyên gia) thì khác xa nhau. Nếu chỉ dừng chân và hiểu như vậy là đã đủ thì không thể nào các bạn có thể tiến xa được. Chỉ khi, các bạn luôn trau dồi thêm những phương pháp thực nghiệm, sáng tạo, giải quyết vấn đề, lập kế hoạch, sự kiên nhẫn, khả năng nhận biết thông tin và tạo những kịch bản (scenarios) trong mỗi giai đoạn test thì các bạn sẽ sớm tiến bộ nhanh chóng.



3. KTPM không cần lập trình
Rất nhiều bạn ngộ nhận công việc KTPM chỉ là công việc thao tác bằng tay (manual) nhưng tôi nghĩ rằng các bạn cần thiết phải có kiến thức cũng như kỹ năng căn bản lập trình. Và trên ghế nhà trường các bạn cũng sẽ, đã và đang có kiến thức về database, software engineering, software development process, operating system, mobile platform.  Khi các bạn có kiến thức về coding sẽ giúp cho việc tự động hóa (automation testing) hay kiểm tra hiệu năng (performance testing), bảo mật hệ thống (security testing) khi cần thiết và phải nắm được điểm mạnh, điểm yếu và những hạn chế thiếu sót của các công nghệ đang áp dụng vào phát triển phần mềm. Để từ đó các bạn có thể chọn công cụ (tools) có thể là những tools phải bỏ tiền để mua (commercial tools), hay những tools mã nguồn mở (open source tools) một cách đúng hơn để phục vụ cho việc kiểm thử tự động. Vì các bạn đang tìm ra giải pháp nhằm tìm kiếm/làm ra một chương trình để kiểm tra một sản phẩm phần mềm khác.



4. KTPM không cần phân tích và suy nghĩ sáng tạo
Tester ngày nay được tham gia vào quá trình training bài bản của một số doanh nghiệp và bên cạnh đó khi tham gia vào đội nhóm. Họ được tham gia vào cùng với nhóm phân tích yêu cầu (requirements), phân tích hệ thống (use cases), phân tích thiết kế, và lập kế hoạch (planning) cùng với nhóm phát triển (development). Như vậy chúng ta thấy rằng công việc KTPM này cũng đòi hỏi nhiều về khả năng phân tích và suy luận. Ví dụ khi chúng ta phân tích thiết kế test case thì đòi hỏi chúng ta phải có tưu duy phân tích tốt thì chúng ta mới có thể cover (bao quát) được tất cả các trường hợp cần test. Thống kê cũng cho chúng ta thấy rằng 70% lỗi chúng ta phát hiện được dựa vào requirments, use cases, business rules nhưng 30% chúng ta có thể thực hiện exploratory testing, ad-hoc,…Và bên cạnh đó chúng ta cũng cần nhận thấy rằng việc phân tích, đánh giá để sắp xếp độ ưu tiên hợp lý cho từng công việc, từng khu vực cần test cho sản phẩm. Quan trọng hơn là việc phân tích đánh giá được mức độ nghiêm trọng của issue, bug, error… Qua đó, phân tích suy luận tốt sẽ đánh giá được rủi ro trong quá trình testing, để đưa ra được cách tiếp cận tốt cũng như chiến lược testing hiệu quả.



5. Công việc KTPM không có cơ hội phát triển nghề nghiệp
Ngày nay ngày càng nhiều doanh nghiệp outsourcing ra đời và Việt Nam là mãnh đất “tiềm năng” cho các doanh nghiệp nước ngoài tìm đến. Và ngày càng nhiều sản phẩm với chất lượng cao và ít lỗi, phù hợp với nhu cầu thị hiếu của người tiêu dùng. Đòi hỏi chúng ta những người phát triển phần mềm nói chung và những tester nói riêng cần có một chất lượng trong công việc, đòi hỏi làm việc nhanh nhẹn hơn, thông minh hơn, sáng tạo hơn. Ví dụ: chúng ta test (kiểm tra) một hệ thống thời gian test của chúng ta sẽ ít đi, thay vào đó chúng ta tìm tòi những cách thức và phướng thức, phương pháp sáng tạo trong công việc của chúng ta nhằm tham gia đáp ứng sự thỏa mãn nhu cầu của người dùng cuối. Bên cạnh đó chúng ta cũng được những kinh nghiệm trong quá trình làm việc để tạo ra cơ hội và kỹ năng năng để đón nhận những thử thách khác.
Nghề KTPM sẽ không thể chết đi mà sẽ có nhiều hình thức phát triển khác nhau. Và chúng ta có thể thấy được thông qua qui mô phát triển tăng tốc của các công ty outsourcing trong thời gian qua. Chúng ta sẽ có nhiều lựa chọn hơn trong công việc như trở thành chuyên gia trong lĩnh vực KTPM hay trở thành nhà quản lý. Đó là những hướng đi cho các bạn.



Mỗi một người thành công luôn có những điểm chung là sự đam mê không mệt mỏi, tâm huyết cháy bỏng thật sự đối với nghề mà họ đang theo đuổi. Và họ luôn đón nhận những thử thách mình trên con đường nghề nghiệp của mình. KTPM cũng không là ngoại lệ và luôn đòi hỏi niềm đam mê, khát khao và động lực thật sự trên bước đường này. Và tester ngày nay đòi hỏi nhiều kỹ năng và sự trao dồi kiến thức một cách liên tục với sự xuất hiện của Agile. Họ có thể tự đưa ra những nhiệm vụ (tasks) cho họ và có thể tham gia vào coding (developer), tham gia đóng góp phát triển nghiệp vụ (BA), và đóng qua trò như người dùng cuối (End-user). Trên bước đường trở thành chuyên gia, họ luôn gặp nhiều khó khăn nhưng đó cũng là thách thức cho Tester để có thê trở thành một chuyên gia.
Và đây là Những câu hỏi của Tân Sinh Viên - Ngành IT

Hoa Le

Refer: http://b4usolution.com/


No comments:

Post a Comment