You will read through the fake client's description and extract an essential set of requirements, involved entities (e.g., the users), and the relationships between requirements and entities. Your assignment submission will include the following work products:
1. A list of at least 20 use cases, each one summarizing a functional requirement of the system in a sentence or two. This is also a good place to indicate possible security threats. You can specify security threats and/or system constraints either with individual use cases or as separate list items, or both. This list should be concise and meaningful.
2. A list of definitions of key terms used by the software system. Indicate which definitions are objects, i.e., data structures that the system will use/manipulate.
3. A list of the user types of the system and other entities external to the system. You will also indicate under each entity type the use cases to which the entity has access (i.e., who can do what). For the use cases, you only need to refer to specific use cases in the list produced in #1 (utilize a use case id or name).
4. A Use Case Diagram that illustrates the relationships between entity types and use cases.