  Artificial Intelligence (AI) planning is a flourishing research and
development discipline that provides powerful tools for searching a course of
action that achieves some user goal. While these planning tools show excellent
performance on benchmark planning problems, they represent challenging software
systems when it comes to their use and integration in real-world applications.
In fact, even in-depth understanding of their internal mechanisms does not
guarantee that one can successfully set up, use and manipulate existing
planning tools. We contribute toward alleviating this situation by proposing a
service-oriented planning architecture to be at the core of the ability to
design, develop and use next-generation AI planning systems. We collect and
classify common planning capabilities to form the building blocks of the
planning architecture. We incorporate software design principles and patterns
into the architecture to allow for usability, interoperability and reusability
of the planning capabilities. Our prototype planning system demonstrates the
potential of our approach for rapid prototyping and flexibility of system
composition. Finally, we provide insight into the qualitative advantages of our
approach when compared to a typical planning tool.
