Enterprise Middleware aids in the creation of high-quality and robust applications by providing services and component frameworks for common functional requirements. Projects in the Programming Model category help you to use these services and frameworks productively. JBoss Seam, for example, takes care of joining together the JSF and EJB3 component frameworks found in JEE 5 and adds more meaningful contexts to handle conversational state. This allows you to focus on application development, letting the Seam framework handle the infrastructure code.
JBoss AOP allows you to cleanly separate common services such as logging, security and transactions from your application code during the design phase. You can then integrate them back together declaratively using XML or annotations at runtime. This approach produces application code that is easier to read and services that are reusable across projects.
JBoss EJB3 is a standards-compliant component framework, implemented using JBoss AOP. This allows you to develop portable application components that take advantage of common or custom services in a standard way.