Note that the waterfall model is a very dosciplined approach to software development. It does however have a major disadvantage in that the client does not see anything concrete in the way of running code unitl the product is finished. This means that a client may find out that what she gets is not what she had expected.