Wednesday, May 5, 2010

Sharepoint enterprise application development template

I haven't been posting any entries due to my exams and my current personal project. I came up with this idea to design an architectural template for MOSS development as my organization do not have many MOSS developers and expertise.

Things that i already achieved:

Incorporating n-tier architecture
Working with strongly-typed SPList entities generated using SPMetal
Data Access engine using generics and reflection to perform CRUD (Create, read, update, delete)
Utilities methods for config extraction
Changed the way MOSS UI is designed and developed in a more rapid/easy manner

Things that i want to achieve (i've conceptualized ways to do it, just need time):

Support atomic transactions when performing CRUD (Rollback, Commit, isDirty, etc)
Workaround with SPList to get satisfactory performance when exceeding 2,000 items
Improve exception handling
Audit trial using list event handlers (features)
Logging

Things that i still have doubts of feasibility/performance:

Using singleton pattern for heavy MOSS objects like SPSite


My school is starting soon, and i'm still thinking whether is this project of mine worthy of my effort or not. I am not the best architecture designer out there as well, but i will try my best to complete the designs and do proper unit tests and to document the architecture. I'm actually actively looking for help to work on it, if you are interested please contact me.

3 comments:

  1. best article ever

    ReplyDelete
  2. I am considering putting the source into codeplex for community input, there's only so much that 1 person can do. Unless i find someone to work together on it. Thanks anonymous person, it's comment like yours that make me want to continue working on this.

    ReplyDelete
  3. Revisited: You are welcomed. Some of these problems you highlighted are well known like SPList's lack of atomic support and the 2000 items constraint in each container. There were already many bold yet unfortunately futile attempts from others, I hope your attempt will be successful.

    ReplyDelete