I am used to just jumping in and figuring things out on the fly, but DDD doesn’t really work like that. From what I understand, one needs to start with delimiting the domains of the app.
So this is my attempt at doing just that. Let’s try and figure out the domains. Now the trick here would be to figure out how to create the domains and not confound them with entities 🙂
- Users – the most basic block of an app is the user and this will be our first domain
- Books- since this is the item the entire site revolves around, I believe should be its own domain
- Authors – I anticipate quite a bit of functionality around authors so maybe they should have their own domain
- Taxonomies – this will encompass the categories, tags, and other ways of grouping the data and I am considering them as their own domain right now. If they will grow too much I am going to have to start spitting them.
- StandAlonePages – the app will have a series of standalone pages that will need to be managed somehow and I guess they need a separate domain
- Admin – right now this is the place I am throwing all the admin related actions
Now, these look a lot more like entities than domains, but I am new to this paradigm and will be reading and improving on this page as I go as well.
I think this is a good start