Architecture vs Implementation