Posted: February 15th, 2015

Soft225 (OO Web Development)

Paper, Order, or Assignment Requirements

 

 

Assignment Brief Assignment Title: Assignment 3 – OO Web Development Submission Deadlines: Proposal – Friday 30th Jan, 2015, 12noon Proposal review – Friday 6th Feb, 9am – 11am Final submission –Friday 21 st Mar, 2015, 12noon Demos – March 2015, TBA Submitted at: Online (DLE) Contribution to Final Grade: 50% Individual/group assignment Pair assignment Module: SOFT225 Software Engineering for the Internet Using Java Lecturer/Module Leader: Roy Tucker/Torbjørn Dahl Assessed learning outcomes SOFT225 LO2: Construct server-side programs to enhance the interactivity of Web pages. LO3: Describe alternative approaches to interaction between Web clients and servers. 1. Overview For this assignment, you are to work in pairs. The overall aim is to produce a small website based upon Java server-side technologies. The scenario for the site is chosen by you and agreed by the module staff to ensure that it demonstrates the appropriate aspects of the technology. In particular, your website must include all of the following: · Servlets · Java Server Pages · Java Beans · Session Tracking · Database backend It is not necessary to spend a lot of time on the HTML aspects of your application. This assignment is about demonstrating your ability to utilise Java facilities for creating dynamic web pages. In addition to the website itself, you are also required to conduct a small, informal demonstration, and write a formal report about the website and the way in which you have approached the work. Further details are given under deliverables.2 2. Choosing and Developing Your Scenario This document contains an appendix giving you some example scenarios that you can use if you wish, or you can develop one of your own to a similar degree of difficulty. It is also a very good idea to discuss proposal ideas with the module staff in the practicals. Whether you use a given scenario, or one of your own, you are required to submit a proposal. Once you have been notified that your proposal is been appropriate, you should proceed immediately with the work. Deliverable 1 – Proposal 1. List the members of your group, their names and student numbers. Only one member of the group needs to submit the proposal. 2. Describe the background to the scenario – details of the organisation/company using the website and an overview of the kinds of facilities it provides 3. Give a preliminary description of the database to be used to back up the website, i.e., tables and fields that you expect to use 4. Provide user stories – for each main function, prepare a ‘story card’ describing the user’s interaction with the site in order to achieve the desired result. Information on writing user stories is available on the module site. You must attend the practical sessions in the week of the proposals review so that the reviews can take place. Both of you must be present. Failure to submit a proposal by the given date, or failure to attend the proposal review as specified above, will result in a reduction of your overall mark for this assignment by 10%3 3. Working on the Website Before you start work, you need to consider how the two of you will work together. You should adopt a pair programming1 approach. One of you will be the ‘driver‘, and the other will be the ‘navigator’ for a period time, and then you will swap roles. The driver types in the code while the navigator directs and suggests. You need to be fairly well matched in terms of programming ability. User involvement Once the proposals have been submitted and the scenarios for each team have been identified, teams will be paired to act as each other’s users. You will need to make sure you are available to provide feedback, and a good way of achieving this will be during tutorial sessions. User feedback needs to take place on at least three occasions: first when you complete your initial story, at the end when the application is complete, and at some point in the middle of the development. You do not have to keep to three evaluations. You can do more if you wish. On each occasion, a feedback form, need to be completed. These are to be included together in your report as a single appendix. 3.1. Software to be used For this assignment, you must use the version of NetBeans provided in the labs (or later). You are not required to upload the work to a separate server. Use of the Apache Tomcat server embedded within NetBeans is recommended. You may use any software to create the HTML. The database should be created using MS Access, MySQL (freely available, but not installed in the labs) or Oracle, as it is not necessary to use it as anything other than a dbms that provides the management of tables and the ability to process SQL queries. Note that you will need to be able to run your dbms in one of the BGB 2nd floor labs, on a lab-machine or on your own laptop, in order to demonstrate your application 4. The Report A report of 2,000 (±10%) words is required. The aim of this report is to encourage you to think about the work you have done in a broader context, and you will also find this helpful when you start your final stage project next year. Ensure that the physical layout of your report is suitable for this kind of work – use numbered sections, page numbers, table of contents etc. as in the layout in appendix A. Deliverable 2 – Web application and report 1. The web application as a zip file. 2. The zip file must include a copy of your database, populated with sufficient data to allow a valid demonstration of the website functions (or, if using Oracle, instructions on any login ids and passwords that might be needed.) 3. The zip file must also include a file readme.txt giving details of the name and DSN of the database and the IDE used to develop the application. Also include any other relevant information that will help me to run it. 4. A written report in a format that can be read by M5 Word (see appendix 3}, around 2,000 words (±10%). 1 The practice of ‘pair programming’ or ‘pairing’ is described on the Agile Alliance web site.4 5. Demonstration This will be a demonstration to the module staff. The purpose if this demo is for the module staff to see the project running and to verify that you have developed the project yourselves. Both members of the team must attend the demonstration and contribute in order to gain the marks. Please ensure that you have a running copy of your project as well as a copy of your project code and database. Please ensure that you have plenty of test data available so that you can show your application at its best. Deliverable 3 – Demonstration 1. Prepare a running application with suitable test data to show how it works 2. Explain the features and functionality of your application 3. Answer questions on your implementation You must arrive at the lab early enough to set up your software so that we can get underway immediately. Don’t wait outside for the previous one to finish! The demo is one of the main mechanisms for evaluating your project, so your performance will have a significant influence on your final mark. 6. Assessment Criteria The marks for the three components are as follows: Component Criteria Evaluated on Weight Functionality · Number and quality of application features · Overall UI design and usability Demo, Final report and code. 40% Structure · Code and database structure, OO and patterns · Appropriate use of Java/JSP technologies Demo, Final report and code. 30% Evaluation · Critical evaluation of functionality and structure (10%) · Comparison of alternative technologies (10%) · Evaluation of pair programming experience (10%) Final report 30% The following are guidelines and are subject to the overall quality of the work submitted (including proposal, application and report). GRADE CRITERIA Pass A running application that includes a basic level of user functionality Lower 2 nd A running application that includes a basic level of user functionality and good test data/database, or with a medium level of functionality Upper 2 nd A running application that includes a good level of user functionality and good test data/database 1 st A good r
unning application with all functionality included, with a good user interaction5 Appendix A: Required Report Layout and Content Note that the aim here is to ensure that your report is well structured, and also give you some practice in writing a report that has a similar structure to the on you might write for your final year project. You are expected to write the report using third person. 1. Introduction A brief description of your scenario, and the functional requirements you have attempted to satisfy, referring to the original user stories. These should be attached in an appendix. Appendices do not count towards the report’s word limit. 2. Evaluation of Server-side Technologies This section must contain an evaluation of two of the methods available for implementing such as a website. One of these must be Java Servlets/JSP). For example you could discuss technologies such as PHP or asp as your alternative to Java. Describe the main differences between the two technologies and explain how your project/development would have been different if you had used the alternative technology. 3. Design and Implementation Describe the structure and functionality of your final product including details of the database and web application that you have implemented. Attach screenshots and an ERD. 4. Evaluation of the Product Describe the quality of the product, the areas that work well and those that could have been better and how they could have been improved. 5. Evaluation of Your Performance Here you need to reflect on the way in which you worked on the software. In particular you need to comment on: · Pair Programming: What percentage of the work was conducted in this way? Did you find it helpful? What have you learned from the experience? · User involvement: How often did your ‘users’ review your application? Did you get appropriate feedback? Could you have improved the feedback by tackling the review in a different way? Appendices · Copies of the user stories originally submitted with your proposal · Annotated screen dumps of selected pages from your web application · Copies of your test plans as used for the development · Copies of the user evaluation forms · Diagram of the Classes/Servlets/JSPs used and the relationships between them6 Appendix B: Example Scenarios Note that these scenarios can be used more or less as described or preferably adapted/extended to customise them for your own application. The aim in describing these is to give you an idea of the size and scope expected. In choosing your scenario, please ensure that it is within your grasp. It’s better to complete a smaller scenario well than a larger scenario badly! Note that an application that is based solely on an online shop is not a suitable application. Servershire Football Supporters’ Community This is a club for supporters of all the dozen or so football teams in the county of Servershire. It was set up to try and develop a community spirit and to encourage support of all the teams, especially as a number of them are small clubs and need greater financial support. Members join the club and pay a small subscription. Usually these are due at the beginning of July before the start of the season in August. Members who join partway through the year pay a pro-rata fee, e.g. those who join in February pay for 6 months so that their next renewal will fall on the usual July date. There is also a small initial joining fee. Each person will have to have an id and password. Suggested features of the site: · Join the club (simulate payment of fees) · Select a team and see its results so far · View details of future matches · Organised trips to matches are arranged, are advertised here and places can be booked by members via the site MusicMania Swap Shop This is a group of music enthusiasts who have got together over the web to share their interest in music. The site includes news articles, information on events that are of interest to members, and details of new releases. They also offer surplus items for sale to the rest of the group, but anyone doing so must be a member. Non-members may browse the list of items for sale, but must join the group in order to purchase an item. To ease the problem of payment for items, each member has a facility to add money to his/her cash balance (from a credit/debit card). Each time a purchase is made, the value is deducted from his/her balance and added to the seller’s balance. Note that you would not be expected to create a real-life secure payment system for card transactions, just to simulate the way in which this would work.7 Student Placements This is a facility to manage the student placements while students are selecting companies and making their applications [as opposed to managing student whilst out on placement. A placement administrator needs to be able to add details of placement offers, and monitor progress. Students need to be able to view the placements available and submit details of those for which they would like to apply. When the application deadline has been reached, the administrator will signal that applications have closed for that placement. When the company has chosen a student for a particular placement, the student’s name is added. Students will also want to be able to view the status of the placements at any time. SNOG SNOG is an owners‘ group for people who own Snarley Donaldson motorbikes. The site aims to keep members in touch by providing a forum for exchange of information, and an events calendar. In addition, they would like to be able to advertise items for sale. This could be arranged as a kind of swap shop, as in MusicMania, or by taking payments via PayPal. Anyone wanting to join the group must pay a membership fee of £15 per year, also paid via PayPal. Because of this membership fee there is no charge for advertising items for sale.

Expert paper writers are just a few clicks away

Place an order in 3 easy steps. Takes less than 5 mins.

Calculate the price of your order

You will get a personal manager and a discount.
We'll send you the first draft for approval by at
Total price:
$0.00
Live Chat+1-631-333-0101EmailWhatsApp