PROMPT 1: Architectural Context Analysis (40 points)
We Keep You On Time (WKYOT) is a small chain of about twenty watch-repair shops located in major metropolitan areas in the eastern part of the United States. WKYOT stores repair and restore both mechanical and electronic watches (excluding smart watches). WKYOT serves primarily individuals but it also has some commercial customers, and the company is interested in differentiating between these two types of customers. In most cases, a customer brings an item or a set of items to the shop for either a specific repair or a more comprehensive restoration. During an initial conversation with a customer, a WKYOT expert evaluates the watch to be repaired and provides the customer with an estimate (separately for each item if there are multiple items). The expert also provides an estimated repair schedule. When a job is completed, a repair technician presents the watch for review by a store manager. If everything is OK, the manager sends a text message to the customer, letting him know that he can pick up the watch. The customer comes to the store to get the watch and pays for the work. A WKYOT expert asks the customer to review the results of the repair, and if the customer has comments, WKYOT wants to keep track of them. If the customer is not satisfied and the problem cannot be fixed immediately, WKYOT will have to initiate an emergency repair process.
a. Based on this description, which types of client devices does the system utilize? What are the user roles for each client device type?
b. What type of network connectivity does the organization need within its stores?
c. Which elements of the system require connectivity between the company and its customers using the public internet? Please feel free to make assumption on details which are not provided in the case.
d. Based on this description, what are the most important non-functional requirements for this system? Please feel free to make assumptions about the case.
e. Identify candidates for separate applications within the system.
———————————————————————————————————————————————————————————————————-
PROMPT 2: Non-Functional Requirements Evaluation – Architectural Context (30 points)
Consider the following case and identify any violations of non-functional requirements using the FURPS+ categorization. State those requirements in the way they should have been considered at the time when the system was designed and constructed.
A large department store chain maintains a wedding registry that is intended to allow engaged couples to identify products from the store’s inventory as potential wedding gifts and also allow wedding guests to select and purchase gifts to be shipped to a specific couple. From the beginning, the system has suffered from problems that the users have complained about. Several times, a particular gift intended for one couple has been shipped to another one for no identifiable reason. Users have complained that after a product is selected from the inventory, it frequently takes thirty seconds or more until it shows up in the list of items selected as gifts. Customers have complained that the pricing that the system offers to them varies—at times seemingly randomly. There is no way for the customers to search for a product by name; products can only be accessed through a hierarchical list of categories. When the store wanted to expand its wedding registry to other types of events (baptisms, bar/bat mitzvahs, and so on), they found out that the changes would require a major programming effort at a cost that is close to half of the original investment. In one particularly embarrassing episode, the system revealed the identities of gift givers to anybody who was using the system.