A project management primer

In summary - you are free: to copy, distribute, display, and perform the work and tomake derivative works. You must attribute the work by directly mentioning the author's name. You may not use this work for commercial purposes and if you alter, transform, or build upon this work, you may distribute the resulting work only under a license identical to this one. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. Please see the license for full details.

pdf43 trang | Chia sẻ: haohao89 | Lượt xem: 2073 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu A project management primer, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
A Project Management Primer or “a guide to making projects work (v2.0)” by Nick Jenkins ©Nick Jenkins, 2006 This work is licensed under the Creative Commons (Attribution-NonCommercial- ShareAlike) 2.5 License.. To view a copy of this license, visit []; or, (b) send a letter to “Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA”. In summary - you are free: to copy, distribute, display, and perform the work and to make derivative works. You must attribute the work by directly mentioning the author's name. You may not use this work for commercial purposes and if you alter, transform, or build upon this work, you may distribute the resulting work only under a license identical to this one. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. Please see the license for full details. Table of Contents INTRODUCTION............................................................................................................................... 3 BASIC PRINCIPLES..........................................................................................................................4 Ten Axioms for Success....................................................................................................................4 Scope Triangle...................................................................................................................................6 The Critical Path................................................................................................................................ 7 The Mythical Man Month................................................................................................................... 7 SCOPE ............................................................................................................................................10 Scope, Visions and Goals............................................................................................................... 10 Requirements.................................................................................................................................. 15 Requirements capture..................................................................................................................... 17 Documenting Requirements............................................................................................................19 Traceability...................................................................................................................................... 22 PLANNING.......................................................................................................................................23 The Purpose of a Project Plan........................................................................................................ 23 The Fine Art of Scheduling..............................................................................................................24 Costing and Budgeting.................................................................................................................... 29 Risk Management............................................................................................................................31 Change Management ..................................................................................................................... 33 EXECUTION.................................................................................................................................... 35 Staying on track............................................................................................................................... 35 Managing People.............................................................................................................................36 IMPLEMENTATION.........................................................................................................................39 REVIEW...........................................................................................................................................42 GLOSSARY..................................................................................................................................... 43 A Project Management Primer (©Nick Jenkins 2006) 2 - 43 I n t r o d u c t i o n Many projects fail because of the simplest of causes. You don’t have to be a genius to deliver a project on time, nor do you have to be steeped in a mystical project management methodology to be a project manager. If an averagely competent person can’t deliver a project successfully after reading this primer then I will run buck naked through Times Square on my 75th birthday. See if I don’t! Nick That reminds me of a joke… A tourist walked into a pet shop and was looking at the animals on display. While he was there, another customer walked in and said to the shopkeeper, "I'll have a C monkey please." The shopkeeper nodded, went over to a cage at the side of the shop and took out a monkey. He fitted a collar and leash, handed it to the customer, saying, "That'll be £5,000." The customer paid and walked out with his monkey. Startled, the tourist went over to the shopkeeper and said, "That was a very expensive monkey. Most of them are only a few hundred pounds. Why did it cost so much?" The shopkeeper answered, "Ah, that monkey can program in C - very fast, tight code, no bugs, well worth the money." The tourist looked at a monkey in another cage. "Hey, that one's even more expensive! £10,000! What does it do?" "Oh, that one's a C++ monkey; it can manage object-oriented programming, Visual C++, even some Java. All the really useful stuff," said the shopkeeper. The tourist looked around for a little longer and saw a third monkey in a cage of its own. The price tag around its neck read £50,000. The tourist gasped to the shopkeeper, "That one costs more than all the others put together! What on earth does it do?" The shopkeeper replied, "Well, I haven't actually seen it do anything, but it says it's a project manager". A Project Management Primer (©Nick Jenkins 2006) 3 - 43 B a s i c P r i n c i p l e s Ten Axioms for Success To help you get started here’s ten (self evident) truths : I. Know your goal It may sound obvious, but if you don’t have an end-point in mind you’ll never get there. You should be able to clearly state the goal of your project in a single sentence. If you can't, your chance of achieving it is slim. II. Know your team Your team is the most important resource you have available and their enthusiastic contribution will make or break your project. Look after them and make sure the team operates as a unit and not as a collection of individuals. Communications are vital! Invest time in promoting trust and ensuring that everyone knows what they have to contribute to the bigger picture. Dish out reward as well as criticism, provide superior working conditions and lead by example. III. Know your stakeholders Spend time with your stakeholders. Stakeholders either contribute expert knowledge offer their political or commercial endorsement which will be essential to success. Shake hands and kiss babies as necessary and grease the wheels of the bureaucratic machine so that your project has the smoothest ride possible. IV. Spend time on planning and design A traditional mistake is to leap before you are ready. When you’re under pressure to deliver, the temptation is to ‘get the ball rolling’. The ball is big and heavy and it's very, very difficult to change its direction once it gets moving. So spend some time deciding exactly how you’re going to solve your problem in the most efficient and elegant way. V. Promise low and deliver high Try and deliver happy surprises and not unpleasant ones. By promising low (understating your goals) and delivering high (delivering more than your promised) you : • Build confidence in yourself, the project and the team • Buy yourself contingency in the event that something goes wrong • Generate a positive and receptive atmosphere Consider : if everything goes right you will finish early everyone will be happy; if something goes wrong you might still finish on time ; if things goes really badly you might still not deliver what you anticipated but it will still be better than if you over-promised! A Project Management Primer (©Nick Jenkins 2006) 4 - 43 VI. Iterate! Increment! Evolve! Most problems worth solving are too big to swallow in one lump. Any serious project will require some kind of decomposition of the problem in order to solve it. You must pay close attention to how each piece fits the overall solution. Without a systematic approach you end up with a hundred different solutions instead of one big one. VII. Stay on track You have an end goal in mind. You need to work methodically towards the goal and provide leadership (make decisions). This applies whether you’re a senior project manager with a team of 20 or you’re a lone web developer. Learn to use tools like schedules and budgets to stay on track. Consistency is what separates professionals from amateurs. VIII. Manage change We live in a changing world. As your project progresses the temptation to deviate from the plan will become irresistible. Stakeholders will come up with new and ‘interesting’ ideas, your team will bolt down all kinds of rat holes and your original goal will have all the permanence of a snowflake in quicksand. Scope creep or drift is a major source of project failure and you need to manage or control changes if you want to succeed. This doesn’t imply that there should be single, immutable plan which is written down and all other ideas must be stifled. You need to build a flexible approach that absorbs changes as they arise. It’s a happy medium you’re striving for - if you are too flexible your project will meander like a horse without a rider and if you are too rigid your project will shatter like a pane of glass the first time a stakeholder tosses you a new requirement. IX. Test Early, Test Often Projects involve creative disciplines burdened with assumptions and mistakes. Sure you can do a lot of valuable work to prevent mistakes being introduced, but to err is human and some of errors will make it into your finished product. Testing is the best way to find and eliminate errors. X. Keep an open mind! Be flexible! The desired outcome is the delivery of the finished project to a customer who is satisfied with the result. Any means necessary can be used to achieve this and every rule listed above can be broken in the right circumstances, for the right reasons. Don’t get locked into an ideology if the circumstances dictate otherwise. Don’t get blinded by methodology. Follow your head. Focus on delivering the project and use all the tools and people available to you. Keep an eye on the schedule and adjust your expectations and your plan to suit the conditions. Deliver the finished product, promote its use, celebrate your success and then move on to the next project. A Project Management Primer (©Nick Jenkins 2006) 5 - 43 Scope Triangle Called the ‘Scope Triangle’ or the ‘Quality Triangle’ this shows the trade-offs inherent in any project. The triangle illustrates the relationship between three primary forces in a project. Time is the available time to deliver the project, cost represents the amount of money or resources available and quality represents the “fit-to-purpose” that the project must achieve to be a success. The normal situation is that one of these factors is fixed and the other two will vary in inverse proportion to each other. For example “Time” is often fixed and the “Quality” of the end product will depend on the “Cost” or resources available. Similarly if you are working to a fixed level of “Quality” then the “Cost” of the project will largely be dependent upon the “Time” available (if you have longer you can do it with fewer people). The astute reader will be wondering what happens when two of the points are fixed. This is when it really gets interesting. Normally this occurs when costs are fixed and there is a definite deadline for delivery, an all too familiar set of circumstances. Then, if the scope starts to creep you are left with only one choice – cut functionality. This more common than you might think, in fact its more common than not! Cutting functionality may seem a drastic measure, but an experienced project manager will happily whittle away functionality as if they were peeling a potato. As long as the core requirements remain, everything will be fine. Additional functionality can always go into “the next release”, but if you don’t deliver the core functionality, there won’t be a next release. A really experienced project manager might even pad his project with a little superfluous functionality that could be sacrificed when the crunch comes (but you didn’t hear it from me!). A phenomenon known as “scope creep” can be linked to the triangle too. Scope creep is the almost unstoppable tendency a project has to accumulate new functionality. Some scope creep is inevitable since, early on, your project will be poorly defined and will need to evolve. A large amount of scope creep however can be disastrous. When the scope starts to creep, new functionality must be added to cover the increased scope. This is represented by the quality arm of the triangle, representing the ability of the ‘product’ to fulfil users’ requirements. More requirements fulfilled = a better quality product. In this situation you have three, and only three options : 1. Add time – delay the project to give you more time to add the functionality 2. Add cost – recruit, hire or acquire more people to do the extra work 3. Cut quality – trade off some non-essential requirements for the new requirements If the art of management lies in making decisions, then the art of project management lies in making decisions quickly! When faced with scope creep you cannot ignore it. You need to tackle it in one of the ways described above (more later) and the sooner the better. Delaying raises the risk of your project failing. A poor project manager will see the scope triangle as a strait-jacket by which their project is irrevocably constrained. A better project manager will make better use of one or more of the axes and will shift the emphasis in the project to one of the other axes. The best project managers will juggle all three like hot potatoes and will make decisions every day which effectively trade-off time vs quality vs resources. A Project Management Primer (©Nick Jenkins 2006) 6 - 43 Time QualityCost Heat oil in frying pan Fry bacon and sausages Scramble Eggs Serve Wash plates Make toast Start breakfast The Critical Path Another important concept in planning projects is that of the critical path. If a project consists of a set of tasks which need to be completed, the critical path represents the minimum such set, the critical set. This might seem to be a contradiction since you might think completion of all tasks is necessary to complete a project; after all, if they weren’t necessary they wouldn’t be part of your project, would they? The critical path represents not the ideal set of tasks to be complete for your project, but the minimum set. It is this path that you must traverse in order to reach completion of your project on time. Other tasks while important to overall completion do not impact upon the final delivery for the project. They can therefore be rescheduled if time is tight or circumstances change. Tasks on your critical path however will affect the delivery time of the project and therefore should only be modified in extremis. In the following example the critical path is represented in bold. In order to complete my project of cooking breakfast I have to go through the steps of frying bacon and sausages and scrambling eggs. The tasks “make toast” and “wash plates”, while important, are not time-dependent or as critical as the other three tasks. I can move either of those tasks but if I try to move anything on the critical path its going to delay the project. Ideally I’d like to have toast with my breakfast but a) it’s not essential and b) it doesn’t matter where in the process it happens. If I make toast before or after scrambling my bacon, it makes little difference to the overall result. On the other hand I can hardly fry my bacon before the oil is hot, nor can I scramble my eggs before frying my bacon (they’d turn to glue). The critical path represents the critical sequence of events which must occur if I want to successfully complete my project. Normally major 'milestones' will be represented on the critical path and they will often occur when different threads of the project come together. For example in the diagram to the right my only milestone is when I serve the completed breakfast. At this point I will have finished my preparations and completed everything on both tracks. This is represented by a diamond in the diagram above. If I suddenly discovered I was late for work, I could cheerfully discard the optional “toast” component of my project, take the critical path instead and still achieve my original milestone of delivering breakfast (and maybe even make it to work on time!). A Project Management Primer (©Nick Jenkins 2006) 7 - 43 The Mythical Man Month In 1975 during the pioneering days of software development a man named Frederick Brooks penned a number of books and articles on the subject. His most famous is “No Silver Bullet”, in which Brooks pointed out that software development could expect no thunderbolt solution to its various problems of quality, cost and complexity other than to adopt rigorous methodology. Only slightly less famous than “No Silver Bullet” is another Brook’s paper, “The Mythical Man Month”. The papers are no less valid today than they were when written, but they receive a lot less attention. In “The Mythical Man Month” Brooks argues that adding people to a project doesn’t speed it up. While it is true that more resources can speed up the delivery of a software product, the increase in speed is not directly proportional to the amount of resource added. To put it another way, simply adding people to your project will not ensure earlier delivery. The main reason for this is the increased complexity of communications which results from adding more people. As each person is added to the project team the complexity of communications goes up exponentially. For each project there is a break-even limit where adding more people will in fact slow down the project. People 2 3 4 6 6 (n) Interfaces 1 3 6 10 15 n 2 –n 2 The diagram above demonstrates the principle graphically. Note that you need not consider each of the ‘nodes’ in the graph to be an individual person – they could be a group of people or an organisation within the project that has an 'interface'. The more interfaces you add the more complexity you add to communication and the more overhead you add to the project. If you don’t believe the math, look at it logically. Every additional person brought into a project will need to be trained and briefed on the current status and assigned tasks. As more and more people are added, more of the original team must be devoted to managing the overall structure. This is a truism of all