To add a little flesh to Entity Framework (i'm talking 4.0 and up), when you first open the designer, you make a connection to the database that you want to use. Now let's say you have written a load of SP's to perform the CRUD operations, from the designer you have a choice of including, Tables, Views and Stored Procs, you can select any combination. If you select SP's you then get the option of including or excluding SP's since if you have some SP's that are called purely from higher level SP and they never get called in their own right, then you wouldn't want to include those in the Entity Framework. Once you have selected your SP's you then map them against the objects that you want them used with.

I've found they work really well.