- You can develop a three-tier web-based application using frameworks for all layers.
- You can deploy and run a web-based application on an application server.
The grading is as follows:
Not accepted Your work has not been accepted, and you have no score.
0 points Your work has been accepted.
1 point Your work has been accepted before or on due date.
2 points Your work has been accepted before or on due date. Also, it has an acceptable layered architecture and is well designed. This means it follows the guidelines of the lecture on architecture, and of the programming examples on the course web.
3 Auto-Generated Code and Copying
You must be able to explain and motivate every single part of your code. You are not allowed to copy entire files or classes from the example programs on the course web, even if you understand it and/or change it. However, you are allowed to write code which is very similar to the example programs on the course web. You are also allowed to use GUI builders and other tools that generate code.
4 Task, A Currency Converter With a Web-Interface
Develop a three-tier web-based application for on-line currency conversion. The appli-cation shall convert a specified amount from one currency to another, e.g. from SEK to EUR.
Requirements on Your Program
All of the following requirements must be met in order for your solution to be accepted.
- The converter must be able to convert between at least 4 diﬀerent currencies.
- The client is a web browser.
- You must use frameworks for all layers in the server, for example JSF for the view, EJB for controller and JPA for model and integration.
- The server must handle transactions, you can for example use EJB to implement container-managed transactions.
- The conversion rates must be stored in a database.
- The user interface must be informative. The current state of the program must be clear to the user, and the user must understand what to do next.
What is NOT Required of Your Program
Below is an explanation of things that do not aﬀect your score.
- You are free to decide how conversion rates are inserted in the database. They might for example be inserted using the database’s administration interface, or be inserted by the application when it is started.
- Minor changes or misunderstandings of the functionality are allowed, as long as your program does not become notably simpler than a program implementing the intended functionality.