Getting Started - Project 0
Read it here.
Project Information
CS/INFO 530 has a substantial, multi-part programming project,
which will be done individually.
Individual projects is a new feature,
and merits some discussion in lecture.
This semester we want to use the loaner laptops
Your project will:
-
support atomic transactions.
-
support authenticated sessions and encrypted data.
-
support a mix of transactions that includes some very frequent small
transactions as well as less frequent large transactions.
-
be scalable–you should be able to argue
on paper and to show experimentally that your design
could scale to large numbers of users simply by adding hardware.
This argues that large transactions should perform well,
and that large numbers of small transactions should perform well,
achieving a high degree of parallelism.
-
be highly available–your design should allow for appropriate
replication/redundancy, failover and queueing techniques
to eliminate as many single points of failure as possible.
-
involve integrating a simulated (i.e. supplied by us) legacy
application into the site functionality.
There will be a default project with checkpoints
that everyone will be expected to implement.
In addition, there will be a few optional extensions
you can choose from,
or design your own.