Grading Rubric Homework 1 Used Git, has many commits, over time, wrote appropriate commit comments, set up Git correctly with git config Cloning repository results in a working site, no broken links, no absolute paths Multi-page, hyperlinked set of pages Uses Bootstrap and has single column and multi-column pages Uses a separate CSS file and all pages use it for a consistent look Has a navigation bar or menu that works, has a table, has lists Has GitHub Pages page as a Portfolio, has links to all work, has students name, course name/ title Portfolio: all work is described, is complete, has good examples, is organized, professional and reflects well on the student; has syntax highlighted code, descriptions and link to assigned HTML page that displays in browser properly Score / 32
Grading Rubric Homework 2 Uses Git feature branching correctly; used a new branch for most work Final work is merged back into the master branch Has a wireframe of initial design Uses Javascript effectively uses JQuery to access the DOM Application takes input from the user; doesn t fail if data is not provided correctly Button or other UI action causes Javascript to be executed in the current page; is responsive Uses JQuery to modify and add to the DOM to display the results Code is adequately and appropriately commented Code, screenshots, descriptions and the working page(s) are nicely arranged into the Portfolio; Portfolio is organized and easy to read; page can be demoed Score / 40
Grading Rubric Homework 3 Uses Git branching correctly; used a new feature branch for most work Commits show that code was written from scratch and not copy and pasted then fixed Code compiles and is functionally equivalent to the Java version Built-in typenames like string and object are lowercase Method names and public fields start with upper case, private and local variables start with lower case Interface typename starts with an I, like IStack Node class uses properties Code is adequately and appropriately commented using XML comments Code and screenshots are nicely displayed in read; page contains more than just the code and screenshots Score / 36
Grading Rubric Homework 4 Uses Git branching correctly; used a new feature branch for each feature Task 2: Has main index page with links; uses @Html.ActionLink Task 3: Full cycle - form elements - GET request - Controller action method with no parameters - uses Request object - returns content to client Task 4: Same cycle but uses POST and FormCollection Task 5: Server side content (loan calculator or equivalent); form data, uses model binding in controller Task 5: Form data is either validated or doesn t cause an error if incorrect or missing Both C# and View code is appropriately commented Code and screenshots are nicely displayed in read; page contains more than just the code and screenshots Score / 32
Grading Rubric Homework 5 Has a web-based version of the form and it works Has working scripts to create and drop the database and table Has correct model class and DbContext class (in DAL folder); model wasn t auto-generated from the db using EF Model class uses data annotations such as Display, Required or StringLength, form values are validated Web.config has correct connection string Uses GET-POST-Redirect pattern Uses a strongly typed view; controller action method uses a parameter of this type Code is appropriately commented Code and screenshots are nicely arranged into read Can tell from the screenshots that it works as intended: new request and view all requests Score / 40
Grading Rubric Homework 6 Website works and clearly connects to the db and reads data from tables Has Browse Products feature Browse by product category and subcategory works; user can find a particular product User can successfully add a review to a product; review can be seen in the database Uses mostly strongly typed views Views look nice, not just CRUD auto-generated EXTRA: Shows images or thumbnail images for products Code is appropriately commented Code and screenshots are nicely arranged into read Score / 36
Grading Rubric Homework 7 Missing Some Has a single page Javascript application; all functionality is driven by AJAX calls Javascript is in a separate file in the Scripts folder and is included via @section. Uses jquery Uses at least one custom routing rule in RouteConfig.cs that makes sense and routes to a new controller that isn t Home Has custom CSS in Contents; page looks nice Has a database for Logging; successfully logs every request; uses a script to create this database The page works, searches Giphy and shows results in a grid; is responsive Uses JSON for AJAX calls; JSON object is used client-side to modify the DOM and build the search results Has additional client side options/functionality, beyond simple search by topic Has additional server side processing (beyond topic search) Code and screenshots are nicely arranged into the Portfolio; Portfolio is organized and easy to read Score / 40
Grading Rubric Homework 8 Has script(s) to create, populate and delete the database Tables for Artists, ArtWorks, Genres and Classifications are correct; have appropriate names, types, relations/constraints Db is populated with given seed data Main page has a menu or links to entities list pages; list pages show all entities Has CRUD functionality for Artists; all parts work as expected Artist Edit page does not allow long names, all attributes are required and no future birthdates Has Genres buttons that work, shows works and artists, sorted correctly Genres feature uses AJAX Uses Git; all work done in a feature branch and merged into master when finished Code and screenshots are nicely arranged into read Score / 40
Grading Rubric Homework 9 Artists database has been created on Azure. Web application has been deployed on Azure; Can show the URL and that it works as in HW 8 Web application uses database on Azure Db password does not appear anywhere in Git repo Score / 16