Current filter:
                                You should refresh the page.
                                  • Hi DevExpress,

                                    I have been exploring XAF for a few projects recently , and have a number of MAJOR projects coming up, for which XAF seems to be a very good fit. Given the number and size of these projects (many developers, multi-year projects), I need to consider XAFs ongoing support, maintenance and roadmap before it can be selected.

                                    I have been trying to find recent (i.e. last 2 months) information about the roadmap/development plans for XAF over the next 1-5 years, but have found it to be ambiguous and unclear. While the mobile support is obviously coming, I am particularly interested in what is happening for the web and desktop apps as well. For example, what are plans for supporting .NET core, WPF, or offline capabilities? I am finding a higher demand for these features in the projects I am involved with.

                                    Without a clear idea of the 1-5 year roadmap for XAF, I am concerned its shelf life may be insufficient to use on a large scale, long term project. I would appreciate your comments, and certainly hope you can belay these concerns, as I have been so impressed with XAF so far.

                                    Regards,

                                    Jarrad

                                1 Solution

                                Creation Date Importance Sort by

                                Hello Jarrad,

                                XAF is one of the major frameworks in the DevExpress suite of components and libraries, because it showcases what can be done with our WinForms and ASP.NET products, as well as provide a stable beginning for many corporate and enterprise applications. It has been, up to now, a good decade in the making, and we have no plans to retire it as can be evinced by the recent addition of the Mobile UI feature.

                                As to what XAF will look like in 5 years’ time, we have only the vaguest ideas. I hasten to add that a lot of the design and development of new features and capabilities come from our users’ feedback: we introduce some feature, customers love it, except for X, Y or Z, and then we derive our medium-term plans from that feedback.

                                In answer to your specific questions:

                                WPF support? No, we have no plans. Instead, we would prefer to continue our work on a better WinForms look & feel that may include updated templates, icons (e.g. SVG support), better High DPI  support, etc, or polishing extra modules like dashboards, reports and security.

                                .NET Core, Web, and Mobile UI plans? I briefly described our thoughts on these at Questions on XAF and .NET Core.

                                Offline support? No immediate plans at present.

                                To allow me to help you determine whether XAF Web/Mobile UI is the right product for you, please answer these questions:
                                1. How many concurrent users do you need to serve? I am asking because if you are planning thousands, other technologies are better to be used as well.
                                2. How many your end-users find it important to have a native app vs a mobile-optimized web site for a typical line-of-business/data-centric project?
                                3. How much do you expect to customize the Web/Mobile UI? Which approaches do you prefer to use (e.g. are you fine with HTML/CSS/JavaScript customizations)?  For instance, check out my recent blog post for more inspiration: https://community.devexpress.com/blogs/eaf/archive/2018/05/23/xaf-new-in-documentation-on-mobile-application-customization-v18-1.aspx

                                WinForms UI does not have limitations in regard to the number of concurrent users and customization capabilities, so it is not covered here.

                                Show all comments
                                • Pablo Rubio Doddoli 07.13.2018

                                  Hi Jarrad, I found this ticket looking information for offline alternatives as one of my clients is asking for this, but couldn't go away without telling you how great Devexpress is.
                                  I'm writing about our experience. We are a small company with a big project for the hospitality industry, our project began by the end of 2012, we now have 4 customers and are in the works for more.
                                  The nature of our solution demands 2 main things:
                                  - To be web based.
                                  - To be highly customizable as fast as possible as the business unit is always changing .

                                  XAF helps with the previous and much more, we are able to deliver dahsboards, KPI's, workflows, etc. And since it's a .NET app you can find solutions for what XAF doesn't do.
                                  The comments from our customers are positive and are impressed with our solution and our response times.

                                  XPO is great, our solution handles millons of records without effort. Of course, as with any database you should be careful to use it wisely (indexes, searches, how you load data into memory, etc).
                                  To talk about the app performance, you need to understand how XAF is built to take better advantage of it and how to better use XPO and you can make a responsive app, but be aware that if you don't put enough care you can end with a really slow app (I believe this applies to just about any framework).

                                  I can tell you the support is great, this guys go beyond their duty to try to help you , I've used it a lot during these years.

                                  For the roadmap, yes, that is maybe something they need to work on, but there are positives, just this past months they sent us an email asking for our opinion on when they should head the framework. And for the actual product development I can tell you they are always improving it and adding new features based on the comments/tickets they get here.

                                  At the end of the day for me it's totally worth it , it saves us a lot of work and creates great and even nice apps.

                                  Hope this helps

                                • Jarrad.Powell 07.15.2018

                                  Hi Dennis,

                                  Thank you for the detailed reply. I understand everything you have said, and it has given me confidence in XAF's future.

                                  In answer to your questions:

                                  1. How many concurrent users do you need to serve? I am asking because if you are planning thousands, other technologies are better to be used as well.

                                  - The number of concurrent users for the various projects we are working on, to be less than 100.

                                  2. How many your end-users find it important to have a native app vs a mobile-optimized web site for a typical line-of-business/data-centric project?

                                  - The projects we are interested in will either use mobile apps in a completely restricted environment (i.e. will not allow web browsing and only allow the use of specific apps), or the users of the web app will be different users of the mobile app, and therefore are expecting mobile app specific customisations for those users (we may even develop multiple mobile apps for the same project, for the different types of users - all of which I expect would be fine with XAF based on my reading?).

                                  In regards to a need for "native" apps, for these specific projects, this is less of a requirement. However, if native mobile apps (i.e. actually compile to native), was supported by XAF, I could think of other projects that it could be considered for, for performance reasons (using XAF for the main architecture, but providing custom views with data processing intensive requirements - e.g. graphical views such as 3d).

                                  3. How much do you expect to customize the Web/Mobile UI? Which approaches do you prefer to use (e.g. are you fine with HTML/CSS/JavaScript customizations)?

                                  I believe HTML/CSS/JavaScript customisations would be fine - and in fact I think this is great. Knowing we can do this gives us more confidence in being able to respond to any specific or "unusual " UI requests. I am still getting an understanding of how to manipulate the core window layout (e.g. primary toolbars etc), but this support ticket doesn't need to deal with this :)

                                  Thanks for your time Dennis.

                                • Jarrad.Powell 07.15.2018

                                  Hi Pablo,

                                  I REALLY appreciate you taking the time to add your comments. You have really bolstered Dennis's reply in a positive way. The example you have given is great. I am also very attracted to the speed at which the data model can be adapted based on changing requirements. In fact this is a REQUIREMENT of one of the projects we have in mind, as large scale data model changes are very common in its related industry.

                                  I have only been using XAF with Code First Entity Framework so far, so I am glad you have shared your experience with XPO. One of my clients has queried me specifically on performance of XAF/XPO. I personally have a preference for Entity Framework purely because it is only less technology I need to train developers in (assuming they come with Entity Framework experience). Database First Entity Framework has also been useful for some projects as well (to get them started or simply rapid prototyping ideas from existing solutions). Do you have any comments about using EF vs XPO?

                                  I have used DevExpress controls a fair bit in the past, so I can also vouch for their amazing support. So glad to be working with them :)

                                  Cheers,

                                  Jarrad

                                • Dennis (DevExpress Support) 07.17.2018

                                  Hello Jarrad,

                                  >>
                                   have only been using XAF with Code First Entity Framework so far, so I am glad you have shared your experience with XPO. One of my clients has queried me specifically on performance of XAF/XPO. I personally have a preference for Entity Framework purely because it is only less technology I need to train developers in (assuming they come with Entity Framework experience). Database First Entity Framework has also been useful for some projects as well (to get them started or simply rapid prototyping ideas from existing solutions). Do you have any comments about using EF vs XPO?
                                  <<
                                  The majority of our XAF customers prefer XPO over EF. It is also important to note that a more reliable security engine is provided in XAF while XPO is used for data access: Middle Tier Security - WCF Service  and How to: Change the Client-Side Security Mode from UI Level to Integrated in XPO applications. There are also features that are currently unavailable for EF: the CloneObject and AuditTrail modules, Mobile UI. In general, EF is adopted much less than XPO among XAF customers. One of the reasons most users noted besides feature parity was DevExpress support (for EF you must either have existing knowledge or rely on community support through StackOverFlow).

                                  As for performance, you may be interested in the https://community.devexpress.com/blogs/xpo/archive/2018/06/22/xpo-a-simple-benchmark-against-ef-6-and-ef-core.aspx comparison. 

                                • Pablo Rubio Doddoli 07.17.2018

                                  Hi Jarrad, happy I can help.

                                  To answer your question about my experience with EF vs XPO, I can only tell you I have only been using XPO but haven't even think to have the need to use anything else.
                                  In my experience XPO is fast enough and reliable, again, you need to be aware on best practices (there is a Devexpress post on this) and to avoid doing somethings with large data sets, this could be a completely new conversation, but to name what has been for me the most important ones:
                                  - Never use XPCollection to load a large data set, instead:
                                    - If you must have the objects in memory to perform a foreach use XPCursor, it pages the records from the database.
                                    - Better, you can use Session.Evaluate, this has been an incredible tool for me to use to calculate Aggregated SQL functions (sum, average, min, max, etc.).
                                  - Whenever possible use "Server mode" on your listviews.

                                  I see your concern on concurrent users and it has been a concern for us too, there is post on this matter with experiences from other customers, I think Dennis may be able to give you this link. My experience has been to up to 40+ concurrent users and we solved this using horizontal scaling with no issues.

                                • Chris Royle (LOB) 07.19.2018

                                  Stumbled across this....

                                  We have a long standing customer whom I believe often exceeds 100 concurrent users (plus an additional number of users (max 70) accessing the XPO database using Windows Mobile devices via Web Services). They use Win XAF exclusively.  We've certainly had to make use of SQL Profiler at times ... but their database is pretty chunky.

                                  To add to what Pablo has said, XPQuery <> combined with LINQ can be a very useful tool / strategy for data manipulation. XPQuery<> implements IQueryable<>.

                                • José Enrique 07.26.2018

                                  Hi Jarrad,

                                  I agree with Pablo and Chris. I have developped with XAF ERP and CRM applications running on cloud (web verison) and on premise. In the same server I have often 10 running instances and near 50 concurrent users. Sometimes you'll need not only improving database design and profile it, but also take care of IIS pool CPU limits, ban some reports if not having enought parameters, or limit some actions (launching them in backgrund at low demand hours), you know, that kind of things not related to the framework. But if you work with XPO (faster than Entity Framework and very easy to learn) and put your efford mainly in XAF agnostic modules, you could get both deploys (win and web apps) and let your customer choose depend on the project. Even both applications can live together. Even more than 3 XAF apps against the same database (for example full win app, full classic web app, and another responsive app with few features).

                                  With advanced knowledge you could add dynamic personalization (such as custom fields and scripting) and integrate third party components and complex layouts.

                                  In my case I complement the "core" application with native satelite apps build with xamarin. You can consume central database thanks to oData or sync with other aproaches such as Realm (is really impresive how refresh data in near realtime when the app is online and you don't need to do anithing more to offline mode).

                                  So I encourage you to check demo XAF apps and code. And one more thing, the best of XAF is not the framework itself, the best is the support team.

                                • Dennis (DevExpress Support) 07.30.2018

                                  Thanks for sharing, José!