Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you handle form customizations for different customers?

In our application we sometimes have to make minor GUI modifications for different customers:

  • One customer has an input field the others don't have.
  • Another customer has all default fields but one of the optional input fields is mandatory.
  • A third customer has the default fields, but one field has its caption changed
  • A fourth customer has several new input fields and one existing multiline input field has to be changed to a single line input field (to make room for the new fields)
  • ...

(Note: Although these examples might sound awkward, those are things our customers asked for)

How do you handle these cases?

  • In general
  • In Java/Swing

Currently we designed the form in the most common way. At runtime we make adjustments like hiding, resizing or repositioning fields. On input validation we validate the contents depending on the active customer.

like image 743
Daniel Rikowski Avatar asked Dec 10 '22 22:12

Daniel Rikowski


1 Answers

There are a couple of different ways to go about this. However, it's very situational dependent.

  1. Instead of adding different customer logic in the same screen, have a different screen per customer with a default one used by everyone.

  2. Custom builds or customer branches. Although this can get pretty complicated.

  3. Do exactly like you've done and embed customer specific logic in the screens.

  4. Use some type of rules engine to drive your interface.

like image 152
NotMe Avatar answered Dec 12 '22 11:12

NotMe