Consider the following requirements of the library project

Consider the following requirements of the library project Students register new course(s) (open for the current semester) through a two steps process

Step 1. Student chooses course(s) (from the opened courses that she can register) and send them to the advisor for approval (Selected courses can not exceed 30 credits)Step2. Each advisor use the system to approve the selected course(s) for each student. (Just select and approve. Do not consider dropping course(s) or adding new ones) For these requirements answer the following questions1. Write down two separate uses cases (one for each step)-(Only success story scenario with rules will be enough) (10)2. Define System Sequence Diagrams (SSD) for each use case (SSD not Sequence diagram) (10)3. Define the domain model that will be used in design process. (10)4. Design each use case by defining a Sequence Diagram for each SSD event. Use GRASP patterns to assign responsibilities. (50)5. Implement use case defined for step 1. (30)Notes – Check SSD diagrams from your book. SSDs and Sequence Diagrams are different things. – You can use the Domain Model from your Phase 2 report. But new concept(s) may be necessary for the new requirements – For each responsibility assignment in the Sequence diagrams, write down the Grasp Pattern type (controller, İnfo Expert ext.) and shortly explain the choice – You will implement only 1 use case (defined for step 1) – There must be one to one mapping between design and implementation (same classes, methods and associations)