Show all posts
11 years ago

Why MS Project Sucks for Software Development? Part I

Updated: Maybe it is better to rename the post to "MS Project Sucks for Iterative Development" to stress that I don't hate MS Project, but I think it is not the right tool for agile development.

Part I
Part II

- How is the project going?
- Fine.

[translated]
We don't know what we are doing at the moment and are a little confused because our key clients changed the requirements yesterday. But, don't panic. Last time we got a requirements change we managed to drop off some other requirements so we seemed to be back on track. […] To summarize, no one has gone crazy yet and we are pretty confident that we'll all survive ... so go away.

Thomsett

Part I. So What's Wrong With MS Project?

Microsoft Project is a leading software on project management market. And almost all PM's over the world use MS Project to create plans and track progress. I used MS Project with various successes during three years, but I quit. It is just sucks. Maybe you think I "don't get it", but that's not true. I know how to level resources, create resource pool, analyze Critical Path and track progress over baseline. I even know about Earned Value technique. To be honest, MS Project is quite easy to use and very powerful, but it isn't designed for software development. More precise, almost all business assumptions that lie under MS Project do not work for software development.

Problems

What reasons did you hear against MS Project? Here are some of them:

  • "Things change very often and I spent too much time on re-planning everything. I am feeling like wasting my time"
  • "I use MS Project, but my team doesn't. So no one but me see the plan. They don't "feel" project schedule".
  • "Did you see Gantt chart for large or medium project? With more than 500 tasks and with tasks as "Bug fixing" - 34d? They are so damned complex!"
  • "Oh, it seems I never learn all that features. MS Project is a huge thing, I think I should read really heavy book to get it"
  • "I won't update real progress manually! It is a crap!".

All complains could be divided on three problematic areas.

  • Desktop application
  • Complexity
  • Waterfall as a natural methodology

MS Project based on Waterfall

Waterfall maybe the main disease in MS Project. MS Project fully focused on Waterfall model in all parts. It teaches newbie project managers how to create complete plans up front. It does not mention other approaches anywhere in tutorial or help. Books about MS Project do not mention anything but Waterfall. In fact they did not mention "Waterfall" term as well, but all the details direct to it. As a result, almost all software project mangers start from Waterfall. In general, it is the same as trying to win a motograndprix on a bicycle.

Reason 1: Wrong process. Waterfall is a bad process for most software projects. MS Projects based on Waterfall approach, so it is bad for software projects as well.

MS Project is Desktop Application

Waterfall is not the only reason against MS Project. This tool makes plans almost invisible for team. You likely will not print out the plan on large sheet of paper and put it on the wall. In most cases team doesn't see the horizon, but only some assigned tasks. But even if you will print the plan, things won't change, since nobody will understand that big and complex Gantt chart. Plan invisibility impedances people involvement into project.

And you should do your best to integrate MS Project with any kind of time tracking software. Otherwise you will get stuck on actual effort measurement

Reason 2: Wrong platform. It is very hard to track real progress in MS Project on a daily basis. Only PM can work with project plan.

MS Project is not Integrated

Well, this is not an obvious concern. How many tools you as PM have to deal with to get all important information about project state? Project planning tool for sure (MS Project). What's next? Bug tracking tool to get some metrics about project quality (Bugzilla). Test Case management tool (usually Excel) to know how many tests already passed and what the real problematic areas are. Automated risk management tool is a blue dream for most of us. Often we use MS Word or Excel for risk management, which is not very convenient. Requirements management tool (RequisitePro).

Now it is easier to see the real problem. We have a bunch of separate tools. We spend much time to get real project state. We want something integrated and easy to use. I personally want to get all required stats with several mouse clicks. I am sure such tools will appear in near future. And I don't see how MS Project may stands on this way.

project management practices and tools

Related Links:
MS Project,
Bugzilla,
Test Run,
RequisitePro,
CaliberRM,
RiskyProject

Reason 3: Isolated tool. It is not integrated with all other software product management tools.

  • Anonymous

    Thank you for your feedback! I just wanted to let you know that we are listening. I’m a former software development manager, so I’ve lived the scenarios you’ve presented.

    Based on what I know about our upcoming release, I think you are going to like the changes for Project 12. Stay tuned for updates in 2006.

    Treb Gatte
    Program Manager
    Microsoft Office Project
    http://spaces.msn.com/members/

  • hammett

    I do agree and always hated MS Project. If you exposed your services throgh web services (or REST) and create a Win32 application, which is much more responsive and interactive than a web app, you’d have a killer application.

  • jesus666

    Holly cow!

    Big brother is watching you 😉

  • Brian Kennemer

    While I agree that the help and documentation should be broadened to talk about other methodologies, including agile methods, I have to most strongly disagree that Project is in some way “based on waterfall”. It simply is not true. While waterfall has been the most popular and common method it is by no means the only method one can use.

    Saying that most PMs use waterfall because it is the only one covered in the Help is a bit like saying one can only drive ones car in a straight line because the manual did not tell them how to turn the steering wheel. 🙂

    As far as being standalone I would point you to Project Server or for that matter the host of other server based tools that integrate MS Project files with server based team interaction features.

    Also look at what David Anderson (of http://www.agilemanagement.net) is doing with Visual Studio Team tools and with the MSF framework if you want to see how a tool like Project can be integrated into a suite of development tools.

    Brian Kennemer
    Senior EPM Consultant
    Microsoft Consulting Services
    Author of Projectified (http://www.projectified.com)

  • Glen B Alleman

    It appears this is not only a misinformed position – MSFT Project is based on Waterfall – but a thinly placed commerical ad for the Blogs product.

    The Waterfall paradigm was discredited in the late 70’s at TRW through the Walker Royce paper. Maybe a bit of research would reveal that MSFT Project and all the other PM tool are based on networks of nodes with work on the node and constraints on the arcs.

    This of course does not restrict the tool from describing a Waterfall style schedule. But it most certaintly does not impose Waterfall or for that matter any topology that can be repreented as a connected graph.

  • Michael Dubakov

    2 Brian

    Yes, you can do waterfall with any tool, including TargetProcess, but it will be really hard. There is no connections between tasks in TP, there is no Gantt chart, there is no leveling. You will fail if you try to create whole plan upfront.

    The same thing with MS Project. It is not easy to manage iterations in MS Project.
    There is no product/release backlog. There is no integrated time tracking to measure actual work, there is no “true time remaining”, There is no iteration velocity concept and so on.

    So you are right, you can do any process in both tools, but don’t forget about additional pain in both cases.

    Maybe my wording is not perfect, but you’ve got the idea.

    I will address more details in the next post.

  • Geog

    Project/Project Server combined with Visual Studio Team System provides a comprehensive set of integrated tools for all roles in a software development project. Users who don’t [need to] care about project plans (ie most team members) can work in their respective tools while keeping the project manager in the loop. You should have a look at the white paper and the solution code posted on gotdotnet (http://www.gotdotnet.com/works…, this solution underscores the fact that that MSProject can be used in a variety of software development methodologies – MSF agile/Scrum is the default methodology supported by this app.

  • Michael Dubakov

    Yes, I agree that *IT IS* possible to use MSP Server, but in many cases this is an overhead. MSPS is not an easy and light beast. There are better ways for agile project and I will talk about them in next posts.

  • Harry

    Come on!

    You’ve always known a good waterfall-based process is the right way to develop software projects. Come to the Waterfall 2006 conference and see how a sequential development process can benefit your next project

    see: http://www.waterfall2006.com !

  • Michael Dubakov

    waterfall2006.com rocks! 🙂

  • atyutyunnik

    We have integrated MS Project and Subversion with its optinal locking for our distributed environment. Everyone tracks their own progress and quite easily avoids conflicts to build the “whole picture” out of several projects using a resource pool. In this case, we do not have to use any Web solutions. So, the “desktop” platform is really much nicer when its Web analogs.

  • Anonymous

    Shameless plug time sorry

    I agree that MSProject is a poor tool as the plan it creates is a fantasy about 1 week after its made and its to much work to change everything just because 1 task overruns or a person goes sick

    We are developing xProcess a project planning tool and process improvement which uses svn for licensed users to interact dynamically.

    Please have a look as its free to download for personal use

    http://www.ivis.com

  • Anonymous

    I do agree. Our company for a long time use Track for development activities and very happy with it.

    thank you
    Anna [ http://helion-prime.com ]

  • Offshore

    thanks for great post

  • http://www.binarysemantics.com

    thank you for nice post

  • Josh

    I’m affraid MS Project guys are not listerning enough. There’s a huge gap between MS Project and the way real life project management is done. Here’s a link to a very interesting blog post about this fact.

  • Alex

    Hi,

    Listen I’ve been passing through your blog for quite a while now, and since your are in software development, not sure if maybe you offer it as a service or not, anyways the reason I am posting on your blog is that I have a company that specializes in finding leads-customers for companies and we just have lots of leads looking for software developers, and having quite difficulty finding them providers, so if you are intersted please check my website, HotHelpsYouSell.com .

    We really do have quite a lot of leads , and we have people specialized in finding customers/leads in your professional area, we only charge $10 per customer we deliver, so might be worth just to check it out.

    again the website is http://www.hothelpsyousell.com

    Anyways, thanks for your time, and really nice blog
    Cheers!

  • lamelyan

    I think Basecamp from 37signals, is a better suited project management tool for agile development.

  • Ravindra

    Yeah, but with TFS and Project server coming into picture and with the release of TFS-Project Server Connector, managing projects and work items has become much better.

    Offshore Software Development

  • jhon

    I think your are right that the help and documentation should be broadened to talk about other methodologies, including agile methods, I have to most strongly disagree that Project is in some way “based on waterfall”. It simply is not true. While waterfall has been the most popular and common method it is by no means the only method one can use.

    http://www.cyberdesignz.com/

  • SBL Software

    May be for the increase of capability of the MS Applications

    Regards
    SBL Software

  • Go-Gulf

    Project sucks to manage and estimate projects big time. It doesn’t help that the tool overall sucks, with crappy features such as single-level undo, or the “corrupt file occasionally” feature.

    I am old enough to have been tought the waterfall proces model yet young enough to remember how I doubted its use (well at that age, all you really do care about is coding).

    I have not used major project management tools, clearly any such would have to contain requirement engineering and change control as well in a modern day agile process. Does any such tool exist and what is the best-practice in the business?

    I have just started on McConnell’s latest gem of a book but I am fairly certain that he does not provide any tool references.

  • Anonymous

    I was once a project developer. Even people within MS don’t like using MS-project for tracking projects. It just doesn’t fit the software development model

  • Software Development Company

    Very realistic thoughts.. nice views…

  • The Jaywalker

    MS Project is a “scheduling tool” and not a “project management” tool; that’s why you find “lack of integration abilities.”

  • Devin Hedge

    The Jaywalker :
    MS Project is a “scheduling tool” and not a “project management” tool; that’s why you find “lack of integration abilities.”

    You have correctly stated what should have been obvious but apparently is not. Project Management is scheduling people to achieve goals, manage the risks and issues affecting the endeavor to achieve those goals, and managing the expectations of the sponsor of the endeavor to achieve the sponsor’s goals.

    MS Project doesn’t do this, nor can it assist as a tool to track doing this without extensive customization and integration with other tools.
    MS Project is a TASK scheduling tool. It allows the user to assigning People and Resources to those Tasks, and (if set up) get some idea of the cost of the Endeavor. So long as the user understands how to do so, it can be used for Agile/Scrum; however, it does so poorly compared to other tools. It does so poorly because:
    1) it is a desktop data island,
    2) requires manual entry to update the completeness of tasks,
    3) assumes a baselined, locked-in set of requirements in order to do cost estimates and EVM, and
    4) requires rebaselining at the beginning of every Sprint/Iteration.
    Most of these hurdles can be overcome by implementing the ENTIRE Microsoft development and enterprise project management tool suite with the ADDITIONAL development in order to actually make it work correctly. The last average cost of such an implementation I got from three different Microsoft Certified Partners was ~$250,000 not including the FIVE servers that the software will sit on. This assumes the use of Microsoft Visual Studio Team System 2008 Team Foundation Server and Microsoft Office Project Server 2007. It also assumes that: I use Microsoft Windows Servers (I don’t), and that I’m developing applications for the Microsoft platform using the Visual Studio SDK (I’m not).
    MS Project may be a fit for some shops. I simply refuse to use it as I have better things to do with my time like enjoy my wife and kids, getting stuff done, and removing impediments preventing the team from getting stuff done.

  • Devin Hedge

    @Devin Hedge
    Wow. My grammar was horrible.

  • Michael Dubakov

    @Devin
    Thanks for the very insightful comment! There are many good points in it I agree with.

  • projectsoftware

    Well, this is not an obvious concern. How many tools you as PM have to deal with to get all important information about project state? Project planning tool for sure (MS Project). What’s next? Bug tracking tool to get some metrics about project quality (Bugzilla). Test Case management tool (usually Excel) to know how many tests already passed and what the real problematic areas are.

  • mculmer

    Hi

    What tool do you use instead?

    Thanks

  • Bob

    Nice moan but no recommendation to improve so join the queue of moaners and give the thinkers room to create.

  • Mike Bosch

    I do agree. We must have an alternative solution for this.

  • Suraj

    This is very wonderful blog for any type of working.
    MS-Project is the basic software of Primavera and this is the best step for career growth. The best institute what I got learnt MS-Project from EBEES. And I am satisfied to this institute and its faculty.

    VIsit:- ebeescorp.com

  • Tessaalfred

    Yes, exactly. That&#39s why I&#39m using an alternative of ms project PlanningForce Express Planner ( http://www.planningforce-expre… ) which is free too.

  • Anonymous

    So, would you please introduce an alternative tool for MSP? most comments are too old. Is there any good solution till now?

  • Allen Wilcutt

    Michael,

    I’ve used MSP on huge multi-kazillion dollar projects and on small 10s-of-thousand dollar projects,

    ALL SOFTWARE.

    In fact, the last project was developing a BSP under LynxOS for a dual processor flight controller for a … thing that goes boom in the night [I’m keeping the suits from knocking on my door at 3am].

    Some notes:

    1. MSP is not for engineers, it’s for PM and management people. We don’t complain about it [much] but engineers hate it.  You should hate it, it is counterintuitive to your experience.
    2. “There’s an App for that!”  Well, same applies for PM… MSP isn’t for every project. Chances are, there’s a PM tool for your kind of stew.
    3. MS Project’s biggest short coming [all Sw PMs complain about it] is no linkage to issue tracking.  No “real” link to Bugzilla, GIT, SVN, heck even MS’s own version control system.  No linkage to DOORS or other requirement tools, either.  Clearly, MS P is not suited for the kazillion-dollar government project [which will fail, as they do 19 times out of 20.. including my BSP project… Thank you Obama for laying me off… but that’s another story!]
    4. MS is a PM tool dispite what others here say.  You track project contstraints— time, cost, quality and scope. That’s a PM tool.  You can use it as a scheduling tool, “John makes bomb, Bob presses red button” if you want but that’s just a small part of it.

    If MS P is changed in anyway, integration with other PM tools would be the way to go.  I ended up on this blog in search of a Bugzilla-to-MSP tool (and Projzilla crashed on the first run so don’t bother suggesting that thing).  But there are other MSP-like tools (Rhapsody) but they are far more expensive (Rhapsody=zillions of dollars) and I have to stay on the cheap.

    Good luck to you.
    Bryan, DC.S, PMP

  • Eladhh2003

    Hi Bryan,
    I am trying to integrate MSP – SAP – hours report tool throw a “fronted report screen” that will update the project tasks & SAP system and will be updated by MSP too. (two-way)

Try for free

Account url: *.tpondemand.com
How many people would be using Targetprocess?
  • Myself
  • 2–20
  • 21–100
  • 101–1000
  • 1000+
By clicking Continue you agree to our Terms of service and Privacy policy