E20 · Schnappinger/argoUML/org.argouml.uml.diagram.deployment.ui.UMLDeploymentDiagram

Full sample results

Scores

MethodScoreScaleDataset rank
(0–100)
GPT-6.1 Sol14.670–20; mean of three runs
21.1Δ 9.2
DeepSeek V4 Pro140–20; mean of three runs
29.9Δ 18.0
BTTF0.4650–1; higher is more readable
41.6Δ 29.7
Human2.291–4; original rating
11.9

Loading feature diagnosis…

Source code

GPT-6.1 Sol explanations

Run 1 · 14/20

Code Structure: Methods are logically separated into initialization, toolbar actions, relocation, and diagram-element handling, although the class contains substantial repetitive boilerplate.

Nesting: Control flow is mostly shallow; long else-if chains and nested constructor expressions add some visual complexity.

Clarity of intent: Descriptive method names and model-type checks communicate purpose, but abbreviated locals such as gm, lay, er1, and er2, opaque boolean arguments, incorrect constructor documentation, and an empty exception handler reduce clarity.

Code length: Repeated lazy-initialization getters, redundant documentation, and duplicated type checks make the file unnecessarily lengthy.

Action granularity: Statements generally perform one action each, with constructor composition remaining understandable.

Reading flow: Section grouping and consistent getter patterns support scanning, but mixed tabs and spaces, inconsistent wrapping, lengthy historical comments, and scattered declarations interrupt the flow.

Run 2 · 15/20

Code Structure: Responsibilities are separated into constructors, initialization, toolbar getters, relocation, and element creation, although the class contains substantial boilerplate.

Nesting: Control flow is shallow, generally limited to single conditionals and one nested loop; nested constructor expressions add some visual complexity.

Clarity of intent: Descriptive method and type names make most behavior understandable, but abbreviated variables such as gm, lay, rend, er1, and er2, an empty catch, and incorrect constructor documentation reduce clarity.

Code length: Repetitive lazy-initialization getters, long type-check chains, and redundant comments make the file unnecessarily lengthy.

Action granularity: Statements generally perform one action per line, with sensible separation of initialization steps.

Reading flow: Related methods are grouped and patterns are predictable, but inconsistent indentation, excessive line wrapping, and uneven comment quality interrupt scanning.

Run 3 · 15/20

Code Structure: Responsibilities are separated into constructors, initialization, toolbar getters, relocation, and element creation, although the class contains substantial boilerplate.

Nesting: Control flow is shallow, generally limited to one conditional or a loop inside a conditional; nested constructor expressions add visual complexity.

Clarity of intent: Descriptive method names and model predicates convey purpose well, but abbreviated variables, opaque boolean arguments, an empty catch, and incorrect constructor documentation reduce clarity.

Code length: Repetitive lazy-initialization getters and long type-check chains make the file unnecessarily lengthy.

Action granularity: Statements generally perform one action per line, with readable separation of initialization and updates.

Reading flow: Grouped methods and consistent getter patterns support scanning, but mixed indentation, uneven line wrapping, verbose historical comments, and misplaced metadata interrupt the flow.

BTTF feature contributions

Score 0.465 / 1