You should decide on a main form. From your description, the hardward form might be best. Your hardware form would have lookup fields that would allow you to select the software, user, location, etc…
All your forms would have a unique ID ‘computed when composed’ field (@unique). Then your lookup views (for software,user,location) would have a column displaying the item text|uniqueID.
So when your hardware form is saved with all the associated attributes selected, it will be ‘linked’ to the user (etc) because those field values will contain something like this for user…”Joe-Ann Schmoe|MUE-5684″
Even if Joe-Ann gets married and changes her last name…her UniqueID won’t change.
Then your all-in-one view is simply a Hardware form view with those field values formated to your liking.