There are some things about it that I've always hated, and they haven't really changed them. It makes a lot of assumptions. It is also difficult to put business rules in it. You have to de-link it from the consecutive task if you don't want to do a What-If analysis, and sometimes, if you forget to do that, it changes everything. It is a pain in the neck to undo it.
I would also like to see better integration with graphics. The graphics are primitive, and they need some major work. I would like to have the ability to do some small macros within the project for fuzzy logic. For example, if you're not sure how long a task takes, you can get the earliest guess.
It is very time and manpower intensive to keep it up to date. You need to constantly update it. You will find that you are spending more time working on the Microsoft Project file rather than working on your project. I don't want to devote a person to just do that. That's silly. You can link it to some more modern applications so that it is dynamic when a real-time resource schedule changes, but it is not at all dynamic. It is only as dynamic as the person using it. It would be nice if we could plug it in real time for each project, subproject, or task. If something is going on, I want to see it in real time.
Sometimes we have international clients, and they don't use the same calendar. They have a Thursday and Friday weekend, and we have a Saturday and Sunday weekend. I can change it in Microsoft Project, but I would like to be able to do it globally. There may be a way to do it, but I just haven't figured it out yet. I would like to be able to specify globally what weekend we want or what we want to call a weekend. We might have a project that works seven days a week.
Some tasks are automated outside, like manufacturing processes. Embedding external processes is almost impossible because, in a practical sense, we don't have people who can do a lot of programming here, and also the interface of Microsoft Project is not the easiest because a lot of it is proprietary. It would be nice if we can link different tasks to external sources of inputs and outputs so that we could integrate them with a master project plan and see in real time what's going on. For example, you are manufacturing a batch of a chemical, and I have to rely on if a customer is making some type of complex chemical. Their system does not interfere with ours. We have to get the outputs from their system and enter them manually into the project to see the effect. That takes time. If you're talking about hours, you going to spend three to four hours, but there is the risk of getting it wrong or making a mistake. On tight projects, every minute counts.
I would like to see some control system interfaces with Microsoft Project. A modern machine shop has a lot of computer numerical control (CNC) computers. In fact, virtually all machining is done with a CNC machine. Even 3D additive manufacturing is made with CNC. That data can go to a computer, and that computer can spit it out to a project so that you can see in real time whether you are going to finish a day ahead. If you had to finish a day ahead, you could talk to the systems' software, which can say that if I have this machine working for another hour and this one for one hour or less, I would be able to meet the schedule. It can then make those changes, but it can't do that. Everything needs to be done manually, which takes more time, and there's a risk of mistakes.
It requires smarter automation and more machine learning. There is no machine learning capability in Microsoft Project. It just doesn't exist. That's why I say it is only suitable for small-sized to medium-sized companies and small projects. Most people don't have the problems that I have. I don't have them all the time, but when I have them, they're big. When you're bidding on a project that has to get done, you find yourself spending most of the time working on Microsoft Project, whereas you should be spending these hours managing the project.
Thinking on a bigger scale, I would like better integration with Office, Visio, and Access. If you make a change in one, it should cascade to others and vice versa. It doesn't do that. It is not a dynamic program. I would like to see a dynamic program or at least the capability of being dynamic, that is, even if it is close to real time where it outputs to a module, and the module then talks to real-time things. The real-time data goes back into the module, and the module updates the project plan. Such dynamic capability would be nice. It may not be real time, but it is at least close.
I would like to be able to link directly to the data in an Excel spreadsheet so that I don't have to keep going back and forth updating it. I don't want to have to create a dynamic link library. Whenever I change the data in Excel, it should update in Visio or PowerPoint. If I'm doing a pie chart or any kind of graphic, I don't want to constantly update my graphics. I want to link them together, and I want them updated automatically. I know it is a wishful thing. They don't make major changes every time they come out with a new version. They don't fix the issue. They just add a few features.