https://www.figma.com/file/iDju7gP663mwVYyuyKIa6A/Unified-form-v2?node-id=0%3A1
First of all, I want to say two main things: a) I really appreciate the clean mockups you are putting out. It’s very useful for us to visualize and discuss the details (and later on to implement the components), but also it’s very nice and clean too look at which I appreciate. b) There’s inevitably going to a lot of back and forth in preparation for this project, but I like what you’ve been making so far and I’m confident you can crack that tough problem !
Without further ado, some high-level feedback
The main complexity and aim of the project is to make the website easier to use. One of the main issues in this regard is the way the website uses nomenclature and structures derived from the database schema. Generally, I think the tabs are not used for the right purpose and fit too closely to the existing structures of our forms. As a beginner user without prior knowledge of BB or MB (I’ll refer to them as ‘Anon‘ from here onwards), “identifiers” “relationships” and “annotation” don’t mean anything, and “basic” doesn’t give any info either.
Instead, we need to shift our perspective and try to slice the cake across another dimension. The tabs should be used to map our complicated database-based mental representation to Anon’s limited perspective of “I have this book in my hand and no knowledge of BB”. So for an example of sections/tabs that would make more sense I think(without the need for prior knowledge of BB):
- Who wrote the book? select or create an Author + associated details This will create Author Credits for the Edition (this isn’t currently used but the DB tables are there; it’s how you can attribute an Edition to an Author [notice there is no Author wrote Edition relationship])
- What are the contents of the book? list of works (select existing or create new easy shortcut for Author-Work relationships for created works (not automatically I guess, as you can have multiple works by different authors in a book, but for example a checkbox “work was written by $authorName” that they just created/selected ) maybe?? a way to add some other content-based relationships like illustrators, photographs, etc.
- What is my physical Edition of this book? physical attributes ISBN Publisher select or create EG details (I guess only EG type?)
We don’t necessarily need to have a huge inlined form/modal for each new entity we create in this form. We need to strike the right balance of easy to use and thoroughness. Considering this form is aimed at beginner users first and foremost, when in doubt we should keep it simple.
For example, if Anon creates a new Author in this book creation form, we don’t necessarily need a way to add other relationships for the Author: name(s), dates and birth place could be sufficient. Same thing with the Publisher: name, dates, type, and maybe that’s all? The Works might not even need a form; we only need to select the type and that’s all, which could even be done in a table format ( we could select the language for all new Works like you did in the “basic” tab, or at the top of the “contents” tab and use it for all new Works)
Adding other relationships and identifiers can either be done by Anon in separate revision later on, especially if that’s what we need to do to keep the form easy to use and digestible. Maybe we can tuck away rels & ids in the inline forms and show them in a modal/accordion after clicking a button (kind of like what we currently do on the creation form), but only if it does not make the form harder to use/understand or too “impressive” (looking at you, MusicBrainz…)
Both the “Created entities” block you have on your mockup and your idea of showing a graph of created entities would make for a great last “recap” tab/section along with the annotation (i.e anything else that doesn’t fit in previous tabs)
Hey, Thanks for taking out the time and writing a detailed review!, very appreciated.
I would like to share my thought process.
Who will be using the Unified Form?
For first case we can use the workflow as describe in mockups, since that can help them to efficiently add more data.
For second case, we can have wrapper around edition entity with useful defaults called "Book", abstracting away BB specific details and only presenting necessary options to user.
Book Creation
What are the main details a user can accumulate from a physical/digital book?
Workflow - Tabs
Note: User can only add book(edition) relationships in later revisions
All create action would generate new entity in "Created entities" from where user can make changes to them easily, also i will discuss more about implementation details in my proposal.
I would love to hear your thoughts on this, also let me know if you want to see some mock-ups on book creation!.
Update: Mockups for book creation