Aacs3154 web-based systems development project


Project Team and Work Allocation

You are to work in a team of TWO (2) students. The project must be segmented into two equal portions such that each student is able to demonstrate his or her ability to carry out ALL the activities required, which includes the analysis, design, programming and testing of the system.

It is your SOLE RESPONSIBILITY to form your own project team. If you are unable to get a team member, you will have to WORK

INDIVIDUALY. The supervisor does not hold any responsibility in the teaming process.

Exceptional case is ONLY applied to tutorial groups with ODD NUMBER OF STUDENTS. With approval from the supervisor and agreement from other students, a team of THREE (3) students may be formed. However, there should be ONLY ONE of such team per tutorial group. As the team size has increased, the supervisor may request the team to extend the project scope.

Independent Learning and Research

The system may involve the use of some web technologies and techniques that you had not learned (or not covered in detailed) in previous semesters. You are thus required to conduct INDEPENDENT LEARNING AND RESEARCH on these technologies. Some of the recommended technologies that you should consider to learn and implement are:

- AJAX (jQuery, etc)

- Client-side UI enhancement (jQuery UI, HTML5 Drag-and-Drop, etc)

- Data reporting (Google Chart Tools, Microsoft Client-Side Reporting Tool, etc)

- Location maps (Google Maps, HTML5 Geolocation, etc)

- Media streaming (YouTube, HTML5 Audio and Video, etc)

- Real-time chat and communication (ASP.NET SignalR, etc)

- Electronic payment (PayPal, etc)

- SMS and email notification

- Webcam integration

- QR-code encoding and decoding

- Machine-based login blocking

- Image processing and manipulation

- Other

Specifications and Requirements

Web-Based Information System

In this project, you are required to propose a SPECIFIC PROJECT TITLE, which is subjected to the approval of your supervisor, and carry out the appropriate procedures to plan, analyze, design and implement the relevant web-based information system. The MANDATORY REQUIREMENTS of the system are:

- Core Business Processes
Identify the relevant business processes (or modules) specific to your proposed project title. For example, if you propose a simple reservation system, it should include modules for the allocation of tickets, seats, rooms, time-slots, etc. Examples of other possible sub-processes are confirmation of reservations, cancellation of reservations, calculation of reservation validity period, payment of reservation fees, generation of reservation references (e.g. receipts or notes), issuing reminders, etc.

Difference project titles (or systems) involve different business processes (or modules). You should carry out the necessary study, analysis and research to identify the business processes (or modules) that best suit to your proposed project title. This also includes experiencing and learning how some of the real-life web-based systems work.

- Database and ORM Framework
Design and implement your database by following the principles of database design. Tables must be normalized (denormalization may be accepted for appropriate cases), relationships between tables must be indicated, fields and their data types must be appropriate, etc. Maintain only those data that are needed by your system. For example, it is useless to keep track of customer mailing address if you are not doing product delivery and not sending postal mail to your customers.

The use of LINQ-to-SQL to map your tables to entity classes is MANDATORY. Except for unavoidable cases, you should always program against entity classes while doing data operations, rather than making direct SQL queries.

- Security and User Accounts
Basic authentication and authorization should be implemented to grant different access privileges to AT LEAST THREE (3) different user roles (e.g. CUSTOMER, STAFF, MANAGER, etc). You should identify the different user roles your system should handle. User accounts maintenance should also be included. In addition, passwords stored in the database must be HASHED.

- Data Maintenance Modules
Depending on the nature of the selected project title, this can be bus schedules and seats maintenance (for bus ticket reservation), rooms and allocations maintenance

(for hotel room reservation), consultation hours and time-slots maintenance (for consultation hour reservation), book maintenance (for book reservation), product maintenance (for online shopping), etc. You are required to identify and implement the appropriate maintenance modules and sub-modules for the system.

- Input Handlings and Validations
Use appropriate controls while handling user inputs (e.g. do not use a textbox for gender). Design your input forms to reduce the required keystroke and mouse-click, as well as to minimize the possible input errors (e.g. setting max-length for textbox).

Input validations should be integrated into all modules that involve data entry. All inputs should be COMPLETELY validated at BOTH client-side and server-side (with meaningful error messages). It is essential to ensure that all data are logically valid and data integrity are always be maintained.

- Query Handlings
The system should allow different roles of users to view their desired data and information (e.g. personal reservation history, daily reservation listing, customer listing, etc). Querying features and data presentation techniques such as FILTERING, SEARCHING, SORTING and PAGING should be incorporated to enable users to easily retrieve the data and information that they want from the system.

- Data Reporting
The system should produce AT LEAST FOUR (4) management reports. There must be at least ONE FOR EACH of the following types of management reports:

o Detail/transaction report (with control break)
o Summary report
o Exception report

The management reports produced must be USEFUL and MEANINGFUL to the users for decision making. For example, a report that lists all the customer details is not useful as compared to a report that lists the customers who made the most orders for the last quarter. So, decide the management reports that you wish to produce carefully.

For implementation, you can produce onscreen and/or printed reports, in tabular and/or chart formats. Do the necessary RESEARCH on Google Chart Tools, Microsoft Client-Side Reporting Tool, etc for programming the necessary features.

- Other appropriate modules, functionalities, features, outputs, etc.

Tasks

You are required to present and submit the following documentations or deliverables on the date as specified. You are required to REDO (i.e. the make-good opportunity) your works if your initial works are poor or as instructed by the supervisor. However, your marks for that particular task will be CAPPED AT HALF of the allocated marks. LATE SUBMISSION WILL BE PENALIZED.

Although programming related tasks are scheduled on WEEK 5 TO WEEK 7, you are advised to start the development process AS EARLY AS POSSIBLE.

The following table summarizes the activities and the tasks that you are required to complete for each and every practical session:

Activities/Presentations
- Registration of project teams
- Registration of project title
- Reservation of presentation timeslots
- General briefing on project requirements
- Brainstorming for system to be handled

TASK 1: Functional Requirements

TASK 2: Data Flow Diagram

TASK 3: Entity Relationship Diagram

TASK 4: Table Design

TASK 5: Report Design

TASK 6: Database Implementation and System Prototype

TASK 7: System Testing and Demonstration

General format for the system documentations are as follows:

Font Calibri, 11pt
Line Spacing Single line spacing (with a blank line between paragraphs)
Label All diagrams, figures, code examples, etc must be properly labeled
Others Header, footer and page number must be provided
Printing Single-sided and gray-scale printing
Binding Just STAPLE at the top-left corner of the printed report

TASK 1: Functional Requirements

You are required to describe IN DETAIL the functionalities and features of all modules that are to be implemented in the system. Each main module should be logically broken down into relevant sub-modules (or features). Use tables, diagrams, pictures, sketches, etc to clearly illustrate your ideas whenever appropriate. You should state how the modules are distributed among each team member.

TASK 2: Data Flow Diagram

You are required to construct the DFD (using standard notations as recommended by your supervisor) that models the proposed system, which should include:

• Context Diagram
• Diagram 0 DFD
• Diagram 1 DFD: For any TWO (2) MAIN processes in Diagram 0 DFD, as being recommended by your supervisor.

TASK 3: Entity Relationship Diagram

Construct the ERD (using standard notations as recommended by your supervisor) that shows the relevant relationships and cardinalities between each database entity. Data Fields, primary keys and foreign keys should be shown clearly. You are REQUIRED TO RESOLVE any many-to-many relationship in the diagram (i.e. use intermediate tables so that there is no many-to-many relationship in your ERD).

TASK 4: Table Design

Based on the ERD, you are required to design the related database tables with relevant fields. Information such as table name, field name, data type, field size, format, primary key field, foreign key field, null or not null field, etc should be identified clearly. All tables should be presented in 3NF or higher form.

TASK 5: Report Design

You are required to design and produce FOUR (4) well-formatted (with header, title, sub-title, date time, etc) and USEFUL management reports. There must be at least ONE FOR EACH of the following type of management reports:

• Detail/Transaction Report (with control breakpoint)
• Summary Report
• Exception Report

For each report, explain who would use the report and explain how the report would be useful to the users in making business decision.

TASK 6: Database Implementation and System Prototype

• Database Implementation: You should implement the database in SQL Server Express based on your database design. Include some REAL-LIFE SAMPLE DATA for each and every table in your database. Whenever appropriate, implement database views that will simplify data access in your system later. You should also generate the necessary ENTITY CLASSES that map to your database.

• System Prototype: The GUI of the system should be ready by now. All the input and output forms should already be designed and built (you may ignore the functionalities at this point). The prototype should also include the necessary menus, buttons, links, etc so that the general navigation and program flow can be examined. Although the system is not expected to be fully functional at this point of time, it is good if some of the modules have been implemented. This allows the supervisor to give you valuable feedbacks for improvements.

TASK 7: System Testing and Demonstration

The system should be 100% COMPLETED by now. Both of the MANDATORY and ADDITIONAL functionalities should be correctly implemented. All of the suggested improvements and enhancements from your supervisor (as given in the previous session) should be incorporated into your system. Remember to test and debug your system THOROUGHTLY to ensure that no bugs or errors will be detected during the system demonstration session. You should also ensure that the database contains enough sample records for demonstrating each and every features of the system.

As on the system demonstration session, the final system (i.e. ASP.NET project), together with the database implementation and related software resources, should be submitted to your supervisor in the form of CD/DVD. Attach a README file to tell how setup and run your system (e.g. give a list of preset username and password for accessing your system with different user roles).

You may be given a chance for the SECOND system testing and demonstration if your works are below expectation. However, your marks for this component will be CAPPED AT HALF of the allocation marks (provided the necessary improvements have been made). Those who are still underperformed during the SECOND system testing and demonstration will eventually FAIL this component.

Attachment:- Data.xls

Request for Solution File

Ask an Expert for Answer!!
: Aacs3154 web-based systems development project
Reference No:- TGS02240582

Expected delivery within 24 Hours