Its alwayz important to set the ground rules straight & think through these factors for designing a framework:
These are my views which has worked well in my past experience.
1. We need to create UI Map.
2. Libraries for UI objects.
3. Design classes based on application under test.
4. Plan for test execution approach to minimize the time.
5. Design report generation.
6. Prepare a Step table and step suite.
7. Prepare a Data set where ever needed.
8. Design Keyword Driven action fixtures this is purely on the approach we follow if its data driven framework ignore this step.
9. Design and develop the psudo code.