Painless software schedule




















Even though a Licence fee is not paid for use of this software, it does not mean that there are not conditions for using such software. As a condition for granting you a Licence to use this software, you agree to all of the following terms and conditions.

You are deemed to have read, understand, and have accepted all such terms and conditions upon executing a download of this program. If you fail to abide by any of the terms and conditions set forth herein, your Licence to use the software shall be immediately and automatically revoked, without any notice or other action by Andrew Pietsch.

You are only granted a license for the machine-readable, object code portion of the Software. As time goes on, if a task is taking longer or shorter than you thought, you can update the Curr Est column as much as you need. This is the best way to learn from your mistakes and teach yourself how to estimate tasks well. Most programmers have no idea how to guess how long things will take. As long as you are continuously learning and continuously updating the schedule as you learn, the schedule will work.

You may have to cut features or slip, but the schedule will still be working correctly, in the sense that it will constantly be telling you when you have to cut features or slip. When the task is done, the Curr Est and Elapsed fields will be the same, and the Remain field will recalc to 0. You do not really have to watch your stopwatch while you code. The remaining time field is then calculated automatically by Excel.

At the same time, update the Curr Est column for those tasks to reflect the new reality. Updating your schedule daily should only take about two minutes. If your schedule is going to take about a year, each programmer will probably take 10 to 15 days of vacation. Debugging is the hardest to estimate. Think back to the last project you worked on.

This has to be a line item in the schedule, and it will probably be the largest line item. The Orig Est was 16 hours, but so far it has taken 20 hours and it looks like it needs another 10 hours of work. So the developer enters 30 under Curr Est and 20 under elapsed.

Theoretically, to accommodate these slips, we have to cut features in order to ship on time. In principle, developers debug code as they write it. A programmer should never, ever work on new code if they could instead be fixing bugs. The bug count must stay as low as possible at all times, for two reasons:. It is impossible to estimate when you will make the discovery and solve the bug. On the other hand, if there are hundreds or thousands of outstanding bugs, it is impossible to predict when they will all be fixed.

Well, even if you try to fix every bug as you go along, at the end of every milestone, there is inevitably a lot of bug fixing when testers internal and beta find the really hard bugs.

If you have more than one programmer, inevitably, there will be stuff that two programmers do that is inconsistent and needs to be reconciled. They might both implement dialog boxes for similar things that are unnecessarily inconsistent.

Somebody will have to go through all the menus, keyboard accelerators, toolbar tools, etc. There will be compiler errors that show up as soon as two people check in code. This has to be fixed, and it should be a line item on the schedule. The client that comes in and insists on building an invoicing system with Drupal is NOT right. Developers should be experts in solving technical problems, and therefore should write the specs.

They should work with the clients to find out the needs, and developing specs in this fashion can actually be one of the most rewarding parts of software development. Why then, does it seem like the programming team is the group that always gets stuck writing a schedule?

The programming team is often asked to write the schedule because management mistakenly believes that programming takes the most time more on that in the next section. However, there are large parts of the project that have nothing to do with programming: the client taking two extra days to review the demo, people getting sick on the QA team, management mistakes, vacations, etc.

Developers make up a small, but crucial part of the development calendar. When schedules are developed, they should be considered but not weighed as the only factor.

Managers must learn to take into account other factors. November to February, 1 person is out sick every day. June to August two people are on vacation at any given time. These things must be taken into account; otherwise, the schedule will be off considerably. This is an important concept, because it completely breaks apart the conventional wisdom of managers. And software is developed by lines of code. Programmers sometimes take issue with this as well, because they also see their role as writing lines of code.

LOC is the ultimate end product; however, there is considerable architecture, design, and testing that goes into a software product. Believing that lines of code make software is like believing that plastic makes a toy.

Mr Schedule is a powerful and intuitive tool for creating and managing software schedules. The sophisticated outlining capabilities make it trivial to orgainise and to break your tasks down into components.

The tool supports milstone tasks and integrates a rich text editor for keeping notes. For more information you can check out the Getting Started Guide.



0コメント

  • 1000 / 1000