Use cases provide a beneficial means of project planning because they clearly show how people will ultimately use the system being designed. This guide provides software developers with a "nuts-and-bolts" tutorial for writing use cases. It covers introductory, intermediate, and advanced concepts, and is suitable for all knowledge levels.