Reference no: EM132992260
ITAP3009 Software Analysis, Design and Architecture
Lab Tutorial 5
Review Questions
1. What do class diagrams illustrate?
2. What is a design class diagram?
3. How is a design class represented in UML?
4. Why are references to other objects not shown as attributes in class models?
5. When do you model a concept as an attribute rather than as a class?
6. Understand when to model a property as an attribute or as an association.
7. What is a role?
8. What is an association class and how is it represented in UML?
9. How can a class diagram with association classes be converted to an equivalent class diagram without association classes?
10. What are the navigability symbols and what do they represent?
11. What does it mean when an association in a class diagram does not have a navigability symbol?
12. How is inheritance represented in a design class diagram?
13. What is multiple inheritance?
14. Understand when to use associations instead of inheritance.
15. Given a design class diagram you should be able answer questions about the information it captures.
16. Given a program you should be able to draw a class diagram of its structure.
17. Given a textual description of a problem you should be able to draw a class diagram.
18. What is an object diagram?
19. Understand how a class diagram can be used to determine of an object model is valid or not.
Practice Questions
1. Explain the following class diagram.
2. Explain following class diagram in your words. Check carefully on the relationships.
3. Create a class diagram for the student admission system. An admissions form includes the contents of the form, SAT information, and references. Additional information is captured about students of alumni, such as their parents' graduation year(s), contact information, and college major(s).
4. Think about your school or local library and the processes involved in checking out books, signing up new borrowers, and sending out overdue notices, all from the library's perspective. Draw the class diagram for a library. Clearly note any assumptions made.
Lab Tutorial 6
Review Questions
1. What are the various types of interaction diagrams?
2. Construct a SSD based on the information provided:
Model a scenario of the Withdraw Money use case of a Bank ATM system. The user is able to make withdrawal of money. The system employs a standard procedure of validating the card and account holder's password.
Ideal Main Flow of Events:
• Customer arrives at the ATM machine and inserts a bank card.
• The system requests for user authentication (request PIN number). • Customer inserts PIN number.
• System prompts user to select services.
• Customer request withdrawal of money.
• System prompts the amount of withdrawal.
• Customer enters withdrawal amount.
• System displays success of request message, ejects card and dispense money.
• User collects card and money.
3. To give an exam, an instructor first notifies the students of the exam date and the material to be covered. She then prepares the exam paper (with sample solutions), gets it copied to produce enough copies for the class, and hands it out to students on the designated time and location. The students write their answers to exam questions and hand in their papers to the instructor. The instructor then gives the exam papers to the TAs, along with sample solutions to each question, and gets them to mark it. She then records all marks and returns the papers to the students.
Draw a sequence diagram that represents this process. Make sure to show when is each actor participating in the process. Also, show the operation that is carried out during each interaction, and what its arguments are.
Lab Tutorial 7
Review Questions
1. Name one stakeholder that would not normally review the architecture?
2. Briefly describe one of the major architectural patterns.
3. There are six main software architecture qualities. Name three of them.
4. Why is it important to document the architecture rationale?
5. What are the various architecture views? Discuss them briefly.
6. Discuss whether this statement is true or false: "Every software system has a software architecture".
7. Choose the most appropriate architectural pattern (one) for the description below.
Wants to split a system into a number of computationally independent execution structures (groups of software and hardware) such as database, business logic, web interface and client, connected by some communication media. The structure is chosen to provide a specific server environment optimized for operational requirements and resource usage.
Attachment:- Software Analysis, Design and Architecture.rar