Mobile Services aim to address the unemployment crisis in South Africa, particularly among the youth. This is achieved through an information system that provides a platform as a windows desktop applicaton for individuals with verified skills and qualifications to showcase their freelance services. Potential customers within a chosen radius can use the platform to find and request the services they need.
I have built The application following a Clean Architecture design phillosophy by @Uncle Bob martin to bring about separation of concerns between the Business logic layer and the Presentation layer to allow for high Perfomance, Maintanability and Testibility.
-
Home Page Display:
- When the system launches, the home page will display a random list of all available services from the database.
-
Service Selection and User Authentication:
- When a customer clicks on a service item, the system will prompt them to register or log in, depending on whether they already have an account.
- If the customer chooses to log in, they must provide an email and password.
- If the customer does not have an account, they must register. Registration requires entering name, surname, phone number, email, password, WhatsApp number (optional), city or town, and physical address.
-
Post-Registration Experience:
- After registration, the system will display services available in the user's area on the home panel.
- The user can search for services by title, location, or name.
-
Order Notifications:
- Upon successful order completion, a notification will be sent to the service provider, and the customer will receive a notification regarding the status of their order.
-
Profile Management:
- When the user clicks on the profile icon, the system will display the profile page, where the user can view and update their profile.
-
Order Management:
- When the user clicks on the "My Orders" button, the system will display the orders page, where the user can view requested orders and their status (pending or accepted).
-
Default Registration:
- By default, users are registered as customers.
-
Service Provider Registration:
- Users can opt to register as service providers.
- The system will prompt the user with a registration form to register as a service provider.
-
Main Page Navigation:
- The main page UI navigation panel will include a "Completed" button, launching a page that shows accepted services, and a "My Services" panel, where the service provider can view and add new services.
-
Adding New Services:
- When creating a new service, the user will be prompted with a form to provide the service information.
I have built this application with .NET 4.8 Framework as a base.
-
Frameworks:
- .Net Framework: Development enviroment.
-
Libraries:
- WinForm Library : For user interface
- Google Cloud Library : For creating a remote SQL instance to connect different devives to a backend SQL DBMS for testing purposes
- MySQL server Data tools : For connecting the application to MySQL tools
-
Database:
- MySQL Workbench: for integrating SQL development, administration, database design and creation of the database
-
Programming Languages:
- C#: for building the application business logic and the user interface.
- SQL: for building the system's backend database queries.