The MuleSoft ecosystem |
But I feel there is another, perhaps paramount benefit to considering MuleSoft. The very way the web-based Anypoint Platform and the Eclipse-based Anypoint Studio work helps streamline working teams. The design-first API approach and the segmentation into message processors make development steps and areas of responsibility more explicit.
Your development team might consist of advanced coders who like to do everything on their own, configurators and designers who like to do things once and move on to the next thing. Average developers might prefer to cleary stipulate the inputs, possible sideeffects, testing approach and outputs of modules.
Breaking large integrations into LEGO-like blocks like Mule might seem bothersome for the brilliant solo coders out there, but I think it can be pure gold for large teams that want to predictably deliver software.
MuleSoft Anypoint Studio flow building blocks |
Attacking a problem by first defining the interfaces and resources with RAML, then top-down configuring flows for the needed input and output data types can already replace a number of classical documents and prevent misconceptions. Some steps can even be done during meetings, and with a shared screen can ensure everyone agrees on what needs to be done. The flow "skelet" of different connectors, transformers, and configuration steps can be assigned to different developers in such a way that they don't get in each others way. With the help of easily defined example data and mockable services, entire projects can be demo-ed within an hour or two, and the actual "flesh" added iteratively during more predictable development cycles.
Especially in fast-moving cloud projects that want to quickly connect with a new system, MuleSoft seems to be able to fulfill its promises. If your team(s) find themselves often arguing over precise definitions, boundaries of responsibilities, and acceptable complexity, Mule might help streamline those coding nerves.