I'm building an internal web app for my company. We're a commercial printing company - I'll try and explain our situation without getting into the confusing details of the printing industry...
The short version is that we are trying to build a system so that we can track estimated ink usage vs. actual ink usage vs. purchased/mixed ink. At first glance, this seems like a very simple system to build. However, my boss is very interested in building it in such a way that it's very easy to use. He wants to minimize the amount of time on data entry, but unfortunately there's a ton of data that needs to be entered, due to the number of layers each job contains.
Data Neeeded
Job
This is the highest level piece. All we are collecting here is a job number.
Forms
Every job can have multiple forms. The most common amount is 4 forms, but this can increase up to about 20 forms. For forms we collect a sheet size and a stock type (20 pre-defined options).
Sides
Each form can either be printed just on the front side, or front and back. At the end of the day, we will treat each side as two separate forms, but this is important because it could possibly double the amount of required data.
Inks
Each side can have up to 9 inks, chosen from a pre-defined list of about 20 available inks. Most jobs will have only 4 inks, but we have a 9-color press that is occasionally at full-capacity.
At the Ink level, we start collecting the real data. The fields we get here are Estimated Usage, Digitally Estimated Usage, Purchased/Mixed Ink, Actual Usage, Printed Density, Printed Dot Gain, and Press Unit. Keep in mind, all of these inputs are numerical.
So, a normal 4-form two-side job with CMYK (4 inks) would end up like this:
4 (forms) * 2 (sides) * 4 (inks) = 32 (total inks to fill out)
Finally, getting to the real question, what is the best way to collect this data? Currently I have a popup form that asks one group of questions at a time (ie: What inks are on Form 1 Side 1), and automatically moves to the next question when that portion is completely filled out. Would it be better to generate one extremely long form and just let my users tab through the data themselves? Or is there some sort of alternative form that I haven't thought of?
I broke it up into multiple short pages based on this question, but I'm not sure if it applies because the data is so repetitive, and the verbiage on the forms is identical for nearly 32 pages.
Update: This image may help you understand what I'm doing so far http://www.wegnerdesign.com/files/6fa41u