When using the XAF you don't have to create a database, customize tables, create fields etc., and you won't have to use low-level ADO.NET constructs to access data. By using the built-in Object-Relational Mapping System and the eXpress Persistent Objects (XPO) library (XPO in the image included), all that you have to do is describe your data structure, describe your relationships, and the XPO will handle the creation of your data stores as well as all of the details for adding, deleting, displaying and modifying of your records.
The Business Class Library provides you with classes that define some commonly used entities like Person, Note, Organization, etc. and then you can use these classes as they are or derive your own classes. The Base Class Libraries (BCL) also include interfaces that you may want to use as well like IUser that can be used to implement in the security sub-system.
Say that you want to describe a contact. All you have to do is create a class that inherits from the person class within the libraries and add the additional information that defines your contact. Say for example your contacts are studio musicians. You may have a field for instrument played, years experience, and type of music. You add those items to the class, and when you compile and run, they are automatically added to the database, the views are created and you now have the structure to manage it.
Next item is the Controller libarary. Controllers are objects that manage the flow of the application as well as the end-user interaction. The default controllers are responsible for data management functions like adding, editing, and deleting records. You can use the existing controllers as well as creating your own controllers.
All applications built with the XAF include a reports module. This is included with the Universal Edition. You can create predefined reports for the applications and it is all implemented within the application. You can supply an end-user designer to your clients, but one thing to note is that the XtraReports Suite does not support a Web-based end-user designer. The output produced by the reports includes sending them to the printer, RTF, HTML, and PDF.
One of the really cool things about this framework is that since the main goal of the XAF is to separate business logic from the application's visual representation, it is possible to create both a WinForm and a Web site based on the same business logic. What this means is that you can provide access both from the desktop as well as from the Web without having to write separate systems. This gives you the ability to leverage one set of code across both platforms. Keep in mind that because of the nature of the two, while they may both contain the same data and information, the implementation may be different.