IntJ Mobile Communication. Vol 2 No. 2. 2004 199 a day in the life of Jini: a peek at service-oriented architecture for internet appliances Billy Lim chool of Information Technology, Illinois State University, Normal, IL 61790-5150 E-mail: bllimilstu edu Corresponding author Hao Zheng Kosan Biosciences, 3832 Bay Center Place, Hayward, CA 94545 E-mail:zheng@kosan.com ith the advent of the web. mobiles and service-oriented technologies, many are looking forward to seeing how these technologies can hape our lives on a daily basis. This paper describes a project that is set out mulate the technologies in question through a day in the life of a knowledge worker in he project uses Jini, a distributed object computin nfrastructure that allows services to announce their presence and what they can do when networked together. This paper briefly introduces the architecture of plug and play and self-healing fea cenarios simulated in the day of the life of a worker, and reports on the challenges that lie ahead for the technology used and for the scenarios be realised Keywords: Jini technology: mobile computing: distributed object computing: service-oriented architectures: ubiquitous computing Reference to this paper should be made as follows: Lim, B and Zheng, H. (2004)'a day in the life of Jini: a peek at service-oriented architecture for internet appliances, Int J. Mobile Communication, VoL 2, No 2, pp 199-216 Biographical notes: Dr. Billy Lim is a tenured Associate Professor in the School of Information Technology of Illinois State University. He received his bs degree in Computer Science from the University of Toronto, Canada and MS and Phd degrees in Computer Science from the University of Louisiana at fayette, Louisiana. His research and teaching interests are in the areas of web development technologies, object-oriented(OO) amming, and new generation database management systems. He has published numerous journal apers in these areas and also presented papers in many intemational, national Hao Zheng received his bs degree (Chemistry) in 1995 and Ms degre )in 1998 both from Nanjing University, Nanjing, China. his Ms degree(Computer Science) from Illinois State He is currently working as a Research Associate in a biotech company at Silicon Valley, Califomia opyright o 2004 Inderscience Enterprises Ltd
Int. J. Mobile Communication, Vol. 2, No. 2, 2004 199 Copyright © 2004 Inderscience Enterprises Ltd. A day in the life of Jini: a peek at service-oriented architecture for internet appliances Billy Lim* School of Information Technology, Illinois State University, Normal, IL 61790-5150 E-mail: bllim@ilstu.edu *Corresponding author Hao Zheng Kosan Biosciences, 3832 Bay Center Place, Hayward, CA 94545 E-mail: zheng@kosan.com Abstract: With the advent of the web, mobiles, and service-oriented technologies, many are looking forward to seeing how these technologies can shape our lives on a daily basis. This paper describes a project that is set out to simulate the technologies in question through a day in the life of a knowledge worker in the 21st century. The project uses Jini, a distributed object computing infrastructure that allows services to announce their presence and what they can do when networked together. This paper briefly introduces the architecture of Jini, including its plug and play and self-healing features, describes the scenarios simulated in the day of the life of a worker, and reports on the challenges that lie ahead for the technology used and for the scenarios to be realised. Keywords: Jini technology; mobile computing; distributed object computing; service-oriented architectures; ubiquitous computing. Reference to this paper should be made as follows: Lim, B. and Zheng, H. (2004) ‘A day in the life of Jini: a peek at service-oriented architecture for internet appliances’, Int. J. Mobile Communication, Vol. 2, No. 2, pp.199–216. Biographical notes: Dr. Billy Lim is a tenured Associate Professor in the School of Information Technology of Illinois State University. He received his BS degree in Computer Science from the University of Toronto, Canada and MS and PhD degrees in Computer Science from the University of Louisiana at Lafayette, Louisiana. His research and teaching interests are in the areas of web development technologies, object-oriented (OO) programming, and new generation database management systems. He has published numerous journal papers in these areas and also presented papers in many international, national, and regional conferences. Hao Zheng received his BS degree (Chemistry) in 1995 and MS degree (Organic Chemistry) in 1998 both from Nanjing University, Nanjing, China. He also received his MS degree (Computer Science) from Illinois State University in 2002. He is currently working as a Research Associate in a biotech company at Silicon Valley, California
1 Introduction Over the past decade or so, the internet/web has dramatically transformed our societies and changed our lives in many different ways, from simple electronic news publishing to many forms(e. g, business-to-cons peer-to-peer, etc.), all of which can be done anywhere, anytime, and by anyone One of the advances in this net/web arena is distributed object computing in the form of internet appliances. This is where a client device(e.g, a PC, PDA, cellular phone)can communicate with, say, a net-aware refrigerator, which in turn can make a maintenance call to a repair store and order groceries from an online grocer.(IBM had a TV commercial that describes this very scenario to showcase the future of internet appliance computing)With the advent of mobile technologies [1] and location-based services [2] the ability to use a device such as a PDa to conduct business transactions(e.g, pay for a soda in a vending machine(another TV commercial on the future of computing), locate the nearest Starbuck coffee shop, etc. )is especially intriguing In the above example, all these devices are examples of internet appliances, and they communicate to each other via some common protocol. a protocol that has received a lot of attention is the architecture by Sun Microsystems known as JiniM[3-7]. Jini, created by Bill Joy, who is often known as the 'Edison of Silicon Valley,, leverages the unique distributed computing characteristics of Java technology, specifically its ability to move both code and data from machine to machine, to create a ubiquitous network One of the goals of Jini technology is to make adding an electronic device to a network as easy as plugging in the base unit of a new cordless phone- in other words, us network'or network plug and play. Another goal of Jini is to make distributed computing a near-term reality, i. e, allow computing capabilities to be shared among many diverse machines across a common network. Jini technology lets users easily access the needed power and features of any appropriate device on the network by creating federations'or communities of shared data, storage, and computing power. From the perspective of Jini, there is no real distinction between hardware such as a printer, scanner, or dishwasher and software such as Ms Word- everything is considered a service. That is why Jini is considered as 'service-oriented architecture'(SOA)[8, 9 a Jini-enabled service, when started, can spontaneously connect to a network and broadcast its presence and what it can do. a client can search the network, find the service, and use it without configuration. There is no need to set up an IP address, gateway or router,i.e, true plug and play that is'administration free. For instance, when plugged into a network, a Jini-enabled printer can broadcast its presence and capability. Then, a Jini-enabled digital camera can find the printer and send a picture to be printed With the popularity of wireless devices all around the world, one can imagine that a technology that supports spontaneous computing such as Jini will play a major role in today's IT evolution. This is because wireless devices, such as mobile phones, PDAs, and pagers, are ideal for joining dynamic, spontaneous networks. Indeed, because of the promises of Jini, many major vendors have already announced support for the technology. These companies are actively architecting Jini technology into a new breed of consumer products and services. It has broadened beyond the device space to encompass service delivery to and from enterprises as well. Examples of use of the technology by well-known organisations include Cisco's scalable communication framework, Ford's and Daimler Chryslers I cruiser telematics systems, and the Us
200 B. Lim and H. Zheng 1 Introduction Over the past decade or so, the internet/web has dramatically transformed our societies and changed our lives in many different ways, from simple electronic news publishing to e-commerce in many different forms (e.g., business-to-consumer, business-to-business, peer-to-peer, etc.), all of which can be done anywhere, anytime, and by anyone. One of the advances in this net/web arena is distributed object computing in the form of internet appliances. This is where a client device (e.g., a PC, PDA, cellular phone) can communicate with, say, a net-aware refrigerator, which in turn can make a maintenance call to a repair store and order groceries from an online grocer. (IBM had a TV commercial that describes this very scenario to showcase the future of internet appliance computing.) With the advent of mobile technologies [1] and location-based services [2], the ability to use a device such as a PDA to conduct business transactions (e.g., pay for a soda in a vending machine (another TV commercial on the future of computing), locate the nearest Starbuck coffee shop, etc.) is especially intriguing. In the above example, all these devices are examples of internet appliances, and they communicate to each other via some common protocol. A protocol that has received a lot of attention is the architecture by Sun Microsystems known as Jini [3–7]. Jini, created by Bill Joy, who is often known as the ‘Edison of Silicon Valley’, leverages the unique distributed computing characteristics of Java technology, specifically its ability to move both code and data from machine to machine, to create a ubiquitous network. One of the goals of Jini technology is to make adding an electronic device to a network as easy as plugging in the base unit of a new cordless phone – in other words, ‘spontaneous network’ or ‘network plug and play’. Another goal of Jini is to make distributed computing a near-term reality, i.e., allow computing capabilities to be shared among many diverse machines across a common network. Jini technology lets users easily access the needed power and features of any appropriate device on the network by creating ‘federations’ or communities of shared data, storage, and computing power. From the perspective of Jini, there is no real distinction between hardware such as a printer, scanner, or dishwasher and software such as MS Word – everything is considered a service. That is why Jini is considered as ‘service-oriented architecture’ (SOA) [8,9]. A Jini-enabled service, when started, can spontaneously connect to a network and broadcast its presence and what it can do. A client can search the network, find the service, and use it without configuration. There is no need to set up an IP address, gateway, or router, i.e., true plug and play that is ‘administration free’. For instance, when plugged into a network, a Jini-enabled printer can broadcast its presence and capability. Then, a Jini-enabled digital camera can find the printer and send a picture to be printed. With the popularity of wireless devices all around the world, one can imagine that a technology that supports spontaneous computing such as Jini will play a major role in today’s IT evolution. This is because wireless devices, such as mobile phones, PDAs, and pagers, are ideal for joining dynamic, spontaneous networks. Indeed, because of the promises of Jini, many major vendors have already announced support for the technology. These companies are actively architecting Jini technology into a new breed of consumer products and services. It has broadened beyond the device space to encompass service delivery to and from enterprises as well. Examples of use of the technology by well-known organisations include Cisco’s scalable communication framework, Ford’s and DaimlerChrysler’s IT cruiser telematics systems, and the US
I day in the life of Jji Army's reliable battlefield communication architecture. Also, the burgeoning growth of the Jini technology community has doubled its numbers to more than 50,000 developers in recent years [10] Recognising that the internet appliances phenomenon (using Jini or other chnologies)is probably one of the next big things for the internet/web, the project described in this paper extends a prior work [ll] and sets out to simulate more comprehensively internet appliances by using a collection of devices and tasks on a Jini network. The internet working of these devices and tasks and the way they work together on the network are described here. These simulated services include a jini-enabled calendar, refrigerator, grocery store, airline check in, printer, projector, gaming vendor, nd a jini client to interact with the services The details of the simulation scenarios are described in the following sections The significance of this project is that, from a high level, it gives sufficient evidence to demonstrate what service-based computing is all about and specifically what Jini services are and how the services are consumed in a Jini network. Also, this project could be used as the starting points for developing more complicated and comprehensive services in order to simulate completely a society with internet appliances. Readers wishing to understand and to get started with the burgeoning world of internet appliances can use this project as a reference The remainder of the paper is organised as follows. Section 2 describes the simulatio of various appliances. The technology under the hood is given in Section 3. Section 4 compares the technology used with some other alternatives. Lastly, the summary and future trends are given in Section 5 2 Simulation of genie: a Jini community of tomorrow Imagine a knowledge worker in the 21st century with all the cool technologies of tomorrow at his/her fingertip and now imagine that you can actually simulate this environment today! This is what this project, codename Genie, is set out to do To simulate some plausible scenarios that such a knowledge worker, named Jeannie (in this paper, Jeannie is the person who experiences the cool Jini technology whereas Genie refers to the simulation project), might be engaging in for a day, which includes a business trip the following scenarios are captured. The assumption made here is that Jeannie has a wireless PDA/phone combo that can be connected to the internet. This may be done using Bluetooth, 802. 1la(or b or g)Wi-Fi, or any other wireless technologies In the actual simulation carried out, each of the Jini services was represented by a PC Also, for simplicity, no authentication mechanism was incorporated. Here are the Jeannie wishes to check her schedule for the day and thus she connects her Pda to a entral calendar server that offers the jini calendar service she needs After checking her schedule, she leaves for the airport for a business trip to San Jose. On the way, she is notified on her PDa that the temperature of her refrigerator at home is not in the normal range(perhaps the kids at home are fooling around with the control panel! ) Jeannie then connects to the fridge service and accesses the control panel remotely. She adjusts the temperature(and perhaps calls the kids up about their behaviours) and realises that milk is low in the fridge
A day in the life of Jini 201 Army’s reliable battlefield communication architecture. Also, the burgeoning growth of the Jini technology community has doubled its numbers to more than 50,000 developers in recent years [10]. Recognising that the internet appliances phenomenon (using Jini or other technologies) is probably one of the next big things for the internet/web, the project described in this paper extends a prior work [11] and sets out to simulate more comprehensively internet appliances by using a collection of devices and tasks on a Jini network. The internet working of these devices and tasks and the way they work together on the network are described here. These simulated services include a Jini-enabled calendar, refrigerator, grocery store, airline check in, printer, projector, gaming vendor, and a Jini client to interact with the services. The details of the simulation scenarios are described in the following sections. The significance of this project is that, from a high level, it gives sufficient evidence to demonstrate what service-based computing is all about and specifically what Jini services are and how the services are consumed in a Jini network. Also, this project could be used as the starting points for developing more complicated and comprehensive services in order to simulate completely a society with internet appliances. Readers wishing to understand and to get started with the burgeoning world of internet appliances can use this project as a reference. The remainder of the paper is organised as follows. Section 2 describes the simulation of various appliances. The technology under the hood is given in Section 3. Section 4 compares the technology used with some other alternatives. Lastly, the summary and future trends are given in Section 5. 2 Simulation of genie: a Jini community of tomorrow Imagine a knowledge worker in the 21st century with all the cool technologies of tomorrow at his/her fingertip and now imagine that you can actually simulate this environment today! This is what this project, codename Genie, is set out to do. To simulate some plausible scenarios that such a knowledge worker, named Jeannie (in this paper, Jeannie is the person who experiences the cool Jini technology whereas Genie refers to the simulation project), might be engaging in for a day, which includes a business trip, the following scenarios are captured. The assumption made here is that Jeannie has a wireless PDA/phone combo that can be connected to the internet. This may be done using Bluetooth, 802.11a (or b or g) Wi-Fi, or any other wireless technologies. In the actual simulation carried out, each of the Jini services was represented by a PC. Also, for simplicity, no authentication mechanism was incorporated. Here are the scenarios: • Jeannie wishes to check her schedule for the day and thus she connects her PDA to a central calendar server that offers the Jini calendar service she needs. • After checking her schedule, she leaves for the airport for a business trip to San Jose. On the way, she is notified on her PDA that the temperature of her refrigerator at home is not in the normal range (perhaps the kids at home are fooling around with the control panel!). Jeannie then connects to the fridge service and accesses the control panel remotely. She adjusts the temperature (and perhaps calls the kids up about their behaviours) and realises that milk is low in the fridge
02 B Lim and H Zheng With the milk level low, Jeannie orders milk from an online grocer service and completes one of her weekly chores via the PDA. She usually does this from the control panel on the fridge. Note that there are already prototype refrigerators in the market place today that are equipped with cameras (e. g, one by Panasonic)to capture the contents of the fridge so that things like milk is low can be detected. When Jeannie gets to the airport, her PDa is recognised by the airlines check-in service and she is immediately prompted to check in. After pressing the'check-in button she is offered a confirmation screen to check in. when she confirms she is given terminal and gate information and the check-in process is echoed in the airline After handling Jeannes check in, the check-in service goes down. a second check-in service automatically wakes up to take over the load of the first one After a short flight, Jeanne gets to the destination. She suddenly realises she forgot to bring her presentation materials with her. So, she looks up a printer service and sends the materials remotely to the service for printing After picking up the materials, Jeanne goes to the venue of the meeting. There is a projector service available in the presentation room and thus Jeanne simply uploads her presentation to the projector and gives a fantastic presentation on Jini distributed Before heading back home, Jeanne thinks about her kids and their love for video games. To celebrate her presentation job well done, she approaches a game vendor at the airport. The vendor supports game service and thus Jeanne simply selects a game of interest, pays for the game via credit card, and downloads the game onto her pDa Now, each of the scenarios above is detailed with respect to its user interface and functionality. Note that each of the scenarios, where a Jini service is showcased, has a client interface and a'back-end' interface. The former is what a client such as a pda downloads to its machine when interacting with the corresponding service, and the latter represents the service itself. Its purpose in this simulation is merely to echo or show the 2. Calendar service In Figures 1 and 2, the client and back-end interfaces to the calendar service are depicted, respectively. They both have a calendar-like look and feel to save and undo ntries, and the client has an ad in the back-end service. ( Since the back-end represents the service itself, all changes made to the calendar are made in-place, and thus no refresh is needed. )Here, upon seeing the client panel, Jeannie sees that she has three items on her calendar for the day -fly to San Jose, make a presentation on Jini technology, and meet with the local
202 B. Lim and H. Zheng • With the milk level low, Jeannie orders milk from an online grocer service and completes one of her weekly chores via the PDA. (She usually does this from the control panel on the fridge. Note that there are already prototype refrigerators in the market place today that are equipped with cameras (e.g., one by Panasonic) to capture the contents of the fridge so that things like ‘milk is low’ can be detected.) • When Jeannie gets to the airport, her PDA is recognised by the airline’s check-in service and she is immediately prompted to check in. After pressing the ‘check-in’ button, she is offered a confirmation screen to check in. When she confirms, she is given terminal and gate information and the check-in process is echoed in the airline computer system. • After handling Jeanne’s check in, the check-in service goes down. A second check-in service automatically wakes up to take over the load of the first one. • After a short flight, Jeanne gets to the destination. She suddenly realises she forgot to bring her presentation materials with her. So, she looks up a printer service and sends the materials remotely to the service for printing. • After picking up the materials, Jeanne goes to the venue of the meeting. There is a projector service available in the presentation room and thus Jeanne simply uploads her presentation to the projector and gives a fantastic presentation on Jini distributed object technology. • Before heading back home, Jeanne thinks about her kids and their love for video games. To celebrate her presentation job well done, she approaches a game vendor at the airport. The vendor supports game service and thus Jeanne simply selects a game of interest, pays for the game via credit card, and downloads the game onto her PDA. Now, each of the scenarios above is detailed with respect to its user interface and functionality. Note that each of the scenarios, where a Jini service is showcased, has a client interface and a ‘back-end’ interface. The former is what a client such as a PDA downloads to its machine when interacting with the corresponding service, and the latter represents the service itself. Its purpose in this simulation is merely to echo or show the interactions behind the scene. 2.1 Calendar service In Figures 1 and 2, the client and back-end interfaces to the calendar service are depicted, respectively. They both have a calendar-like look and feel to save and undo entries, and the client has an additional button to refresh the entries that may be entered in the back-end service. (Since the back-end represents the service itself, all changes made to the calendar are made in-place, and thus no refresh is needed.) Here, upon seeing the client panel, Jeannie sees that she has three items on her calendar for the day – fly to San Jose, make a presentation on Jini technology, and meet with the local managers
A day in the life of jini Figure 1 Interface downloaded by client 网口区 9: 00 am flight to San Jose 11:00ar 2:00pm Give presentation about JINI 400pm er with local managers 5:00pm Refresh Figure 2 Calendar service provide 口区 9:00ar 12:00pm 3:00 4:00pm Dinner with local managers 5 Exit 2.2 Fridge service In Figures 3 and 4. the client and back-end interfaces of the refrigerator service are depicted, respectively. Both interfaces have a slider to control the temperature of the fridge, an indicator to show the milk level, and a button to order(a preset level of) milk. The difference here is that the milk indicator on the client panel is not editable, whereas the one on the back-end is(this is to simulate the fact that as milk is added to the fridge, the level can be changed)
A day in the life of Jini 203 Figure 1 Interface downloaded by client Figure 2 Calendar service provider 2.2 Fridge service In Figures 3 and 4, the client and back-end interfaces of the refrigerator service are depicted, respectively. Both interfaces have a slider to control the temperature of the fridge, an indicator to show the milk level, and a button to order (a preset level of) milk. The difference here is that the milk indicator on the client panel is not editable, whereas the one on the back-end is (this is to simulate the fact that as milk is added to the fridge, the level can be changed)
204 B Lim and H Zheng Figure 3 GUI control panel for the fridge client 画 Fridge gui for client Temperature 0304050 Milk Level(g)5 Order Milk xit Figure 4 Fridge back-end (service provider) t Fridge Back End Service Temperature. 1020304050 Order milk 2.3 Online grocer service To simulate the online grocer store, a back-end service is created(Figure 5 below ) Here, each time the Order Milk button is pressed(from either the GUI fridge client or the fridge back-end), the online grocer service echoes with a line on a terminal window te acknowledge receipt of the message Figure 5 Online store back-end(servi vider) sTore Back End Service 口|x Orders Recelved Milk order receied from fridge at Sun Jan 1602: 30: 52 CST 2000 Milk order receied from fridge at Sun Jan 16 02: 40 46 CST 2000 Milk order receied from fridge at Sun Jan 16 02: 40: 50 CST 2000 Process the order
204 B. Lim and H. Zheng Figure 3 GUI control panel for the fridge client Figure 4 Fridge back-end (service provider) 2.3 Online grocer service To simulate the online grocer store, a back-end service is created (Figure 5 below). Here, each time the Order Milk button is pressed (from either the GUI fridge client or the fridge back-end), the online grocer service echoes with a line on a terminal window to acknowledge receipt of the message. Figure 5 Online store back-end (service provider)
I day in the life of Jji 2. 4 Check-in service The most interesting and challenging service of this project is the check-in service. The client of the service is depicted in Figures 6 and 7. The former shows the passenger name, origin and destination of the flight, and the reservation code. Once the check-in button is pressed, the passenger is given a confirmation of the check in The confirmation tells the passenger the terminal and gate information. The back-end check-in service is depicted in Figure 8. Like the online grocer backend, it merely logs and echoes the check-in transactions initiated by the clients. Figure 6 Check-in service client □口 Last Name Firs Name heng Depart from Chicago Destinatio Seattle Reservation Code Check in Exit Figure 7 Check-in client- confirmation screen Resevation code Firs Name zheng Flight Numb 0033 Time 0:30am Termainal Gate 14
A day in the life of Jini 205 2.4 Check-in service The most interesting and challenging service of this project is the check-in service. The client of the service is depicted in Figures 6 and 7. The former shows the passenger name, origin and destination of the flight, and the reservation code. Once the check-in button is pressed, the passenger is given a confirmation of the check in. The confirmation tells the passenger the terminal and gate information. The back-end check-in service is depicted in Figure 8. Like the online grocer backend, it merely logs and echoes the check-in transactions initiated by the clients. Figure 6 Check-in service client Figure 7 Check-in client – confirmation screen
206 B Lim and H Zheng Figure 8 Check-in back-end service 网口区 Amencan Airline Checkin Record When the first check-in back-end service is down(here, this is simulated by explicitly hutting the service down with the exit button), the second check-in service is immediately started up automatically(Figure 9). It looks and behaves exactly the same as the first one, with the exception that it has the frame title ' Check-in Back-End Figure 9 Backupcheck-in service 國 CheckinBack End Service2 merican Airline Chec kir Record elevation code Last Name First Name Flight Number Deaprt 2.5 Printer service Once a printer service is located (and its services and location are checked out), its client can be downloaded, as depicted in Figure 10 below. It offers the typical nterface found in many printers. The back-end printer service is depicted in Figure 11 Like the online grocer back-end, it merely logs and echoes the printer jobs initiated by the clients
206 B. Lim and H. Zheng Figure 8 Check-in back-end service When the first check-in back-end service is down (here, this is simulated by explicitly shutting the service down with the Exit button), the second check-in service is immediately started up automatically (Figure 9). It looks and behaves exactly the same as the first one, with the exception that it has the frame title ‘Check-in Back-End Service 2’. Figure 9 Backupcheck-in service 2.5 Printer service Once a printer service is located (and its services and location are checked out), its client can be downloaded, as depicted in Figure 10 below. It offers the typical interface found in many printers. The back-end printer service is depicted in Figure 11. Like the online grocer back-end, it merely logs and echoes the printer jobs initiated by the clients
I day in the life of Jji 20 Fi 恐 Brothe rinter hp Laser.JetJINI PRINTER status Type LaserJet 1220SE PRINTER :e File Numhers of Copies aper color ●Back ○ Color □ Stapl Print Job Name Print Exit Figure 11 Back-end panel of the printing service g Print Service Back End Service □口 hp LaserJet 122USE JINI PRINTER Print Jobs ss Mon Feb 13: 50: 03 CsT 2002 Finish Clear Exit
A day in the life of Jini 207 Figure 10 Printing service client Figure 11 Back-end panel of the printing service
B. Lim and H. Zheng 2.6 Projector service In Figures 12 and 13, the client and back-end interfaces of the projector service are depicted, respectively. The client allows the user to browse the local device to pick a file for upload to the projector and the back-end logs the file transfer Figure 12 Projector service client 网口区 JINI PROJECTOR C:a client Projectorprojt2 htm File is uploaded to projector successful Figure 13 Projector back-end service pRojector Back End Serv JINI PROJECTOR Projector LO 2. htm Mon Feb 13: 03: 03 CST2002 2.7 Gaming service In Figures 14 and 15, the client and back-end interfaces of the gaming service are depicted, respectively. As can be seen, the client allows the user to browse the categories of the games to narrow down the search. Once a game title is selected, the details of the game are shown. Once picked, the game can be downloaded to a chosen directory. Of course, credit card information must also be provided. Like the other back-ends. this one simply logs the game purchase
208 B. Lim and H. Zheng 2.6 Projector service In Figures 12 and 13, the client and back-end interfaces of the projector service are depicted, respectively. The client allows the user to browse the local device to pick a file for upload to the projector and the back-end logs the file transfer. Figure 12 Projector service client Figure 13 Projector back-end service 2.7 Gaming service In Figures 14 and 15, the client and back-end interfaces of the gaming service are depicted, respectively. As can be seen, the client allows the user to browse the categories of the games to narrow down the search. Once a game title is selected, the details of the game are shown. Once picked, the game can be downloaded to a chosen directory. Of course, credit card information must also be provided. Like the other back-ends, this one simply logs the game purchase