In a recent blog post, Karl takes us on a journey to Metadata Island. (From the pictures, it looks like a place I would like to visit frequently!). Though his post and accompanying Silverlight videos he brings up a number of very valid points regarding the use of existing metadata to make development faster.
A big pain point in development is duplication of efforts, and even in simple cases it can eat up a lot of time very quickly. Consider creating a simple database entry form. We're first creating a database table with field names, we then construct a data layer of some sort to read and write to those field names, we then add textbox (or other) controls to a form facilitate the data entry/edits, and then usually create labels (again using the field names), tools tips are added, data validation. To Karl's point, all of this information lived in the database already, or possibly even in a specification document prior to the database being created.
More tooling support would be great. Or at least some consistent tooling, as I know we've all written code to do a variety of these tasks in the past, but never really in coordination with VS.
[Karl's form generator]
As we go forward, I hope that we see a lot of innovation in this space. I think there are a lot of opportunities as WPF and Silverlight push into line of business applications.