- Overview of the enterprise application
- Features and use cases
- Domain diagram of the system
- High level Architecture
- Class diagram
- Database table
- Test case
The enterprise application our team chose to develop is an online cosmetics retail website that supports a hypothetical cosmetics business “Beauty Circle”. The enterprise application supports the business in selling cosmetics ranging from makeup, skincare, hair products and tools and accessories. The enterprise consists of two types of users; customer and site administrator features which have different privilege access to the website. In addition, customers can be registered users or guest users (who have not registered) The enterprise application assists Beauty Circle to achieve their business needs through the following ways.
- Site Administrator can manage resources more efficiently as they can add, update or delete stock through the website according to the inventory, sales or trends of the market.
- Database will be linked to the website and store information about customers (registered users only) and stock information.
- Customers are given more efficient methods to shop as they can view detailed information of the product, add products into their shopping cart and generate orders by checking out their shopping cart.
- Registered users can automatically check out through saved cards in their accounts whereas guest users will be required to enter their payment information and shipping and payment address.
- All customers paying to the business will pay through an external system that is linked to the enterprise application.
- Registered users have additional functions compared to guest users as they can view their account to view their personal information (such as their cards saved and addresses) and they can also add items into their wishlist to purchase in the future.
This feature allows the user to purchase Cosmetic goods from the BeautyCircle website. It allows customers to login/register into their accounts, view and search products they would like to purchase. Customers who are logged into their accounts can add or delete products into the shopping cart, also can add or delete the products they would like to purchase at a later date or items that are currently out of stock into or from their wishlist. The products in wishlist can be added to shopping cart directly. Customers can create the order by checking out their shopping cart automatically.
- User log in/register: This service allows users to register or sign into their account. The customer can still view items within their cart after logging out and back into their account again.
- View and search the products: This service allows users to browse the products and read the detailed description and feedback for the product
- Add/delete products into/from the cart: This service allows users to add the products into their shopping cart with desired quantity, and remove any products they no longer want from their shopping cart.
- Create the order: This service allows users to create an order by checking out their shopping cart. Customers can pay through various methods such as credit card or debit cards. The system will verify the validity of the payment and provide users with a receipt and tracking number for the order.
- Add/remove from the wishlist: Users can add products into their wish list and remove from their wishlist themselves or after the items have been purchased by the user
This feature allows the administrator to manage the system. It allows the administrator to login to their designated administrator account. And then the administrator can add or delete products into the database system or create/remove the webpage for the product and view/search specific user’s orders. Administrators can also manage Beauty Circle by viewing and updating web page information such as contact details and product status.
- Administrator log in: The system allows the administrator login with their unique identification number to manage the stock within the system.
- View/search the users’ information: The service allows the administrator to search and retrieve users information, and also view and search for orders belonging to each user.
- Update/delete the orders: The service allows the administrator to check the stock availability to process orders, and then update the order status, such as pending, processing, delivering, and complete. It also allows the administrator to delete any order due to any irresistible factors, such as customer ask to cancel, lack of stock. search and retrieve users information, and also be able to view and search for all orders belong to each user.
- Add/delete products into/from the database system: The service allows the administrator to add new items into the database system and remove the items that no longer supplied from the database system.
- Edit product information: The service allows the administrator to edit products’ information, such as name, description and price.
- Create/delete/edit user account: The service allows the administrator to create user accounts for new users, and edit user information, and delete existing user account from the system.
- Create/Edit admin account: The service allows the administrator to create admin accounts for new administrators, and edit administrator account information.
BeautyCircle is a web based enterprise system that is used by the cosmetics company to sell their products online. The system has two kinds of users, registered user and administrator. The system provides the service for registered user to purchase the cosmetics product based on their needs from a list of available products, and also allow the administrator to manage the system. The system will provide authentication and authorization mechanism to make sure that each user can access the website and act in the system by using their username and password. Order will require the user to register or log in first and the products that have been adding to the shoppingCart and wishList can store to database for user to purchase next time. The RegisteredUser, Order and Product can be managed by AdminUser, as the admin user has the right to add and delete any user, order or product into and from the system. The general overview of domain classes, their main attributes and their relationships are illustrated in the domain class diagram.
Based on the system overview, the beautyCircle is presented as a high-level architecture diagram. The high-level architecture of the system is divided into five layers.
The component diagram of BeautyCircle is based on high-level architecture, each layer is a subsystem that handle the different aspects of BeautyCircle, and the coupling between each subsystem is low.
- Presentation layer contains view module to display the system and controller module to handle requests.
- Security layer provides authentication, authorisation, validation, data integrity and condentiality to presentation layer.
- Session layer is used to maintain the session state based on client session state.
- Data transfer object (DTO) is created to carry data between processes in order to reduce the number of method calls.
- Remote Facade contains six modules to construct the DTO instance.
- Service layer contains five modules to provide services for users requests.
- Domain logic layer contains the main domain objects and business logic of the system.
- Data mapper layer contains six mapper classes to transfer data between data source layer and domain logic layer.
- Concurrency contain lock managers to control the execution of transactions.
- Data source layer contains the database that is used for persistent data storage. The high-level architecture model helps the system become more modular and changeable, as the system is divided into different subsystems or components, and each component implement a subset of the overall system's functionality. It improves the mainatainese and understandable of the whole system.
The following diagram shows the class diagrams of each subset of the BeautyCircle system. All of them can compose the class diagram for the whole system.
The database diagram shows all tables with their information and relationships for the database of BeautyCircle system.
Registered user: Username: ksmith Password: 123km
Administrator: adminLogin: jsmith Password: 123jm
Roles: New users can register the system by themselves. Registered user can view his/her information at profile page, search for the available products after he/she login, add/delete products into/from shopping cart and wishlist. And place the order at the shopping cart page. After the order has been placed, customer can check his order in order page, and also rate the products in the order. Administrator can update orders’ status, can also help user to cancel the order and edit user’s information. Administrator can manage the product information and user information. Administrator can also create a new administrator or user account.