Modularized Architecture

In the eXpressApp Framework, every piece of functionality must be enclosed into a module. A module in the eXpressApp Framework is a special kind of assembly that contains a class derived from a certain base class. This structure provides a common hook for the eXpressApp Framework to recognize an assembly as a module, to provide management information to that module and in turn to request details about what's contained in the module. When an application runs, it includes only those features that are implemented in the referenced modules.

Modularized Architecture - DevExpress .NET Application Framework (XAF)

The eXpressApp Framework ships with a number of ready-to-use modules:

  • System Module
    Contains basic features that are common for business applications (object filtering, creating, deleting, navigating, exporting, printing, etc.). This module is added to each XAF application by default, which makes even an empty application full of essential features.
  • Audit Trail Module
    Allows you to audit and log information on changes made to persistent objects when the application is running.
  • Chart Module
    Contains List Editors that allow you visualize data via the XtraCharts library developed by DevExpress. The Chart module adopts controls from this library for XAF applications, so you can visualize your data with ease.
  • Clone Object Module
    Provides ability for end-users to quickly create similar objects by cloning them and changing the required properties.
  • Conditional Appearance
    The Conditional Appearance module allows you to dynamically configure a UI, and is designed to supersede the Conditional Formatting and Conditional Editor State modules. UI customizations are performed on the basis of predefined business rules.
  • File Attachments Module
    Includes Property Editors and Controllers to attach, save, open and download files in Windows Forms and ASP.NET Web applications.
  • HTML Property Editor Module
    Contains the Property Editors which allows end-users to format string properties' values using Hyper Text Markup Language (HTML).
  • KPI Module
    Allows you to create and manage Key Performance Indicators which are quantitative measurements of dynamic business processes.
  • Pivot Chart Module
    Provides the capability to analyze data via the XtraCharts, ASPxPivotGrid and XtraPivotGrid controls.
  • Pivot Grid Module
    Contains List Editors, that allow you to analyze data via the XtraPivotGrid and ASPxPivotGrid controls. The Pivot Grid module adopts these controls for XAF applications, so you can add data analysis functionality with ease.
  • Reports Module
    Uses the XtraReports library to provide end-user interaction with reports in Windows Forms and ASP.NET XAF applications. Allows a user to design, customize, filter, view, export and print reports.
  • Scheduler Module
    Uses the XtraScheduler and ASPxScheduler control suites to display event-specific objects in Windows Forms and ASP.NET XAF applications.
  • Script Recorder Module
    Supplies a script recorder for the EasyTest functional testing engine shipped with the eXpressApp Framework.
  • State Machine Module
    A state machine implementation, providing a uniform way of managing object states, greatly simplifies state transition management.
  • Security Module
    Supplies various security system strategies and authentication implementations. Allows you to assign different permissions to different users or user groups. Supports custom Security strategies and authentication implementations if they use the Business Class Library's interfaces.
  • TreeList Editors Module
    Uses the XtraTreeList controls suite to display object lists as a tree in XAF applications.
  • Validation Module
    Contains a powerful and flexible validation engine and a large number of ready-to-use validation rule types. Allows you to create rules both at runtime or design time and check them when required.
  • View Variants Module
    Allows you to create several variants of a View so that end-users can select the required one.
  • Workflow Module
    Integrates Windows Workflow Foundation 4.0 support into XAF. Allows you to to create more manageable, workflow-enabled applications.

By default, an XAF solution with both Windows Forms and ASP.NET application projects includes three modules. You are not limited to them. Generally, you may have one feature per module, so that you then use individual custom modules in other XAF applications. It is very easy to create your own modules for the eXpressApp Framework and thereby to create and distribute your own reusable functionality.

More from DevExpress
Live Chat
Have a pre-sales question?
Need assistance with your evaluation?
We are here to help.
Chat is one of the many ways you can contact members of the DevExpress Team. We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.
If you need additional product information, require pre-sales assistance, or want help with your order, write to us at info@devexpress.com or call us at
+1 (818) 844-3383.