Source-Code Comprehension Tasks Supported by UML Design Models: Results from a Controlled Experiment and a Differentiated Replication