CSharp ASP NET Core Course Introduction Project Assignment Date 1
CSharp ASP NET Core Course Introduction Project Assignment Date 1
CSharp ASP NET Core Course Introduction Project Assignment Date 1
Additional Requirements
Your Project MUST have a well-structured Architecture and a well-configured Control Flow.
© Software University Foundation. This work is licensed under the CC-BY-NC-SA license.
Follow us: Page 1 of 3
Follow the best practices for Object Oriented design and high-quality code for the Web application:
o Use the OOP principles properly: data encapsulation, inheritance, abstraction and polymorphism
o Use exception handling properly
o Follow the principles of strong cohesion and loose coupling
o Correctly format and structure your code, name your identifiers and make the code readable
Make the user interface (UI) good-looking and easy to use
o If you provide a broken design, your Functionality Points will be sanctioned
Support all major modern Web browsers
o Optionally, make the site as responsive as possible – think about tablets and smartphones
Use Caching where appropriate
Source Control
Use a source control system by choice, e.g. GitHub, BitBucket
Submit a link to your public source code repository
You should have commits in at least 5 DIFFERENT days
You should have at least 20 commits
IMPORTANT: The Source Control Requirements are ABSOLUTELY MANDATORY.
IMPORTANT: NOT following the Source Control Requirements will result in your DIRECT DISQUALIFICATION from
the Project Defenses.
Please be strict in timing! On the 15th minute you will be interrupted! It is good idea to leave the last 2-3 minutes
for questions from the trainers.
Be well prepared for presenting maximum of your work for minimum time. Bring your OWN LAPTOP. Test it
preliminarily with the multimedia projector. Open the project assets beforehand to save time.
Bonuses
Anything that is not described in the assignment is a bonus if it has some practical use
Examples
o Use SignalR communication somewhere in your application.
o Use Front-End Frameworks (like Angular, React, Blazor)
o Host the application in a cloud environment, e.g. in AppHarbor or Azure
o Use a file storage cloud API, e.g. Dropbox, Google Drive or other for storing the files
o Use of features of HTML5 like Geolocation, Local Storage, SVG, Canvas, etc.
© Software University Foundation. This work is licensed under the CC-BY-NC-SA license.
Follow us: Page 2 of 3
Assessment Criteria
Functionality – 0…20
Implementing controllers correctly (controllers should do only their work) – 0...5
Implementing views correctly (using display and editor templates) – 0…5
Unit tests (unit test for some of the controllers using mocking) – 0…10
Security (prevent SQL injection, XSS, CSRF, parameter tampering, etc.) – 0…5
Data validation (validation in the models and input models) – 0…10
Using auto mapper and inversion of control – 0…5
Using areas with multiple layouts – 0…10
Code quality (well-structured code, following the MVC pattern, following SOLID principles, etc.) – 0…10
Bonus (bonus points are given for exceptional project) – 0…25
© Software University Foundation. This work is licensed under the CC-BY-NC-SA license.
Follow us: Page 3 of 3