Life Saver: Pharmacy Management System LIFE SAVER Project ID: BCS-1804 Session: 2018-2022 Submitted By: Rabia Riaz Ammara Kanwal Sehar BCS18-006 BCS18-010 BCS18-011 University of the Punjab Gujranwala Campus Department of Information Technology © Department of Information Technology, University of The Punjab, Gujranwala Campus. i Life Saver: Pharmacy Management System STATEMENT OF SUBMISSION This is to certify that following students have successfully completed the final project named as: Life Saver (Pharmacy Management System) at The University of the Punjab, Gujranwala Campus, to fulfil the partial requirement of the degree of Bachelors in Computer Science. Sr. No. Student’s Roll No. Student’s Name 1 BCS18-006 Rabia Riaz 2 BCS18-010 Ammara Kanwal 3 BCS18-011 Sehar Internal Supervisor Project Coordinator Dr. Ghulam Mustafa Mr. Muhammad Younas PUGC PUGC Incharge IT-Department Director General Dr. Naveed Ahmed Khan Dr. Naveed Iqbal Chaudhry PUGC PUGC © Department of Information Technology, University of The Punjab, Gujranwala Campus. ii Life Saver: Pharmacy Management System PROOFREADING CERTIFICATE It is to certify that I have read the document thoroughly and circumspectly. I am convinced that the resultant project does not contain any spelling, punctuation or grammatical mistakes as such. All in all, I find this document well organized and I am in no doubt that its objectives have been successfully met. Ms. Adila Hussain PUGC © Department of Information Technology, University of The Punjab, Gujranwala Campus. iii Life Saver: Pharmacy Management System Acknowledgements First, we thank Allah Almighty, because of His blessings, we able to complete our project successfully. This project is the direct result of the teamwork. We sincerely thank the instructors and students who have shared their suggestion with us over last few weeks. Many thank goes to Dr. Ghulam Mustafa, our Project supervisor and Mr. Muhammad Younas, our Project coordinator, whose management helped us to get this project produced in timely and efficient manner. And finally, we thank, Mr. Zeeshan Arshad who weren’t directly involved in this project but who have stood by us the whole way, we appreciate your encouragement and support. We are also thankful to our friends and families whose silent support led us to complete our project. © Department of Information Technology, University of The Punjab, Gujranwala Campus. iv Life Saver: Pharmacy Management System Write to us We welcome your response to this project. If there is anything you want to mention about the improvement of this project, please let us know: Group Member 1 Rabia Riaz Group Member 2 Ammara Kanwal Group Member 3 Sehar rabiariaz188@gmail.com ammaramzan789@gmail.com sefiza48@gmail.com © Department of Information Technology, University of The Punjab, Gujranwala Campus. v Life Saver: Pharmacy Management System ABSTRACT The project “LIFE SAVER (PHARMACY MANAGEMENT SYSTEM)” is web enabled application developed in PHP and powerful MY SQL server backend. To implement it, pharmacy does not need or require expensive hardware and software. All pharmacy need is internet connection and desktops. This pharmacy management system is intended to provide a online store for users and also to increase accuracy, safety and efficiency in the pharmacy. Its is computer based system that stores important information and makes pharmacy run better. Life Saver pharmacy is a platform independent system that virtually any user can access from anywhere through a standard internet accessible system. © Department of Information Technology, University of The Punjab, Gujranwala Campus. vi Life Saver: Pharmacy Management System For Our Beloved Parents and Teachers “Dedicated to our parents and teachers without whose wholehearted support, encouragement and guidance it would have been impossible for us to make this project efficiently.” © Department of Information Technology, University of The Punjab, Gujranwala Campus. vii Life Saver: Pharmacy Management System Table of Contents Feasibility Report .....................................................................................................................xii Project/Product Feasibility Report ........................................................................... 13 1.1.1 Technical Feasibility ............................................................................................ 13 1.1.2 Operational Feasibility ......................................................................................... 13 1.1.3 Economic Feasibility ........................................................................................... 13 1.1.4 Schedule Feasibility ............................................................................................. 13 1.1.5 Specification Feasibility....................................................................................... 14 1.1.6 Information Feasibility......................................................................................... 14 1.1.7 Motivational Feasibility ....................................................................................... 14 1.1.8 Legal & Ethical Feasibility .................................................................................. 14 Project/Product Scope .............................................................................................. 14 Project Costing ......................................................................................................................... 15 Project cost estimation by function point analysis ................................................... 16 2.1.1 Calculating Internal Logic Files (ILF’s) .............................................................. 16 2.1.2 Calculating External Inputs (EI): ......................................................................... 19 2.1.3 Calculating External inquiries (EQ): ................................................................... 22 2.1.4 Calculating External Outputs (EO): ..................................................................... 23 2.1.5 Calculating over all Function Points .................................................................... 23 2.1.6 Calculation of Value Adjustment Factor: ............................................................ 24 2.1.7 Calculation of Function Point (FP): ..................................................................... 24 2.1.8 Total Duration of the Project: .............................................................................. 24 2.1.9 Total Cost of the Project: ..................................................................................... 26 Critical Path Method ................................................................................................................ 27 CPM - Critical Path Method .................................................................................... 28 3.1.1 Specify the Individual Activities ......................................................................... 27 3.1.2 Determine the Sequence of the Activities ............................................................ 27 3.1.3 Network Diagram................................................................................................. 27 3.1.4 Estimate Activity Completion Time .................................................................... 28 3.1.5 Identify Critical Path ............................................................................................ 31 Project Planning ....................................................................................................................... 32 Gantt Chart ............................................................................................................... 33 Introduction to Team member and their skill sets ................................................... 33 4.2.1 Rabia Riaz ............................................................................................................ 33 4.2.2 Ammara Kanwal .................................................................................................. 33 © Department of Information Technology, University of The Punjab, Gujranwala Campus. viii Life Saver: Pharmacy Management System 4.2.3 Sehar .................................................................................................................... 33 Tools and Technology with reasoning ..................................................................... 34 4.3.1 Development Technologies ................................................................................. 34 4.3.2 Development Tools .............................................................................................. 35 4.3.3 CASE Tools ......................................................................................................... 37 Vision Document ..................................................................................................... 38 Risk List ................................................................................................................... 38 Requirement Engineering ........................................................................................................ 39 Requirement Engineering ........................................................................................ 40 5.1.1 Systems Specifications......................................................................................... 40 5.1.2 Introduction .......................................................................................................... 40 5.1.3 Existing System ................................................................................................... 40 5.1.4 Organization Chart ............................................................................................... 41 5.1.5 Scope of the System ............................................................................................. 41 5.1.6 Summary of Requirements (Initial Requirements) .............................................. 42 5.1.7 . Identify External Entities ................................................................................... 42 Context Level Data Flow Diagram .......................................................................... 43 Capture “Shall Statement” ....................................................................................... 44 Allocate Requirements ............................................................................................. 45 "Prioritize Requirement”.......................................................................................... 46 “Requirement Trace-ability Matrix” ........................................................................ 47 High Level Use Case Diagram ................................................................................ 49 Use Cases & Use Case Diagram (Refined and Updated) ........................................................ 50 6 Use Case Description ................................................................................................... 51 6.1.1 Use Case UC_1: Customer Registration .............................................................. 51 6.1.2 Use Case UC_2: Login ........................................................................................ 49 6.1.3 Use Case UC_3: Update Profile .......................................................................... 50 6.1.4 Use Case UC_4: Manage Employees .................................................................. 51 6.1.5 Use Case UC_5: Manage Items (menu)............................................................... 52 6.1.6 Use Case UC_6: Manage Add-Ons ..................................................................... 52 6.1.7 Use Case UC_7: Manage Variants ................................................................................. 53 6.1.8 Use Case UC_8: Chef Order Processing ......................................................................... 54 6.1.9 Use Case UC_9: Waiter Order Processing .......................................................... 55 6.1.10 Use Case UC_10: Cafe Order Processing ............................................................ 55 6.1.11 Use Case UC_11: Online Order Placement ......................................................... 56 6.1.12 Use Case UC_12: View Order History ................................................................ 57 6.1.13 Use Case UC_13: Feedback ................................................................................. 57 © Department of Information Technology, University of The Punjab, Gujranwala Campus. ix Life Saver: Pharmacy Management System 6.1.14 Use Case UC_14: Generate Reports ............................................................................ 59 6.1.15 Use Case UC_15: Logout .............................................................................................. 59 6.2 Use Case Diagram (refined and updated) ...................................................................... 61 Domain model .......................................................................................................................... 65 7.1 Domain Model: ............................................................................................................. 66 Sequence Diagrams .................................................................................................................. 68 8.1 Sequence Diagrams:...................................................................................................... 69 8.1.1 SSD_1: Customer Registration ....................................................................................... 69 8.1.2 SSD_2: Verify Customer ............................................................................................... 69 8.1.3 SSD_3: User Login ........................................................................................................ 70 8.1.4 SSD_4: Manage Employees ........................................................................................... 72 8.1.5 SSD_5: Manage Items .................................................................................................... 73 8.1.6 SSD_6: Manage Add-Ons ............................................................................................... 74 8.1.7 SSD _7: Manage Variants ............................................................................................. 75 8.1.8 SSD _8: Chef Order Processing ...................................................................................... 75 8.1.9 SSD _9: Waiter Order Processing ................................................................................... 76 8.1.10 SSD _10: Cafe Order Processing ................................................................................ 76 8.1.11 SSD _11: Online Order Placement ................................................................................ 78 8.1.12 SSD _12: View Order History....................................................................................... 79 8.1.13 SSD _13: Feedback ........................................................................................................ 80 8.1.14 SSD _14: Generate Reports ............................................................................................ 80 8.1.15 SSD _15: Logout ........................................................................................................... 81 Collaboration Diagrams ........................................................................................................... 82 9.1 Collaboration Diagrams: ................................................................................................ 83 9.1. 1 CD_1: Customer Registration ......................................................................................... 83 9.1.2 CD_2: Verify Customer ................................................................................................. 84 9.1.3 CD_3: User Login ............................................................................................................ 84 9.1.4 CD_4: Manage Employees ........................................................................................ 84 9.1.5 CD_5: Manage Items ....................................................................................................... 86 9.1.6 CD_6: Manage Add-Ons ................................................................................................. 86 9.1.7 CD _7: Manage Variants ................................................................................................ 87 9.1.8 CD _8: Chef Order Processing ................................................................................. 87 9.1.9 CD _9: Waiter Order Processing ..................................................................................... 89 9.1.10 CD _10: Cafe Order Processing ..................................................................................... 90 9.1.11 CD _11: Online Order Placement ................................................................................. 91 9.1.12 CD _12: View Order History ....................................................................................... 91 9.1.13 CD _13: Feedback ......................................................................................................... 93 © Department of Information Technology, University of The Punjab, Gujranwala Campus. x Life Saver: Pharmacy Management System 9.1.14 CD _14: Generate Reports ............................................................................................ 93 9.1. 15 CD _15: Logout ....................................................................................................... 94 Operation Contract ................................................................................................................... 95 10. Operation Contract: .................................................................................................. 96 10.1 Customer Registration ................................................................................................ 96 10.2 Verify Customer Name: Verify Customer ................................................................. 96 10.3 User Login Name: User Login ................................................................................... 97 10.4 Manage Employees Name: Manage Employees ........................................................ 97 10.5 Manage Items:............................................................................................................. 98 10.6 Manage Add-Ons ........................................................................................................ 98 10.7 Manage Variants ......................................................................................................... 99 10.8 Chef Order Processing ..................................................................................................... 99 10. 9 Waiter Order Processing Name: Waiter Order Processing ...................................... 100 10.10 Cafe Order Management .......................................................................................... 100 10.11 Online Order Placement........................................................................................... 101 10.12 View Order History ................................................................................................. 101 10.13Feedback Name:............................................................................................................ 102 10.14 Generate Reports..................................................................................................... 102 10.15 Logout ..................................................................................................................... 102 Class Diagram ........................................................................................................................ 104 11.1 Class Diagram ............................................................................................................ 105 Data Model............................................................................................................................. 107 12.1 Data Model: ............................................................................................................... 108 © Department of Information Technology, University of The Punjab, Gujranwala Campus. xi Life Saver: Pharmacy Management System CHAPTER NO.1 Feasibility Report © Department of Information Technology, University of The Punjab, Gujranwala Campus. xii Life Saver: Pharmacy Management System Project/Product Feasibility Report There are many types of feasibilities: Technical Operational Economic Schedule Specification Information Motivational Legal and Ethical 1.1.1 Technical Feasibility In this technical feasibility analysis, we have evaluated the probability of doing this project, whether it can be developed or not? It was unquestionably the most complicated question for us prior to starting the venture but after a detailed analysis we concluded that the project would definitely be developed because we have all the capability and technologies that are essential to develop this project. The team members possess the technical skills that are required to develop the plan. Technical issues involved in this project are the necessary technology existence, technical guarantees of accuracy, reliability, ease of access, data security, and aspects of future Expansion. 1.1.2 Operational Feasibility Our project is operationally feasible because it is possible to implement it and it can be turned into a system which will meet the requirements of the PHARMACY when it is developed and there is sufficient support from the customers. We anticipate that the project will be operational successfully and will raise no issue regarding different operations it performs. 1.1.3 Economic Feasibility Our Project of Punjab Cafe is economically feasible as it is in affordable range. It is cost effective in the sense that has eliminated the paperwork completely. For the users to access the application, the only cost involved will be in getting access to the Internet. The result obtained contains minimum errors that are highly accurate as data is required. Benefits are however greater than cost once it will be fully operational. 1.1.4 Schedule Feasibility We have judged and evaluated how the project will be (Life Saver) completed within the time defined and with the available resources and workforce. Our project is going on according to planned schedule. We will have scheduled meetings for discussions of the problems or about the next phase. Therefore the completion and deployment of this project is guaranteed within the given time constraints. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 1 Life Saver: Pharmacy Management System 1.1.5 Specification Feasibility Our project will meet all the specifications that are necessary for the development of this project. All requirements are clear and well defined to the team. Every check regarding the project has also been study in this phase. The limitation of the scope is analyzed in this phase. The hardware and software specifications for the completion of this project are also feasible. The scope boundaries are also well accessed. 1.1.6 Information Feasibility We are highly confident that the information generate by system will be correct, complete, meaningful, enough, reliable and error free. After all the information is collected it is felt that there is no lack of information for the application to be developed. 1.1.7 Motivational Feasibility Our team is highly motivated because we are following MOI (Motivation, Organization, Innovation) Model in order to develop this project. The team is eager and has intensive wish to work on this project, they are delirium to improve their skills by working on this project. 1.1.8 Legal & Ethical Feasibility We have made sure that our system is legally and ethically correct and secure. There is no violation of any type of rules regarding to this project. The project is absolutely a legal one, as it would not generate any problem for others. Project/Product Scope Life Saver is a comprehensive web-based project in which we have designed and managed website in order to satisfy customer needs. Main aim is to facilitate Life Saver's customers, staff and administration by developing software that should manage customers, admin portal and should deal with menu management and online payment handling through PayPal. This website has the potential to become essential for customers who wish to buy medicines. This system has considerable and extensive scope for customers to make an order and add into cart, users will receive their order. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 2 Life Saver: Pharmacy Management System CHAPTER NO.2 Project Costing © Department of Information Technology, University of The Punjab, Gujranwala Campus. 3 Life Saver: Pharmacy Management System Project cost estimation by function point analysis 2.1.1 Calculating Internal Logic Files (ILF’s): Admin: ILF: Admin Description: DET ID,Pharmacy_Name, Address, Email, Username, Password, Contact_Number Complexity DET RET 7 1 Low = 7 Employee: ILF: Employee Description: DET ID, Name, Conatct_Number , CNIC, Address, Shift, Experience, Email, Qualification DET RET 9 1 Complexity Low = 7 Purchases: ILF: Purchases Description: DET ID, Supplier_Name, Invoice_Number, Voucher_Number, Purchase_Date, Total_Amount, Payment_Status Complexity DET RET 7 1 Low = 7 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 4 Life Saver: Pharmacy Management System Customer: ILF: Customer Description: DET Id, Email, Name, Contact_Number, Password, Address Complexity DET RET 6 1 Low = 7 Customer_details:(paypal details) ILF: Customer_details Description: DET Name, Email, Order_id, Address DET RET 4 1 Complexity Low = 7 Customer_Orders: ILF: Customer_Orders Description: DET Id, Paypal_Order_Id, User_Id, Total_Amount, Status, Is_Revoked DET RET 6 1 Complexity Low = 7 Suppliers: ILF: Suppliers Description: DET Id, Name, Email, Contact_Number, Address Complexity DET RET 5 1 Low = 7 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 5 Life Saver: Pharmacy Management System Invoice: ILF: Invoice Description: DET DET RET 6 2 Invoice_Id, Net_Total, Invoice_Date, Customer_Id(fk), Total_Amount, Total_Discount Complexity Low = 7 Feedback: ILF: Feedback Description: DET Id, Name, Email, Enquiry/Feedback DET RET 4 1 Complexity Low = 7 Order: ILF: Order Description: DET Id, Customer_Id, Product_Name, Product_Id, Amount, Qty, Status, Customer_Order_Id Complexity DET RET 8 2 Low = 7 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 6 Life Saver: Pharmacy Management System Medicines_stock: ILF: Medicines_Stock Description: DET Id, Name, Batch_Id(fk), Expiry_Date, Quantity, Invoice_Number, Mrp, Rate Complexity DET RET 8 2 Low = 7 Medicines: ILF: Medicinens Description: DET Id, Name, Packing, Generic_Name, Supplier_Name DET RET 5 1 Complexity 2.1.2 Low = 7 Calculating External Inputs (EI): Admin: EI: Admin Description: DET ID,Pharmacy_Name, Address, Email, Username, Password, Contact_Number Complexity DET FTR 7 1 Low = 3 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 7 Life Saver: Pharmacy Management System Customer: EI: Customer Description: DET Id, Email, Name, Contact_Number, Password, Address DET FTR 6 1 Complexity Low = 3 Medicines: EI: Medicinens Description: DET Id, Name, Packing, Generic_Name, Supplier_Name DET FTR 5 1 Complexity Low = 3 Employee: ILF: Employee Description: DET ID, Name, Conatct_Number , CNIC, Address, Shift, Experience, Email, Qualification Complexity DET FTR 9 1 Low = 3 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 8 Life Saver: Pharmacy Management System Suppliers: ILF: Suppliers Description: DET Id, Name, Email, Contact_Number, Address DET FTR 5 1 Complexity Low = 3 Orders: EI: Orders Description: DET Id, Customer_Id, Product_Name, Product_Id, Amount, Qty, Status, Customer_Order_Id Complexity DET FTR 8 2 Average = 4 Feedback: EI: Feedback Description: DET Id, Name, Email, Enquiry/Feedback Complexity DET FTR 4 1 Low = 3 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 9 Life Saver: Pharmacy Management System 2.1.3 Calculating External inquiries (EQ): Medicines: EQ: Medicinens Description: DET Id, Name, Packing, Generic_Name, Supplier_Name DET FTR 5 1 Complexity Low = 3 Invoice: ILF: Invoice Description: DET DET FTR 6 1 Invoice_Id, Net_Total, Invoice_Date, Customer_Id(fk), Total_Amount, Total_Discount Complexity Low = 3 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 10 Life Saver: Pharmacy Management System 2.1.4 Calculating External Outputs (EO): Customer_Orders: EO: Customer_Orders Description: DET Id, Paypal_Order_Id, User_Id, Total_Amount, Status, Is_Revoked DET FTR 6 1 Complexity Low = 4 Purchase Report: ILF: Purchases Description: DET Id, Supplier_Name, Invoice_Number, Voucher_Number, Purchase_Date, Total_Amount, Payment_Status DET FTR 7 1 Complexity Low = 4 Sale Report: ILF: Purchases Description: Id , Sales date, Invoice_Nmber, Customer_Name, Total_ammount Complexity DET FTR 5 2 Low = 4 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 11 Life Saver: Pharmacy Management System 2.1.5 Calculating over all Function Points: Complexity of Components Type of Component External Inputs External Outputs External Inquiries Internal logical files External Interface files Low 6*3 = 18 3* 4 = 12 2* 3 = 6 12* 7 = 84 0* 5 = 20 Average 1* 4 = 4 0* 5 = 5 0* 4 = 0 0* 10 = 0 0* 7 =0 High 0* 6 = 0 0*7=0 0*6=0 0 * 15 = 0 0 * 10 = 0 Total 22 12 6 84 0 Total Unadjusted Function Points = 124 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 12 Life Saver: Pharmacy Management System 2.1.6 Calculation of Value Adjustment Factor: Sr.# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Questions Does the system require reliable backup and recovery? Scale 5 Is data communication required? 3 Performance of the system to fulfill client requirements Configuration extent? Transactional rate? 3 2 2 Extent to which Online data entry and control information functions are provided? How much efficiency of the user will be increased? 3 The extent to which online update for the ILF is possible? Complexity of the product? The extent to which application and its code can be reused in another application? Installation eases of the product? Operational ease? The extent to which application can be deployed at multiple sites? Extent to which design of the product is flexible? 4 4 3 Value Adjustment factor (Fi) 4 5 4 2 3 47 2.1.7 Calculation of Function Point (FP): FP estimated = Count Total * (0.65 + (0.01 * (Fi))) = 124 * (0.65 + (0.01 * 47)) = 124 * (1.12) = 138.88 = 139 approx. 2.1.8 Total Duration of the Project: Average productivity = 10FP / Person-month Effort month = FPestimated / Productivity = 139/ 10 = 13.9 Person month Duration of Project = Effort month / No. of persons © Department of Information Technology, University of The Punjab, Gujranwala Campus. 13 Life Saver: Pharmacy Management System 2.1.9 = 13.9 /3 = 4.6333 = 5 months approx. Total Cost of the Project: Labor Rate = Rs.15, 000 Cost Per FP = Labor Rate / Avg. Productivity Where average productivity is 10 = 15,000 / 10 Cost Per FP = Total Project Cost Total Project Cost = 1500 = FP estimated * Cost Per FP = 139 * 1500 Rs. 208,500 approx. Finally, Total Project Cost and Total Project Effort are calculated given the average productivity parameter for the system. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 14 Life Saver: Pharmacy Management System CHAPTER NO.3 Critical Path Method © Department of Information Technology, University of The Punjab, Gujranwala Campus. 15 Life Saver: Pharmacy Management System CPM - Critical Path Method 3.1.1 Specify the Individual Activities Following are the individual activities involved in the project: 3.1.2 Initiation Requirement Gathering Feasibility Study Costing Scheduling Requirement Engineering Design Implementation Testing Deployment Determine the Sequence of the Activities There are many activities that are dependent on the completion of some other activities. There are different dependent activities in the project. The dependencies of activities upon each other are as under: Initiation -- None Requirement Gathering -- Initiation Feasibility Study -Requirement Gathering Costing -Requirement Gathering, Feasibility Study Scheduling -Costing Requirement Engineering - Requirement Gathering, Scheduling Design -Requirement Gathering, Requirement Engineering Implementation -Design Testing -Design, Implementation Deployment -Implementation, Testing © Department of Information Technology, University of The Punjab, Gujranwala Campus. 16 Life Saver: Pharmacy Management System Task ID A B C D E F G H I J Task Description Initiation Requirement Gathering Feasibility Costing Scheduling Requirement Engineering Design Implementation Testing Deployment Duration (weeks) 1 3 2 2 1 2 3 5 3 2 Predecessors A B B, C D B,E B,F G H,G H,I 3.1.3 Network Diagram © Department of Information Technology, University of The Punjab, Gujranwala Campus. 17 Life Saver: Pharmacy Management System Critical Path: Critical path is: A, B, C, D, E, F, G, H, I, J Total Months = 5.5 months approx. Total Weeks = 24 weeks Total Days = 168 Days 3.1.4 Estimate Activity Completion Time The estimated time required to complete each activity is shown in the table below: Task ID A B C D E F G H I J 3.1.5 Task Description Initiation Requirement Gathering Feasibility Costing Scheduling Requirement Engineering Design Implementation Testing Deployment Duration (weeks) 1 3 2 2 1 2 3 5 3 2 Identify Critical Path The critical path method (CPM) is a step-by-step project management technique for process planning that defines critical and noncritical tasks with the goal of preventing time-frame problems and process bottlenecks. The critical path is the longest path through the network. The critical path for the above network diagram is: © Department of Information Technology, University of The Punjab, Gujranwala Campus. 18 Life Saver: Pharmacy Management System Tasks Dependencies Duration ES EF LS LF TS FS A - 1 0 1 0 1 0 0 B A 3 1 4 1 4 0 0 C B 2 4 6 4 6 0 0 D B, C 2 6 8 6 8 0 0 E D 1 8 9 8 9 0 0 F B,E 2 9 11 9 11 0 0 G B,F 3 11 14 11 14 0 0 H G 5 14 19 14 19 0 0 I H,G 3 19 22 19 22 0 0 J H,I 2 22 24 22 24 0 0 © Department of Information Technology, University of The Punjab, Gujranwala Campus. 19 Life Saver: Pharmacy Management System CHAPTER NO.4 Project Planning © Department of Information Technology, University of The Punjab, Gujranwala Campus. 20 Life Saver: Pharmacy Management System 4.1 Gantt Chart Introduction to Team member and their skill sets The team, which is going to work on this project, comprises of four members: Rabia Riaz Ammara Kanwal Sehar 4.2.1 BCS18-006 BCS18-010 BCS18-011 Rabia Riaz: Rabia Riaz is responsible for web designing, programming modules and also engaged with the documentation of the project.She is also responsible to handle all the issues regarding the project.She is playing a partial role in other activities 4.2.2 Ammara Kanwal: Ammara Kanwal is the group leader she will lead her team members in every task required for the completion of this project. She is responsible for division of work among team members. She is working with programming module ,database also engaged with documentation and designing of the project. 4.2.3 Sehar: Sehar is responsible for managing database and also engaged with programming modules , website designing , documenting the project of the project as well as she will also help her team members in other activities © Department of Information Technology, University of The Punjab, Gujranwala Campus. 21 Life Saver: Pharmacy Management System Tools and Technology with reasoning 4.3.1 Development Technologies 4.3.1.1 Hardware Specification 4.3.1.1.1 Server-side Hardware Specifications 4.3.1.1.2 2.0 GHz Processer Dual Core or higher. RAM 4 GB or more Hard disk space 40 GB or above VGA 1024 x 768 or higher resolution Network adapter Client-side Hardware Specifications Processor 2.0 GHz or faster RAM 2 GB or more Hard disk space 20 GB or above VGA 1024 x 768 or higher resolution Internet connection 4.3.1.2 Software Specification 4.3.1.2.1 Server-side Software Specifications Window Server 8, Window server 8.1 , Window server 10 Google Chrome, Mozilla Firefox Web Server: XAMPP PHP: MySQL PHP: Atom 4.3.1.2.2 Client-side Software Specifications Google Chrome, Microsoft Edge or Mozilla Firefox Window 8, Window 8.1 or Window 10 Android 4.4 KitKat or above (for android users © Department of Information Technology, University of The Punjab, Gujranwala Campus. 22 Life Saver: Pharmacy Management System 4.3.2 Development Tools 4.3.2.1 PHP PHP is a programming language that is powerful server-side scripting language designed for creating dynamic and interactive websites. It can do all sorts of things: evaluate from data sent from browser, build custom web content to serve the browser , talk to database and even send and receive cookies.PHP is widely used , opensource and efficient alternative to competitors such as MICROSOFT's ASP.PHP is installed on more than 20 million websites and 1 million web-servers. PHP runs on various Platforms(Windows , Linux, UNIX etc) PHP is compatible with all servers used today (Apache, IIS etc) It supports wide range of databases. PHP is easy to learn and runs efficiently on server-side. PHP has large size community since it is open source Works on object-oriented programming. 4.3.2.2 Why not ASP .net? We are not using ASP .net for the following reasons: ASP.NET and Visual Studio are expensive and their upkeep is resource intensive. Less prone to customization Most ASP.Net applications runs on IIS , additionally ASP.Net uses more web server resources than PHP or other languages , so it requires either better servers or greater number of them. License cost attached Dedicated community with fewer developers 4.3.2.3 Why Not Java? We are not using java for the following reasons: As a multi-platform programming language More susceptible to security breaches because it is platform independent. It allows the use only of the java programming language. Dependent on 3rd party tools to develop applications. Open source. Java has no LINQ equivalent. There is no standard tool set available as the integrated development environment. Java can communicate only with java programming. JVM is slower and need frequent update of more operating system © Department of Information Technology, University of The Punjab, Gujranwala Campus. 23 Life Saver: Pharmacy Management System 4.3.2.4 MYSQL MySQL Server is an open source relational database management system developed , distributed and supported by Oracle Corporation. As a database, it is a software product whose primary function is to store and .retrieve data as requested by other software applications. It can be run either on the same computer or on another across a network. MySQL consists of a solid data security layer that protects sensitive data from intruders. Also, passwords are encrypted in MySQL. MySQL follows the working of a client/server architecture. There is a database server (MySQL) and arbitrarily many clients (application programs), which communicate with the server; that is, they can query data, save changes, etc. MySQL is the world's most popular open source database is that it provides comprehensive support for every application development need. MySQL supports multiple storage engines but SQL supports a single storage engine. Thus, MYSQL is more flexible. 4.3.2.5 HTML 5.0 This is latest version of Hyper Text Markup Language runs on client’s system, to design the layout of application. It enables us to get rid from flash player. HMTL is used to create webpage layouts. HTML5 is a standard for structuring and presenting content on the World Wide Web. 4.3.2.6 CSS CSS is a language that describes the style of an HTML document.CSS describes how HTML elements should be displayed. It is a language used to detail the presentation of a web page's markup language such as colors, fonts, and layout. 4.3.2.7 JavaScript JavaScript works on the Client Side. It manipulates the objects within the HTML document. JavaScript is a scripting language that enables you to create dynamically updating content, control multimedia, animate images, and pretty much everything else. 4.3.2.8 AJAX AJAX stands for Asynchronous JavaScript And XML. AJAX is a technique for creating fast and dynamic web pages. AJAX allows web pages to be updated asynchronously by exchanging small amounts of data with the server behind the scenes. This means that it is possible to update parts of a web page, without reloading the whole page. however, is widely used in client side programming (e.g. JavaScript) to allow for data to be sent and received to and from a database / server. 4.3.2.9 Bootstrap Bootstrap includes several components and options for laying out your project, including wrapping containers, a powerful flex- box-grid system, a flexible media object, and responsive utility classes. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 24 Life Saver: Pharmacy Management System 4.3.3 CASE Tools: 4.3.3.1 Microsoft project MS Project, the project management software program by Microsoft, is a very handy tool for project managers that helps them develop a schedule, assign resources to tasks, track the progress, manage the budget, and analyze workloads for an ongoing project.MS project made project management more efficient and precise. There are a variety of Project Management software options available for use, which offer the following features: Scheduling Cost control and budget management Resource assignments Quality management Tracking progress and others. 4.3.3.2 Microsoft Word: Microsoft word produces error free documents. The spell and grammar check in word processing makes the document to be error free. We can take any number of copies with word processor. If we need this same document with slight changes, we need not to type the same letter again just by making some slight changes. We can obtain a modified copy easily. We can get any number of copies documents in future without re typing. The reasons of using the Microsoft word are: Smart Lookup. Variety of features. Easy to use. Planner. Clutter in Outlook. 4.3.3.3 Microsoft Visio Microsoft Visio can be used to create simple or complicated diagrams which aid in data visualization and process modelling. It offers a wide variety of built-in shapes, objects, and stencils to work with. You can also make your own shapes and import them if you’re willing to do all that extra work. The driving idea behind Visio is to make diagramming as easy as possible for the user. The Visio 2016 welcome screen features a dozen different templates to get you started. Each template equips you with the appropriate menu and objects already open and ready for use. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 25 Life Saver: Pharmacy Management System Vision Document We are going to develop a website of Pharmacy Management System that provides ease to customers to order the Medicines online. Life Saver (PMS) is an internet-based website. The core idea of Life Saver(PMS) is to provide safe and secure platform that will accept orders, provide facility of cart system to save medicines and time and has facility for online payments through PayPal. Risk List Project may not be completed within estimated time and budget Project may not be completed within estimated time and budget. All required hardware and software resources during development may not be available. Important stakeholders may not be available when needed. In any case, database connectivity issue. Estimated size of the project may differ from actual size. Requirements of the clients may change and become difficult to handle. Ignorance of non-functional requirements. Unexpected project scope expansions. Lack of cooperation from team members. Any member may leave the group. New tasks may cause unseen problems. The project team may not have required expertise and skills. Top management may not be co-operative. Technology may change rapidly during the project. Lack of resources i.e. server failure and electricity. Required tools -not available. End user may not be satisfied. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 26 Life Saver: Pharmacy Management System CHAPTER NO.5 Requirement Engineering © Department of Information Technology, University of The Punjab, Gujranwala Campus. 27 Life Saver: Pharmacy Management System Requirement Engineering 5.1.1 Systems Specifications 5.1.2 Introduction Pharmacy Management System is designed to provide quality services to general public. It provides a quick and easier way to Order Medicines by people over the internet. This provides ease to the customers to place any type of order just on one click. Providing the information of all products available with their prices. System requires Internet connection and has to be designed with a database capable of maintaining records up-to-date. It takes less time to manage data. It will give information easily and efficiently. It gives user assurance that the information they see is trustworthy. 5.1.3 Existing System In existing system lots of manual work required like (Manual system does not mean that you are working with pen and paper, and it may be time consuming and difficult to handling records). For this reason, we are going to develop Life Saver pharmacy, that helps the admin to manage the Pharmacy more effectively and efficiently by computerizing medicine ordering and billing. Reports will be generated from this data which help the admin to make appropriate business decisions for the Pharmacy. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 28 Life Saver: Pharmacy Management System 5.1.4 Organization Chart 5.1.5 Scope of the System The system “Life Saver” shall allow admin to authenticate and then manage the various business activities and generate reports. He can manage the menu by adding Medicines. The system shall allow admin to have control of inventory by monitoring it and generate reports. Admin can change state of Medicines to not available if enough items are out of stock. Admin can add and manage Employees. Admin can also cancel the orders. The system shall allow customers to view and ordered medicines from menu. The customer must be authenticated to complete the order and he will pay online by PayPal.The customer can track his/her order status. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 29 Life Saver: Pharmacy Management System 5.1.6 Summary of Requirements (Initial Requirements) This system is an online platform for selling of medicines. To build system according to client’s demand, system must fulfill the following requirements: 5.1.6.1 Registration The system shall allow users to register on website. 5.1.6.2 Login The system shall allow customers and admin to login. 5.1.6.3 Place Order The system shall allow authenticated user to place order. 5.1.6.4 Online Payment The system shall allow customer to make online payment through PayPal. 5.1.6.5 Manage Medicine The system shall allow admin to manage medicines. 5.1.6.6 Manage Stock The system shall allow admin to manage stock. 5.1.6.7 Generate Reports The system shall allow admin to generate various reports. 5.1.7 . Identify External Entities Following are the external entities or actors that will directly interact with the system: Customers (registered and unregistered) Employees Administrator 3rd party services like PayPal (for online payment) © Department of Information Technology, University of The Punjab, Gujranwala Campus. 30 Life Saver: Pharmacy Management System Context Level Data Flow Diagram © Department of Information Technology, University of The Punjab, Gujranwala Campus. 31 Life Saver: Pharmacy Management System Capture “Shall Statement” Para # External Entities Initial Requirements 1.0 Admin Admin “shall” login himself to the system 1.0 1.0 Admin Admin Admin “shall” manage his account Admin “shall” view his account 1.0 Admin Admin “shall” view medicines in menu 1.0 Admin Admin “shall” log out. 1.0 Admin Admin “shall” generate reports 1.0 1.0 Admin Admin 1.0 Admin Admin “shall” add employees 1.0 Admin Admin “shall” edit employees 1.0 1.0 Admin Admin 1.0 Admin Admin “shall” delete employees System “shall” be able to allow admin to change his password . System “shall” be able to allow admin to update his profile. 1.0 Admin System “shall” be able to allow admin to manage medicines. 2.0 Employee Employee "shall" manage online orders. 2.0 2.0 Employee Employee Employee "shall" manage order placement. Employee "shall" manage Customers. 3.0 3.0 Customer Customer Customer "shall" open website in browser. Customer "shall" login or create account for website. 3.0 Customer Customer “shall” place order 3.0 Customer Customer “shall” view medicines 3.0 Customer Customer “shall” make online payment through PayPal 3.0 Customer Customer “shall” give feedback to his order 3.0 Customer Customer “shall” view his order status 3.0 4.0 Customer System Customer “shall” generate their bill System "shall" control product availability. 4.0 System System "shall" notify the user about his product. 4.0 System System "shall" communicate with central database to verify user account. Admin “shall” generate sale and purchase reports Admin “shall” view reports © Department of Information Technology, University of The Punjab, Gujranwala Campus. 32 Life Saver: Pharmacy Management System Allocate Requirements Para # Initial Requirements 3.0 Customer “shall” manually register 1.0 Admin, and customer “shall” login Admin ‘shall” add the record of employee Admin “shall” edit the record of employee Admin “shall” delete the record of Employee Admin "shall" change his password. 1.0 1.0 1.0 1.0 System shall be able to allow admin to view feedbacks and enquiries of the customers. System shall be able to allow admin to manage products(medicines). Use case UC_Registration UC_Login UC_Manage_Employee UC_ ChangePassword UC_View_Feedback UC_Manage_Products 1.0 System shall be able to view stock, sale and purchase report to admin. 2.0 Employee "shall" manage online orders and UC_ Manage_ Orders order placement. 1.0 Admin "shall" add purchased items. 3.0 Customer “shall” place order online UC_View _Report UC_ Manage_ Purchase UC_Place_Online_Order 3.0 Customer “shall” manage the cart Customer “shall” remove items from cart Customer “shall” view his order . 3.0 Customer “shall” give feedback 1.0 Admin “shall” manage stock UC_Manage_Stock 1.0 Admin “shall” generate Sale, purchase. UC_Generate_Reports 3.0 1.0 3.0 3.0 1.0 System “shall” be able to allow admin to update their profile Customer “shall” generate invoce itself. UC_Manage_Cart UC_View_Order UC_Feedback UC_ Update_Profile UC_Generate_Reports System “shall” be able to allow customer to UC_ Make_Payment make payment through PayPal. Admin “shall” log out. UC_Logout © Department of Information Technology, University of The Punjab, Gujranwala Campus. 33 Life Saver: Pharmacy Management System 3.0 Para # Customer “shall” log out. Rank Initial Requirements UC_Logout Use Case ID Use case "Prioritize Requirement” 3.0 1.0 1.0 1.0 1.0 3.0 3.0 Highest Customer “shall” manually UC_1 Register Highest Admin, staff, and customer UC_2 “shall” login Admin ‘shall” add the record of employee Admin “shall” edit the record Highest UC_13 of employee Admin “shall” delete the record of employee Admin "shall" change his Highest password. System “shall” be able to Highest allow admin to update their profile Highest Customer “shall” place order Online Customer “shall” manage the Cart Low Customer “shall” remove items from cart 1.0 Highest 3.0 Low 1.0 Highest System shall be able to allow admin to manage products(medicines). Customer “shall” give Feedback Admin “shall” manage stock UC_3 UC_Registration UC_Login UC_Manage_ Employee UC_Change_Passw ord UC_4 UC_Update_Profile UC_10 UC_12 UC_Place_Online_ Order UC_Manage_Cart UC_5 UC_Manage _Products UC-9 UC_Feedback UC_6 UC_Manage_Stock © Department of Information Technology, University of The Punjab, Gujranwala Campus. 34 Life Saver: Pharmacy Management System 1.0 1.0 Highest Highest Medium 1.0 3.0 Low 3.0 1.0 Admin “shall” generate Sale, Purchase reports . System “shall” be able to view stock, sale and purchase report to admin. UC_8 UC_Generate_ Reports UC_7 UC_View_ Reports UC_16 System shall be able to allow admin to view feedbacks and enquiries of the customers System “shall” be able to allow UC_11 customer to make payment through PayPal. Customer ”Shall” view his/her Order Low Medium Admin “shall” log out. Also UC_View _Feedback UC_ Make_Payment UC_14 UC_View_Order UC_15 UC_Logout Customer “shall” log out. “Requirement Trace-ability Matrix” Sr # Para # 1 3.0 2 1.0 3 1.0 4 1.0 Initial Requirements Customer “shall” manually register Admin, staff, and customer “shall” login Admin ‘shall” add the record of employee Admin “shall” edit the record of employee Admin “shall” delete the record of employee Admin "shall" change his password. System shall be able to allow admin to view Build Use case B1 UC_Registration B1 UC_Login B1 UC_Manage_ Employee Category Business Business Business UC_Change B1 _Password Business UC_View _Feedback © Department of Information Technology, University of The Punjab, Gujranwala Campus. 35 Life Saver: Pharmacy Management System 5 1.0 customer’s feedbacks . B1 © Department of Information Technology, University of The Punjab, Gujranwala Campus. Business 36 Life Saver: Pharmacy Management System 6 1.0 7 3.0 8 3.0 9 3.0 10 3.0 11 2.0 12 3.0 13 1.0 14 1.0 15 1.0 16 1.0 System “shall” be able to allow admin to update their profile Customer “shall” place order online Customer “shall” manage the cart Customer“shall” remove items from cart Customer “shall” view his order. System “shall” be able to allow customer to make payment through PayPal. Admin “shall” manage stock Customer “shall” give Feedback System shall be able to allow admin to manage products(medicines). Admin “shall” generate Sale and purchase reports (daily, weekly, monthly) System “shall” be able to view stock, sale and purchase report to admin. Admin “shall” log out. B1 UC_Update _Profile Business B1 UC_Place_Online _Order Business B1 UC_Manage_Cart Business B1 B1 UC_View_Order Business UC_Make _Payment Business B1 UC_Manage_ Stock Business B1 UC_Feedback B1 UC_Manage _Product B1 UC_Generate_ Reports B1 UC_View_ Reports B1 UC_Logout © Department of Information Technology, University of The Punjab, Gujranwala Campus. Business Business Business Business Business 37 Life Saver: Pharmacy Management System 5.7 High Level Use Case Diagram © Department of Information Technology, University of The Punjab, Gujranwala Campus. 38 Life Saver: Pharmacy Management System CHAPTER NO.6 Use Cases & Use Case Diagram (Refined and Updated) © Department of Information Technology, University of The Punjab, Gujranwala Campus. 39 Life Saver: Pharmacy Management System 6 Use Case Description Following are the descriptions of all the use cases in the system. 6.1.1 Use Case UC_1: Customer Registration Actor Customer Brief Description General Manager can register customer by using university card. Preconditions Student must have his university card while registering manually by general manager. Basic Flow General Manager will enter customer name, Gmail, enrollment id and password while registering a customer Alternate Flows 1.1 General Manager clicks on register without entering username or other required fields. Handler 1.1.1 If the General Manager clicks on register without entering all required fields the system will show are required error message. Post Conditions The customer has to register to the system successfully. 6.1.2 Actor Use Case UC_2: Login Admin / Customer Brief Description Admin and customer will register itself by entering name , Email ,Password and other required fields. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 40 Life Saver: Pharmacy Management System Preconditions Customer must be valid user of the system to access the services and requests to order Admin is connected to the server Admin and Customer must have his Email and password. Basic Flow 1. Admin and customer requests for login page. 2. System displays the login page to the user. 3. Admin and customer enters his username and password and other required fields. 4. System verifies the username, email, password and other required fields. 5. Admin and customer access his account. Alternate Flows 1 2 3 Admin and customer enters incorrect username or password. System prompts the user to enter correct username and password. Admin and Customer re-enters the data. Handler If the admin and Customer clicks on login without entering all required fields the they can not login. Post Conditions The admin and Customer has to login to the system successfully. 6.1.3 Use Case UC_3: Change Password Actor Admin Brief Description The system allows a site member or admin to change his password. Preconditions The admin is connected to the system. Admin’s account exists in the system. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 41 Life Saver: Pharmacy Management System Basic Flow 1. Admin selects the option: change password. 2. System displays the change-password page and asks the admin to enter his Username 3. System verifies the username. 4. System asks the admin to set old and new password. 5. System validates the password. 6. New password is saved in the system. Alternate Flows Admin enters incorrect username. System prompts the admin to enter correct username Admin re-enters his username. Admin enters invalid password. System prompts the admin to enter valid password. Admin re-enters his password Post Conditions Admin has successfully changed his password. 6.1.4 Use Case UC_4: Update_Profile Actor Admin Brief Description The Admin shall be allowed to update their personal and contact information. The updated profile will, then, be stored in the database. Preconditions The Admin is logged-in to the system. Basic Flow Admin requests for profile update. System displays the requested page to Admin. Amin enters his details in fields. System stores the data into database after validation. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 42 Life Saver: Pharmacy Management System Admin-profile is updated successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 43 Life Saver: Pharmacy Management System Alternate Flows Admin enters invalid data in a field. System prompts the admin to enter correct data. Admin re-enters the data. Post Conditions Admin has successfully updated his profile. 6.1.5 Actor Use Case UC_5: Manage Products(Medicines) Admin Brief Description An admin can manage products by managing the product description like sale price and purchase price etc. The system will be responsible for displaying products to customers for buying. Preconditions The admin is logged-in to the system Basic Flow 1. Admin requests to purchase products. 2. Admin adds products to cart. 3. Admin request to view purchase products. 4. System shows products to admin. 5. Admin request to delete or edit any product. 6. System successfully delete or edit products. 7. Alternate Flows Product has entry at other places. System prompts the admin to select that product that does not have entry at other places Admin selects another product to delete Post Conditions The admin has successfully managed products in the system. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 44 Life Saver: Pharmacy Management System 6.1.6 Use Case UC_6: Manage Stock Actor Admin Brief Description The system allows the admin to manage stock of products. Preconditions The admin is logged-in to the system Basic Flow 1. Admin purchases the products and add these products to cart. 2. Admin requests to save these products to stock. 3. System verifies and saves the products to stock. 4. Admin requests to view the stock report. 5. System displays the stock report to admin successfully. Alternate Flows No stock report is found. System prompts the admin to purchase products and enter them into stock. Handler N/A Post Conditions Admin has successfully managed the stocks. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 45 Life Saver: Pharmacy Management System 6.1.7 Use Case UC_7: View Report Actor Admin Brief Description Admin can view different types of reports. He enters the type of information he wishes to view. The system, then, fetches the desired information from the database and displays it to the user. Preconditions The admin is logged-in to the system Basic Flow 1. Admin selects the type of report he wishes to view and requests to view it. 2. System fetches the required information from the database and displays it to the Admin. Alternate Flows N/A Handler N/A Post Conditions The system displays the requested information to the admin. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 46 Life Saver: Pharmacy Management System 6.1.8 Use Case UC_8: Generate Reports Actor Admin, Customer Brief Description The system allows the Admin and customer to print report. Preconditions The admin and customer is logged-in to the system Basic Flow Admin and customer selects the type of report. Admin and customer wishes to view and requests to print the report. System fetches the required report from the database and displays it to the Admin and customer System successfully print the report. Alternate Flows N/A Handler N/A Post Condition Admin has successfully printed the report © Department of Information Technology, University of The Punjab, Gujranwala Campus. 47 Life Saver: Pharmacy Management System 6.1.9 Use Case UC_9: Feedback Actor Customer Brief Description The system allows a customer to give feedback to contact with the system. Preconditions The customer is connected with the system. Basic Flow Customer selects contact us option. System displays feedback form to customer. Customer writes feedback message and submit it. System receives the feedback message. System updates the database successfully. Alternate Flows N/A Handler N/A Post Conditions 6.1.10 Actor Customer has successfully submitted feedback to the system. Use Case UC_10: Place Online Order Customer Brief Description © Department of Information Technology, University of The Punjab, Gujranwala Campus. 48 Life Saver: Pharmacy Management System The system allows a customer to place at any time. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 49 Life Saver: Pharmacy Management System Preconditions The customer is connected with the system. Basic Flow Customer visit the website and requests to place order. System asks the customer to select category. Customer selects the desired category. System asks the customer to select the product. Customer selects the products and add products to cart. Customer makes the payment. System successfully update the database. Alternate Flows 1. Customer does not enter any category. 2. System prompts the customer to enter some category. 3. Customer selects any category. 4. Customer does not select any product. 5. System prompts the customer to select some products. 6. Customer selects some products. Handler N/A Post Conditions The customer is connected with the system. 6.1.11 Use Case UC_11: Make Payment Actor Customer © Department of Information Technology, University of The Punjab, Gujranwala Campus. 50 Life Saver: Pharmacy Management System Brief Description The system allows a customer to make payment through PayPal. Preconditions The user is connected with the system. Customer buy products and add product to cart. Customer request to make payment. System verifies due payment. Customer login to PayPal and confirm payment. System successfully receives the payment Basic Flow Alternate Flows N/A Handler N/A Post Conditions User has successfully paid the payment. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 51 Life Saver: Pharmacy Management System 6.1.12 Use Case UC_12: Manage Cart Actor Customer Brief Description The users visiting the site shall be able to update or change order before the payment. The system shall allow the user to continue shopping. Preconditions The user adds products or medicines to cart. Basic Flow Customer requests to view cart details. System displays cart to user. User selects to remove or delete option to remove any product. User after removing product can continue his shopping. System stores the data into database after updating cart. User changed order successfully. Alternate Flows 1. Cart is empty 2. System prompts the customer to add some products to cart 3. Customer adds products to cart. 4. Product cannot delete from cart after payment 5. System prompts the customer to delete product from cart before payment. 6. Customer delete product before payment. Handler N/A Post Conditions User has successfully changed the order. User’s order details have been stored in the system. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 52 Life Saver: Pharmacy Management System 6.1.13 Actor Use Case UC_13: Manage Employees Admin Brief Description Admin can perform all CRUD operations on employees. Preconditions Admin should be logged in to the system. Basic Flow Admin have to provide all relevant details to add new employees. Alternate Flows Admin clicks on save button without entering all required fields. Handler N/A Post Conditions 6.1.14 Employee has managed successfully. Use Case UC_14: View Order Actor Customer © Department of Information Technology, University of The Punjab, Gujranwala Campus. 53 Life Saver: Pharmacy Management System Brief Description Customer/User can view his/her order. Preconditions User can view his order . Basic Flow User can view his/her order. Alternate Flows User wants to view his/her order without login. Handler N/A Post Conditions Order displayed successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 54 Life Saver: Pharmacy Management System 6.1.15 Use Case UC_15: Logout Actor Admin, Customer Brief Description Admin and customer logout from system. Preconditions Admin and customer has to logged in to logged out. Basic Flow 1. 2. Admin and customer can login to system by providing username and password. Admin and customer can logout by pressing logout button. Alternate Flows 1.1 Admin and customer can’t login to the system. Handler 1.1.1 An error message encountered “You must be logged in to logout”. Post Conditions Admin and customer logged out successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 55 Life Saver: Pharmacy Management System 6.1.16 Use Case UC_16: View Feedback Actor Admin Brief Description The admin shall be allowed to view feedbacks. Preconditions The admin is connected to the system. Basic Flow Admin selects feedback option. System shows feedback list to admin. Alternate Flows N/A Handler N/A Post Conditions Admin view feedbacks successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 56 Life Saver: Pharmacy Management System 6.2 Use Case Diagram (refined and updated) © Department of Information Technology, University of The Punjab, Gujranwala Campus. 57 Life Saver: Pharmacy Management System CHAPTER NO.7 Domain model © Department of Information Technology, University of The Punjab, Gujranwala Campus. 58 Life Saver: Pharmacy Management System 7.1 Domain Model: © Department of Information Technology, University of The Punjab, Gujranwala Campus. 59 Life Saver: Pharmacy Management System CHAPTER NO.8 Sequence Diagrams © Department of Information Technology, University of The Punjab, Gujranwala Campus. 60 Life Saver: Pharmacy Management System 8.1 Sequence Diagrams: 8.1.1 SSD_1: Customer Registration © Department of Information Technology, University of The Punjab, Gujranwala Campus. 61 Life Saver: Pharmacy Management System 8.1.2 SSD_2: Login © Department of Information Technology, University of The Punjab, Gujranwala Campus. 62 Life Saver: Pharmacy Management System 8.1.3 SSD_3: Update Profile © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System 8.1.4 SSD_4: Change Password © Department of Information Technology, University of The Punjab, Gujranwala Campus. 64 Life Saver: Pharmacy Management System 8.1.5 SSD_5: Manage Products © Department of Information Technology, University of The Punjab, Gujranwala Campus. 65 Life Saver: Pharmacy Management System 8.1.6 SSD_6: Manage Stock © Department of Information Technology, University of The Punjab, Gujranwala Campus. 66 Life Saver: Pharmacy Management System 8.1.7 SSD _7: Generate Report © Department of Information Technology, University of The Punjab, Gujranwala Campus. 67 Life Saver: Pharmacy Management System 8.1.8 SSD _8: View Report © Department of Information Technology, University of The Punjab, Gujranwala Campus. 68 Life Saver: Pharmacy Management System 8.1.9 SSD _9: Feedback © Department of Information Technology, University of The Punjab, Gujranwala Campus. 69 Life Saver: Pharmacy Management System © Department of Information Technology, University of The Punjab, Gujranwala Campus. 70 Life Saver: Pharmacy Management System 8.1.10 SSD _10: Place Online Order © Department of Information Technology, University of The Punjab, Gujranwala Campus. 71 Life Saver: Pharmacy Management System 8.1.11 SSD _11: Make Payment © Department of Information Technology, University of The Punjab, Gujranwala Campus. 72 Life Saver: Pharmacy Management System 8.1.12 SSD _12: View Order © Department of Information Technology, University of The Punjab, Gujranwala Campus. 73 Life Saver: Pharmacy Management System 8.1.13 SSD _13: Manage Cart © Department of Information Technology, University of The Punjab, Gujranwala Campus. 74 Life Saver: Pharmacy Management System 8.1.14 SSD _14: Manage Employee © Department of Information Technology, University of The Punjab, Gujranwala Campus. 75 Life Saver: Pharmacy Management System 8.1.15 SSD _15: Logout © Department of Information Technology, University of The Punjab, Gujranwala Campus. 76 Life Saver: Pharmacy Management System 8.1.16 SSD_16:View FeedBack © Department of Information Technology, University of The Punjab, Gujranwala Campus. 77 Life Saver: Pharmacy Management System CHAPTER NO.9 Collaboration Diagrams © Department of Information Technology, University of The Punjab, Gujranwala Campus. 78 Life Saver: Pharmacy Management System 9.1 Collaboration Diagrams: 9.1. 1 CD_1: Customer Registration © Department of Information Technology, University of The Punjab, Gujranwala Campus. 79 Life Saver: Pharmacy Management System 9.1.2 CD_2: Login © Department of Information Technology, University of The Punjab, Gujranwala Campus. 80 Life Saver: Pharmacy Management System 9.1.3 CD_3: Update Profile © Department of Information Technology, University of The Punjab, Gujranwala Campus. 81 Life Saver: Pharmacy Management System 9.1.4 CD_4: Change Password © Department of Information Technology, University of The Punjab, Gujranwala Campus. 82 Life Saver: Pharmacy Management System 9.1.5 CD_5: Manage product © Department of Information Technology, University of The Punjab, Gujranwala Campus. 83 Life Saver: Pharmacy Management System 9.1.6 CD_6: Manage Stock © Department of Information Technology, University of The Punjab, Gujranwala Campus. 84 Life Saver: Pharmacy Management System 9.1.7 CD _7: Generate Report © Department of Information Technology, University of The Punjab, Gujranwala Campus. 85 Life Saver: Pharmacy Management System 9.1.8 CD _8: View report © Department of Information Technology, University of The Punjab, Gujranwala Campus. 86 Life Saver: Pharmacy Management System 9.1.9 CD _9: Feedback © Department of Information Technology, University of The Punjab, Gujranwala Campus. 87 Life Saver: Pharmacy Management System 9.1.10 CD _10: Place Online Order © Department of Information Technology, University of The Punjab, Gujranwala Campus. 88 Life Saver: Pharmacy Management System 9.1.11 CD _11: Make Payment © Department of Information Technology, University of The Punjab, Gujranwala Campus. 89 Life Saver: Pharmacy Management System © Department of Information Technology, University of The Punjab, Gujranwala Campus. 90 Life Saver: Pharmacy Management System 9.1.12 CD _12: View Order © Department of Information Technology, University of The Punjab, Gujranwala Campus. 91 Life Saver: Pharmacy Management System 9.1.13 CD _13: Manage Cart © Department of Information Technology, University of The Punjab, Gujranwala Campus. 92 Life Saver: Pharmacy Management System 9.1.14 CD _14: Manage Employee © Department of Information Technology, University of The Punjab, Gujranwala Campus. 93 Life Saver: Pharmacy Management System 9.1. 15 CD _15: Logout © Department of Information Technology, University of The Punjab, Gujranwala Campus. 94 Life Saver: Pharmacy Management System 9.1.16 CD_16:View Feedback © Department of Information Technology, University of The Punjab, Gujranwala Campus. 95 Life Saver: Pharmacy Management System CHAPTER NO.10 Operation Contract © Department of Information Technology, University of The Punjab, Gujranwala Campus. 96 Life Saver: Pharmacy Management System 10.Operation Contract: Following are the operations and their contracts that we have used in our project. 10.1 Customer Registration Name : Customer Registration Responsibilities: Enable customer to register themselves with the system. Cross References: UC_1: Customer Registration Exceptions: Customer clicks on register without entering username or other required fields. Preconditions: Server should be online and customer can easily access it. Postconditions: The customer has to register to the system successfully. 10.2 Login Name: Login Responsibilities: Admin and Customer will login himself. Cross References: UC_2: Login Exceptions: Admin and registered customer(user) clicks on login without entering username or password. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 97 Life Saver: Pharmacy Management System Preconditions: Page is Properly Loaded. Connection is established to Server. Postconditions: Admin and Customer Login Successfully. 10.3 Update Profile Name: Update Profile Responsibilities: The Registered user can login to the system as he is not yet logged into the system. Cross References: UC_3: Update Profile Exceptions: Registered user clicks on login without entering username or password. Preconditions: Registered user must be valid user of the system to access the services and requests to login to the system. Postconditions: The user has logged in to the system successfully. 10.4 Change Password Name: Change Password Responsibilities: Admin will recover his Password Cross References: UC_4: Change Password Exceptions: None © Department of Information Technology, University of The Punjab, Gujranwala Campus. 98 Life Saver: Pharmacy Management System © Department of Information Technology, University of The Punjab, Gujranwala Campus. 99 Life Saver: Pharmacy Management System Preconditions: Admin must be login in Server. Postconditions: Admin Recover his Password Succesfully. 10.5 Manage Product Name: Manage Product Responsibilities: Admin will add, edit or delete Products. Cross References: UC_5: Manage Products Exceptions: None Preconditions: Admin must have login to System.Server is On. Postconditions: Admin will add, edit or delete Products successfully. 10.6 Manage Stock Name: Manage Stock Responsibilities: Admin will add new stock into the system. Cross References: UC_6: Manage Stock Exceptions: None Preconditions: Page is Properly Loaded and ready to be use. Connection is established to Server. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 100 Life Saver: Pharmacy Management System Postconditions: Admin save stock successfully. 10.7 Generate Report : Name: Generate Report Responsibilities: Customer will Print Report. Cross References: UC_7: Generate Report Exceptions: Customer is not login Preconditions: Customer has to logged in to generate reports. Postconditions: Report shown successfully. 10.8 View Report Name: View Report Responsibilities: Customer and admin will view Report. Cross References: UC_8: View Report Exceptions: Customer and admin is not login Preconditions: Customer has to logged in to generate reports. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 101 Life Saver: Pharmacy Management System Postconditions: Admin view report successfully. 10. 9 Feedback: Name: Feedback Responsibilities: Customer will give feedback. Cross References: UC_9: Feedback Exceptions: Customer wants to give feedback login. Preconditions: Customer has to logged in to view or give feedbacks. Postconditions: Feedback given successfully. 10.10 Place Online Order : Name: Place Online Order Responsibilities: User can login to the system and can place online order after verification. Cross References: UC_10: Place Online Order Exceptions: User is not registered OR user is not verified OR payment is not verified. Preconditions: User has to logged in and verified to place online order Postconditions: Online Order handle successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System 10.11 Make Payment Name: Make Payment Responsibilities: Customer will Make Payment. Cross References: UC_11: Make Payment Exceptions: Customer is not login to the system. Preconditions: Customer must successfully login to PayPal account server is On. Postconditions: Payment Information saved successfully. 10.12 View Order Name: View Order Responsibilities: Customer can view his/her order history. Cross References: UC_12: View Order Exceptions: Customer wants to view order history without login. Preconditions: Customer has to logged in to view order . Postconditions: Order history displayed successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System 10.13 Manage Employees : Name : Employees Responsibilities: Admin can perform all CRUD operations on employees. Cross References: UC_13: Manage Employees Exceptions: User wants to give feedback login. Preconditions: User has to logged in to view or give feedbacks. Postconditions: Feedback given successfully. 10.14 Manage Cart: Name: Manage Cart Responsibilities: Customer shall be able to update or change order before the payment. Cross References: UC_14: Manage Cart Exceptions: Once customer made payment then he/she will not be able to change them order from the cart. Preconditions: The user adds products or items(medicines) to cart. Postconditions: User has successfully changed the order. User’s order details have been stored in the system. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System 10.15 Logout: Name: logout Responsibilities: Admin and Customer logout from system. Cross References: UC_15: Logout Exceptions: Admin and Customer can’t login to the system. Preconditions: Admin and Customer has to logged in to logged out. Postconditions: Admin and Customer logged out successfully. 10.16 View Feedback: Name: Feedback Responsibilities: Admin will view feedback and enquiries of the customers. Cross References: UC_15: View Feedback Exceptions: Customer not give feedback login. Preconditions: Page is Properly Loaded and ready to be use. Connection is established to Server. Postconditions: Admin will view feedback successfully. © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System CHAPTER NO. 11 Class Diagram © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System 11.1 Class Diagram: © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System CHAPTER NO. 12 Data Model © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63 Life Saver: Pharmacy Management System 12.1 Data Model: © Department of Information Technology, University of The Punjab, Gujranwala Campus. 63