Practicum OOP -- CORBA
assignments
FAQ,
hush,
mail list,
groups,
results,
(
1996,
1997,
)
Compilation by Alessio Raedelli
Difficulties are assigned on a scale from 1 (easiest) to 4 (most difficult),
and depends only on the difficulty of the CORBA dependent design and
implementation, not on the user interfaces. In all this assignments think
with care about the security side! CORBA as it is now does not offer any
warranty about who's talking with a server!
* Games:
- multiplayer games
Difficulty: 1
(E.g. chess or draughts)
- client/server games
Difficulty: 1
E.g. muds, monopoly, risk
* Office:
- messaging system
1) bulletin board
Difficulty: 4
The system should support:
* public areas (everyone can post and read).
* restricted areas (some group of persons can
post and everyone can read).
* private areas (some group of persons can
post and read messages).
* ...
Optionals:
* interface with an existing e-mail system to
archive a 'mailing-list' effect.
2) personal mail system
Difficulty: 3
The system should support the Message Distribution
Agent (MDA) part of a mail-system. Look at procmail
for an implementation which uses standard technologies.
* arrival of new messages
* retrieval of new messages
* forwarding of new messages
Optional:
* support for the POP3 protocol
- distributed TODO list
Difficulty: 1
The system should support:
* a public TODO area.
* a private TODO area for each person (think about
security, and how to implement it).
* adding an item to the public area.
* assigning an item to a private area (optional:
restrict this operation to some users)
* items priorities
Optionals:
* ...
- distributed appointments list
Difficulty: 2
The system should support:
* a calendar viewer
* insert appointments in the calendar
* warn the user of an appointment
Optionals:
* view and insert appointments in someone else
(think about security and how to implement it)
* interface to an e-mail system as early-warning system
For a working example have a look at SunSoft's dtcm (to be
found in /usr/dt/bin/dtcm), or MicroSoft's Schedule+
- conferencing tools
Difficulty: 2
Think about chatting tools (something like the Internet Relay
Chat), MBONE alike tools.
- distributed drawboard
Difficulty: 1
* Software Development
- bug tracking
Difficulty: 4
The system should support:
* submitting a new bug
* assign a bug to an programmer
* assign a priority to a bug
* add some not to a bug-submission
* add a solution to a bug-submission
Optional:
* notify some user-group of any modification to the
submission.
For working examples of commercial products see:
* PureSoftware's PureDDTS
* GNU gnats
- distributing editing
Difficulty: 3
Write a source management system, possibly based on top of some
revision control system (RCS, SCCS). For a working system look
at SunSoft's workshop (/opt/SUNWspro/bin/workshop)
* System Management
- system's failure track system
Difficulty: 3
The system should support:
* early warn of a full file system
* early warn of full swap space
* centralized administration
* multiple host support