Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Building a Collaborative Application | Topics in Computer Science | COMP 790, Assignments of Computer Science

Material Type: Assignment; Professor: Dewan; Class: Topics in Computer Science; Subject: COMPUTER SCIENCE; University: University of North Carolina - Chapel Hill; Term: Fall 2006;

Typology: Assignments

Pre 2010

Uploaded on 03/11/2009

koofers-user-1ye
koofers-user-1ye 🇺🇸

10 documents

1 / 2

Toggle sidebar

Related documents


Partial preview of the text

Download Building a Collaborative Application | Topics in Computer Science | COMP 790 and more Assignments Computer Science in PDF only on Docsity! Comp 790-063, Fall 2006 Building a Collaborative Application Using an MVC-based Framework Date Assigned: Thu Sep 14, 2006 Completion Date: Tue Sep 26 Objectives:  Implement a collaborative application.  Understand how a collaboration framework is designed.  Understand how a collaboration framework can be extended. In this assignment you will design and implement an N-user IM application of your choice using the Sync framework. The library for it, syncall2.jar, is available from \\dewan-cs\deposit\790-063. Ignore sync documentation available from the web as I have changed Sync dramatically in the last month. The PowerPoint slides and LM recordings form the current documentation. The important part of the assignment is creation of appropriate shared models. You are free to add your own views to the model, but I recommend you use SyncObjectEditor for generating the user- interface. Do not worry about the nature of the user-interface as what is important is the information shown to the users. As you are concerned only with defining model objects, you will write very little code. However, as we have seen in class lectures, there are several subtle issues in defining replicated objects. Almost all of them are exercised in this assignment. Therefore, study the lecture material carefully before embarking on the project. The assignment is broken into three parts to allow you to incrementally build it. Basic IM Initially, build a basic IM that allows each user to enter an input string and shows all users all the history of entered strings in the same order. Each input should be prefixed with the name of the user who entered it. The input is appended to the history when the user hits Enter to commit it, when the input field is cleared. You should make no assumptions about the number of users sharing the IM object at any time. The name of the user should be an argument to the main program started by the user to start the collaboration. IM with Incremental Feedback The application should allow each user to determine the users who have edited but not committed their input fields. For extra credit, you can try, as IM tools do, to distinguish between input fields that (a) are being actively edited, (b) have been edited but later cleared, and (c) have text that is not being actively edited. As you are not writing your own user-interface, you will need a way to get editing events from an uncommitted text field. You cannot do so if you are displaying a String property. However, if you display a property of class bus.uigen.AListenableString as a textfield, you can register for and receive Vector events, as mentioned in class. In addition, when the user hits Enter, the setter method for the property is called.
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved