123

Màu nền
Font chữ
Font size
Chiều cao dòng

Có hai loại nhóm code:

Nhóm code bình đẳng (dân chủ)

Nhóm code có sếp

Nhóm code bình đẳng (1)

Dựa trên các nguyên tắc:

Các thành viên bình đẳng về chức vụ

Mỗi người tự do thiết kế, code và test modul của mình

Việc có lỗi được coi là việc bình thường

Cả đội sẽ xây dựng một tính năng hay cả sản phẩm, và sản phẩm là của cả đội

Thuận lợi:

 Các thành viên nắm chắc phần code của mình

 Khả năng code mạnh, nhất là giải quyết các dự án khó

Khó khăn:

 Việc tự test code của mình thường không hiệu quả

 Khó khăn về mặt quản lí

→ Đội phải được phát triển một cách tự nhiên

Nhóm code có sếp – kiểu cũ (3)

Sếp của nhom code:

 Co kĩ năng cao trong quản li va code

 Thực hiện phần thiết kế kiến truc

 Phan cong cong việc code cho cac thanh vien

 Code cac phần chinh va kho nhất

 Tạo cac giao diện để tich hợp cac modul

 Xem lại code của tất cả cac thanh vien

 Chịu trach nhiệm về từng dong code của nhom

Sếp dự bị của nhóm code:

Dự bị cho sếp của nhóm

Có kĩ năng tương đương sếp trong quản lí và code

Nắm rõ dự án tương đương sếp

Lập kế hoạch test hộp đen (black-box) và các công việc độc lập với tiến trình thiết kế

Thư kí lập trình của nhóm code:

Có kĩ năng cao, trả lương cao, và là thành viên chủ chốt của nhóm

Chịu trách nhiệm về tài liệu cho toàn bộ dự án:

• Liệt kê danh sách mã nguồn

• Ngôn ngữ điều khiển công việc (JCL)

• Dữ liệu test

• Biên dịch code, kiểm tra code convention

• Chạy các test case

Lập trình viên:

Chỉ làm việc duy nhất là lập trình

Các việc khác liên quan đã có thư kí lập trình lo!

Khó khăn:

Sếp, dự bị đều phải có đồng thời kĩ năng cao trong cả quản lí và code. Nhưng thường người quản lí giỏi thì code kém và ngược lại

Sếp dự bị phải có kĩ năng tương đương sếp, nhưng phải làm dự bị cho sếp và trả lương thấp hơn → khó ai chấp nhận!

Thư kí không làm gì ngoài việc làm tài liệu cả ngày → lập trình viên thường gét việc làm tài liệu!

Mô hình nhóm kết hợp (1)

Mục đích:

Kết hợp ưu điểm của cả hai mô hình:

• Nhóm bình đẳng: tinh thần phát hiện và sửa lỗi cao

• Nhóm có sếp: quản lí và giao tiếp tốt

Thực tế, trong mô hình CPT:

Sếp chịu trách nhiệm về từng dòng code nên phải review toàn bộ code

Sếp cũng chịu trách nhiệm quản lí nên có thể không cần review code

→ Giảm bớt trách nhiệm của sếp!

Giải pháp:

Sếp chỉ quản lí các vấn đề phi kĩ thuật

Tạo ra team leader để quản lí kĩ thuật

Hoạt động:

Sếp chỉ quản lí các vấn đề phi kĩ thuật : thu nhập, bình đẳng, năng lực của các thành viên

Team leader chỉ quản lí kĩ thuật: review toàn bộ code và hỗ trợ kĩ thuật cho các thành viên

Sếp không review code nhưng khi họp có thể tham gia để hỗ trợ kĩ thuật cho các thành viên

Tính khả thi:

Tìm một team leader dễ dàng hơn nhiều một sếp

Các thành viên chỉ bị quản lí bởi 1 sếp duy nhất

Sếp chỉ cần kĩ năng cao về quản lí, team leader chỉ cần kĩ năng cao về code → dễ tìm hơn

Với dự án lớn:

Thêm một tầng quản lí kĩ thuật

Vấn đề ra quyết định:

Dùng phương pháp nhóm bình đẳng

Nhóm code cho mô hình XP

Mô hình:

Lập trình theo cặp, mỗi cặp chung máy

Test chéo: người này test code của người kia

Ưu điểm:

Khi một thành viên rời nhóm, thì thành viên mới dễ dàng gia nhập vì có thể học với người cùng cặp

Phát huy được ưu điểm của lập trình bình đẳng

Câu 1 (2đ) : tại sao cả hai mô hình team dân chủ và team có nhóm trưởng đều khó áp dụng trong thực tế ?

câu 2 (5đ) : giả sử nhóm làm bài tập lớn của các bạn được nhận làm một dự án phần mềm thì bạn sẽ chọn theo mô hình nào ?

-       Giải thích lý do chọn mô hình này

-       Phân công rõ nhiệm vụ của từng người

-       Giải thích rõ lý do vì sao bạn lại chọn mô hình này ?

Câu 3 (3đ) : sự khác nhau giữa backup programmer , programming sceretary ,team leader

4,3 Trưởng Nhóm lập trình Phương pháp tiếp cận cổ điển

Hãy xem xét nhóm sáu người được hiển thị trong hình 4.2, với 15 kênh giao tiếp hai người. Trong thực tế, tổng số hai, ba, bốn, năm, và sáu nhóm người là 57. Đa dạng của các kênh truyền thông này là lý do chính tại sao một nhóm sáu người cấu trúc như trong hình 4.2 là không để có thể thực hiện 36 người tháng làm việc trong 6 tháng, nhiều giờ được lãng phí trong các cuộc họp liên quan đến hai hoặc nhiều thành viên trong nhóm nghiên cứu một thời gian.

Bây giờ hãy xem xét nhóm sáu người được hiển thị trong hình 4.3. Một lần nữa, có sáu lập trình, nhưng bây giờ chỉ có năm dòng truyền thông. Đây là khái niệm cơ bản đằng sau những gì bây giờ được gọi là đội ngũ lập trình viên trưởng. Một ý tưởng có liên quan đã được đưa ra bởi Brooks [1975], người đã thu hút sự tương tự của một bác sĩ phẫu thuật trưởng chỉ đạo một hoạt động. Bác sĩ phẫu thuật được hỗ trợ bởi các bác sĩ phẫu thuật, bác sĩ gây mê, và một loạt các y tá. Ngoài ra, khicần thiết, nhóm sử dụng các chuyên gia trong các lĩnh vực khác, chẳng hạn như tim mạch hoặc bác sĩ chuyên khoa thận.Sự tương đồng này nhấn mạnh hai khía cạnh quan trọng của một đội ngũ lập trình viên trưởng.Đầu tiên là chuyên môn: Mỗi thành viên của nhóm thực hiện với các nhiệm vụ mà họ đã được đào tạo.Khía cạnh thứ hai là hệ thống cấp bậc: Phẫu thuật viên trưởng chỉ đạo hành động của tất cả các thành viên khác của đội bóng và chịu trách nhiệm cho mọi khía cạnh của hoạt động này.

Khái niệm nhóm các lập trình viên trưởng được chính thức hóa bởi Mills [Baker, 1972]. Một lập trình cổ điển trưởng nhóm nghiên cứu, như được mô tả bởi Baker khoảng 40 năm trước đây, được thể hiện trong hình 4.3 bao gồm các lập trình viên trưởng, người được hỗ trợ bởi các lập trình sao lưu, thư ký chương trình, và 1-3 lập trình viên. Khi cần thiết, nhóm nghiên cứu được hỗ trợ bởi các chuyên gia trong các lĩnh vực khác, chẳng hạn như các vấn đề pháp lý, tài chính hoặc kiểm soát công việc ngôn ngữ (JCL) báo cáo được sử dụng để cung cấp cho các lệnh hệ điều hành cho các máy tính máy tính lớn của thời đại đó. Các lập trình viên trưởng là cả người quản lý một thành công và một lập trình viên có tay nghề cao, những người đã thiết kế kiến trúc và bất kỳ bộ phận quan trọng hoặc phức tạp của mã này. Các thành viên khác trong nhóm làm việc trên thiết kế chi tiết và mã hóa, dướisự chỉ đạo của các lập trình viên trưởng. Như thể hiện trong hình 4.3, không có đường dây giao tiếp sự tồn tại giữa các lập trình viên, tất cả các vấn đề interfacing đã được xử lý bởi các lập trình trưởng. Cuối cùng, các lập trình viên trưởng xem xét công việc của các thành viên khác trong nhóm, bởi vì các lập trình viên trưởng chịu trách nhiệm cá nhân cho mỗi dòng mã.

backup programmer Vị trí của các lập trình sao lưu dự phòng là cần thiết chỉ vì các lập trình viên trưởng của con người và do đó có thể trở thành bệnh, thuộc một xe buýt, hoặc thay đổi công việc. Do đó, các lập trình sao lưu có thể có thẩm quyền theo các lập trình viên trưởng ở mọi khía cạnh và phải biết càng nhiều về dự án như là các lập trình viên trưởng.Ngoài ra, để miễn phí các lập trình viên trưởng để tập trung vào việc thiết kế kiến trúc, các lập trình sao lưu đã làm quy hoạch trường hợp thử nghiệm hộp đen (Phần 15,11) và các nhiệm vụ độc lập khác của quá trình thiết kế.

Thư ký từ có một số ý nghĩa.Một người thư ký có thể là một người giúp một nhà quản lý bận rộn trả lời điện thoại, đánh máy thư, và như vậy.Nhưng khi chúng ta nói về Bí thư Mỹ của Nhà nước hoặc Bộ trưởng Ngoại giao Anh, chúng tôi đề cập đến một trong những thành viên cao cấp nhất của Nội các.Thư ký lập trình  programming secretary không phải là một bán thời gian văn phòng trợ lý nhưng, có tay nghề cao được trả lương cao, thành viên trung tâm của một đội ngũ lập trình viên trưởng.Thư ký chương trình chịu trách nhiệm duy trì các thư viện Dự án sản xuất, các tài liệu của dự án.Điều này bao gồm các danh sách mã nguồn, JCL, và các dữ liệu thử nghiệm.Các lập trình viên đưa mã nguồn của họ cho thư ký, người chịu trách nhiệm chuyển đổi sang dạng máy có thể đọc được, biên soạn, liên kết, tải, thực hiện và chạy các trường hợp thử nghiệm.Các lập trình viên do đó đã làm gì, nhưng chương trình.Tất cả các khía cạnh khác của công việc của họ đã được xử lý do thư ký lập trình.(Bởi vì thư ký lập trình duy trì thư viện Dự án sản xuất, một số tổ chức sử dụng cán bộ thư viện tiêu đề).

Nhớ lại rằng những gì được mô tả ở đây Mills và những ý tưởng ban đầu của Baker, có niên đại đến năm 1971, khi máy bấm lỗ keypunches vẫn được sử dụng rộng rãi. Mã hóa không còn được thực hiện theo cách đó.Lập trình bây giờ có thiết bị đầu cuối của mình hoặc máy trạm, trong đó nhập mã của họ, chỉnh sửa nó, thử nghiệm nó, và như vậy.Một phiên bản hiện đại của đội ngũ lập trình viên trưởng cổ điển được mô tả tại mục 4.4.

Cách của mâu thuẫn này là để loại bỏ nhiều về vai trò quản lý từ các lập trình trưởng.Sau khi tất cả, khó khăn của việc tìm kiếm một cá nhân cả một lập trình viên có tay nghề cao và quản lý thành công là những người đã được chỉ ra.Thay vào đó, các lập trình viên trưởng nên được thay thế bởi hai cá nhân: một nhà lãnh đạo của nhóm phụ trách trong những khía cạnh kỹ thuật của các hoạt động của nhóm nghiên cứu và quản lý một đội ngũ chịu trách nhiệm cho tất cả các kỹ thuật không quyết định quản lý. Cấu trúc của nhóm nghiên cứu kết quả được hiển thị trong hình 4.4.Điều quan trọng là nhận ra rằng cơ cấu tổ chức này không vi phạm nguyên tắc cơ bản quản lý rằng không có nhân viên nên báo cáo với nhiều hơn một người quản lý. Các lĩnh vực trách nhiệm được phác họa rõ ràng. Người lãnh đạo tổ chịu trách nhiệm quản lý kỹ thuật chỉ. Hậu quả đó, các vấn đề ngân sách và pháp luật không được xử lý bởi các nhà lãnh đạo nhóm nghiên cứu cũng không phải là đánh giá kết quả. Mặt khác, đội ngũ lãnh đạo có trách nhiệm duy nhất về các vấn đề kỹ thuật.

Do đó, người quản lý nhóm không có quyền hứa, nói rằng sản phẩm sẽ được giao trong vòng 4 tuần, lời hứa rằng loại phải được thực hiện bởi các nhà lãnh đạo nhóm. Các nhà lãnh đạo nhóm tự nhiên tham gia vào tất cả các mã số nhận xét, sau khi tất cả, anh ta hoặc cô ấy là cá nhân chịu trách nhiệm về mọi khía cạnh của mã. Đồng thời, người quản lý của đội không được phép xem xét lại, bởi vì thẩm định lập trình hiệu suất là một chức năng của người quản lý nhóm. Thay vào đó, người quản lý nhóm có được kiến thức về các kỹ năng kỹ thuật của từng lập trình viên trong đội trong các cuộc họp nhóm thường xuyên theo lịch trình

Bạn đang đọc truyện trên: Truyen2U.Pro

#123