FORMAN CHRISTIAN COLLEGE (A CHARTERED UNIVERSITY) Software Engineering (COMP 220) SECTION A Project Title: Flower Shop Management System Development Team: Hamza Ahmad (241-548068) Waleed Khalid (231-476819) Ali Haider (241-545842) Date: 06 April 2022 Submitted to: Dr. Saba Khalil Toor Introduction and Background of the project Introduction: Spring has arrived in full blossom and with it, florists in town are looking to amplify their business by streamlining their operations with the use of efficient software. Bookkeeping methods have almost become obsolete in today’s era as businesses look to evolve by adopting a more digitised and hassle-free approach to running their operations. For the purposes of this project, we contacted a local florist who expressed his interest in providing us with specifications and requirements about the kind of software he needed. In exchange, we agreed to present him with a prototype at the end of our semester. Before designing a flower shop management system, we need to consider both the requirements of the client and the requirements of the customers and find a suitable balance between them. Purpose: First and foremost, our software will maintain the inventory of flowers. After our client purchases the flowers from a vendor, he should be able to update his inventory to reflect the changes. Flower bouquets do not have a standard cost as they are made up of stems of different kinds of flowers, with each stem having its own cost. Hence, our database should be able to store the data related to varying kinds of stems and their respective costs, along with the different kinds of packaging material available and their per unit cost. Our software should be able to document the number of sales per day and should also have an option for wastage which keeps track of dead or wilted bouquets. Hence, the purpose here is efficiency, which will automatically be achieved once the software has been integrated into the new environment. Product Scope: The scope of our system will be as follows: ● ● ● ● ● It should be able to quickly calculate the cost of customised bouquets. The UX/UI should be simple and user-friendly. A receipt should be generated for every sale. The database should be flexible enough to accommodate new categories of flowers. Stem prices may change according to varying trends of the market. This must be kept in mind when developing our product. Objectives to develop the project We envision to build an application that is easy to use, reliable and adds value to the business of the flower shop. Majority of flower shops in Pakistan don't have a digital system to manage their daily tasks and various other management needs. Everything from inventory management, employee, and point of sales are done manually, which is not only inefficient but also inaccurate. This leads to wastage of time and valuable resources. With the application we will build, the business owner will be able to manage their inventory, manage their employees, and also offer an efficient point of sales system. One of the main features of our software will be easily comprehensible data visualisation. The flower shop management system is the perfect solution for major problems that many business owners face, providing them with extremely fast, efficient and reliable software solutions. As a result, the business owner will spend more time on innovations and other aspects of business growth, rather than performing the tedious manual job of noting everything down on paper. Therefore, the integration of the software will lead to increased sales and at the same time, expand the ability to smoothly cater large numbers of clients at any given time. High level Requirements/Functionalities of the Project 1. Customer Database/Receipt The system will be able to generate a receipt in the name of the customer and the receptionist. The receipt would include the details of the flower bouquet. The system will also make a small ID of the customer with their phone number and name in our database system. Moreover, the receipt would also include the date and time of the purchase. 2. Inventory Management This system will include the available stock, newly added stock and products that are out of stock. The stock database would be updated when the new stock of stems are purchased, and also will be updated according to the desired price set by the owner, a single stem will have a different rate and the bouquet, which is essentially a collection of stems, will have a separate rate. The software will check the availability of the desired product for the customer. 3. Wasted Stock A flower stem is meant to die if not sold at the end of the day. The system will already know the expected life span of a stem set by the experienced owner. At the end of the day, if the bouquet or stem hasn't been sold, it will show up as unsold stock. We can then decide whether to refresh it for further use. Otherwise, it will be sent to the loss/wastage database. 4. Administrator Access: This software will be allocated to the main branch so it will have access to the sub-branches, which will include their information about employees, stock, profits etc. but the sub-branches won't be able to access the same information about the main branch’s database. 5. Employee Management: This system will include employees ID (personal information, salary, designation). The system will be able to tell us the total working hours of the employee, their off days and their sales. Their salary will automatically be generated according to their progress and number of hours worked. 6. Data Visualisation: A beautiful and easy to understand graphical data visualisation. This refers to the display of unprocessed data into a well organised and comprehensible format. Separate charts and graphs would be created with beautiful colours and designs to visualise profit/loss, sales, stock inventory and prediction of sales in the upcoming months with the help of in depth regression analysis charts. Issues/Risk Involved: During Development: ● The quality of code should be upto the mark to reduce the frequency of bugs and errors. This can be achieved by frequent testing at various increments of the software development life cycle. ● Restricted flow of communication between client and developer may lead to misunderstandings on both fronts as the final software might not be what the client envisioned. ● Poor project management should be avoided in order to meet deadlines. The development team should remain focused while striving to work together collectively and as one unit. ● The user-interface of the software should be kept fairly simple so that users can easily navigate and access all the features. ● The software should be compatible with most modern systems and should not require beefy hardware to run smoothly. After Development: ● The main branch of the florist chain should have direct inventory access but this access should not be extended to other sub-branches. ● The database should frequently be backed up to a server to avoid loss of data. ● Admin rights should be reserved by prompting admins to create a separate profile. This is done to prevent managerial staff or any external and unauthorised entity from manipulating the database. ● The software should be updated regularly to incorporate new features. ● Protection of the system should be prioritised by setting up firewalls and anti-viruses to lower the risk of software corruption. Conclusion This software will serve as the initial steps to the much needed digitalization of the flower industry in Pakistan, which has yet to witness the power digitalization brings with it. Our software will lead to increased revenue, efficient management and will also provide data visualisations that will highlight the current state of business, making it easier to pinpoint the aspects that need immediate attention.