Phải làm gì khi dự án của bạn thất bại trên phạm vi của bạn thực sự là thành công của bạn?


14

Bạn sẽ làm gì nếu bạn ở trong tình huống mà dự án bạn đang thực hiện rõ ràng được xây dựng kém và sẽ gặp thất bại trong tương lai và là cơn ác mộng để duy trì ... nhưng nó được quản lý coi là "thành công" bởi vì khách hàng hạnh phúc không

Tôi có nên không quan tâm? Các khách hàng thậm chí không nhận ra rằng họ có thể có một ứng dụng tốt hơn thế này?

Tại điểm nào tôi ngừng quan tâm đến việc xây dựng nó đúng và chỉ đi theo dòng chảy?

Câu trả lời:


37

Nếu khách hàng hài lòng, bạn đang làm điều gì đó đúng. Rất nhiều người thích thú với những con chó nóng mà không biết chúng được làm như thế nào ...

Nếu ứng dụng là một giải pháp tốt cho vấn đề nhưng bạn lo lắng rằng nền tảng bị lỗi, hãy tìm cách cải thiện mọi thứ dần dần và đưa ra kế hoạch thực hiện những cải tiến đó khi bạn cập nhật sản phẩm. Tăng là chìa khóa: nếu bạn muốn viết lại toàn bộ các phần của nó, người quản lý của bạn sẽ nói đúng rằng điều đó không hợp lý. Sự hoàn hảo có thể là kẻ thù của những điều tốt đẹp. Tra cứu câu chuyện của jwz về cách Netscape để IE dẫn đầu vì họ "phải" viết lại Navigator.

Nếu giao diện người dùng của ứng dụng là chính nó một mớ hỗn độn, các khách hàng vẫn có thể hạnh phúc vì họ đang so sánh nó thành "một cách khó khăn" và thậm chí là một chương trình lỗi có thể dặm tốt hơn. Bạn đang so sánh nó với một lý tưởng mà bạn có thể tưởng tượng vì nền tảng và kỹ năng của bạn. Một lần nữa, hãy xem xét làm thế nào bạn có thể cải thiện mọi thứ theo cách tăng dần và đưa ra như một phần của kế hoạch.

Đừng ngừng quan tâm: bạn muốn công việc của bạn trở nên tốt nhất có thể. Nhưng cũng nên nhớ rằng đó là khách hàng thanh toán hóa đơn của bạn và bạn đang viết phần mềm cho họ chứ không phải bạn.


Này Robert, cảm ơn vì đã thêm liên kết đó. Tôi đã gõ trên iPhone của mình và không muốn chuyển đổi ngữ cảnh để tìm kiếm nó.
benzado

1
Liên quan: Lập trình viên ống dẫn của Joel Spolsky và phản ứng của Zawinski .
benzado

Ngoài ra: Phần mềm nhóm của jwz Xấu . (Xin lỗi vì tất cả các liên kết, tôi rất vui khi đọc lại chúng ngay bây giờ ...)
benzado

Tôi làm việc trên phần mềm đã hơn 20 năm tuổi, đã qua rồi và nó bắt đầu được viết kém (thậm chí theo tiêu chuẩn 20 năm trước). ("Mã này là những con chó breakefast - bây giờ là giờ ăn tối" là một câu nói đáng nhớ) Nếu chi phí vận may để duy trì - gấp 10 lần thì nên, nhưng rào cản gia nhập cạnh tranh là cực kỳ cao, vì vậy khách hàng chỉ cần trả tiền. Thay thế là một máy tính với phần mềm simlar và cấu trúc chi phí. Đó là giấy phép để in tiền và đó là lý do tại sao doanh nghiệp viết phần mềm, nếu họ làm vì sự xuất sắc về kỹ thuật, sẽ bị phá sản.
mattnz

4

Đó không phải là cơn ác mộng đối với họ. Nó sẽ là một cơn ác mộng đối với bạn và họ dường như nghĩ rằng bạn biết bạn đang làm gì, vì vậy nó sẽ được sửa chữa. Bạn có muốn những người không lập trình và nghĩ rằng ứng dụng của bạn tệ hơn thực tế không? Đây không phải là ngoại lệ. Hãy tận hưởng nó trong khi bạn có thể. Bạn nên hy vọng khách hàng vượt xa ứng dụng này. Họ có thể đi xa đến một hướng khác như một doanh nghiệp mà điều này hoàn toàn vô dụng. Bạn có thể viết lại nó cho một loạt các lý do khác nhau hơn bạn nghĩ.


3

Tôi không nghĩ bạn nên ngừng quan tâm, ngay cả khi có vẻ như quản lý cấp trên đã dừng lại. Tôi nghĩ rằng điều quan trọng để rút ra kinh nghiệm này là ghi nhớ và ghi lại tất cả những điều mà bạn nghĩ đã sai. Tránh những sai lầm này trong tương lai cuối cùng sẽ được công nhận, nếu không phải là nhóm người quản lý hiện tại này, có thể là nhóm người quản lý tiếp theo bạn làm việc.


2

Tôi sẽ bắt đầu trình bày ý tưởng cho các bước tiếp theo để phát triển bao gồm tái bao thanh toán để cải thiện chất lượng mã. Tránh xa việc đi quá sâu vào chi tiết kỹ thuật, nhưng hãy chỉ ra cách khắc phục mà bạn đề xuất sẽ có nghĩa là tiếp tục sự hài lòng của khách hàng . Hãy chuẩn bị để trộn dọn dẹp với các tính năng mới, vì ban quản lý sẽ luôn tìm kiếm thứ gì đó mới để bán.

Nói chung, khách hàng sẽ không quan tâm đến việc bảo trì cho đến khi có sự cố. Lý tưởng nhất, công ty của bạn sẽ quan tâm đến danh tiếng của nó và muốn bảo vệ nó bằng cách duy trì mã.

Tuy nhiên - nếu sản phẩm này được xem là rất ngắn hạn, thực sự có thể không có giá trị gia tăng để thực hiện đúng. Trong trường hợp đó - hãy tìm các bản sửa lỗi giá rẻ - những thứ với ít nỗ lực có giá trị lớn cho sự tỉnh táo của nhà phát triển.


2

Bạn không. Bạn sử dụng thành công để đảm bảo tài trợ / cấp phép / mua vào để bắt đầu tái cấu trúc theo hướng chính xác về mặt kỹ thuật và dễ bảo trì. Hoặc bạn sử dụng thành công để được thăng chức ra khỏi bộ phận "Tôi nhận được để duy trì cơ sở mã cũ".


0

Có lẽ ưu tiên / quan điểm của bạn là sai.

Điều quan trọng nhất về bất kỳ dự án phần mềm nào là nó đáp ứng yêu cầu của người dùng.

Điều này quan trọng hơn gấp nhiều lần so với việc "chính xác" theo thời trang thiết kế C / S tháng này.

Có, bạn nên sử dụng các mẫu thiết kế chính xác, sử dụng công nghệ chính xác, v.v. nhưng chỉ trong chừng mực nó giúp thực hiện các yêu cầu của người dùng một cách mạnh mẽ và dễ bảo trì hơn.

Một hệ thống được viết thực sự tồi tệ thực sự đáp ứng nhu cầu kinh doanh luôn tốt hơn một đoạn mã được viết tài liệu tuyệt đẹp mà không ai muốn hoặc có bất kỳ lý do nào để sử dụng.


0

Cố gắng giao tiếp với người dùng hiện tại và hỏi họ những khía cạnh nào HỌ nghĩ cần cải thiện. Sau đó, bạn có thể cải thiện một số khía cạnh mà bạn nghĩ cần cải thiện và cũng cải thiện các khía cạnh mà người dùng đề xuất. Bạn có thể biện minh cho các cải tiến của mình là "cần thiết để triển khai các cải tiến do người dùng đề xuất"

Ví dụ: nếu người dùng nghĩ rằng chức năng tìm kiếm chậm. Bạn có thể cải thiện điều đó bằng cách tạo Lớp dữ liệu tốt hơn rõ ràng phục vụ nhiều hơn chỉ là tìm kiếm, nhưng sau đó bạn có thể biện minh cho thời gian đã sử dụng.

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.