IMAT5210 E – Commerce Software Assignment – De Montfort University, UK
Assignment Title – E-Learning Facility – n -tier web application
Learning Outcomes – Design, construct and evaluate an e- commerce application involving the interaction between a range of software components.
Outline and Objectives – The purpose of this assignment is to build a dynamic data-driven web application written in ASP.NET and C# using the techniques that you have learned so far throughout the module.
The main focuses of the assignment are persistent state, access control, ADO.NET database operations, validation and AJAX. Another important requirement is that your web application has an underlying n -tier architecture, and utilises principles of abstrac tion, decomposition and modularisation, as has been taught during the module.
The web application that you will develop will form the foundations of an E -Learning Facility for students and tutors. For the purpose of this assignment, you have been specified to develop some of the basic essential functionality for this web application, which may then be further developed as necessary.
You have been provided with a prebuilt SQL Server Database that you must use as a means of data storage and retrieval. Most of t he required functionality has been comprehensively documented for you as a require ments specification consisting of use cases, and user interface designs (see Section 2). You should strictly adhere to this documentation and use it as a basis for completing Section A of the assignment. Section B of the assignment provides you with more freedom to show creativity and innovation.
ORDER NEW COPY OF IMAT5210 E – COMMERCE SOFTWARE ASSIGNMENT AND SECURE HIGHER MARKS!
Section A – Core use cases
You have been provided with several well documented use cases, that inform you of the required functionality for the web application: –
(UC001) Login User(UC002A) Load Available Courses(UC002B) Register Student(UC003) Display User Account(UC004) Logout User(UC005A) Load Tutor Details(UC005B) Remove Student(UC006) Update User Password(UC007A) Load Tutor Courses(UC007B) Update Tutor Course(UC008A) Load Student Details(UC008B) Show Tutor Email Address(UC008C) Load Student Modules
You should attempt to develop all of these use cases. Should you do so, your mark will be based on their design, correctness, and fitness for purpose. Should you not be able to develop any use cases, then you will lose some marks for this area of Section A.
You should also write comments within the classes of your Presentation Tier (code-behind files), Middle Tier, and Data Access Layer. These comments should give a brief overview of the class, explain the purpose of each constructor and method (including their parameters and any return value), and outline any key areas of source code within your functions/methods that you feel req uire further elaboration.
Section B – Applying AJAX
Make use of the AJAX Extensions web server controls, in particular the UpdatePanel control a nd where appropriate the UpdateProgress control. Where you apply AJAX is entirely up to you. It should be an appropriate use of AJAX carried out in a correct way, e.g. ensuring an external trigger is associated with an UpdatePanel correctly. You should be careful to not introduce AJAX behaviour where it is inappropriate, and should aim as a minimum to have it applied in two locations within the application.
You should submit a brief overview of how and where (in your web application) you have applied AJAX as part of the report.docx attachment inside of your website directory.
Secure password storage – You can achieve further marks for integrating a means of secure password storage into the E-Learning web application. To do this you will need to update the database slightly, and apply password hashing and salting procedures appropriately. You will need to research into an appropriate means of achieving this within ASP.NET and C#, and you should reference any source code that you use from elsewhere. It is expected that you will (at the very least) adapt this source code to meet the specific requirements of your own application.
This additional functionality should be integrated into your existing n -tier design, and you should update the relevant use cases from this specification to include additional steps and/or extensions that account for these procedures being undertaken. You should submit these modified use cases as part of the report.docx attachment inside of your website directory.
Additional use cases – You can add up to THREE additional use cases to those which already exist. The precise behaviour which these use cases define is entirely down to you, however, they should logically have a purpose within the context of the existing E-Learning facility, should not repeat any existing features, and should ideally show further creativity and innovation. As an example, you could think about sorting, filtering and paging through data (e.g. the modules).
The additional functionality encapsulated by these use cases should be integrated into your existing n-tier design. You may add additional Web Forms, or integrate features sensibly into existing Web Forms. You may optionally wish to update the database design, however, if so, it should be done correctly such that all use cases are still designed, behave, and operate in the same way, and principles of normalisation st ill exist throughout the database design.
You should submit these new use cases (formally documented) with a parallel brief explanation, and any changes to the database, as part of the report.docx attachment inside of your website directory