2009-05-29 33 views
13

Bạn cảm thấy thực sự tồi tệ khi bạn nói với khách hàng hoặc người quản lý rằng điều này có thể được hoàn thành trước 10 ngày nhưng bạn đã dành 20 ngày để có được một điểm thậm chí không được triển khai để sống.Bạn ước tính thời gian bạn đã dành trước khi bắt đầu dự án phát triển web như thế nào?

Bất kỳ trải nghiệm nào có thể chia sẻ với tôi về cách bạn ước tính thời gian dành cho một dự án được đề xuất?

Cảm ơn

+0

Cảm ơn những người đã giúp tôi về câu hỏi này và đừng ngần ngại thêm kinh nghiệm của bạn. –

Trả lời

25

Trải nghiệm sẽ giúp bạn nhận được tốt hơn như ước tính, không có gì khác.

Điều quan trọng nhất cần nhớ là giữ cho mọi người được thông báo.

Nếu nhiệm vụ ước đạt 10 ngày và bạn đang ở ngày thứ 5 và rõ ràng sẽ không quản lý nó trong 10, bạn nên cho mọi người biết tại thời điểm đó, không phải khi nó đạt đến ngày 11.

Có là ba lựa chọn khi mọi thứ diễn ra theo thời gian, bạn lấy công việc và thực hiện công việc, bạn cắt công cụ từ hệ thống hoặc bạn yêu cầu thêm tiền để hoàn thành. Việc sớm hơn có thể được quyết định tốt hơn.

+0

Nếu tôi có thể bỏ phiếu này nhiều hơn một lần, tôi sẽ. Đây là một câu trả lời thực sự tuyệt vời. – Abel

+4

Tôi đồng ý với mọi thứ bạn đã nói XÁC NHẬN câu đầu tiên. Kinh nghiệm không phải là điều duy nhất sẽ giúp bạn có được ước tính tốt hơn. Phá vỡ một nhiệm vụ thành nhiều nhiệm vụ sẽ cải thiện độ chính xác của bạn là tốt và bạn có thể làm điều đó ngày hôm nay, không chỉ khi bạn nhận được nhiều kinh nghiệm hơn. –

+0

Có, tôi đồng ý, tôi đã là một nhị phân bit với tuyên bố đó. 1 câu trả lời của bạn để xin lỗi :) –

4

Đưa ra ước tính thời gian là điều bạn chỉ có thể làm tốt hơn với trải nghiệm.

Hãy tận hưởng trải nghiệm cuối cùng của bạn và sử dụng nó để sửa đổi ước tính thời gian tiếp theo của bạn.

Cũng xem http://en.wikipedia.org/wiki/Estimation_in_software_engineering để biết thêm thông tin.

Tôi nhận thấy rằng một trong những điều tồi tệ nhất bạn có thể làm là lướt qua các yêu cầu lần đầu tiên và sau đó đoán trước trong cuộc họp ban đầu đó. Luôn luôn nói rằng bạn sẽ cần phải lấy lại cho họ, và sau đó đi phân tích các yêu cầu và đưa ra một phản ứng giáo dục.

+0

Sẽ làm điều này từ hôm nay, cảm ơn rất nhiều. –

12

Càng nhiều càng tốt, hãy cố gắng chia nhỏ mọi thứ thành từng phần nhỏ ngay từ đầu. Tôi đã đọc trước đó rằng mọi người không thể ước tính chính xác thời gian của bất kỳ thứ gì dài hơn một vài ngày, vì vậy điều duy nhất bạn có thể làm để làm việc xung quanh đó là cố gắng xác định tất cả các phần và ước tính từng phần riêng biệt.

+0

Có thể làm điều này nếu tôi có thể chia các nhiệm vụ thành từng phần nhỏ, biết phải học gì. –

3

Bạn không thể ước tính mà không biết bạn sẽ làm gì; bạn cần phải chia nhiệm vụ thành các phần mà bạn có thể ước tính hợp lý - xuống đến HOUR (không có gì dưới 1 giờ, tròn lên)

ví dụ: "Hãy cho tôi một trang đăng nhập" mẫu đăng nhập

HTML - 1 giờ Cơ sở dữ liệu bảng cho người dùng - 2 giờ vv vv

Sau đó, kéo lên một cuốn lịch và cố gắng và điền vào các giờ - okay vào thứ hai, tôi có thể làm việc khoảng 5 giờ, để đảm nhiệm một nhiệm vụ. Bạn có thể đa nhiệm hợp lý không? Có lẽ, nhưng đừng nói rằng bạn có thể thực hiện các nhiệm vụ 3 x 4 giờ trong một ngày, ngay cả khi bạn có 12 giờ để "rảnh" (quá nhiều).

Nhìn vào cuối tuần; bạn sẽ làm việc chứ? Có lẽ không, do đó, bao gồm đó. Gotta có được dầu của bạn thay đổi? Đám cưới sắp tới? Hãy chắc chắn rằng yếu tố đó trong. Bao gồm một số thời gian fudge trong trường hợp bạn không thể làm việc một số ngày (trẻ em bị bệnh, điện đi ra ngoài)

+0

Awsome, tôi thực sự lãng phí khá nhiều thời gian trên belive "Tôi có thể multitasks", nó là sự thật rằng tôi đã không được thêm các hiệu ứng từ cuộc sống thực của tôi, cảm ơn anser của bạn và mong muốn không có trẻ em bị bệnh nữa. –

3

Tôi thực sự làm cho bản đồ trang web rất chi tiết sau đó ước tính giờ (phút) cho mỗi mảnh .

Tôi hiển thị bản đồ trang web cho khách hàng và nói với họ rằng nó sẽ tăng gấp đôi những gì tôi thực sự mong đợi.

Và sau đó chúng tôi nêu chi tiết từng trang sẽ làm gì để không có tranh luận về việc trang web có "hoàn thành" hay không.

Hứa hẹn, phân phối quá mức. Tôi thường WAY trước những gì tôi nói với khách hàng và họ luôn hạnh phúc tôi đã được thực hiện "sớm".

+0

Hy vọng tôi có thể làm một cái gì đó như thế này, bạn có nghĩa là tôi nên nói với khách hàng hoặc người quản lý của tôi rằng tôi sẽ dành 20 ngày (Như tôi dự kiến ​​10 ngày ở điểm đầu tiên)? –

+0

Đó chính xác là những gì tôi làm.Tôi chưa bao giờ có một người quản lý, vì vậy tôi không chắc chắn về những tác động chính trị ở đó, nhưng đối với khách hàng của tôi nó hoạt động tốt. - Gần đây tôi đã nói với một khách hàng trang web sẽ mất ba tuần ... đã cho tôi ba ngày. Tôi đã không giao nó cho họ thêm một tuần nữa để tránh sự xuất hiện mà mọi thứ sẽ diễn ra nhanh chóng trong tương lai. –

2

Một điều luôn luôn là yếu tố trong thời gian thử nghiệm. Nếu một cái gì đó là sẽ mất 10 ngày để phát triển, nó sẽ là lý tưởng để cho phép ít nhất 7-8 ngày thử nghiệm. Bắt một nắm bắt tốt các yêu cầu lên phía trước giúp trong việc ước tính thời gian. Khi/nếu yêu cầu thay đổi, bạn sẽ phải cho khách hàng biết rằng nó sẽ thêm thời gian bổ sung vào ngày giao hàng.

Tất cả trong tất cả, như Zack đã nói, càng có nhiều kinh nghiệm bạn sẽ có được chính xác hơn bạn sẽ được với ước tính thời gian của bạn. Đưa ra một ước tính thời gian không thực tế chỉ để có được một công việc chỉ có thể là một điều xấu. Tất nhiên, tôi không cho rằng đó là những gì bạn đã làm. Tôi chỉ nói nó là một điểm thực hành tốt.

+0

Cảm ơn câu trả lời của bạn, các bài kiểm tra đã cho tôi khoảng 80% thời gian, đó là một phần lý do tôi không thể hoàn thành dự án của mình đúng thời gian, tuy nhiên, tôi cần imporve các kỹ năng kiểm tra để cắt giảm phần này. –

1

Một trong những giáo viên lập trình yêu thích của tôi thường xuyên lặp lại câu này: "Hãy dành thời gian bạn nghĩ bạn sẽ đưa bạn làm và nhân nó bằng 3. Ngay cả khi đó sẽ là cuộc gọi gần" .

Lúc đầu, thiếu cách làm tốt hơn, tôi thực sự đã làm điều này. Tôi vẫn làm! Chủ yếu là trong những dự án mà bạn có thể cảm thấy sự hiện diện của một khách hàng mặc dù :)

Nó làm việc cho tôi. Nó không phải là khoa học nhưng nó hoạt động.

+0

Tôi đã nói (nửa đùa) để dành thời gian, tăng gấp đôi và nâng cấp thiết bị. Vì vậy, ba giờ đi đến sáu ngày! Scarily chính xác ... –

2

Bạn đã dành bao nhiêu thời gian cho việc này? Những gì phiền nhiễu ahve có được? Mỗi khi bạn tập trung và ai đó phá vỡ sự tập trung đó (một trạng thái bình thường của công việc mà tôi làm việc), bạn có thể mất 30 phút để trở lại trạng thái tập trung đó. Bốn hoặc năm trong số đó một ngày và (với việc giải quyết lý do cho sự gián đoạn là tốt) bạn đã mất nửa ngày. Mỗi ngày.

Tất cả chúng ta đều làm điều này. Lâu sau khi chúng ta nên học tốt hơn, chúng ta vẫn làm điều đó. Chúng tôi nghĩ rằng "không thể mất nhiều thời gian hơn một vài tuần" và chúng tôi lên tiếng ngay lập tức thay vì thông minh và suy nghĩ. Tôi đang nói chuyện với bản thân rất nhiều, ở đây! Làm thế nào có thể nếu chúng tôi nói điều gì đó như thế này: "Tôi nghĩ trong một thế giới lý tưởng, tôi có thể làm điều này trong 10 ngày, nhưng bạn và tôi biết rằng mọi thứ xuất hiện và cần được giải quyết và điều đó sẽ có một ảnh hưởng. Làm thế nào về chúng tôi ưu tiên các tính năng và tôi sẽ làm việc trên chúng theo thứ tự và báo cáo lại khi từng được hoàn thành, với một ước tính cập nhật thời gian còn lại? "

1

Tôi chia nhỏ dự án thành các tác vụ riêng biệt nhỏ nhất mà tôi có thể. Sau đó tôi đi qua danh sách ba lần.

Lần đầu tiên tôi đi qua danh sách, tôi tìm những thứ mà tôi có nhiều kinh nghiệm. Đây là những thứ dựa trên kinh nghiệm trước đây của tôi, tôi có thể ước tính chính xác thời gian cần thiết.

Sau đó, tôi đi qua danh sách tìm kiếm những thứ mà tôi không chắc chắn, và tôi lo rằng họ sẽ mất nhiều thời gian. Tôi dành thời gian nghiên cứu từng cái một, và chia nhỏ chúng thành những công việc nhỏ hơn. Điều đó cho phép tôi có được một ý tưởng tốt hơn về những gì chính xác là có liên quan, và nó sẽ làm cho nó dễ dàng hơn để tiếp cận nó sau này.

Lần cuối cùng tôi đi qua danh sách, tôi giả định rằng mỗi tác vụ sẽ mất một lập trình viên một ngày làm việc để hoàn thành. Đôi khi ai đó có thể làm cả một bó trong một ngày. Thật tuyệt. Nhưng đôi khi một nhiệm vụ duy nhất có tất cả các loại nastiness ẩn mà không ai mong đợi, và nó sẽ mất một ai đó một tuần để tìm ra nó. Nó cuối cùng cũng xuất hiện.

Điều này sẽ không cung cấp cho bạn ước tính chính xác. Bạn thực sự không thể có một ước tính chính xác. Bạn không bao giờ có thể dự đoán chính xác ngày nào bạn sẽ hoàn thành một cái gì đó. Tuy nhiên, điều này sẽ cung cấp cho bạn một ước tính bảo thủ và chính xác rất tốt. Độ chính xác và chính xác là hai điều khác nhau.

1

Xác định tất cả các tác vụ bạn có thể có thể. Như những người khác ở trên đã lưu ý, các nhiệm vụ bạn đang ước tính càng nhỏ, bạn càng chính xác hơn. Thêm tổng thời gian, sau đó nhân với yếu tố điên rồ. Khách hàng của bạn càng khao khát, thì càng mất nhiều thời gian hơn. Bạn đã tư vấn một thời gian, vì vậy tôi chắc chắn bạn biết loại.

+0

Thanks anyway giao phối. –

1

Milestoning một dự án tôi đã tìm thấy có thể rất hữu ích. Bằng cách này tôi có nghĩa là bạn xác định các bộ phận quan trọng trong dự án của bạn giúp phân chia nó thành các khung thời gian cho các phân phôi.

Bằng cách đó tại mỗi mốc, bạn có thể xem xét cách thức tiến bộ của bạn và xem liệu bạn có bị tụt hậu, đúng giờ, vv với dự án của bạn hay không.

ps. hoặc bạn có thể làm theo cách tiếp cận cổ điển của việc dành thời gian bạn nghĩ rằng nó sẽ đưa bạn, và sau đó tăng gấp đôi nó !!! ;)

+0

Tôi không muốn chỉ tăng gấp đôi thời gian tôi nghĩ, vì tôi không biết thời gian tôi nghĩ là gì. Nếu bạn biết ý tôi là gì. –

+0

aye! ... mà cuối cùng là nhiều toungue trong má. – kevchadders

1

Cũng nên nhớ câu ngạn ngữ cũ ...

"90% đầu tiên mất 90% thời gian 10% cuối cùng mất 90% thời gian.."

Tôi không nghĩ rằng bạn có thể gặp vấn đề với việc bạn nghĩ dự án lập trình sẽ mất bao nhiêu thời gian và tăng gấp ba lần. Trừ khi bạn đã xây dựng chính xác điều tương tự trước đó và nó đã được trong năm qua, rất nhiều thứ bất ngờ sẽ xảy ra. Bạn không thể thay thế trải nghiệm, nhưng bạn có thể sử dụng quy tắc này để tránh rắc rối trên đường đi.

Và upvote người trả lời đầu tiên ... trung thực và chủ động trên đường đi là rất lớn. Tốt hơn để tránh hứa hẹn bất cứ điều gì hơn là phải nói rằng bạn sẽ không đánh dấu.

+0

Ý của bạn là 90% đầu tiên chiếm 10% thời gian, 10% cuối cùng mất 90% thời gian? –

+0

Không. Tổng số ít nhất là 180% thời gian. :) –

Các vấn đề liên quan