When the names of parameters in a procedure call match the names of the procedure arguments, it contributes to a clearer, more readable code. However, when the names match but are passed in a different order than the method arguments, it indicates a mistake in the parameter order which will likely lead to unexpected results. == Noncompliant Code Example [source,vbnet] ---- Public Function Divide(ByVal divisor As Integer, ByVal dividend As Integer) As Double Return divisor / dividend End Function Public Sub DoTheThing() Dim divisor = 15 Dim dividend = 5 Dim result = Divide(dividend, divisor) ' Noncompliant; operation succeeds, but result is unexpected '... End Sub ---- == Compliant Solution [source,vbnet] ---- Public Function Divide(ByVal divisor As Integer, ByVal dividend As Integer) As Double Return divisor / dividend End Function Public Sub DoTheThing() Dim divisor = 15 Dim dividend = 5 Dim result = Divide(divisor, dividend) '... End Sub ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::../message.adoc[] include::../highlighting.adoc[] ''' == Comments And Links (visible only on this page) include::../comments-and-links.adoc[] endif::env-github,rspecator-view[]