” COM2025程序设计 写作、 写作HTML, CSS,webOctober 2020 1COM2025 Web Applications DevelopmentProjectHandout Date: Wednesday 14th October 2020Deadline: Monday 7th December 2020 by 4:00pm via SurreyLearnWritten Feedback: Friday 8th January 2020Module Weight: Assignment worth 50% of the moduleAcademic Misconduct: Coursework will be routinely checked for academicmisconduct. Your submission must be your own work. Please read the StudentHandbook to ensure that you know what this means. Do not give your code to anyoneelse, either before or after the coursework deadline.1. Purpose …………………………………………………………………………………………..12. Problem Definition …………………………………………………………………………..13. Requirements (marks)……………………………………………………………………….24. Advanced Features …………………………………………………………………………..35. What to submit?……………………………………………………………………………….31. PurposeThe purpose of this assignment is for you to demonstrate your ability to: Develop an interactive web app. Use Ruby on Rails.This will involve you building a web app using Rails, which will include Ruby classesand a database That will produce HTML, CSS and jQuery that will be used as the userinterface to your app via standard web browsers.2. Problem DefinitionYour first task is to select an application that you wish to develop. We are notconstraining your choice so that you have an interest in what you are developing, andscope to make it your own.To help with your selection we are expecting your application at a minimum to includethe following elements: A home page. A contact page which provides a form for you to contact the site owners via email. Resource pages linked to at least three models which are contained in a database.You must show resource associations in your models.Some example sites you might consider:1. Car park space bookings: a system to allow you to book a parking space in advance.The site could report the available spaces, location of cars and costs. We are notexpecting any payment mechanism.2. Events management: a system to allow you to manage a series of events. Eachevent will have a number of tasks associated with it all linked to a calendar anddeadlines.October 2020 23. Module Option selections: a system which will allow students to select modules thatthey wish to take form a list of optional modules. The system must ensure thatstudents can only take modules which add up to the required number of credits.4. A football league System: a system used to track football teams in a league, recordpoints and display the current league table and fixtures. Feel free to pick any sportif you do not like football.5. Music collection: a system to keep track of your music collection, including albumand track information, plus your own notes or favourites.Feel free to pick your own idea, but make sure it has enough complexity to meet ourRequirements, while not being too ambitious in scope. If in doubt, please ask.3. Requirements (marks)We are expecting to see a fully working Rails application which includes:1. Views (30%):a. A home page.b. A contact page with contact form.c. Resource pages for all of your appropriate model resources. Only provideroutes and actions to all of your resource paths if they are needed.d. All views conforming to best practice guidelines for HTML5 and CSS, forexample as through boilerplate templates, with styles used to present contentin a clear and Appropriate way.e. Partials used to ensure that each page has a standardised header and footer.f. jQuery used where appropriate to assist in providing a good user experience(for example, checking that form fields are not empty prior to submission,if they are required).2. Controllers (20%):a. A controller to handle your home and contact page.b. Controllers for each of your model resources with an appropriate use ofstrong parameters.c. Only Actions for those routes which are exposed.d. Appropriate tests for each of your controller actions, which all pass. Youshould also test basic view content within your controller tests.3. Mailer (10%):a. A mailer to handle your contact request. This does not need to be linked toan SMTP server.b. Appropriate previews and tests for the mailer, which all pass.4. Models (30%):a. A series of database migrations that you have used to build your application,with the schema including appropriate fields, data types, defaults, nullabilityand indices.October 2020 3b. At least three model classes which provide appropriate validations,associations and scopes.c. Appropriate tests for each of your models, which all pass.5. Configuration (10%):a. Appropriate environment configuration for your application, includinggems and environment settings.b. Only the Required routes needed for your application.c. The use of localised strings throughout your application.d. A git repository showing your development through regular commits.e. Appropriate use of comments and code style throughout.Refer to the attached marking scheme for the range of marks and expectations. Themarking scheme is based on the University Grade descriptors from the Code of Practice.To get the highest bands in each category there, you will need to go above and beyondthe lecture material to more advanced material. Please bear this in mind if you want toget the top marks. Before attempting more advanced features, make sure that youhave the basics working!4. Advanced FeaturesIf you would like to include additional items in your project, feel free to do so, butplease Ensure that you meet the minimum requirements for marking, and that youroptional extras do not break your code. Do not try and attempt everything here.Some things you might consider: Authentication using Devise, perhaps with additional support for permissions andcontrol using Pundit or Active Admin. Support for file uploads using Paperclip or CarrierWave, perhaps withImageMagick support. The use of AJAX to provide in-place updates, or live streaming. Use of GitHub as a remote repository or deployment of your app to Heroku. Integration of other web technologies (websockets, react, etc)For any gems, images or other sources you use please ensure that you do notinfringe any copyright (check image permissions) and only use gems for which thelicense permits (check the license).5. What to submit?You can use whatever development tool you like to develop your application, includingRubyMine or The command line. However, your app must be built using Ruby on Rails5.2.* and Ruby 2.3 or above. Your code and test cases should run in the labenvironment. Some variation in the Ruby version is anticipated. Please try an use theRails 5 framework unless you have good reason not to and then ask in advance ofstarting work. Upload an archive containing the whole of your Rails app.o Your archive should include all of your source code and git repository.October 2020 4o Call the file username_com2025_project.tar (or .zip), where username is yourusername.o Upload Your file to SurreyLearn. We will run the development version to mark your app using rails server. I will be testing using the Chrome browser unless otherwise specified. To reducecompatibility issues, Please test your web app on the Chrome browser beforesubmitting.Please use the SurreyLearn assignment Discussion Board to ask any questions.如有需要,请加QQ:99515681 或邮箱:99515681@qq.com
“
添加老师微信回复‘’官网 辅导‘’获取专业老师帮助,或点击联系老师1对1在线指导。