Vitaliy wrote: > Hello List, > > The question I have is about project management, and I realize that most > people here are engineers; however, I'm sure that most of you worked on a > project involving a team of people, and I would appreciate any insights you > can provide. > > The question is, how do you manage multiple projects of different duration? > Suppose that you run a small business, and you have long-term projects (3-6 > months), short-term projects (1-6 weeks), and day-to-day "business" stuff. > Now, since you have a small business you are responsible for managing all > three (can't outsource them to other managers). > > The problem is, how do you know what you should be doing at any given > moment? You can't be doing just the long-term projects, and neglect the > day-to-day activities, because you will run out of money. On the other hand, > if you take care of all the day-to-day tasks, the long-term projects will > never get done. Ideally, there needs to be a balance between the three. > You have to juggle all the responsibilities. On long-term contracts, make sure you get paid some partially, at a milestone here and there. In fact, I would advise against taking ANY contract in which you don't get paid until the end; an exception is a contract with the Government; in that case, you KNOW you'll get paid in six months but the invoice is easy to borrow money against. I did a contract with the US FDA and it took 8 months to get paid. But they liked the feeders and bought several more at a high price. Every responsible client knows that you have to juggle, and most will assist you. But there are a few tricks: (1) do the schematic design as accurately but fast as possible. While they are mulling it over, you can squeeze in a few small jobs; (2) PCB layout is similar; the client will normally have to review your PCB layout and will INEVITABLY make some changes. Again, you have time to do small jobs while they are tinkering with the layout; (3) firmware design- I do my best work at night, then can delegate some responsibility during the day to others. I.E. work when you are most efficient. > Another related question is, have you used project management software that > can keep track of several projects at a time? IMHO, MS Project et al are > more suitable for large, single projects, and are not good at simultaneously > keeping track of several projects of different duration and scope. > I liked BusyBee (sp?) but haven't been very busy lately. Its easy to use and very understandable. > It seems to me that any project or individual task can be described in terms > of duration, flexibility, importance, and urgency. > Yes, it can. > Duration is self-explanatory. > > Flexibility means that the project can be rescheduled if needed. A > Christmas party is an example of a non-flexible project because you can only > do it on December 25. MASTERs conference is another such example -- you > either attend it on July 26-29, or skip it altogether. > Of course, your clients don't REALLY care a whit about Christmas or Master's Conference, unless they can see a direct help for them. > Importance describes how severe the consequences will be if the project > is not done by a certain date, or at all. > Its better to complete on time, but its EVEN BETTER to do it right. If you have some code you believe might be squirrelly, you need to let him KNOW that your confidence is not high on that part and he might delegate somebody to help you test it. There was an old saying at TI- "There's plenty of time to do it over, after finding that there was not enough time to do it right". > Urgency is easy to understand, but somewhat difficult to define. I want > to differentiate it from importance, however: sometimes, answering a phone > call may be more urgent than working on an important project that has a long > duration. > Always answer the phone. But if it is from a telemarketer, be sure to sue them for wasting your time. > The ideal project management software would take some or all of these > inputs, plus task dependencies, and produce a Gantt chart (or similar). > Then, once in a while, you would be able to update some of the variables, > and produce a new chart. What I don't like about the software that I've used > so far is the fact that it forces you to prioritize and schedule the tasks > yourself, instead of doing the scheduling for you. Since the process is > purely analytical, I don't see why it can't be done by the computer (perhaps > I'm missing something obvious). > > Actually, such software could be written for our line of work, but there is none so specific presently. > Thank you in advance for your responses, and sorry for the long post. > > Best regards, > > Vitaliy > > -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist