We (Modelingsoft's executives) started at 2005 as a software vendor in the medicine industry field, during 2 years we built a huge enterprise application contains many modules covers all medicine industry activities (Finance, Sales, HR, Costs, Document flow …etc.). Working agile helped us to deliver, test, and maintain pieces of software while developing the rest. Customers’ feedback helped us to kick off many of software challenges as Extensibility, Stability, Authorization, Authentication, Localization, Security, Profiling, and the ability of customization. We used .NET 2.0 with Windows Forms as UI and Datasets as data access provider, after a while we started using Enterprise Library which helped us a lot to overcome many of the previous challenges.
At the end of 2007 Microsoft new technologies Began to appear on the horizon, and all of developers knew that Microsoft started a new era on the software development during .NET 3.0, WPF, WF, WCF, LINQ, and some talked about Silverlight. This era made us disappointed for a while, where our BIG baby will be expired soon, of course we might still develop with the old fashion but we will be deprived of utilizing these new technologies.
At this point we realized that the change would be inevitable. We started looking around the new technologies: WPF still have many limitations, LINQ to SQL or the upcoming Entity Framework (or may be NHibernate), and the capabilities of Silverlight can’t determine yet. The other question was how many years our new baby will live until we will need to rebuild it? Of course we can increase its age by many design patterns like layering, separation of concerns, and cross cutting concerns … etc. but these design patterns did not achieve the abstraction from the implementation technology.
And when we talked about abstraction then we must stop at MDA (Model Driven Architecture) from OMG Group and Microsoft DSL-Tools as concrete implementation for this trend.
At December 2007 and after a while of closely studying concepts of MDA and details of DSL-Tools we started our product Sculpture for internal use.
At May 2008 we taking the decision of publishing it as open source to see how the developers thought in such a product, actually we got a great feedback that encouraged us continue developing it.
At March 2009 and after multiple preview versions we released Sculpture 1.0 final which won the admiration for a lot of developers. In this time we thought that we still have a lot to introduce throw this tool, this leads us to invest more while dropping some commercial components.
At August 2009 we ship Sculpture 2.0 which was a revolution of 1.0 with some commercial Molds.
While building Sculpture 2.0 we suffered a lot from the limitations of DSL-Tools as a comprehensive MDD framework which lead us to think on developing our own toolkit that gives us more capabilities on the Modeling and DSL worlds.
But those two worlds are wider than we expect starts from the modeling capabilities such as meta-data programming, model runtime, model validation, referential integrity, transaction management, model persistence, and model portability. And the DSL world potentials from graphical DSL with a new designer that utilize the WPF (and might Silverlight in the future) capabilities to give our traditional designers a new dimension, ends with Textual DSL that contains grammar, text coloring, intellisense, error detection, and most of other common todays editors capabilities.
We happily accept this challenge hopping produce Sculpture Platform as the ultimate .NET modeling platform.
This vision did not receive an acceptance from the other partners of Dawliasoft, which made us create our own new company that fits to our new vision, Modelingsoft, and we start building Sculpture Platform from scratch.