Which non-functional requirement is a disadvantage for a two-tier architecture?
I won't agree with D, since Manageability is advantage with two-tier architecture, small architecture are easy to manage. I will go with B reliability, as I have 2 tier applications always crashing or not responding.
I agree with D. A two tier app is usually a client server application. Managing the distributed version on the client is a lot more work than managing a web app where the user gets the "software" (UI) real time.
I don't see why a client server app would be less reliable. Remember that it isn't about your experiences. It is about the general case.
Do not just look at it from small architecture point of view. Think what will happen if the user base for a two-tier architecture is larger one. Distributing the latest version on every user machine is a pain area. Whereas in Web application is it just few places where you need to upgrade to the latest version and it will be available to "n" number of users.