Your team has been developing an application for many years and has been doing little refactoring on it. You've put hacks in here and there to fix things. The design of the system has grown messy and complicated You now find yourself with a huge mess that you're finding difficult to maintain. What do you do now? What you have is called a big ball of mud. There are three important things you need to do to attack it. First, you need to work to keep the system working. This may be more difficult than it would be if your system was clean and simple, but it's important to do it. Second, you can take portions of the design that are messy and hide them away. Create a facade to separate that area from the rest of the application and change the application to use the facade. Finally you can look at replacing the area behind the facade. These are very difficult tasks, but trying to start the project from scratch is even harder, so try to avoid the temptation to restart the whole application.
Download