RapidWebDev is an enterprise CMS framework helps engineers to develop enterprise software solutions in Microsoft .NET easily and productively. It consists of an extendable and maintainable web system architecture with a suite of generic business model, APIs and services as fundamental functionalities needed in development for almost all business solutions. So when engineers develop solutions in RapidWebDev, they can have a lot of reusable and ready things then they can more focus on business logics implementation. In practice, we can save more than 50% time on developing a high quality and performance business solution than ASP.NET coding directly. Watch RapidWebDev overview online presentation here.

Components

RapidWebDev framework is composed of 5 major components, CommonLibrary, ExtensionModel, FileManagement, Platform and UI Framework. The high level diagram is found here.
  • CommonLibrary is a suite of common APIs, cache adapters, validation framework, globalization, dynamic class generator, logging, transaction scope without DTC dependency, basic Spring.NET integration and etc.
  • ExtensionModel is used for the requirement that customers want to configure fields of their data at runtime and get them working in UI immediately without re-compilation and deployment. The component provides a suite of extension model metadata API, metadata web management UI, web dynamic data input form, data validation and Linq2SQL integration.
  • File Management (from v1.52) is a component designed to save the effort on developing file-required systems through its easy APIs and integration with ASP.NET web development, e.g. a product requires attachments and thumbnails in a product management system.
  • Platform is a suite of fundamental models includes membership, role, permission, organization, hierarchy data, concrete data, relationship model, authentication, authorization and sitemap within SaaS compatible architecture. The models are flexible and configurable by integrated with ExtensionModel so that engineers can configure the data schema for their special requirement without modify data model and implementation code. And both internal APIs and web management UI are available for these functionalities.
  • UI Framework is to develop standard AJAX web forms by xml configuration, interfaces' implementation and ASCX templates. There are 6 significant advantages of this framework.
    1. the request and response data are both very small by asynchronous connection in JSON between client and server in the developed web forms.
    2. easy to consolidate style, layout and behaviors of all web forms in a system by implementing some layout interfaces that the web forms are rendered by xml configuration.
    3. engineers don't need to write any code to control UI display workflow which has been fully controlled by the framework.
    4. easy to write unit test cases for UI implementation which is decoupling to xml configuration and ASCX templates.
    5. the independent UI implementation is easy to be extended and reused in different scenarios.
    6. web form controls/user interactions are integrated with permission.

High Productivity

Let me emphasize the high productivity by introducing a simple business case. We're required to develop a web product catalog management system to manage products with logs. A product consists of category, properties, thumbnails and logs. The product category is hierarchical data. The both product category and properties are maintainable by administrators. Administrators can manage system users and roles with assigning permissions. The permission is based on functionalities but not by products. There are permissions as "manage users", "manage roles", "manage product category", "manage product properties", "search products", "create/update products" and "delete products".

Developing for this requirement in RapidWebDev, the web application architecture with user, role, permission, dynamic properties and product hierarchical data management are all reusable. Engineers only need to configure the xml based permission sets of the application to match the permission requirement, create a link into sitemap configuration mapping to the existed hierarchical data management web page with query string parameter "HierarchyType" mapping to product category, and create another link to extension model metadata management web page mapping to product metadata. By these 3 simple configuration, they're having "user management", "role management", "product category management" and "product dynamic properties management". Then engineers need to create 2 Linq2SQL entity types of product and product log mapping to the data tables and integrate with ExtensionModel by implementing a marker interface.And write less than 200 lines of C# code to develop the product management web form within RapidWebDev UI Framework besides an xml configuration and product detail view ASCX template.

History

RapidWebDev is from the development on outsourcing projects since 2005. In last 5 years, there are at least 10 successful projects developed on the infrastructure about e-Business, Government, Logistics, Product Management and CTI (Computer Telecom Integration) systems. With more projects done, more and more features are added into RapidWebDev. We decide to share this project internationally at the beginning of 2009. Then the first public version is released on December 25th, 2009 after the refactor and rewrite after 8 months. RapidWebDev is a long term developing project that we have had plan for next 3 years. You can get the roamap for 2010 at our official website..

Last edited Mar 30, 2011 at 3:18 PM by eungeliu, version 43