Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Problem Description The purpose of this exercise is to provide the experience of creating interactive software by using Python. The assessment contributes to all learning

Problem Description
The purpose of this exercise is to provide the experience of creating interactive software by using Python.
The assessment contributes to all learning outcomes as indicated and will comprise of the following components:
1. Write a report including the design and specification of your project, highlighting the design pattern used for development and its motivation.
2. Develop the product (software) using appropriate programming concepts and conventions.
3. Develop and document a testing process.
Scenario: Secure Marketing Application with Graphical User Interface using SQLite and QR Code
Overview: As a programmer, you have been tasked with developing a secure marketing application with a graphical user interface (GUI) using SQLite database and QR code. The system should allow users to view marketing promotions, scan QR codes to access additional information, and track their interactions with promotions.
Software Requirements:
1. Graphical User Interface: You will need to develop a GUI for the marketing application using Python programming language. The GUI should be user-friendly and visually appealing, with at least the following features to include search bar, promotion categories, and a QR code scanner.
2. User Authentication: The system should have a secure user authentication process, requiring users to provide their login credentials to access their personal information and view promotions. Passwords must be hashed and stored securely in the SQLite database.
3. QR Code Generator and Scanner: The system should be able to generate and scan QR codes and retrieve additional information about promotions, such as product details or discounts. You will need to implement a QR code generator and scanner in the application. QR codes generated should be saved in the local directory of your developed software (application).
4. SQLite Database: You will need to create a SQLite database to store promotion and user information. The database should have at least three tables: one for promotions, one for user registration, and another for storing user interactions with promotions. The database should be linked with developed GUI.
5. SQL Injection Prevention: The system should be protected against SQL injection attacks. You must ensure that all user inputs are sanitized and validated before being passed to the SQLite database. For this application, any users age under 18 is considered as an attack and details should be rejected and not saved in the database.
You can use one of the following Python GUI libraries:
PyQt5
Python Tkinter
PySide2
Kivy
It is very important to focus on the consistency of your application. Your Secure Marketing Application can contain one or more windows linked together.
Report Structure:
You are asked to write a report with at least the following sections:
Table of contents
1. Introduction
A short, informal description of the software, its objectives and an indication of the extent to which it has been implemented and any problems faced in its development
2. Design of system
Discussion and reflection on the design and development of the software, showing the structure of the software and identifying appropriate features.
Discussion of implementation logic, code snippets, diagrams, and screenshots where needed.
A flowchart of the overall system and ER diagram of the database are required.
3. Testing the system
A set of test results to be submitted.
A discussion on failed tests and how much of your code you think your tests cover. Do they cover every aspect?
4. Conclusion

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Put Your Data To Work 52 Tips And Techniques For Effectively Managing Your Database

Authors: Wes Trochlil

1st Edition

0880343079, 978-0880343077

More Books

Students also viewed these Databases questions

Question

1. Identify six different types of history.

Answered: 1 week ago

Question

2. Define the grand narrative.

Answered: 1 week ago

Question

4. Describe the role of narratives in constructing history.

Answered: 1 week ago