How do you "fit" these two in the system? I'm doing a card modeling system to identify all the potential models/class for the system. In my modeling I've identified both to have distinct responsibilities. For now I've extended both from the Customer class/object in the BDM. Customer is associated with a Profile class/object w/ multiplicity 1 to 1. Profile is associated to CreditCard as 1 to 0..*. The 0 in the 0..* is for a Travel Agent(no credit card). I've put enough notes inside my Class Diagram to explain this.
This is what's pushing me to distinguish two kinds of users.
In a web scenario it is absolutely true that when a customer logs in, he/she will have a profile. However, for an application scenario it is a travel agent who does the booking for the customer. The moment a TA logs in he'd have a profile, isn't it? But once a customer comes in and ask for a booking then that is when another kind of profile is created, one that is for the current customer being serve. The profile for the TA is one that is pass around application events.
I'm following this: ClassResponsibility/Operation ============================= Web Customer book own flight Travel Agent book flight for a customer