Visual Designer for CSLA

Visual Designer for CSLA

Old forum URL: forums.lhotka.net/forums/t/5083.aspx


Manu Singhal posted on Thursday, July 10, 2008

I am exploring the idea of developing a Visual Designer for CSLA Business Objects. Like the ones available for ADO.net Datasets.
Has anyone else thought about developing a visual designer for CSLA?

Josef Eissing replied on Friday, July 11, 2008

Hi,

if you are looking for a visual Domain Specific Language for the CSLA.NET Framework, please visit www.cslafactory.net.

vdhant replied on Friday, July 11, 2008

In terms of feedback for clsafactory.
I may have this wrong (as i have thus far only looked at the video) but the biggest problem that i see is that the visual design doesn't go to the class itself to build the map, but it generates the code from the map. Hence the map and the code aren't synchronised. What i would expect is that the visual designer works like the class designer, where you make a change in the code its reflected in the designer and vice versa.
Cheers
Anthony

Josef Eissing replied on Friday, July 11, 2008

Hi,

the CslaFactory is a forward only Modeling approach. I think you are looking for a modeling approach known as Round-tripping. Round-tripping aims to automate the work of keeping the same information up-to-date in two places, models and code. Round-tripping works only when the formats a very similar ( at same abstraction layer) and there is no loss of information between the translations. In software development, this is true in relatively few areas and typically only for the structural specifications. For instance, a model of a schema can be created from a database and a database schema can be generated from a model. Round-tripping with program code is more problematic since modeling languages don't cover the details op programming languages and vice versa. Usually the class skeleton can be shonw ind models but the rest - behavior ( ValidationRules, AuthorisationRules) - are note coverd in the round-trip process and the stay in code. This is only a partial link. This kind of alignment between code and models is often pure overhead. Having a rectangle symbol to illustrate a class in a diagram and then an skeleted equivalent textual representation in a programming language hardly adds any value. There is no raise in the level of abstraction and no information hiding, just an extra reprensentation duplicating the same information.

In DSL developement, we use models as the primary artifacts in the deveopment process: we have source models instead of source code.Truly DSL development uses automated transformations in a manner similiar to the way a pure coding approach uses compilers.

If you are interessed in different modeling approaches including their pros and cons, please read the book "Domian Specifing Modeling" by Steven Kelly.

PS: I think this is not the right forum for this discussions. If you want a deeper discussion please create a forum on www.cslafactory.net

Regards

Josef

coder replied on Wednesday, October 08, 2008

Yeah Josef. Clsafactory looks very promising but you can’t count on it. The beta 1 version has been delayed for 3 months now and still doesn’t have a sign of releasing, think of what will happen to the release version.

There will be a new player of Visual Designer for CSLA.net ,named Sculpture. The coming release will work for CSLA as well. check it out at  http://www.codeplex.com/Sculpture

 

ANegm replied on Wednesday, December 03, 2008

Am happy to announce that Sculputre 1.0 Beta2 was shipped and now you can design your CSLA entities and get it in full application (Windows Forms, WPF, Silverlight, ASP.NET, ASP.NET MVC) in minutes ....

What is Sculpture?
    * Sculpture is a .NET open source Model-Driven Development code generation framework ideal for creating and managing .NET Enterprise Applications.
    * With Sculpture you can model your application components, and then transform this model to deployable components with your favorite technology.
    * Sculpture comes with a host of ready-made Molds (The word “Molds” comes from Molding) like (DAAB, NHibernate, LINQ, CSLA, WCF, ASMX, Windows forms, WPF, Silverlight, ASP.NET, & ASP.NET MVC).
    * Sculpture provides starter kit wizard enables choosing among available technologies to start your project with all layers in no time.
    * Sculpture doesn't force you to adhere to a specific architecture, it contains a guidance package for building your own Mold or customizes existing ones. If you have a custom architecture, using this guidance package you can build a custom code generator with your favorite technology.
    * Sculpture can generate any kind of text output using templates (source code, database scripts, web pages, XML, configuration files, etc.).
    * Sculpture takes you to the next level of abstraction by separating the problem from the implementation technology.
    * Sculpture takes you to the domain specific programming by adding your specifications to the model environment and the generated code.

Sculpture Home Page http://www.codeplex.com/Sculpture (We provide 2
screencasts introducing Sculpture).

lukky replied on Wednesday, December 03, 2008

I'd like to share my thoughts about this subject.

1) CSLAFactory, as far as I'm concerned, is vaporware. As mentioned by a previous user, the BETA has been delayed for months, and when asked about this, the contact person would only offer more tentative dates.

2) Sculpture looks promising. I've tried it and so far it has produced some results, but my beef with it is that it doesn't allow me to specify custom names for my BO properties. As of 1.0 beta 2, I'm stuck with using the same name as the DB columns. Also, it doesn't allow for the data to be "distributed" across tables, as EF designer does. This leads me to:

3) Code Complete seems to be working on some EF -> CSLA tool, and if they can deliver in a timely fashion, this will definitely rock !!!

Regards

ANegm replied on Thursday, December 04, 2008

lukky:
I'd like to share my thoughts about this subject.
2) Sculpture looks promising. I've tried it and so far it has produced some results, but my beef with it is that it doesn't allow me to specify custom names for my BO properties. As of 1.0 beta 2, I'm stuck with using the same name as the DB columns. Also, it doesn't allow for the data to be "distributed" across tables, as EF designer does.


Let me correct some things about Sculpture as i described in the same issue

If you talk about the separation of member name and field name in the database, we already do that, in the member properties you will find property called "Name" the name of member, "Column name" the name of field in the database, "Display Name" the name that will be displayed in the user interface.


About data to be "distributed" across tables, till now we only support one to one entity to table relationship.
But designing entity from multiple tables or inherited entity will be one of our priorities in the next version.

And we still need hear from the CSLA experts to till us how to make Sculpture better and better.

Best Regards.

Mr.Underhill replied on Thursday, December 04, 2008

Guys, I just posted another comment underr the Contrib forum (http://forums.lhotka.net/forums/thread/13737.aspx).  And after reading this post I feel better because that other post nobody answered since over a year and I thought nobody was looking into this.

Anyways, I'm pretty new about all this, but I think is a great thing.  I listen to this show in .NET Rocks with Kevin McNeish (http://www.dotnetrocks.com/default.aspx?showNum=329) .  I don't see in this post anybody commenting on this DSL tool created by Microsoft that ships with the VS2005 / VS2008 SDK.  So my first questions, are you guys aware it?  If so, and based on what I'm hearing (because I didn't donwloaded or use it yet!), shouldn't we just create a DSL for CSLA using this tool?  This guy was talking about been able to use it bottom-up (given a database build the model) or bottom-down (just desing your model and generate the code), or course is up to you how to create it, because this is a DSL to create DSL's!

 

Any ways, it will be really cool specially for bottom-down, you start modeling your project with a visual designer and with entities that represent the different CSLA objects and a bunch of properties will drive the way the code is generated.

 

Let me know what you think, I'll also take a look at the other projects you guys are mentioning here, its nice to know there are multiple options out there, that's the nice thing about working with an application framework that a lot of people uses.

 

 

Regards

Philip replied on Thursday, October 09, 2008

Mind me asking, what is wrong with the EF modeling tool in VS2008? We are planning to use the EDMX generated by the tool to generate CSLA code in the next release of Code Complete.

Philip

coder replied on Thursday, October 09, 2008

Oh yeah... CodeComplete is quite nice too, always be the first one to catch up with the new technology (i.e. 1st in EF & CSLA3.6), and I like its way of further breaking down the business object into transfer and store layers. I even suggested my fork to use it but failed. Guess DSL is more of a trend and holistic tool for modling objects.

lukky replied on Wednesday, December 03, 2008

Philip:

Mind me asking, what is wrong with the EF modeling tool in VS2008? We are planning to use the EDMX generated by the tool to generate CSLA code in the next release of Code Complete.

Philip



Philip, what about a time frame for that release ? I'm currently working on a project where we have to manually code our BOs because of the distributed nature of the data. Would be of great help

Regards.

Philip replied on Friday, December 05, 2008

Big Smile [:D]The Beta 2 version of Code Complete is out with support for thrid party controls (DevExpress, Janus and Infragisitics) and Ajax for generating the UIs.

Visit the Code Complete site at http://www.eurowisesoft.com

Philip

Copyright (c) Marimer LLC