The change to Model-Driven Architecture (MDA) with Executable UML (xUML) results in changes to the existing object-oriented development practices, techniques, and skills. To use a transformational approach to create objects with Finite State Machines (FSMs), communicating by exchanging signals, adopters of MDA and xUML have to acquire expertise in new areas such as domain modeling, concurrency, non-determinism, precise modeling with FSM, programming in model-manipulation action languages, writing OCL constraints, and clear separation of application from architecture. The much more complex xUML object model presents system analysts with a longer and steeper learning curve. In this chapter, we critically evaluate the opportunities, capabilities, limitations, and challenges of MDA based on xUML. The purpose of our analysis is to aid organizations, software developers, and software product managers in their transition to this new development paradigm, and to assist them in understanding how MDA and xUML change the software design space and project planning.