If you think about frameworks, the best make repetitive coding tasks easier, DRY, and, if possible, automatic. With that in mind, identify the repetitive tasks in your web service layer. Maybe:
- Security?
- Mapping from transport objects to business objects, data objects, others?
- Special serialization handling?
- ...
If you have specific use cases or service contracts, pore through them and find things you don't want to code inside every web service method.
From that, cook up a scheme that automates or simplifies code inside the service and, better yet, for service consumers. Maybe:
- A component that lets you swap out different security approaches with a simple config change
- A single, generic object mapper versus mapping Property-to-Property every time it's required.
- An Attribute scheme that tells the service how to handle special serialization versus explicitly handling each case
- ?
When rolling your own framework, I'd say the most important thing is to start humble. Don't try to be everything to everyone and don't try to anticipate every possibility. Instead, start with tasks that you know are tedious and error-prone and make them automatic.