



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Information about the autumn examinations for the bsc in business information systems at a specific university for the academic year 2011/2012. The exam is for the module advanced application development ii (ms221) and consists of four questions. The first question covers the difference between testing and debugging a java application and the implementation of a method that checks whether a music festival is taking place in a given month. The second question involves modifying a method to throw an exception, explaining the difference between checked and unchecked exceptions, and identifying logical errors in a given code. The third question requires the explanation of the difference between a class diagram and an object diagram and the refactoring of a given code using inheritance. The fourth question involves the analysis of a given class diagram and the writing of a walkthrough for a provided code. The exam is 2 hours long and requires the use of bluej and java.
Typology: Exams
1 / 5
This page cannot be seen from the preview
Don't miss anything!




Exam Code(s) 2BF Exam(s) BSc in Business Information Systems Year 2 Module Code(s) MS Module(s) Advanced Application Development II Paper No. Repeat Paper Y Special Paper N External Examiner(s) Dr. Danail Ivanov Internal Examiner(s) Dr. Christopher Duke, Mr Martin Hughes
Marks will be awarded for commented code. Marks will be deducted for code that does not adhere to standard Java and JavaBean naming conventions. Duration 2 Hrs No. of Answer books Requirements : Handout MCQ Statistical Tables Graph Paper Other Material No. of Pages 5 Department(s) Business Information Systems
Exam BlueJ Projects All of the BlueJ projects required for this exam have been copied to your exam account. Within the My Documents folder of your exam account you should see a folder with your ID and name on it. This folder in turn contains a folder for each question on the exam. The folder containing the BlueJ project(s) for Question 1 is called Q1, for Question 2 is called Q2, and so on. To open these projects in BlueJ go to File > Open and navigate to the appropriate question folder. Showing the Unit Testing tools in BlueJ Unit testing support in BlueJ is initially disabled. To use the testing tools select Tools > Preferences, click on the Miscellaneous tab and select the checkbox labelled ‘Show testing tools’. Enabling this functionality adds three elements to the interface: some buttons and a “recording” indicator in the main window’s tool bar, a Show Test Results item in the View menu, and a Create Test Class item in the popup menu of compiled classes.
Question 2: 33 Marks Part A 11 Marks Examine the code in the ‘Q2_Part_A’ BlueJ project. This code contains two classes, CustomerDatabase and NoMatchingCustomerException. Your task is to modify the getCustomer method in the CustomerDatabase class so that if a customer is not found, a NoMatchingCustomerException is thrown. As the exception will not be handled within the method body, you should ensure that it is thrown out of the method body. Part B 11 Marks Explain the difference between checked and unchecked exceptions. Which statement would a Java programmer use to handle exceptions? Part C 11 Marks The code in the ‘Q2_Part_C’ BlueJ project contains three logical errors. In your answerbook provide a short explanation of what constitutes a logical error. Identify the three errors in the BlueJ project by adding a comment to the code just above each error. Your comment should explain why you think the code will cause a logical error. Question 3: 33 Marks Part A 8 Marks Using a simple example, explain the difference between a class diagram and an object diagram. Part B 25 Marks Open ‘Q3_Part_B’ and compile it. While the code in this project runs without any errors its design has resulted in code duplication. This can result in additional maintenance work and can introduce bugs into our code if we forget to make the same changes to code blocks that have been replicated multiple times. Your task is to use your refactoring skills to improve the structure of this application by using inheritance. Continued overleaf
Question 4: 33 Marks Part A 10 Marks Given the following class diagram: What are the static and dynamic types of the following five variables? Vehicle v1 = new Car(); Car v2 = new Convertible(); Bus v3 = new Bus(); Bus v4 = new Car(); Car v5 = new FourByFour(); Part B 15 Marks Open ‘Q4_Part_B’ and compile it. Write a walkthrough that provides a line by line account of what happens when the main method in the class runs. Your walkthrough should follow the logical flow of the program and highlight the following: