Slashdot Mirror


Ask Slashdot: How Do You Deal With Priorities Inflation In IT Projects?

NetDanzr writes "I work for an IT company that has a steady stream of projects, new features to our existing products and technical support issues. As it is customary, though, our development resources are not sufficient to cover the amount of projects. As a result, our delivery dates are slipping, and as a result the average priority of projects is rising. Where the goal was to have only 10% of projects rated high, within a year nearly 50% of projects are rated as such. Our solution is to completely wipe out the project list once per year and start a new, properly prioritized list. How does your company deal with this inflation of priorities?"

33 of 304 comments (clear)

  1. We dont deal with it by Anonymous Coward · · Score: 4, Funny

    we just all stress out and have 10000 tonnes of pressure 24/7/365

    1. Re:We dont deal with it by Anonymous Coward · · Score: 5, Funny

      We typically fire the entire IT staff every couple of years and try to hire replacements at 70% salary under threat of outsourcing.

    2. Re:We dont deal with it by houstonbofh · · Score: 5, Insightful

      we just all stress out and have 10000 tonnes of pressure 24/7/365

      Typically, this is the norm. Eventually, key people get better jobs, and it all comes tumbling down. Then they outsource it all. Then it gets expensive, and does not fit well. Then they hire a new team. Lather, rinse, repeat...

    3. Re:We dont deal with it by Anonymous Coward · · Score: 5, Funny

      Yes, I'm not familiar with the terminology in TFA, but I suspect it's the same situation where we're up against the wall with multiple systems down and a Sales laptop infected with a Croatian automailer and the VP comes and says:
      "Stop. Just stop. I know you think you know where your priorities lie, but you're having difficulty seeing the big picture and you have a bad attitude from your inability to prioritize. So all of you come over here - I can't get this funny cat video to play on my iPad and it's crucial for this Sales presentation."

  2. By not having the situation in the first place by Anonymous Coward · · Score: 4, Insightful

    Yes, it's that simple. Practice agile development and keep a prioritized backlog of work and this never happens. "50% of projects are rated [high]" basically means you have no prioritization.

    1. Re:By not having the situation in the first place by sjames · · Score: 4, Insightful

      Big 'A' agile NEVER works, full stop. Small 'a' agile IS an iterative approach with the size of the iterations scaled to the project's needs. Pairing will happen as deemed necessary by the actual developers. Note that for small projects, the number of iterations may be 1 and the size 100%.

      Like most management fads, big 'A' agile is a crude attempt to proceduralize the natural result of a group of well motivated and skilled developers with a management that knows when and how to stay out of the way such that a pack of monkeys saddled with a micro-managing idiot can supposedly produce the same result. It never works.

      If you do have a pack of monkeys and/or a micro-managing idiot, they'll find a way to mess up anyway and if you don't, then slavish dedication to 'the Method' will make them act like said monkeys and idiots. At that point, success if proportional to the team's ability to game the system in order to shoehorn 'the right thing' into the provided framework. They would have done better dedicating that effort to the actual project.

      Meanwhile, the true Scotsmen^wbelievers will be happy to tell you why the 99 out of 100 projects that failed miserably weren't really following the one true methodology.

    2. Re:By not having the situation in the first place by unrtst · · Score: 4, Insightful

      I agree that'd basically fix it, but "agile" itself isn't necessary.

      Just move to a stack instead of (or in addition to) priority numbers. IMO, priority numbers are nearly worthless. Put someone in charge of the stack order, and you're done.

      This will open up one new problem... you'll have to have the discussion/argument about how you operate on a stack about once every 3 months, and defend that position absolutely. You may allow priorities to be tagged on stuff for PM/reporting purposes, but make them absolutely aware that development completely ignores priority (and, if possible, remove it from display to developers).

      It's a pretty simple argument: You can not have two projects that are both the top most must be done now items. One MUST be more important than the other. They (management) can yell and fuss and scream all they want but, until they commit to changing the stack order, it's just hot air and can be completely ignored.

      "This other thing MUST be a TOP TOP TOP priority NOW!" - ok sir, then just drag it up to the top and make it so.

      "But this other thing must ALSO be TOP TOP priority!!!" - sir, do you hear what you just said? Here, just make these a simple list in the order you want them done.

      If people are doing double duty as production support and development, which will always happen to some degree, make sure to place one above the other (preferably production support - if current system isn't running and supporting your custom base, new features don't matter).

    3. Re:By not having the situation in the first place by arth1 · · Score: 5, Insightful

      Not all projects are incremental in nature. You can't jump a chasm in five small steps.

      There are projects where agile is a godsend, and there are projects where it will only do harm. Most are somewhere in the middle.

    4. Re:By not having the situation in the first place by arth1 · · Score: 4, Funny

      The true problem with agitating against Agile is that you may succeed, in which case it will be replaced with a new, shinier, and even more frustrating silver bullet. Better the devil you know than the devil you don't know.
      Play the game, use what's useful, assist others, produce your best, close your eyes and think of England.

  3. Get a project manager. by khasim · · Score: 5, Insightful

    Or get a manager that can get the priorities / resources changed.

    Something isn't working at your company. If upper management is setting their expectations too high (or not providing the resources to meet those expectations) then someone needs to explain that to them.

    1. Re:Get a project manager. by rubycodez · · Score: 4, Insightful

      and if they don't get it, the company will fail or be acquired. the executives will go on to get high paying jobs elsewhere, their failures spun into tremendous success stories. haha, seen that time and again.

    2. Re:Get a project manager. by blue_teeth · · Score: 4, Informative

      Companies underbid projects with aggressive timelines and less resources.  Theme these days is, get projects at any cost, we will figure it out once the project starts moving.

      Who/what is responsible for this?

      1.  Sales teams who put pressure on project architects for low costing.
      2.  Solution Architects who think each of their project member is Linus Torvalds.
      3.  Existence of bench resources.  Idea is to underbid and deploy bench resources (unbilled) as anyway they are idle.
      4.  Unbilled bench resources suddenly getting deployed in new projects.

  4. Don't let users score their own tasks by LostCluster · · Score: 5, Insightful

    Every user wants their project first and everybody else to wait. You can't let users declare their own priority unless there's a strictly followed grading system or rubric based on the priorities of the business. (Ex. Customer facing systems are more important than internal ones.) If you've got 5x of the "high" priority tasks either you;re making too many mistakes or priority inflation needs to be addressed with the users.

    1. Re:Don't let users score their own tasks by dedmorris · · Score: 4, Funny

      That won't work - most of the feature requests would be about GreatBunzinni.

    2. Re:Don't let users score their own tasks by RyoShin · · Score: 4, Interesting

      This reminds me of an internal application I (re)developed for a very large shipping company. The company used conveyer belts to move most of their packages between sections of a central shipping hub. At the end of the shift the floor manager for each section would walk along to find issues with the belts in their sections, which could then be submitted with a rating of 1 (unimportant) to 5 (critical). Without fail, the floor manager would rate every problem 4 or 5. This caused issues when running reports for higher management because they would see a bunch of 4s and 5s that had been in the system for weeks. Despite instructions to stop doing this, it continued.

      I took the (spaghetti code) application and rewrote it, including a large number of enhancements. One was that whenever one of the mechanics went in to check on a problem, they could assign it their own level of importance, which was usually far closer to the actual severity of the issue. Then they'd take care of what they considered 5s, then 4s, etc. In addition, the floor managers got to see what the mechanics rated an issue. While I'm sure they didn't like their problems being downgraded, it gave better feedback, and if they felt an issue was truly a 4/5 then they could take it up with someone higher; maybe they didn't explain the problem correctly. Reports also showed both ratings so there was a better understanding all around.

      In short, let the users dictate their own priority, but with the understanding that it's not the ultimate priority. IT can then assign their own, and if the user feels wronged they can go higher about it. (Obnoxious users will do this anyway, but having a system that compares the two gives one more wall for them to climb.)

  5. Clearly you need to invent a bell curve. by Samantha+Wright · · Score: 5, Interesting

    Replace your current priority-tracking system with a floating point number. Add buttons to the interface that increase or decrease its value by small increments. Next to that, display a z-score, ideally presented offset so that the base priority is higher than zero (to reduce the number of negative numbers shown—or perhaps don't do this if you really want to discourage people from working on low-priority items.)

    Statistics: fun for the whole family.

    --
    Bio questions? Ask me to start a Q&A journal. Computer analogies available for most topics!
  6. Create more priorities by Chemisor · · Score: 5, Funny

    Obviously, you need more priorities. Nobody wants to mark his pet project as "low" priority, so you need to be creative. Ask marketing for help, and you'll end up with your new priorities: "High", "Very High", "Red", "Extreme", "Platinum", "Overclocked", "Done Yesterday", "Drop Everything", and "The Boss Is Watching".

  7. % of list complete = % of bonus recieved by Anonymous Coward · · Score: 5, Interesting

    Our company makes the corporate bonus program dependent on the project list. So everyone in the company has a vested interest in the projects that were defined near the beginning of the year. That's not to say that individual projects don't have the inevitable and constant feature creep, but release dates NEVER slip, we have a solid group of PM's I like to consider as enforcers, and a corporate structure where if something turns from green to yellow the person to blame immediately gets his schedule cleared until his piece is caught up. It seems to work, but it depends on everyone being pretty good at estimating work tasks, so there's a lot of double buffering to allow time for maintenance work... even then we stay really busy.

  8. No one has a "low priority" project by omgwtfroflbbqwasd · · Score: 5, Insightful

    The answer lies in quantifying the project impact, not in calling it low/medium/high (which is a subjective, relative term). Also, as business grows (or shrinks), the measurement of impact should be weighted as well. For example, a project that generates $1M/yr in revenue is a big deal when you're making $2M/yr, but not as much when you're making $20M/yr.

    In the end, limited resources need to be focused on the area where it makes the most impact rather than trying to solve everyone's problems. That is exactly what IT management's job is.

    The other answer is that no group/team/company does this really well, it comes down to individual manager's or IC's style and how you dismiss the trivial requests.

  9. Screw the rankings ! by ACK!! · · Score: 5, Interesting

    Someone wants a good project manager ? Good luck with that man. Either you have too few PMs and too many projects or more PMs than actual engineers. No one I mean absolutely no one at all seems to have a clue about finding a balance in terms of staffing project managers inside of a technology department. Now with that bit of fussing out of the way. What you do is you look at the list sit with your immediate manager. You both logically discuss the insanity of a full sheet of top priority 1 emergency projects and figure out which ones really need to get done and when. Remember who signs off on your yearly review and focus your priorities from what your immediate and his manager above really need for you to get done. You cannot let the bullshit of 50% of your projects being ranked as a high run you into the ground. Focus on what NEEDS to be done and then after that what your boss WANTS to get done and then on what the boss's boss would LIKE to have done.

    --
    ACK /ak/ interj. 2. [from the comic strip "Bloom County"] An exclamation of surprised disgust, esp. i
  10. Re:Get a project manager by __aaltlg1547 · · Score: 5, Interesting

    It sounds like they need more than one project manager and a number of additional worker-bees to get the jobs done.

    Start by showing the problem to senior management and tell them flat-out that there is no way to get all the projects done on schedule unless they hire enough people that each project has enough people on it to get the job done. It's always incumbent on workers at each level to give their best (i.e. worst-case) estimates of how much work is required to execute a project and how much time it requires. (Some work can't be accelerated past a certain point by adding more people.)

    There are three responses that might generate:
    * "you'll just have to work harder" This response is not unusual but tells you you're going to fail anyway and is a signal to get out of the organization before it crashes and burns.
    * they'll cancel some projects and focus their people on the remaining ones
    * they'll hire some more warm bodies to get more work done.

    Also, you need a way to shield the people working on each project from interruptions generated from outside the project and the project managers need to insulate their people from scope creep.

  11. 10% by BasilBrush · · Score: 5, Insightful

    From the sound of it, your problem is that anyone is allowed to mark an issue as high without restriction.

    You say the goal is to have no more than 10% marked as high. So it seems the answer is simple. When you have 10% marked as high, you don't allow another item to be marked as high unless and until something else is removed from high.

    That could be manually managed by a project manager, or it could be a business rule in your issue tracking database.

  12. Learn to say no by cccc828 · · Score: 4, Insightful

    I have no idea if you work in development or system administration, but generally improving the situation depends on two things:
    1) Do what you agree to do on time and within budget
    2) Say no to anything else

    There are lots of books on the subject of time management, project management or the software development processes and they all boil down to these two rules. If you work in a company that does not allow you to say no, read one of those books and then explain to management why working with $method would greatly improve everything (including the coffee). As soon as you get them to agree to $method you can use $method to say no (i.e. $feature is not in our sprint, $task is on the KanBan board and blocked by $actually_important_task, etc).

    If you have no support from management, consider updating you resume.
    Here are three books that I found worth reading:
    Kanban: Successful Evolutionary Change for Your Technology Busines by David J. Anderson
    Time Management for System Administrators by Thomas A. Limoncelli
    Agile Software Development with Scrum by Ken Schwaber and Mike Beedle (Author)

    The most interesting part are the case studies and how the authors manage to say "no" in a management-compatible way.

  13. Use the Scotty principal. by Kenja · · Score: 5, Funny

    If you think something will take an hour, say it will take three. Then when it takes you two you're a genius for getting it done early. Oh... and shout "I've given 'er all she's got cap'in" every now and then.

    --

    "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
  14. Re:Hold it!!! by berashith · · Score: 5, Interesting

    I have done this before too. I had fun with it. I told the PMs that I would be working on the project of whichever PM was in the room looking over my shoulder. They literally had to stake out their turf if they wanted my time. This did two things... 1 if the issue was really important, they dropped their tasks also. 2) If another PM thought I should be on their tasks, they had to talk to whoever was in the room watching me. If no one was there, then I changed gears to the new request, and let my manager know that the constant shifting was slowing me down and preventing any real momentum.

    Once the PMs werent able to blame me, management sorted things out and stopped giving me multiple top priorities, and most importantly, the PMs all realized that they had been sold a lie.

  15. Re:Get a project manager by __aaltlg1547 · · Score: 4, Insightful

    "Also, you need a way to shield the people working on each project from interruptions generated from outside the project and the project managers need to insulate their people from scope creep"

    BINGO!
    Don't know how many times I have to stop the project I am on because the boss's kid can't get his mac to work on the home wireless.
    The IT guys wear many hats unfortunately.
    A good idea is to get most projects are done after hours, work output is doubled seemingly because you are not pulled from the project every 15 minutes. Would be nice to be on the after hours team.

    The problem is in no way unique to IT departments. Every department suffers from the same thing. I manage hardware engineers and we face the same issues. Everybody thinks that because a problem is his biggest priority it should be your biggest priority.

    But I recognize that there's a particular problem in IT departments. They have day-to-day issues that have to be dealt with on a timely basis as well as long-term issues that absolutely must be dealt with but on a longer schedule. You have to segment the problem somehow.

    Some companies have a group that only handles system-down and user complaints and other people handle the longer-term projects. Some companies have babysitters for upper management.

  16. Re:Get a project manager by dubbreak · · Score: 4, Insightful

    To me it smells of poor management period. The fact that they were able to get into a position where projects are slipping and it is then the worker's job to convince management that something needs to be done.

    I've been in the same situation. More workers were needed so that new features, rewriting of core features for stability as well as general bug fixes could be done simultaneously. That was on the company's key product that generated >50% of the entire company's revenue ($10M company). Aside from the primary product slipping the CEO was heavily invested in his pet project for a new service, siphoning off existing resources and claiming all new hires. The new service was to compliment the existing product (but could be resold to competitors as well).

    After spending too much time trying to convince management of the obvious and watching all my coworkers become demotivated (hard to stay motivated when you spend all your time barely succeeding at treading water in an industry you should be swimming in) I made the obvious but difficult decision. I left. I make more money and work for a company that is focused on a single product. If you can't do a bunch of things well, then focus on one you can do well.

    I've seen it a bunch of times. Egos get in the way and management is focused on doing things that make them feel like they have ownership or are in control or are doing something 'cool' to brag to their cohorts about. The difficult thing is to drop everything but what you are good at. A friend saved a failing middleware company by doing exactly that. They were in the hole working on a bunch of revenue sucking 'products' that could have been the next greatest piece of middle ware (can you say bubble mentality? Great middleware? YA). The saving grace is they had a successful support and service side of the business. He dropped everything but the service and support then focused on having that be as profitable as possible. A decade later they are still alive and the company has the best employee remuneration of their field for the market they are involved in. The company would have gone under in months without more investment money had they continued to try and make a product. Looking back it is now easy to see that their big software products plans would have never panned out.

    --
    "If you are going through hell, keep going." - Winston Churchill
  17. Re:Get a project manager by Bengie · · Score: 4, Insightful

    At my job, when us salaried programmers start averaging more than 40hr/week, they hire a new person. Once that person gets up to speed, we're working under 40hr/week, so they expand our projects.

    Happy workers are good workers.

  18. Re:Get a project manager by maple_shaft · · Score: 4, Informative

    Some companies have a group that only handles system-down and user complaints and other people handle the longer-term projects. Some companies have babysitters for upper management.

    This.

    You will be amazed how much more can get done on projects when you have dedicated Firefighers and Babysitters. Another helpful suggestion is to make sure that the Babysitters have teeth. Upper management is not going to care what IT processes are in place to keep the whole infrastructure from devolving into anarchy. They want what they want and they want it fast.

    Make sure your babysitters are the best of the best, and make sure that they can affect immediate change in IT without having to go through the proper channels. If they need to open a port on the firewall then they should have the passwords and access to do so. If they need to have an account created make sure that they can log into the LDAP server and create one, etc...

    So many IT people get angry about this claiming that they shouldn't get special treatment. Bullshit. They should get special treatment because they are the Upper Management, they are pretty damn special. You don't want them waiting and you don't want their IT requests to slow down the project guys at all.

  19. Ask for ROI Estimates by Bob9113 · · Score: 4, Insightful

    Ask for ROI estimates instead of (or as well as) priority estimates. This won't work in every environment, but where it works, it can have a lot of upside.

    I put it in play at a company where the engineers worked directly with marketing. One of the marketing guys was a pure sociopath -- lied about his priorities every single time, regardless of the upside for the company, just to keep his numbers up. After one particularly expensive project that generated about enough revenue to cover the electricity for the coffeemaker, I asked him for an estimate of ROI on the next project.

    As it happens, he was actually a pretty sharp analyst, and he gave me some really accurate figures. They were low, and he acknowledged that his new project wasn't really high priority compared to the other things on the plate. He didn't even seem upset about it -- once he had run the numbers, he couldn't deny reality. It was the numbers' fault, not mine.

    As noted above, this obviously won't work in every situation. When it does, however, it is quite effective. It also has some significant upside for marketing the IT department internally. If you keep track of the estimated ROI figures, and follow up for actual figures, you can make a clear case that IT is a profit center, not a cost center (as it is often perceived).

  20. Re:Get a project manager by YrWrstNtmr · · Score: 4, Insightful

    Make sure your babysitters are the best of the best, and make sure that they can affect immediate change in IT without having to go through the proper channels. If they need to open a port on the firewall then they should have the passwords and access to do so. If they need to have an account created make sure that they can log into the LDAP server and create one, etc...

    They also need the balls to say "NO!" when appropriate. And then suggest a working alternative.
    "No, you can't install that application you downloaded from some dude in Romania. I've looked, and it is not what you think it is. But here's another way to do the thing you need to do."
    "No, we won't make that Excel file editable by the entire company. It won't work like you think it will. But here's a workaround."

  21. Re:Babysitters/firefighters by GreyyGuy · · Score: 4, Informative

    Ye flipping gods- another one.

    No. Just No.

    Sarbanes-Oxley did NOT make it illegal to change production software in public companies. What it DID do was make it a requirement that the management of a company was legally responsible for the financial reporting of the company. So even if the financial reporting software had a problem, they are still on the hook for it. All the IT auditing firms got together and agreed that meant the FINANCIAL software needed to have all the changes be approved by the proper applications owners and that there needed to be an approval process, documentation, and all the other stuff that makes auditors (and no one else) happy.

    Those same auditors have pushed that in order to avoid risk, EVERY software application should go through that same process even if it has nothing to do with finance. Risk-adverse management agreed. So now most public companies force Sarbanes-Oxley compliant processes on every bit of development, costing huge amounts of wasted time and money.

    Skipping it doesn't mean it is illegal. It means that if your company is audited and a set of software is found to be the cause then it is possible the management might get fined. To the best of my knowledge, this has NEVER happened. And I feel comfortable saying it is unlikely to ever happen.

  22. or... Cage Match! Re:We dont deal with it by Fubari · · Score: 5, Insightful

    Simple - cage match. This is a political problem, not a technology problem.
    So: Invite your stakeholders to a Priority Planning Meeting (this is the 'cage match') and tell them:
    1) Here is the list of invited stakeholders (name names).
    2) If your priorities aren't important enough to come to the meeting, they'll be rated unimportant.
    3) Come prepared to convince your peers why your projects are more important than theirs.
    4) Your choices will set the project priorities for the next month (or week, or quarter.. some multiple of your iterations).
    5) List the projects that are "on the table", along with their respective stakeholder(s) and your team's "cost" estimates.

    *shrug* Then let them hash it out.
    Agile fans would call this a kind of planning game; you'll probably make more progress telling your stakeholders it is a Priority Planning Meeting.
    The smart ones will line up political support and make deals before the meeting.
    Pro-tip: if you don't know who your stakeholders are, you have bigger problems than you are aware of. Seek professional help and with a qualified consultant to help you find out who they are.

    Other random bits of advice:
    A) Don't try to make everybody happy.
    Even if it were possible (which it isn't), that simply isn't your job.
    Your job is to allocate scarce dev resources to best serve company goals.
    B) Verify with your boss that your job is to Allocate scarce dev resources to best serve company goals before holding the meeting, and let your boss know what you're planning so they don't get blind sided by it (that makes bosses unhappy).
    C) There is a very real chance that everyone will be unhappy. Throw the unhappy people a bone and ask them to give you additional funding options: "Ok, so if your project is so important, what budget will cover it?" Then you have more options about how to get things done.
    D) Work out (in advance) how to choose the winning projects: you could hope for consensus (100% unanimous agreement) but... a more practical method might be to give everybody one vote, or N-votes based on their %ge of their operating budget. Also work out how to handle tie-breaking; perhaps recruiting an arguably neutral third party, like the "Product Visionary" or someone, so you stay out of that hot-seat.