CS3342-MidTerm-2019-SemB
软件设计代考 The sports center has a various of facilities and needs a Facilities Booking System to ease the booking procedure. A user can make a
Question 1 – Software Engineering in General (10 Marks): 软件设计代考
- Change cannot be easily accommodated in most software systems, unless the system was designed with change in mind.
a. True
b. False
2. Software Engineering is best described as:
a. the practice of designing, building, and maintaining off-the-shelf software from prefabricated parts.
b. the practice of designing, building and maintaining ad-hoc software without the use of formal methods.
c. the practice of designing, building and maintaining reliable and cost-effective software using standard techniques.
d. the practice of designing, building and maintaining fast and flexible software specifically for Engineering applications.
e. the practice of designing, building and maintaining flashy, cheap and buggy software engineered to generate large initially sales and an on-going market for updates.
3. System maintenance is necessary because: 软件设计代考
a. Humans never get it right the first time.
b. The deployment platform may change over time.
c. The user's needs may change over time.
d. All of the above.
e. None of the above.
4. In requirements validation the requirements model is reviewed to ensure its technical feasibility.
a. True
b. False
5. A software process model is: 软件设计代考
a. A representation of the way in which software is used
b. A representation of the way in which software may fail
c. A representation of the way in which software processes data
d. An attractive young person used in the process of selling software
e. A representation of the way in which software is developed
6. In an analysis of some of the life cycle models, we can conclude that the __________ model is the best.
a. Waterfall
b. Spiral
c. XP
d. Formal method
e. Re-use
f. None of the above
7. The five general phases in the Spiral model are: 软件设计代考
a. Analysis, Design, Engineering, Testing, and Payment
b. Analysis, Design, Implementation, Testing, and Review
c. Review, Decision, Engineering, Acceptance, and Planning
d. Review, Risk-analysis, Design, Implementation, and Planning
e. Review, Risk-analysis, Prototyping, Engineering, and Planning
8. Which of the following is not a disadvantage of the prototyping process model?
a. Assumes a linear development approach
b. Document is often sparse or completely absent
c. Not really a complete development methodology
d. Product is not a complete system but may be treated as such by management
9. Requirements specifications that are written in a natural language such as English tend to have problems that include 软件设计代考
a. Contradictions
b. Ambiguities
c. Omissions
d. All of the above
e. None of the above
10. A requirements specification is:
a. A rough list of things that the proposed software ought to do.
b. A formal list of things that the proposed software must do.
c. A precise list of things that the proposed software ought to do.
d. A mathematical specification of the exact behavior of the proposed software.
e. An estimate of the resources (time, money, personnel, etc.) which will be required to construct the proposed software.
Please complete the following table; please provide a single best answer from choices.
Question 2 软件设计代考
The City Bank is developing a new software system, allowing their bank operators to
1. Register a new account for customers (function: registerAccount)
2. Search for an existing account (function: searchAccount)
3. Because it is a US bank, it needs to display total account balance in USD (function: calcullateBalance_USD) Please study the following code listings for class Account and class AccountController
Question 2a - Roles of Variables (5 Marks)
Table 1. Roles for Variables in Software Programs
Based on the code listings of class AccountController, correctly classify the role of each variable in the table below. You may use Table 1 for your reference. (5 Marks)
Question 2b – Class Diagram (5 Marks) 软件设计代考
Based on the code listings of class Account and class AccountController, draw a complete class diagram. Correctly show all the attributes and operations, as well as correctly show their class association using correct UML notation (hint: association/aggregation/composition).
Question 2c – Sequence Diagram (10 Marks)
Based on the code listings of function AccountController.registerAccount, complete the following Sequence Diagram with full details.
Question 2d – Design Principles and Patterns (10 Marks)
The current design of the class Account is restricted to a single type of Account. The City Bank is planning to differentiate their valued customers into 2 account types, so that customers receive different deposit interest rates according to their deposited balance.
They are:
1. Account Type = Standard (If Balance > $0.00, Cash Deposit Rate is 1.0%)
2. Account Type = Premium (If Balance > $10,000, Cash Deposit Rate is 2.0%) 软件设计代考
We will need the function getDepositRate() accordingly (for either Standard or Premium).
How do you modify the original design to provide different types of Account, so that the bank can easily upgrade a customer from Standard to Premium account and downgrade a customer from Premium to Standard, and to provide different deposit rates accordingly?
Which design pattern do you think it is most suitable? ______State Pattern_______ (2 Marks)
Like your solution in 2b, draw a modified/extended class diagram in here. (Showing only affected parts shall be sufficient to illustrate the concept) (8 Marks)
Question 3 – Software Requirements (20 Marks) 软件设计代考
Case Study: Sports Facilities Booking System
The sports center has a various of facilities and needs a Facilities Booking System to ease the booking procedure. A user can make a booking via the system. First, he needs to check the available time slots of the
facilities and select his preferred facility and time slot. Then the system will lead the user to the payment page. The user can pay the booking fee by the credit card. Also, he can choose to delay the payment and complete it at the reception of sports center. Once a new booking is created, the system will update the booking status timely.
The user can view his booking record for details. If he cannot go to the sports center on the booked time, he may cancel the booking or alter it to another available time.
The cleaners are responsible to clean the sports courts after each booked slot. They can view the occupation timetable of all the courts in the system. 软件设计代考
The manager can view the statistics info of all the facilities, including daily incomes. He can also view the occupation timetable of the courts. Besides, some facilities need periodic maintenance. The manager should update the facilities information before and after the maintenance. Based on the description of the Sports Facilities Booking System above, the following shows the use cases and actors in the system.
Based on all the given information above: Draw a complete Use Case Diagram of the Sports Facilities Booking System, you must utilize <>, <> with correct arrows when possible, clearly indicating conditions for extension points if any. (20 marks)
发表回复
要发表评论,您必须先登录。