I prefer the way Notes (for example) handles it. All
records/documents/views are in read-only mode until the user indicates
they actually want to edit. They then exclusively lock that record for
editing, with optional timeouts (in case their workstation crashes or
whatever).
This turns out to work well in many situations where you realise the
number of times you want to edit compared to the number of times you
want to view, is quite small. Stops users having to worry whether
anyone else is editing the record at the same time - the system simply
won't let them - no loss of data.
Andrew