Những nhân vật thường hay xuất hiện trong quá trình phát triền phần mềm.
Trong bài viết này mình sẽ cho bạn biết những nhân vật xuất hiện trong quá trình phát triển phần mềm...
Trong bài viết này mình sẽ cho bạn biết những nhân vật xuất hiện trong quá trình phát triển phần mềm...

Phát triển phần mềm
Lưu ý là vì viết về lĩnh vực phần mềm nên bài viết có thể chứa một hoặc nhiều từ tiếng anh chưa được phiên dịch do nguyên nhân khách quan hoặc chủ quan của người viết.
Đầu tiên "Phát triển phần mềm" là gì?
Phát triển phần mềm là một việc hoặc một nhóm công việc nhằm biến một nhu cầu, yêu cầu hoặc mong muốn của ai đó (khách hàng, công ty, hoặc của riêng bạn..) thành một phần mềm có thể sử dụng được nhằm phục vụ một cá nhân, tổ chức hoặc một tập người dùng đại chúng...
Các loại phần mềm phổ biến ngày nay chúng ta được biết như:
- "Website" cái mà mình đang dùng để đăng bài viết này đây.
- "Ứng dụng di động" cái mà chúng ta vẫn hay dùng trên điện thoại android hoặc iPhone, iPad...
- "Window Form" phần mềm được dùng trên máy window.
- Ứng dụng macOS phần mềm chạy trên hệ điều hành macOS cho MacBook, MacMini..
Quay trở lại với chủ để chính của bài viết, sau đây là những "nhân vật" thường xuất hiện trong quá trình phát triển phần mềm:
1. Project manager (tiếng việt tạm dịch là Quản lý dự án) Đây là nhân vật cực kì quan trọng trong một dự án phát triển phần mềm, nhân vật tiêu biểu và thường được nhắc tới đầu tiên trong mỗi dự án.
Project manager (PM) thường làm các công việc như:
- Lập kế hoạch dự án (Project plan)
- Quản lý nguồn lực (Resource) của dự án, nguồn lực này bao gồm con người, máy móc, thiết bị, phần mềm bên thứ 3...
- Quản lý tiến độ (Progress) của dự án
- Quản lý rủi ro (Risk) của dự án, khi làm dự án phải quản lý các rủi ro có thể xảy ra và các phương án ứng phó, plan A, plan B đồ...
- Giao tiếp (Communication), đảm bảo giao tiếp giữa các "nhân vật" khác trong dự án, giải quyết mâu thuẫn...
Có thể nói PM là một nhân vật vừa quan trọng vừa tài năng ( gì cũng làm được)
2. Business Analyst ( tiếng việt tạm dịch là người phân tích nghiệp vụ) Nhân vật này thường giỏi ngoại ngữ.
Business Analyst (BA) thường làm nhiệm vụ phân tích nghiệp vụ của dự án, là cầu nối giữa mong muốn vô cùng đơn giản thô sơ của khách hàng thành một thứ gì đó có thể được hiện thực hoá qua phần mềm.
BA thường làm các công việc như:
- Lắng nghe yêu cầu của khách hàng và phân tích nó.
- Tạo tài liệu từ những yêu cầu đó (thường thì là SRS)
- Kiểm thử (Kiểm tra xem sản phẩm thực hiện xong có giống như cái mà khách hàng mong muốn hay không)...
- Đào tạo khách hàng cách sử dụng (thường thì viết user guide). Vì các mong muốn của khách khá thô sơ và đơn giản nên nhiều khi thực hiện thành phần mềm nó lại thành một thứ gì đó quá phức tạp để sử dụng nên cần đào tạo lại khách hàng cách sử dụng nó.
3. Designer UI/UX ( Tiếng việt tạm dịch là người thiết kế giao diện) Nhân vật này thường là nữ giới, có con mắt thẩm mỹ và rất nhiều hoa tay.
Designer là người thiết kế giao diện người dùng, biến những giao diện thô sơ, đơn điệu (Wireframes) mà BA vẽ thành những giao diện lung linh huyền ảo và cũng gây nhức nhối cho những nhân vật thực thi cái giao diện đó bằng những dòng mã (code).
Designer thường làm các công việc như:
- Đọc và hiểu SRS (cái được tạo ra từ BA)
- Thiết kế giao diện, phối màu, vẽ hình ảnh...
- Nghiên cứu hành vi người dùng (UX) để tạo ra trải nghiệm hay ho và phù hợp cho người dùng, ví dụ như cho trẻ em thì hình ảnh phải lung linh huyền ảo, phải dễ thương (cute). Cho người lớn tuổi thì chữ phải to, dễ nhìn, chức năng phải đơn giản dễ nhớ dễ sử dụng.
4. Project technical leader (Tiếng việt tạm dịch là Trưởng nhóm kỹ thuật) Nhân vật này thường già, lầm lỳ ít nói, nhưng lời nói rất có trọng lượng.
Project technical leader (PTL) là người chịu trách nhiệm về các vấn đề về kỹ thuật trong dự án, sử dụng công nghệ nào, chạy trên môi trường nào, phiên bản bao nhiêu ... thường thì sẽ là Solution Architecture (SA).
Cha nội này thường làm các công việc như:
- Thiết kế hệ thống ( Design system architecture), dự trên SRS, trên yêu cầu của khách hàng, thiết kế hệ thống sao cho phù hợp, hiểu đơn giản như là kiến trúc sư vẽ nhà thì ông này vẽ software.
- Giải quyết các vấn đề (issue) liên quan tới technical trong quá trình phát triển phần mềm.
- Kiểm tra, theo dõi xem các nhân vật khác có thực hiện đúng theo thiết kế mình đưa ra hay không?
- Ngoài ra còn phải đào tạo các nhân vật khác để thực hiện dự án (vì không phải ai cũng biết làm những thứ hắn vẽ ra)
Mình ghét cha nội này nên dùng từ dân dã xíu
5. Developer ( tiếng việt tạm dịch là Lập trình viên ) Nhân vật đông đảo, yếu thế và đáng được nâng niu nhất dự án.
Developer (Dev) là người viết mã ( code ) cho dự án, từ SRS ( Tạo bở BA) , System design, Basic design, detail design sẽ tiến hành phát triển phần mềm, đây mới là bước thực sự tạo ra một phần mềm.
Developer thường làm các công việc như:
- Đọc hiểu yêu cầu của hệ thống.
- Viết mã (code) cho phần mềm.
- Tiến hành chạy thử và kiểm thử (Self test).
- Sửa lỗi (Fix bugs).
À dev thì chia làm nhiều phân loại phụ thuộc vào công việc thực hiện như dev frontend, backend, mobile...
Còn một loại đặc biệt hơn làm việc với operations người ta gọi là DevOps, phát triển hạ tầng (infra) của hệ thống, nghe có vẻ cao siêu nhưng mà vẫn là dev thôi.
6. Tester (tiếng việt dịch ra là Kiểm thử viên) Thường là nữ giới, rất kĩ tính, có khả năng soi ra từng pixel. Kẻ thù không đội trời chung với nhân vật số 5.
Tester ( có nơi gọi là QC) là người chịu trách nhiệm bảo đảm chất lượng của phần mềm. Đảm bảo phần mềm được làm ra đúng với những gì ghi trong SRS và UI/UX design, system design...
Tester thường làm các công việc như:
- Đọc và hiểu yêu cầu của phần mềm.
- Viết test case. Tiếng việc không biết dịch như nào là đúng, tạm hiểu nó là kịch bản trong đó chứ các input đầu vào và kết quả mong đợi (expectation)
- Kiểm thử phần mềm dựa trên test case đã có.
- Bảo cáo kết quả kiểm thử phần mềm, dựa vào kết quả này mới có thể xác định phần mềm có thể go live được hay không.
Hết phần 1 định viết hết luôn mà nhiều quá, phần 2 mình sẽ bật mí thêm về các nhân vật như QA, Comtor, DM, PO, SM... (nếu có thời gian)
Bài viết này là những nhận định chủ quan của các nhân mình một người có 10 năm lăn lộn trong lĩnh vực này

Khoa học - Công nghệ
/khoa-hoc-cong-nghe
Bài viết nổi bật khác
- Hot nhất
- Mới nhất