Final Examination
CSci 555 / Neuman-Obraczka Fall 1998
Directions
for completing exam
-
(50 points) Your company is building an electronic mall to be accessed
over the Internet. Your company plans to distinguish itself from
its competitors by stressing the performance, reliability, security, and
ease of use of your system.
An electronic mall provides services to its merchants, including the
check modification. software to display and market their products, accept
orders, clear payment for orders, and communicate with customers.
The infrastructure supporting these functions is implemented by the online
mall, and shared by the merchants. Data on orders is provided to
the merchants for shipping, and depending on the merchant and the form
of payment, payment for orders may be collected and cleared by the mall.
Alternatively, payment information is passed on to the merchant for changed
this sentence slightly.
processing.
You have been asked to describe the features of your design that affect
performance, reliability, security, and ease of use. In the questions
that follow, there is no single correct answer. However, there are
many answers that are wrong. Your answers should be plausible and you should
argue why they are correct or likely, while avoiding answers that are clearly
wrong. Don't forget to consider the costs of particular features
when considering the feasibility of your design.
-
(10 points) Describe the components of the system from the user interface
through order fulfillment. Where are these components implemented,
who controls each part of the system, and what software will be used?
What kinds of information will be maintained by the system and where will
it be stored? How might the ease of use requirement affect your answer?
-
(20 points)Describe the techniques that you will use to improve the reliability,
availability, and performance of the the system. Describe the techniques
in sufficient detail to show how each technique is applied and to which
parts of the system. What services will your system be dependent
upon, and who controls those services? What kinds of failures will leave
your system unavailable. What are the costs or drawbacks of the steps
you have taken.
-
(20 points) Describe the methods used to protect your system, the users
of the system, and the payment methods supported by the system. Is
there anything special about the high level structure of your system that
improves its security, or that improves the performance of the components
of the system supporting security? What measures might you take to improve
the security of the system specifically for the end customer, and to promote
user privacy?
-
(50 points) The Next-Generation Internet will enable several next-generation
multimedia applications. Betting on the availability of this communication
infrastructure, USC has hired your start-up company to design a virtual
classroom system. The system will enable fully interective classrooms
accommodating local as well as remote students. Students will be
encouraged to purchase a relatively inexpensive notebook which they will
use in class to download class notes and annotate them. Classes (both
audio and video) will be broadcast to remote sites and remote students
will be able to ask questions and participate in class discussions.
Students enrolled in a class will be able to participate in fully interactive
discussion sessions among themselves and the TA. The system will
also support assignment submission, posting of assignment and exam keys,
and group projects.
-
(20 points) Given the trends in kernel design discussed in class, which
one would you choose to base the design of the system's kernel? Why?
Would you use the same kernel for all components of the system? Justify.
What services would be provided by the kernel(s)? What services would be
provided outside of the kernel? Justify.
-
(20 points) For each of the supported functions listed above: what is the
corresponding file access/sharing pattern? Where would the files
be stored? If files are shared, how would maintain consistency? Would
you use caching? If so, would you cache all types of files? Given
the cache consistency mechanisms discussed in class, which one would you
employ and why (discuss the tradeoffs in setting the parameters of the
consistency mechanism of choice). Would you use replication?
Would you replicate all types of files? How would you keep consistency
among replicas?
-
(10 points) Since disks are reasonably inexpensive, which function(s) supported
by the system would justify the use of an array of disks? What would be
the benefits and drawbacks of using an array of disks as opposed to replication?