Tôi có nên đăng nhập sửa chữa tầm thường?


28

Tôi đang ở trong một cửa hàng mã của hai. Và mặc dù tôi hiểu rằng trình theo dõi lỗi rất hữu ích khi số lượng lập trình viên nhiều hơn hoặc bằng một người, tôi không tin rằng việc ghi nhật ký lỗi, thay đổi và sửa lỗi là đáng giá khi chúng không đáng kể. Khi tôi tìm thấy một lỗi đơn giản, tôi hiểu nó, sửa nó và chạy nó qua một số thử nghiệm. Và THÌ tôi nhận ra rằng tôi cần phải đăng nhập nó.

Về lý thuyết, tôi biết rằng việc ghi nhật ký lỗi nên được thực hiện ở đâu đó giữa việc tìm lỗi và sửa lỗi, nhưng nếu sửa nó nhanh hơn đăng nhập thì có vẻ như là một lực cản. Trong các cửa hàng mã lớn hơn, ông chủ chú ý đến việc ai đang làm gì và thật tuyệt khi biết người khác đang nói về điều gì.

Tôi thấy mình đang mô tả những thứ mà tôi đã sửa và sau đó đóng chúng lại ngay lập tức. Tôi nghi ngờ rằng bất cứ ai cũng sẽ nhìn vào lỗi đóng này một lần nữa. Có phải là thời gian để cắt giảm quá trình chất béo?


6
Khi bạn tìm thấy một lỗi, hãy viết ra những gì lỗi trên giấy. Khi bạn sửa lỗi, hãy ghi lại những tập tin đã được sửa đổi. Trước khi bạn gửi bản sửa lỗi, đăng nhập lỗi, sau đó gửi các thay đổi. Nếu bạn làm điều này mọi lúc bạn sẽ có thói quen, bạn hiện đang có một thói quen xấu, đăng nhập lỗi không phải là một sự lãng phí thời gian.
Ramhound

5
Làm thế nào bạn có thể chắc chắn rằng những lỗi này là tầm thường?

2
@ashansky, bạn thậm chí đã đọc câu thứ hai của câu hỏi của tôi?
Philip

1
Không đăng nhập công việc của riêng bạn là một cách chắc chắn để a) không nhận được tín dụng cho nó và b) được hỏi 'tại sao X không được thực hiện và tại sao bạn làm việc trên Y?'
Michael Durrant

1
Bạn không thể đăng nhập mọi thứ, nó đơn giản là không thực tế. Tại sao một số người nhảy lên nhảy xuống nghĩ rằng một số người không đăng nhập một vài thứ nhỏ THIẾT BỊ để không đăng nhập chút nào ???
Darknight

Câu trả lời:


36

Bạn nên đăng nhập mọi thay đổi bạn thực hiện cho hệ thống của bạn. Không có gì sai khi đăng nhập nó sau sự kiện - miễn là bạn liên kết báo cáo lỗi với số thay đổi.

Sau đó, nếu có bất cứ điều gì sai, bạn có thể theo dõi lại lỗi và tìm hiểu lý do tại sao bạn thực hiện thay đổi bạn đã làm.

Trong phần lớn các trường hợp bạn đúng và sẽ không ai nhìn lại những trường hợp này nữa, nhưng trong 1 trên 100 khi có sự cố xảy ra, thông tin này sẽ là vô giá - đặc biệt là nếu vấn đề chỉ xuất hiện 6 tháng.

CẬP NHẬT

Rõ ràng nếu bạn vẫn đang phát triển một tính năng mới và phát hiện ra một phần lỗi của tính năng mà bạn nghĩ bạn đã hoàn thành thì không cần thiết phải đăng nhập nó như một thay đổi riêng biệt. Trong những trường hợp này, tôi sẽ đăng nhập nó vào mục yêu cầu tính năng chính.

Khi hệ thống với tính năng đã được chuyển cho QA hoặc khách hàng, thì cần phải làm những gì tôi đã nêu ở trên.


Trong giai đoạn phát triển ban đầu, trước khi phát hành phiên bản đầu tiên ra khỏi nhóm kỹ sư thì không cần phải ghi nhật ký thay đổi trong trình theo dõi lỗi. Tuy nhiên, những thay đổi sẽ được ghi chú trong nhật ký kiểm soát phiên bản đối với mỗi lần gửi.
uɐɪ

@Ian Điều này đúng, nhưng nói chung trong quá trình phát triển ban đầu (giả sử bạn có nghĩa là thực sự phát triển và không phải là nguyên mẫu khám phá hoặc một số thứ như vậy), bạn thường sẽ làm việc chống lại một bộ tính năng nào đó. Trong trường hợp đó, mỗi thay đổi sẽ liên kết với (các) tính năng mà nó hỗ trợ. Lỗi nhỏ sửa lỗi dòng xuống tính năng "đã hoàn thành" vẫn có thể liên kết với nó để biểu thị sự hỗ trợ của phần tử đó. Lưu ý bạn điều này phụ thuộc vào cách bạn theo dõi các tính năng và thông số kỹ thuật.
CodexArcanum

1
@Darknight - thật không dễ! Điều đó giúp ích cho thực tế là chúng tôi sử dụng TFS và đã thiết lập nó để không cho phép các đăng ký không có mục công việc liên quan. Có, bạn có thể ghi đè quy tắc, nhưng nó dừng lại và khiến bạn suy nghĩ về những gì bạn đang làm.
ChrisF

1
@Darknight Xin lỗi, nhưng những con số đó không có nghĩa gì. Nói nó không làm cho nó đúng; ngay cả khi bạn có thể xác nhận tất cả điều đó, vậy thì sao? Kết luận duy nhất tôi có thể rút ra từ việc bạn trình bày những con số đó là cố gắng bằng cách nào đó đặt mình lên trên những người khác theo một cách nào đó, điều này, khá thẳng thắn, có vẻ vô ích, không cần thiết và thô lỗ / xúc phạm.
casperOne

3
@ Tất cả Hãy tham gia cuộc thảo luận này để trò chuyện.
maple_shaft

14

Nếu bạn sử dụng một công cụ kiểm soát nguồn, thì bạn có thể mô tả lỗi bạn đã sửa trong mô tả cam kết và đó thường là tài liệu đầy đủ cho các sửa lỗi siêu nhỏ, tầm thường.

Hơn nữa, nếu bạn sử dụng trình theo dõi lỗi / tính năng được tích hợp đầy đủ với kho lưu trữ và kiểm soát nguồn của bạn, như FogBugzKiln , bạn sẽ có thể sử dụng công cụ tìm kiếm toàn cầu để tìm các sửa lỗi này và xem những thay đổi mã nào bạn đã thực hiện dễ dàng

Ngoài ra, bạn có thể chỉ định đánh giá mã cho đối tác lập trình của mình để anh ta có thể xem lại bản sửa lỗi tầm thường mà bạn đã thực hiện, nhưng tôi lạc đề ...


1
Vâng, tôi làm điều đó. Mặc dù đôi khi tôi thấy mình sửa chữa mọi thứ trong khi ở trong một chi nhánh và kết hợp chúng vào các cam kết khác.
Philip


@matthieu Chờ đã, Jira tích hợp với SVN? Chúa ơi, tại sao chúng ta không làm điều đó? Có vẻ như có một vài plugin.
Philip

5

Từ quan điểm số liệu, nó vẫn có thể hữu ích.

Thông tin này có thể được sử dụng để chỉ cho ông chủ một số điều:

  • chúng tôi cần nhiều nhà phát triển hơn
  • một cái gì đó khác trong quá trình bị hỏng (tại sao rất nhiều lỗi? anh chàng kia tạo ra hầu hết các lỗi), có thể cho thấy bạn có quá nhiều lỗi. Có lẽ có một cái gì đó gây ra điều này? bạn phát hành quá sớm? Kiểm tra đã đủ chưa?
  • một danh sách tốt về những gì bạn đã làm việc vào thời gian thưởng.

Đó là tất cả những gì được nói, nó phụ thuộc vào một lỗi nhỏ mà bạn đang nói về. Một lớp lót bạn tình cờ phát hiện trong khi thêm mã mới có thể là vô nghĩa để đăng nhập chẳng hạn.


2

Tôi cố gắng đăng nhập mọi thay đổi tôi thực hiện bất kể kích thước của nó. Bạn không bao giờ biết khi nào bạn hoặc ai đó (tương lai hay hiện tại) sẽ cần quay lại và xem liệu sự thay đổi đó có phải là nguyên nhân có thể của một điều gì khác không.


1

Theo dõi là rất quan trọng, nhưng cũng xem xét một kịch bản khác: khi đến lúc để bạn xem xét. Nó sẽ xảy ra chính thức trực tiếp hoặc không chính thức mà không có bạn thông qua ông chủ của bạn lấy các báo cáo từ trình theo dõi lỗi.

Hãy xem xét chúng, 'mánh lới quảng cáo' cuối cùng sẽ tăng số của bạn. Rốt cuộc, chúng là những lỗi mà bạn đã sửa và bạn nên được công nhận để sửa chúng, ngay cả khi chúng là những sửa lỗi nhỏ.

Đăng nhập chúng.


Vâng, trong các cửa hàng mã lớn hơn, ông chủ có "số liệu" dựa trên điều này, vì vậy đó là lời khuyên chung tốt. Nó cũng dẫn đến việc mọi người lạm dụng trình theo dõi lỗi và ném những số liệu đó vào địa ngục vô nghĩa. Nhưng ở đây chỉ có tôi và anh chàng kia. Boss không sử dụng trình theo dõi lỗi.
Philip

1

Để trả lời điều này thực sự phụ thuộc vào nơi bạn đang trong quá trình.

Chúng có thể áp dụng cho một dự án mới hoặc một bộ tính năng mới đang được thiết kế.

Thiết kế ban đầu Nếu bạn tìm thấy lỗi trên mã mà chúng tôi đã tạo trong quá trình thiết kế ban đầu thì việc tạo theo dõi lỗi cho nó là không cần thiết. Tôi sẽ đề nghị một cam kết riêng cho sự thay đổi để bạn có thể dễ dàng thư giãn nó nếu bạn gặp vấn đề sau này.

Kiểm tra

Mã là thông thường vẫn được coi là chưa trưởng thành trong quá trình thử nghiệm đơn vị vì vậy trừ khi nó được thực hiện bởi một nhóm khác, tôi sẽ nói không. Nếu kiểm thử đơn vị được thực hiện bởi một nhóm khác với trình theo dõi lỗi là một cách tốt để chính thức hóa quy trình kiểm tra.

Kiểm tra CSCI phụ thuộc. Nó được thực hiện bởi một nhóm khác? Nếu vậy thì có (xem ở trên). Đây có phải là bước cuối cùng của thử nghiệm trước khi phát hành? Sau đó, có, bởi vì tại thời điểm này phần mềm của bạn nên được coi là trưởng thành. Nếu bạn quan tâm đến các số liệu thì cũng nên bắt đầu theo dõi các lỗi tại thời điểm này.

Đối với bất kỳ cấp độ thử nghiệm cao hơn thì bạn nên sử dụng theo dõi lỗi. Tại những thời điểm này, phần mềm của bạn nên được coi là trưởng thành và theo dõi lỗi là rất quan trọng.

Giải phóng

Bạn nên luôn luôn theo dõi lỗi trên mã phát hành. Điều này rất quan trọng đối với trách nhiệm.

Hợp lý hóa một quy trình để phù hợp với nhu cầu của bạn cũng rất quan trọng. Bạn có thực sự cần một hệ thống theo dõi lỗi rất lớn? Có phải tất cả các lĩnh vực thực sự quan trọng đối với một nhóm 2 người?


1

Có thể người khác có thể gặp phải lỗi này, có lẽ trong phiên bản cũ hơn của phần mềm được phát hành ra thế giới bên ngoài? Nếu vậy, sau đó đăng nhập cả lỗi và sửa lỗi có thể hữu ích.

Những người khác đã đề nghị rằng nếu mất nhiều thời gian hơn để ghi lại lỗi hơn là sửa nó, thì nó không đáng để đăng nhập. Tôi đề nghị rằng khoảng thời gian thích hợp không nằm giữa việc tìm lỗi và sửa lỗi, đó là giữa thời gian lỗi được đưa ra và thời điểm sửa lỗi được phát hành.

Nếu lịch sử thay đổi và phát hành chỉ ra rằng lỗi chưa bao giờ thấy ánh sáng trong ngày, thì việc ghi nhật ký sửa lỗi khi bạn kiểm tra nó vào kiểm soát nguồn là đủ.

Điều này khá gần với câu hỏi này , nhưng tôi không chắc đó là một bản sao, vì câu hỏi này tập trung vào các bản sửa lỗi tầm thường .


1

Tại sao bạn không nên theo dõi lỗi, bởi Jon Arid Torresdal - thay vào đó hãy sửa chúng.

  1. Trong quá trình phát triển: Bạn gặp phải một lỗi cho một tính năng; bạn thêm một trường hợp thử nghiệm phá vỡ bản dựng , sau đó kiểm tra sửa lỗi đối với tính năng này.

  2. Sau khi phát hành: ghi lại hành vi . Nếu bạn có kế hoạch phát hành bản cập nhật, hãy goto 1. Nếu bạn không phụ trách bản phát hành đó, hãy giữ bản kiểm tra + sửa lỗi được lưu trong một nhánh riêng.

Sau khi mã được phát hành, có thể có các ưu tiên khác và trong khi sửa lỗi có thể không quan trọng, việc phân phối sửa lỗi có thể không kinh tế, trừ khi bạn triển khai liên tục.


-6

Phụ thuộc tầm thường như thế nào , tôi sử dụng biện pháp này:

Nếu mất nhiều thời gian để đăng nhập nó hơn là phải sửa nó, thì không đáng để đăng nhập nó.


3
Chỉ vì mất nhiều thời gian để đăng nhập hơn để sửa chữa là không đủ biện minh. Hà! điều này đã có một lời giải thích :)
u

2
Tôi đã không đánh giá thấp điều này, nhưng nếu tôi phải đoán tại sao ai đó làm vậy, thì đó là vì họ tin vào việc ghi lại tất cả các sửa lỗi, hoặc họ nghĩ rằng câu trả lời của bạn không hữu ích / sâu sắc.
CFL_Jeff

3
Tôi sẽ không bỏ phiếu nhưng tôi không đồng ý với điều này như một quy tắc chung (mặc dù trong hầu hết các trường hợp tôi có thể thấy nó có ý nghĩa!). Điều gì sẽ xảy ra nếu bạn có "lỗi do một lỗi" đã xuất xưởng, nhưng trượt qua mạng QA? Mất nhiều thời gian để đăng nhập hơn để sửa ....
PhillC 15/03/2016

2
Nếu nó không được đăng nhập thì nó không thể được xác minh là cố định bởi QA
17 trên 26 tháng

3
-1 Đây chỉ là sự kiêu ngạo của lập trình viên (' Tôi không phạm sai lầm') và thiếu hiểu biết (Tôi chưa thấy điều gì xấu xảy ra với các sửa chữa nhỏ). Một sự cố thực sự thực sự tốt và ghi lại từ bản sửa lỗi 'nhỏ' thường giúp ích cho điều đó (còn được gọi là kinh nghiệm).
Michael Durrant
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.