Angel \”Java\” Lopez on Blog

January 31, 2007

AjSaaS: a sample open source Software as a Service application

Filed under: .NET, AjGenesis, ASP.NET, Code Generation, Software as a Service — ajlopez @ 5:56 pm

Today, I’ve been busy writting a new open source sample application, using ASP.NET 2.0 and MS SQL Server 200x. As usual, I began writing down the model of the application and generating the code using my AjGenesis code generation engine. I love that project! :-) It frees me from repetive and cumbersome tasks, as tedious web page creation, or long stored procedures code.

Now, I have a system with:

- Tenants
- Applications
- Users
- Roles

Each user belongs to a Tenant. There is the “main” Tenant, one that provides the AjSaaS application. You can define new applications, and create new tenants (enterprise that uses applications). A tenant can use many applications, and an application can be used by many tenants.

Each tenant has a collection of users. Each application has a collection of roles. A user can plays many roles (in differents applications, if his/her tenant has adquired many services).

This is my first day of work. I’m now working on implementing membership and role providers based on the above schema (using the provider features of ASP.NET 2.0).

After that feature, the next steps are:

 - Implement one or two sample application to put under the system (I’m planning to implement some entities with CRUD functionality).

- Implement user-defined entities as in

Building an End User Defined Data Model – Part 1
http://www.15seconds.com/issue/050324.htm
Building an End User Defined Data Model – Part 2
http://www.15seconds.com/issue/050414.htm

using some ideas published at

Multi-Tenant Data Architecture
http://msdn2.microsoft.com/en-us/library/aa479086.aspx

The final idea is to extend the system up to level 0,1,2 of the maturity model at

SaaS Simple Maturity Model
http://blogs.msdn.com/gianpaolo/archive/2006/03/06/544354.aspx

Some business rules would be implemented with customizable Workflow Foundation workflows, or something similar usign AjBasic as a Saas Code Language (a la SalesForce, they included a controlled programming language to extend their systems).

I’m in my sabbatic week. When I finished with this week, I’ll publish the first version of code, with open source license.

Angel “Java” Lopez
http://www.ajlopez.com/en

1 Comment »

  1. Hi AJ Lopez,

    I found this website by investigations on the Multi-Tenancy subject and I am currently searching for an inmplementation of a multi-tenancy app with tenants, users, roles, credentials, etc. Are you still working on your interesting project? Thank you in advance for any reply!

    Greetings from Germany, Daniel

    Comment by Daniel Pavic — October 27, 2007 @ 8:21 pm


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Theme: Shocking Blue Green. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.