see the eCommerce data base as a good starting point:
this uses a linking table for product options
there is a table for optiongroups (size or color)
another table to define options (red, yellow, small, large)
then a productoptions linking table to assign options to products.
using data assist you could create page to manage the option groups table.
another set of pages for managing the options table, so you can define options fro each group.
another set of pages for the products table, to create products, then using the data assist manage relation table behavior, assign options to the products.