This assignment has 2 part(s) and is due Sunday, 3 August, at midnight (i.e., it’s late at 12:00AM Monday). This is an individual assignment. Please include your name and the assignment number in the name of the file you submit.
Problem Description (Refined version of Assignment 4):
You’re developing the software for a company that monitors home alarm systems. After reviewing some of the your outline of patterns you would use, our customer that you create a couple diagrams of what you architecture looks like using the notations described in our book “Software Architectures in Practice” and that you apply the techniques described in Chapter 14 to analyze your architecture to verify that the architecture will satisfy the requirement of the system. The have provided a revised description (next paragraph), with some more details.
There will be one sensor for each door or window in the home that detects when they are opened. If the home alarm system is activated, the home (sub)system must (1) turn on the alarm within 5 seconds of sensing the opening of any opening other than a door next to a control pad, which allow 30 for the user disarm code to be entered before the alarm is turned on, and (2) send an alarm to the Alarm Monitor Company’s central monitoring location within 15 seconds for an opening other than a door next to a control pad, and 45 seconds for a door next to a control pad. The system at the central monitoring location, (1) records the event, and (2) notifies a human operator what’s happening within 30 seconds of receipt of the alarm sent from the local home monitoring system, and (3) automatically dial the home, within 45 seconds of receipt of the alarm sent from the local home monitoring system, and hands-off the call to the operator, who will to attempt to verify that there is a break-in. If no one answers, or someone answers but doesn’t give the agreed to safe-word or give the in-trouble word, then the operator will notify the police within 1 minute if no one answers, or 2 minutes if call is answered. All actions taken are recorded.
Part 1 (5 points): Create an architecture
Create an architecture for the whole system based on the patterns you choose in the last exercise. (Is you decide to change patterns, describe the changes including why.) Your description should include the following:
- A diagram showing the Company’s Central Monitoring Center, and multi-homes being monitored.
- A diagram of the architecture for the Central Monitoring Center.
- A diagram of the architecture in a typical Home.
- A short description of each software component.
Use the notation described in the SWAIP book for now.
Part 2 (5 points): Describe the qualities that are important for the system.
Apply the appropriate techniques from Chapter 14 (or in the pattern description, if any) to verify that you architecture is likely to produce a system that achieves the quality goals you identified in Assignment 4 (i.e., minimums & maximums) and satisfies any constraints in the customer description (this constrains are qualities that you must achieve). If you need certain values, e.g. execution speed of the CPU or how many cores in the CPU, then either do some research on reasonable values make a list of the values you obtain from your research or any assumptions you made and give a reference to the source.
If you determine that for some reason, your architecture does not achieve your quality goals, then explain why. (You may find that some goals are not achievable).
Create a PDF file with your results for part 1 & 2.
Warning: you may be tempted to search the web for diagrams of this kind of system, or to copy another student’s work. It’s OK to look at them as a reference, provided you make note saying that you referred to <web address>. But you cannot copy & paste, or recreate a whole diagram(s) that you find in your report them here (especially without a note with a reference). Without a reference, any diagrams you find and use for all or part of your system is plagiarism, resulting at the least a zero score on the assignment and If I decide it is appropriate, I will fail you from the class. Keep in mind 2 things (a) if you found on the web, I can find it on the web, (b) I make small changes each in the requirements, which makes any diagram that make it likely that you wont find a diagram that exactly meets the specified requirements, which make it easy for me to spot likelysp copy.
I give this warning (1) just 2 nights ago, I caught 3 people cheating in SEN 944, (2) because every course, someone thinks they’ll sneak something by me, and some may have succeeded, but do you want to take the chance? (I won’t be sympatric even if you will get kicked out of ITU and your visa.) (3) I’m not happy when I have to fail someone.