Computer sciences and Information technology

Computer sciences and Information technology Background Assume that a University department wants to build a web-based system that helps staff members to design Multiple-Choice Question (MCQ) tests. This system should hold the following data: I.    A repository with MCQ questions for potential inclusion in future tests. Some of these questions may have already occurred in past MCQ tests. o    Each question should have a unique identifier. o    Each question should have a choice of four possible answers. One these should be the "correct" answer. o    Each question belongs to one or more topics (such as "XML", "XSLT", "Relational Databases", etc). Questions and answers should be written in plain text apart from o    mark-up for bullet point lists o    mark-up for code-sections which are to be displayed in a fixed-width font. II.    Details of past and upcoming MCQ tests. This includes the five-letter module code (such as CE832), the date of the test, and the questions that make up the test. You can assume that each MCQ test is uniquely identified by the module identifier in combination with the test date. Part 1: XML Design, Sample Documents and Schema Design an XML format for holding a repository of MCQ questions as described under (I) above. Then create a file questions.xml with (at least six) questions taken from sample questions published for modules CE832 and CE705. Add suitable question identifiers and topics to each question. Write a corresponding RELAX NG schema and put it in a file called questions.rnc. Next design an XML format for holding MCQ test details as described under (II) above. Then create a file tests.xml with data for two tests: (CE832, 2010-11-05) (CE705, 2011-12-09) Each test should consist of four questions taken from the repository. Create a corresponding RELAX NG schema and put it in a file called tests.rnc. Check that your two sample XML documents are valid with respect to your schemas. Part 2: RDB, XML and Java Design a relational database for holding the question and test data described under (I) and (II) above. Then write a Java program that reads MCQ data from XML files questions.xml and tests.xml and stores it in the database. You need to use either MySQL or JavaDB as the database engine. Please name the database schema as ce832_xxxxxx where xxxxxx are the first six letters of your Essex login. ( please use this letters amsalj ) Part 3: Write a web site that allows staff members to search in a repository of MCQ questions, to view existing MCQ tests, and to construct new MCQ tests. When searching in the repository, staff members should be able to specify: 1.    topics 2.    words that should (or should not) occur in the MCQ question and its answers, 3.    past tests whose questions should be excluded from the search results. All three search parameters should be optional. In particular, if no search parameters are given, then the search should return all MCQ questions in the repository. You can implement the web interface using any of the Java and XML technologies presented in CE832. For the persistence layer, you can either use XML (files or BaseX) or the relational database created for Part 2. Part 4: Web Service Write a SOAP or REST based web service for searching in the MCQ question repository. The search functionality should be as specified in Part 3 but the implementation should make use of a different persistence layer compared to Part 3, e.g. if you used XML in Part 3, then Part 4 should be based on a relational database, and vice versa. The web service should return its result as an XML document. Part 5: Write a concise report about your assignment. State any non-obvious instructions required for setting up and testing your programs. Include a documentation of your XML format, database tables as well as the web service interface. Also describe your main design choices in each of the four parts, explaining the reasons why you made those choices and comparing them to alternative approaches. Lastly write a short appraisal of your achievements. How did the project go - what was easy, what was more difficult than expected? Are there any unresolved problems in your final submission? Are there any parts of the assignment that you are especially proud of? PLACE THIS ORDER OR A SIMILAR ORDER WITH US TODAY AND GET AN AMAZING DISCOUNT :)