In this book, we use the term module to refer to a software component that can be independently developed and deployed. In that sense, a modularized application can be customized and extended without distributing or modifying the source code of the original application. For our purposes, when a new module is deployed, it must register with the application. The functionality of the module is incorporated into the application at runtime.
Keep in mind that there are also Maven modules. This book uses the full term Maven module or Maven project when referring to this kind of modules.