• I think that sometimes the friction exists because of a fundamental lack of understanding about the longevity of different software artifacts and the effort it takes to change them.

    If we consider database schemas and .NET web services, for example, it is easy to alter an algorithm applied in a web service as it just requires a redeployment of, perhaps, just a single file whereas as change in a column definition may require changes to multiple views and stored procedures, constraints, security, other applications as well as a possible "data fix".

    3GL programmers should be very strict when it comes to their interfaces but are generally more free to be relaxed when it comes down to the implementation. Similarly, perhaps DBAs can be more relaxed with the stored procedure implementations compared to their interface (e.g. any exposed views), the logical model and the physical implementation. After all a stored procedure's internal implementation can be altered without necessarily affecting any calling code.

    That said, we should all be trying to do they best job we can under any given circumstances all the time. Laziness (in knowledge or implementation) due to "agility" is no excuse.

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!