我如何符合编码截止日期 [英] How do I meet coding deadline

查看:64
本文介绍了我如何符合编码截止日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个问题,我需要帮助。当我想要启动一个软件项目时,我意识到会想到几个功能。有时,其中一些功能需要更多时间来实现。在我意识到之前,浪费时间,有时客户说我迟到了,所以他们与其他人签约。我的问题是1.我应该怎么做才能从开始到结束(在编码开始和结束之前)满足设定的时间范围.2。大多数用户不知道按钮背面可能有巨大的代码,所以他们说这只是做这个或那个问题......那么我如何说服客户理解项目的复杂性。提前谢谢。

解决方案

能够估计完成项目所需的时间是获得的(学过的)技能。它涉及几个智能(我在Daniel Goleman的心理学工作中使用这个词,将智能视为具有几个独立的组件......当然,这在任何个体中都是重叠):



1.您的技术情报:您自己的技术知识和对您使用的工具的掌握。



1.a.您务实的技术情报:您根据直接经验编码和实施可能类似于给定客户要求的解决方案获得的智慧(是的,我称之为智慧)。



2.你的情商:你与客户有效谈判的能力。你能够检测到沟通中的微妙线索,从而形成一种准确或有用的客户感觉,以及他们知道他们真正想要的东西的程度。



2.a.您的社交沟通情报:准确地参与制定一个清晰易懂的工作规范和发展里程碑。



3.您的分析智能:这可能包括:



3.a.你在研究可能发挥作用的所有背景因素方面做尽职调查的能力可能会延迟,阻碍或阻止项目的完成。



3.B.您能够识别(或预测)项目中可能导致延误的瓶颈,或者准确地告知客户......已发现的......如果没有进一步的实验,无法估计完成的时间。



当然,还有更多因素可以,可以,也可以在这里发挥作用。你和客户都会犯错误。会产生误解。由于您正在使用新的操作系统或新的开发工具,可能会出现不可预测的技术问题。



客户的非理性(或贪婪)可能会在这里发挥作用,以及你自己。



imho,更好的策略是在开始时修改规范,并让客户签署一系列里程碑的步骤在开发中。



如果在进行原型设计之前无法预测项目完成情况,客户需要了解这一点。



问题(客户说):你不能只是添加这个功能:......总会出现:)


你有我已经得到了很多好的建议,我只会强调一件事;规格。

您和您的客户已达成一致的具体规格将以多种方式为您提供帮助。

规格将帮助您:

1.估计需要花费的时间(然后再乘以PI来获得缓冲区)

2.强迫你考虑所有会在你身边发现的小细节在...

3.避免讨论客户认为应该在那里的额外功能。



如果客户想要另外一个功能添加你可以更新规格,它会更容易说哦,我的,这意味着很多额外的工作



这是一篇很好的文章系列关于如何以及为什么要编写规范。

阅读它:-)

无痛功能规格 [ ^ ]

准确地估计制作节目所需的时间是你将获得的经验技巧。



介于几件事之间可以帮助你



我使用这个软件 ToDoList 7.0.8 - 一种有效且灵活的方式来完成任务 [ ^ ],它是一个分层的ToDoList,这意味着您可以根据需要在任意数量的子任务中剪切任务在你需要的任意级别上。

如果你需要帮助,论坛非常活跃。



原理:

为项目制定主要任务

按功能制作子任务(从用户的角度来看)
下一级
枚举您需要的内部功能创建该功能。

分配估计时间如果你需要,子任务就足够清楚或再次细分。

你的所有估算都将收集到主要任务,这是你对项目的估计。

作为项目提前,检查子任务进度并报告实时支出。


Please I have this problem that I need help. When there is a software project that I want to start, I realize that several features come to mind. And sometimes some of those features take more time to implement. before I realize, time is wasted and sometimes customers say I was late so they contracted someone else to do it. My question is 1. what should I do to meet the set time frame right from start to end (before coding starts and ends) 2.Most users don't know there may be huge code at the back of a button so they say "this is just a matter of doing this or that ..." So how do I convince customers to understand the complexity of the project. thanks in advance.

解决方案

Being able to estimate the necessary time to complete a project is an acquired (learned) skill. It involves several "intelligences" (I use that word in the context of Daniel Goleman's work in psychology looking at "intelligence" as having several discrete components ... which, of course, "overlap" in any individual):

1. your technical intelligence: your own technical knowledge and mastery of the tools you use.

1.a. your pragmatic technical intelligence: the wisdom (yes, I call it "wisdom") you have acquired based on direct experience coding and in implementing solutions that may be similar to a given client's requirements.

2. your emotional intelligence: your ability to negotiate effectively with a client. your abilities to detect subtle cues in communication which lead you to form an accurate, or useful, sense of who the client is, and the extent they "know what they really want."

2.a. your social communication intelligence: to accurately engage to produce a clearly understandable working specification and milestones for development.

3. your analytic intelligence: this might include:

3.a. your ability to do "due diligence" in researching all the background factors that might come into play which could delay, or impede, or prevent, completion of a project.

3.b. your ability to recognize (or predict) hitting bottle-necks in the project which might cause delays, or to accurately inform the client ... a discovered ... where the time to complete cannot be estimated without further experimentation.

Of course, there are many more factors that can, could, and do, come into play here. Mistakes will be made by both you, and client. Misunderstandings will occur. Unpredicatble technical issues may arise because you are using a new OS, or new dev tools.

The client's irrationality (or greed) may come into play here, as well as your own.

imho, the better strategy is to "nail" the spec in the beginning, and get the client to sign-off on a series of milestones for steps in development.

If you can't predict project completion until you do some prototyping, the client needs to understand that.

The issue of (the client saying): "couldn't you just add this feature: ..." is always going to arise :)


As you have already got plenty of good advice I will just emphasize on one thing; The Specification.
Having a solid specification that both you and your client has agreed upon will help you in several ways.
A spec will help you to:
1. estimate the time it will take (which you then multiply by PI to have a buffer)
2. force you to think about all the little details that will come back in bite you in the ...
3. avoid discussions about extra features that the client thought should be in there.

And if the client wants another feature added you can update the spec and it will be easier to say that "Oh my, this means a lot of extra work"

Here is a good article series about how and why to write a specification.
Read it :-)
Painless Functional Specifications[^]


Accurately estimating time needed to make a program is a skill you will acquire with experience.

In between a few things can help you

I use this software ToDoList 7.0.8 - An effective and flexible way to keep on top of your tasks[^], it is a hierarchical ToDoList, it means you can cut a task in as many subtasks as you need and on as many levels as you need.
The forum is very active if you need help.

Principle:
Make a main task for your project
make a sub-task per functionality (from the user point of view)
on next level enumerate the internal features you need to create that functionality.
assign estimates when the subtask is clear enough or subdivide again if you need.
All your estimates will be collected to the main task, it is your estimate for the project.
As the project advance, you check the subtasks advancement and report real time spend.


这篇关于我如何符合编码截止日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆