Brian Button - One Agile Coder

Blogging on all things .Net, C#, and Agile

My Links

Blog Stats

News

Archives

Post Categories

Agile Solutions Group

Blogs I read

Enterprise Library V1 Team

Brian's Handy Dandy Rules of Framework Development

The whole basis of my talk at TechEd is that there are some non-technical rules around which creating good frameworks should revolve. Since I mined those rules from my earlier poll on this blog, I thought I should share my results with you. I give you

Brian’s Handy Dandy Rules for Framework Development

  • Clients come before frameworks
  • Ease of use trumps ease of implementation
  • Quality, Quality, Quality
  • Be an enabler
  • It’s a people problem

Clients come before frameworks

This was easily the most commonly heard bit of advice my poll revealed, and it matches up very nicely with my own experiences. The best frameworks are not created, they are mined out of existing code. The worst frameworks seem to have sprung from the twisted imagination of a rogue architect somewhere…

Ease of use trumps ease of implementation

As the author of a framework, you need to keep your eye on the ball of making others’ jobs easier. If you ever have to make a tradeoff between changing something to make it easier to implement and changing something to make it easier for your framework clients to use, always choose the latter. Write good documentation, ship your unit tests, and test out your APIs through writing lots of in-house client code. Lots of eyes on the API helps as well

Quality, Quality, Quality

Use Test Driven Development on your framework code, and enable framework users to use it on theirs. This means to avoid things like sealed and overzealous use of CAS. ‘Nuff said.

Be an enabler

You can’t read people’s minds, so don’t presume to know what their key uses of your framework will be. Allow people to embrace and extend your framework through extension points. Document these extension points, give lots of examples, and create automation to help users with these tasks.

It’s a people problem

Building a framework is decidedly not a difficult technical problem. We’ve built these things before, we’ll build them again. It is primarily an issue of balancing people and their conflicting interests. Good architects know this and are adept at balancing these concerns.

Summary

In a nutshell, that’s my talk. I have a lot more detail, a lot more stories, and a lot more to say. If you want to hear it, come see me Friday morning, from 9–10:30 at TechEd :)

See you there,

bab

posted on Friday, June 09, 2006 2:00 PM

Feedback

# Link Listing - June 10, 2006 6/10/2006 8:14 PM Christopher Steen


**NOW AVAILABLE** MOSS ECM Starter Kit for B2 (white
papers, code samples, workflows, and VS...

# re: Brian's Handy Dandy Rules of Framework Development 10/4/2006 5:44 AM mmlj

http://galeon.com/live-show-cam/ moco1 http://galeon.com/live-show-webcam/ moco2 http://galeon.com/liveshow-sexe/ moco3 http://galeon.com/live-show-sexe/ moco4 http://galeon.com/liveshow-porno/ moco5 http://galeon.com/webcam-sex/ moco6 http://galeon.com/web-cam-sex/ moco7 http://galeon.com/web-cam-sexe/ moco8 http://galeon.com/liveshow-sexy/ moco9 http://galeon.com/live-show-sexy/ moco10 http://galeon.com/live-show-hot/ moco11 http://galeon.com/show-live-sexy/ moco12 http://galeon.com/showlive-sexy/ moco13 http://galeon.com/showlive-hot/ moco14 http://galeon.com/show-live-hot/ moco15 http://galeon.com/showlive-porno/ moco16 http://galeon.com/live-show-porno/ moco17 http://galeon.com/show-live-porno/ moco18 http://galeon.com/showlive-sexe/ moco19 http://galeon.com/showlive-erotique/ moco20 http://galeon.com/liveshow-erotique/ moco21 http://galeon.com/showlive-cul/ moco22 http://galeon.com/web-cam-sexy/ moco23 http://galeon.com/web-cam-erotique/ moco24 http://galeon.com/webcam-erotique/ moco25 http://galeon.com/live-cam-sex/ moco26 http://galeon.com/live-cam-sexy/ moco27 http://galeon.com/live-cam-porno/ moco28 http://galeon.com/live-cam-erotique/ moco29 http://galeon.com/show-cam-sexe/ moco30 http://galeon.com/show-cam-porno/ moco31 http://galeon.com/show-cam-hot/ moco32

# Rules for Framework Development 11/7/2006 12:38 AM Some Things Architectural

Something i came across while i was developing a framework for one of my clients. Source : Brian Button's

Title  
Name  
Url
Spam Protection:
Enter the code you see:
If you can't read it, click your refresh button to get a new image.
Comments