Write client-server program and perform popularity checking

Assignment Help Programming Languages
Reference no: EM131592452

Project Description

Suppose you are a linguistic working at an e-books distributor. Your management has interest in finding out if commonly used words used in a book make the books more popular, therefore more books would be sold if the number of commonly used words in the book is higher.

For this project you are required to write a client/server program and perform popularity checking. The client will take the input (the document to be examined), and deliver the input to the server program. The server will take the input from the client, perform the three operations from the input, and deliver the results back to the client. The client will then display the results.

The three operations performed by the server program will be the following:

Word Count: Counting the total number of words in a document.
Word Rank: A ranking of all words appeared in a document.
Word Repeatability: Counting all words for the number of time they are used in a document.

An example of word rank is shown as follows. This is a list of top 10 commonly-used English words. The word rank provided by your server program may not be the same as this as it will depend on the input.

Rank Word

1 the
2 of
3 to
4 and
5 a
6 in
7 is
8 it
9 you
10 that

You will use the test document below to test the three operations of your program.

"Message-oriented choreography

The Paper Trail concept is that the state of a multi agent multi-process system can be looked at, sometimes rather effectively, as a function of the documents which have been transmitted.

The process-oriented attitude to a bank-customer relationship may be "In parallel, the customer writes checks, merchants pay in checks, credit card transactions happen, all month. Then, the charges, interest are assessed and a bank statement sent from the bank to the customer". The document-, or message-oriented one is more like "Every month a bank balance lists valid transaction dated that month. A cleared incoming check in a valid transaction. A cleared outgoing check is a valid transaction. A validated credit card ebit is a valid transaction. A check is cleared if it is incoming and there is a matching transfer from the payee bank", and so on. This builds the relationships up in a bottom-up, web like way. The process-oriented attitude suggests the bank be written as a procedure in a top-down way using for example WSCI and BPL. The document-oriented attitude suggests the use of business rules systems triggered by the receipt of new information -- new documents, in this case new web services messages.

(Web service messages are of course documents just like documents sent in email. Messages are particular in that they have a particular time of transmission, and their document content does not change. They do of course generally have identifiers, and even though they can only be accessed by sender and explicit receivers, they can still be regarded as part of the web by those parties.)

Whether the design process is a top-down process-oriented one or a bottom-up documentoriented one, the design will have to be translated into a set of agents and their responses to incoming messages. This manipulation can of course be done automatically.

A concern in all this frantic design is it evolution with time. A BPEL script sets out to be a description of a business process at a high level. The critical values which decide on conditional execution, or which correlate a particular process with a given transaction, are expressed as parts of the structure of the XML messages. This may lead to what has been called "DTD fragility". What happens which you change the DTD? The design of the message types with XML schema is the sort of thing which is difficult to get everyone in a company to agree on, and tents to change with time. There are many arbitrary choices made as to how the knowledge in the message is serialized as XML. Moving to RDF may, by removing a layer of arbitrary design, reduce that fragility and allow web service choreography to evolve with time within and outside a company."

Implementation based on web services

With this option, your job is to create a web-services application to program your client/server application. Prior to working on the project, make sure you clearly understand chapter 1 terminology, it will allow a much easier implementation of this project. Web Service is made up of the basic core services, HTTP/JMS/SNMP, XML, SOAP, and WSDL. There is also UDDI which is used for service location, although not necessary of this project. This project will be an implementation of these basic services listed above. Please refer to figure 4.1 to understand the process of message movement, section 4.4 for the communication models. For the understanding of WSDL please refer to chapter 5, figure 5.1 for an overview.

There are three component exercises that will help with your understandings of XML, SOAP and WSDL, as seen in Assignments 1 - 3.

Additional information

Error Handling:

There should be necessary error handlings in your implementation.

Development kits:

If you choose option 1, then there is no need for graphical interface, and both client and server should be tested under command-line mode. If you choose option 2, the GUI can also be optional depending on the IDE you use. If you choose to do so, you should use an IDEs such as Visual Studio, Netbeans, Eclipse, Java SDK or Java EE, or other toolkits that you are familiar with. Your coding may not require these development kits but sometimes they are helpful for coding and cohesion of the project.

Deliverables of the Project

1. A report that shows your design, your implementation, and your test cases. At a minimum, you should use the given text as a test case. You need to clearly show all important design decisions you make, key algorithms and data structures you used (if any), and the platform (e.g., software, hardware) based on which the system is implemented. You also need to show screenshots of the execution of your system.

In your port, you should explicitly report your test results (Word Count, Word Rank, and Word Repeatability) based on the test document provided above.

In addition you should have a list of references for any external reference materials you used (e.g., publications, websites, etc), and follow the APA format for all citations and references.

2. A working prototype of the system. You can use any programming language or IDE you feel comfortable with as long as you clearly report these details in the project report. Submit the source code along with instructions how to execute your system.

Note that the input (test document) and the output (results of the three operations) can be written in any of the following formats: XML file, plain text file, or system I/O. The system can be tested on a live web server, or on a simulated environment such as a local host.

3. Source code of both the client and the server.

4. Submit your project in a ZIP file to BlackBoard under the assignment, with clearly defined parts. Each deliverable must be clearly labeled, including your name and course title.

5. The "Certification of Authorship" form.

Reference no: EM131592452

Questions Cloud

What role do smoking play in adult development : What role do smoking, drinking alcohol, and nutrition play in adult development? Create some possible combinations of these and then respond based on them.
Role of finance manager in corporation : How does corporate finance different from behavioral finance. What is difference in the role of an accountant and the role of a finance manager in corporation.
How does your peer group view the opposite sex : How does your peer group view the opposite sex? Ideal Partner: What makes that person unique to you? Does size (both weight and height) matter?
Broadcast ethernet and ip addresses : Consider eliminating the ARP protocol by having devices periodically broadcast their Ethernet and IP addresses instead
Write client-server program and perform popularity checking : For project you are required to write a client/server program and perform popularity checking - Your management has interest in finding out
How long will it take to settle the loan : If the company makes payments of $1,600 at the end of every month, how long will it take to settle the loan?
The need for intercultural communication : What about the world today demonstrates most obviously the need for intercultural communication? Be detailed in your answer.
Conduct expected of criminal justice employees : analyze the need for a greater standard of conduct expected of criminal justice employees
How much will you pay for the medicare tax : How much will YOU pay for the traditional Social Security tax? How much will you pay for the Medicare tax?

Reviews

Write a Review

Programming Languages Questions & Answers

  Write a haskell program to calculates a balanced partition

Write a program in Haskell which calculates a balanced partition of N items where each item has a value between 0 and K such that the difference b/w the sum of the values of first partition,

  Create an application to run in the amazon ec2 service

In this project you will create an application to run in the Amazon EC2 service and you will also create a client that can run on local machine and access your application.

  Explain the process to develop a web page locally

Explain the process to develop a Web page locally

  Write functions

These 14 questions covers java class, Array, link list , generic class.

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Write a prolog program using swi proglog

Write a Prolog program using swi proglog

  Create a custom application using eclipse

Create a custom Application Using Eclipse Android Development

  Create a application using the mvc architecture

create a application using the MVC architecture. No scripting elements are allowed in JSP pages.

  Develops bespoke solutions for the rubber industry

Develops bespoke solutions for the rubber industry

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Writing a class

Build a class for a type called Fraction

  Design a program that assigns seats on an airplane

Write a program that allows an instructor to keep a grade book and also design and implement a program that assigns seats on an airplane.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd