Online Medical Store_synopsis

download Online Medical Store_synopsis

If you can't read please download the document

description

Online Medical Store_synopsisdeveloped using likejsp

Transcript of Online Medical Store_synopsis

Medical Store Management System

Medical Store Management System

Ashutosh Ku. Mishra Page 32

Table of Contents (Synopsis)TopicsPage No.Title of the ProjectIntroductionDrawbacks of Existing SystemObjectiveBenefits of Proposed SystemProject CategoryReason Behind Choosing JavaHardware and Software RequirementDFDE-R DiagramModules and Their DescriptionData StructureClass DiagramTables to be UsedSchema of TablesProcess Logic Report GenerationSecurity MechanismLimitationScope for the Future Application

Title of the ProjectMedical Store Management System

IntroductionIn present scenario computer is an essential part for human life. It provides better facilities for storage and retrieval of information related to different areas of application.Medical Store Management System is the software that will help to any medical store in its better stock maintenance and various sales/purchase reports.In other words, medical store is a place where medicines are given out. It is the branch of health science that provides utilization of drugs.The proposed software will help the medical store in better storing and retrieving of the medicines. As in the manual system, it is practically impossible for the druggist to have full and exact information about all the medicines available in the medical store. Even the record maintenance is quite a tedious job and also it is not fully error free.Medical store management system one cannot only have the proper information of medicines with easy but it can also reduce the workload of the druggist to a large extent. It will have the facility to store the information about the medicines details, status report, queries and details about its customer and its employees.Medical store management system will be good software for the druggist that it not only reduce the complexity but also be efficient in working and maintaining the record, hence finally it will be beneficial for stockiest of medical store.

Objective of the ProjectTo provide the better stock maintenance of the medicines.To generate sales/purchase report.To manage the transaction such as product sales and other expenses.Least amount (certain critical level) of medicines allows alerting at the login.Life of (expiry date) medicines allows informing before two months.Estimate the regular sale of medicines and if such medicines of less stock then automatically demand of medicines goes through email on distributer.Facility of accepting retailer order list of medicines through network.Keep track status of its employee details.

Drawbacks of Existing System

When we observe the current existing system we found different types of demerits that are follows:-In manual system, it is very time consuming in processing.

Slow processing speed of users without automation.

Less data security is there.No query generation facility.No report generation.No accuracy.More paper working.More man power required.

Benefits of Proposed SystemIt is fully user friendly:-The system is fully user friendly; it is developed in menu based category which being on interactive environment is having very easy understandable facilities. No requirement for more trained staff. Cost effective system.No requirement of more people.Daily account report easily displays.Effective and control handling of the database.It doesnt require expert hand:-The data entry on the software can be done by anybody, since it handles any error occurred with a readable message which guides even a row hand to sort out the error.

Faster access of information related to medicines or different schema.Query can be done easily.Report generation can be done easily.Paper work is reduced.

Project CategoryCategory of this project will be Object Oriented Programming System (OOPS).Object Oriented technology leads to reuse and reuse leads to faster software development and higher quality programs. Object oriented software is easier to maintain because its structure is inherently decoupled. This leads to fewer side effects when changes have to be made and less frustration for the software developer and the customer.The Object Oriented model of computer software must exhibit data and procedural abstraction that lead to effective modularity. The data abstractions (attributes) that describe the class are enclosed by a wall of procedural abstractions that are capable of manipulating the data in some way. The only way to reach the attributes is to go through one of the methods that form the wall (data encapsulation and hiding).There are various reasons to use oops concept behind developing this software as:-Encapsulation:-The wrapping up of data and function into a single unit (class) is known as encapsulation. It is the most striking feature of a class. The data is not accessible to the outside world, and only these functions which are wrapped in the class access it.Polymorphism:-The ability to take more than one form i.e. the same method perform different-different task. Polymorphism is implemented by means of virtual functions and dynamic binding.Inheritance:-It is the process by which one object acquires the properties of another object. This is important because it support the concept of hierarchical classification.Abstraction:-The acts of representing essential features without including the background details or explanation. Classes use the concept of abstraction.Data hiding:-A property where by the internal data structure of an object is hidden from the rest of the program. The data can be accessed only by the functions declared within the class.Persistence:-The property of objects of persists in terms of identity, state and description through time, regardless of the computer session which creates or uses them. The objects are stored and ready for use on secondary storage.Modularization: It is the process by which a problem is divided into various modules and then we solve that problem.Robustness: It is the features of OOPS that provides better security and better flexibility of the application.

Reason Behind Choosing JavaThis project entitled as Medical Store Management System which is built by the help of java programming language.

It has many features that encourage me to build project in this language. They are:Java is the core of Object Oriented Programming(OOP).It operates on the all platform irrespective operating system and cup to architecture of the machine.Byte code ,a highly optimized set of instructions designed to be executed by the java runtime system which is the JVM(Java Virtual Machine).Java is designed to the easy professional programmer to learn and use effectively.Java was designed to meet the real world requirement for creating interactive, networked programs.Java support multithreading programming which allow us to execution of multiple threads of program at simultaneously.Java is designed for distributed environment of the internet(handle TCP/IP protocol).

Hardware and Software RequirementHardware RequirementMicroprocessor:Pentium IV 2.6 GHz.Motherboard:845EHard disk:40GBRAM:128MBKeyboard:Multimedia keyboardMouse:Optical mouseMonitor:17 colorCD-ROM Driver:LG 52xUPS:300 VASoftware RequirementOperating system:Windows 2000Programming language:JavaDocumentation :MS-Word 2007BACK END:ORACLE 10 gEditor:EditPlus 3 Web server :Tomcat 5.0Server side programming:Serv let, JSPFramework:Jakarta Struts-2.0.14Web technology:Html, JavaScriptIDE :EclipseOther :XML

DFD (Data Flow Diagram)Stockist

Context level(Zero level)

Medical Store Management System

Retailer

Company

Managed by

Uses information

Prod. manufactured

Sale response

Request for services

Conformation

User

Return Not Access

Database of Medical Store

Provide information

Product Information

Stockist

(1st Level )

Information Report

Choice selection

Not ok

Username, Password verification

Data Processing

User

Utilities

Report

Product information

Edit

conformation

Utilities Information

Data

Entry

Choice 3

Choice 2

Choice 5

Choice 4

Entry Information

Report Information

Edit Information

Choice 1

ok

ERD (Entity Relationship Diagram)

Stockist

Retailer

has

S_Addr

E-Mail

S_Id

DL_No

S_Name

DL_No

R_Addr

R_Id

R_Name

Phone_No

Phone_No

E-Mail

Employee

has

Product

Payable to

Sales

Salary

issues

given to

deals

Company

Payment

Com_Name

provides

Mfg_Lic_No

Com_addr

Com_Id

EMail

P_Date

P_Amt

P_Mode

E_Id

E_Name

Phone_No

Status

E_Addr

S_Mode

S_Amt

P_Code

P_Name

P_Qty

MRP

Exp_Date

Mfg_Date

Com_Name

1

Purchase_Rate

Sale_Rate

Phone_No

M

1

M

1

M

1

M

M

M

1

M

1

M

M

1

M

Modules Used in Proposed SystemAdministrator Module

Add userDelete userModify user

Login Module

Entry Module

Sale InvoicePurchase InvoiceSale ReturnPurchase ReturnStockist OrderSale challanPurchase Challan

Report Module

Account Report

Book of A/CSale bookPurchase bookSale returnPurchase return

Stock Report

Stock RegisterStock Balance

Product wiseCompany wiseProduct & size

Product reportDaily saleProduct query

Edit Module

Edit Entry

Sale Invoice

Product listOrder menu

Utility Module

Reindex dataCalendar CalculatorEmail

Product Information Module

Modules and its descriptionThe Medical Store Management System will be divided into different modules for the proper functioning of the system. Different modules of the system will be:Administrator: In every system administrator plays a vital role to achieving desired results. This module states about user administrator. It provides all activities that need for the system. This module is further divided into sub module.

Add User: This sub module stores information about new user.

Delete user: If the user left out from department this sub module stores information about it.

Modify user : If user is replaced the update information in stored into this sub module.

2. Login Module: This module allows the users/admin login into system. Login processes provide security to the system . Only authorized users are allowed to be registered in the system for login process. If his user name and password not verify then he will not allow for accessing features of Medical Store. 3. Entry Module: This module is responsible for the all types of entries as sale, purchase entry of invoices. It keeps track status of all information regarding to this system. This module is further divided into sub module.Sale Invoice: This sub module plays role of sale entries respect with customer_Id.It keeps information regarding to product code, product description ,free sale.discription,disc@%,Max retail price, sale Rate, final Amt.

Purchase Invoice: This sub module provides information of purchase entries with respect to supplier. It keeps information regarding to product code, product description.qnty purchase, free purchase, Disc @%, Max Rtl Price, purchase rate, purchase amount, sale rate.

Sale return: Whenever customer (retailer) wants to return their product then this module plays a role with respect to customer id. It keeps information like the sale invoice.

Purchase Return: When druggist wants to return their purchase product then this sub module works. It also keeps information like to purchase invoice sub module.

Stocklist order: All types of demanding product to be listed with product code, product description, qnty purchase for the stock list.

Sale challan: If we need to generate the sale report then this module responsible for sale challan entries.

Purchase challan: we need to demand of the product then we provide entries of purchase challan on the behalf of stock list of product.

4. Report Module: This module is responsible for all types of report generation to the system regarding to the information system. The administrator as well as user will show the schema of the account, stock of the product, dues on the customer etc.This module is also further divided into sub module.Edit Module: This is the sub modules that allow modifying the total entry module like Sale Invoice. Whenever the information of attributes changes related to sale, purchase such feature allows desired modification.

Product list: This allows modification into the product information like product id, product description, new sale rate, new MRP, Purchase rate etc.

Order Menu: This sub module allows making changes into order list of the product.

6. Utility Module: This module provides the accessories for the application. It can enhance the feature of the system to make easy way to solving task. This module is also divided in to the following sub module.Reindex Data: It provides the reindexing of data allows refreshment of information makes fast performance of the application.

Calendar: This utilities sub module shows the calendar of particular month of year. We can also set the remainder of the particular date of the month.

Calculator: This sub module responsible for calculation of various operations to make easier arithmetic behavior of the system.

E-Mail: It provides major role in such the system .The druggist sends emails for purchasing order of the products and accepting order list by the retailer .Hence it allows to composing mail and mail related operation.

Product Info Module: This module is responsible for the information related to products based on product code .The attributes of product like product code, product description ,product pack up ,MRP, mfg rate ,expiry date ,purchase rate ,sale rate etc. can be viewed here to fetch the information

Data Structure of ModulesLogin{

Stringuser_Id(12) ;String password(12);String designation(8);String status(8);}

Administrator{

String user_Id(12);String user_Name(12);String user_Addr(30);String e_mail(30); String DOJ(10); String phone_No(12);String status(8);}

Entry

{Integer invoice_No(8);String retailer_Id(12) ;String product_Code(8);String product_Name(25);Integer qnty_Sale (8);Integer qnty_Purchase(8);Float sale_Rate(5,1);Float purchase_Rate(5,1);String free_Sale(10);String free_Purchase(10);String company_Id(12);Float discount(2,1);Integer max_RtlPrice(5);Integer final_Amount(5);}Report

{String invoice_No(8);String fromDate(10); String toDate(10); String retailer_Id(12); Float sale_Extempt(5,2);Float roundOff(3,2); Integer final_Amount(6);String product_Code(8); String product_Name(25); Integerreceipt(5); Integer issue(5); Integer balance(5); String company_Name(25); Integer damage(4); Integer fresh(5); Integer expiry(4); Integer all(6); Integer opening(6); Integer opening_value(6); Integer sale(6); Integer sale_Value(6); Integer purchase(6); Integer purchase_Value(6); Integer amount(7);}

Edit{

Integer invoice_No(8); String retailer_Id(12); String product_Code(8); String product_Name(25); Integer qnty_Sale(6); Integer qnty_Purchase(6); Float sale_Rate(5,1); Float purchase_Rate(5,1); String free_Sale(10); String free_Purchase(10); String company_Id(12); Integer discount(2); Integer max_RtlPrice(5); Integer final_Amount(5);Integer purchase_Rate(5);String mfg_Code(14); Integer new_SaleRate(5); Integer new_Mrp(5); Integer purchase_Rate(5); Integer Discount(2);}

Retailer{

String r_DLNo(14) ;String r_Id(12);String r_Name(12);String r_Addr(30);String r_Email(30);String r_Phone_No(12);}

Order{

Integer date_Received(10);Boolean is_Prepaid(5);String o_Number(5);Integer amount(6);}

Utility

{String month(2);Integer year(4);Float operand1(10,5);String operator(6);Float operand2(10,5);String e_Mail(30);}

Company{

String company_Id(12);String company_Name(12);String Mfg_Lic_No(14);String company_Addr(30); String company_phone_No(12);String company_Email(30);}10.Product_Info{String product_Code(8);String product_Name(25);String mfg_Date(10);Stringexp_Date(10); Stringmrp_Rate(5);String new_SaleRate(5); String new_PurchaseRate(5);String purchase_Discount(2); String sale_Discount(2); Integer product_Qnty(5);}

Employee{

String e_Id(12);Stringe_Name(12);Stringe_Addr(30);Stringe_phone_No(12);Integere_salary(5);Stringe_DOJ(10);}

Class Diagram

Loginuser_Id : Stringpassword : Stringdesignation : Stringstatus : String validate_User()logout()change_Password()forget_Password()Administratoruser_Id :Stringuser_Name : Stringuser_Addr : Stringemail : StringDOJ : Stringphone_No : Stringstatus : Stringcreate_User()update_User()delete_User()

Companycompany_Id : String company_Name : String Mfg_Lic_No : String company_Addr : String company_phone_No : String company_Email : String create()update()delete()Retailerr_DLNo : String r_Id : String r_Name : String r_Addr : String r_Email : String r_Phone_No : String create()update()delete()

Entryinvoice_No : Integerretailer_Id : Stringproduct_Code : Stringproduct_Name : Stringqnty_Sale : Integerqnty_Purchase : Integersale_Rate : Floatpurchase_Rate : Floatfree_Sale : Stringfree_Purchase : Stringcompany_Id : Stringdiscount : Integermax_RtlPrice : Integerfinal_Amount :Integerpurchase_Rate :Integersale_Invoice()purchase_Invoice()purchase_Return()sale_Return()company_Order()sale_Challan()Purchase_Challan()Reportinvoice_No : StringfromDate : StringtoDate : Stringretailer_Id : Stringsale_Extempt : FloatroundOff : Floatfinal_Amount : Integerproduct_Code : Integerproduct_Name : Stringreceipt : Integerissue : Integerbalance : Integercompany_Name : Stringdamage : Integerfresh : Integerexpiry : Integerall : Integeropening : Integeropening_value : Integersale : Integersale_Value : Integerpurchase : Integerpurchase_Value : Integeramount : Integersale_Book()purchase_Book()sale_return()purchase_return()stock_Register()stock_Balance()product_Report()daily_Sale()product_Query()dues_Slip()Editinvoice_No : Integerretailer_Id : Stringproduct_Code : Stringproduct_Name : Stringqnty_Sale : Integerqnty_Purchae : Integersale_Rate : Floatpurchase_Rate : Floatfree_Sale : Stringfree_Purchase : Stringcompany_Id : Stringdiscount : Integermax_RtlPrice : Integerfinal_Amount :Integerpurchase_Rate :Integermfg_code : String new_SaleRate : Integer new_Mrp : Integer purchase_Rate : Integer Discount : Integer edit_Entry()edit_Invoice()product_List()order_Menu()Utilitymonth : String year : Integer operand1 : Floatoperator : String operand2 : Floate_Mail : String get_Calendar()get_Calculator()mailing()

Product_Infoproduct_Code : String product_Name : String mfg_date : String exp_Date : String mrp_rate : String new_SaleRate : String new_PurchaseRate : String purchase_Discount : String sale_Discount : String product_Quantity : Integer view_Info()Orderdate_Received : Integer is_Prepaid : Booleano_Number : String amount : Integer dispatch()close()

Employeee_Id:Stringe_Name:Stringe_Address:Stringe_Phone_No:Integere_Salary:Integere_DOJ:Stringadd_Emp()update_Emp()delete_Emo()

Tables to be Used

LoginAdministratorCompanyRetailerEntryReportUtilitiesProduct_InfoOrderEmployee

Schema of Used TableLogin(User_Id, Password, Designation, Status)

Administrator(User_Id, User_Name, User_Addr, E_Mail, DOJ, Phone_No , Status)

Company(Company_Id, Company_Name, Mfg_Lic_No, Company_Addr,

Company_Phone_No, Company_Email)Retailer(R_DLNo, R_Id, R_Name, R_Addr, R_Email, R_Phone_No)

Entry(Invoice_No, Retailer_Id, Product_Code , Product_Name, Qnty_Sale, Qnty_Purchae, Sale_Rate , Purchase_Rate, Free_Sale , Free_Purchase, Company_Id, Discount, Max_RtlPrice, Final_Amount, Purchase_Rate)

Report(Invoice_No, FromDate, ToDate, Retailer_Id, Sale_Extempt, RoundOff , Final_Amount , Product_Code, Product_Name, Receipt, Issue, Balance, Company_Name, Damage, Fresh, Expiry, All, Opening, Opening_Value, Sale, Sale_Value, Purchase, Purchase_Value, Amount)

Utility(Month, Year, Operand1, Operator, Operand2, E_Mail)

Product_Info(Product_Code, Product_Name, Mfg_Date, Exp_Date,

Mrp_Rate, New_SaleRate, New_PurchaseRate, Purchase_Discount, Sale_Discount, Product_Quantity)

Order(Date_Received, Is_Prepaid, O_Number, Amount)

Employee(E_Id, E_Name, E_Addr, E_Phone_No, E_Salary, E_DOJ)

Process Logic

Login Module Begin { Request login Input username and password Authenticate admin If (authentication Successful) then Redirect to home page Else Display login page with alert }Change Password Begin{Input old passwordInput new passwordInput new password again for confirmationIf( password Confirms)then Replace old Password with New PasswordElseDisplay ACCESS DENIED}

Forget Password Begin{Input email id Enter answer of security questionIf (email id and security answers are correct)then Display passwordElseDisplay ACCESS DENIED}Administrator ModuleBegin{Open Administrator ModuleIf (new user exist) thenInsert all information of new userIf (wants to remove old user) thenDelete all information of old userIf (wants to modify user) thenModify all information of user}

Entry ModuleBegin{Open entry moduleChoose choice as sale invoice, purchase invoice, sale return, purchase return, stockist order , sale challan , purchase challan If (choice = sale invoice) thenInput customer_Id , product code, product name , qnty sale, free sale , disc , max retail price , sale rate , final amount)If (choice = purchase invoice) thenInput company code , product code , product name , qnty purchase, free purchase , disc , max retail price , purchase rate , final amount)If (choice = sale return) thenInput (customer_Id , product code, product name , qnty sale, free sale , disc , max retail price , sale rate , final amountIf (choice = purchase return) thenInput( company code , product code , product name , qnty purchase, free purchase , disc , max retail price , purchase rate , final amount)If (choice = stockiest order) thenInput (product code, product name, qnty )If (choice = sale challan) thenInput(customer_Id , product code, product name , qnty sale, free sale , disc , max retail price , sale rate , final amount)If (choice = purchase challan) thenInput( company code , product code , product name , qnty purchase, free purchase , disc , max retail price , purchase rate , final amount)}

Report ModuleBegin{Open report module Choose account report, stock report, dues slipIf (choice = account report) then{Input into sale book, purchase book, sale return, purchase return related to product info. , customer info, company info)Input start date and end date with respect to party idDisplay report }} Edit moduleBegin{ Open edit moduleIf( choice = edit entry )thenInput modify info. related to sale invoiceIf (choice = product list ) thenInput modify info. related to product list

If (choice = order menu )thenInput modify info. related to order of product}

Utitlity moduleBegin{Open utility moduleIf( choice = reindex data) then Ask for confirmationIf yes thenallows to reindexing and fast execution.Else Back to choice selectionIf (choice= calendar) thenInput month of yearDisplay calendar of that monthIf ( choice = calculator ) thenInput values Perform operationDisplay resultIf ( choice = email) then Input sender email id , subject , messageSend email}Product info. ModuleBegin{Open product info. moduleInput product codeDisplay product info. and its descriptions}Report Generation

Sale book report based on period and customer id.Purchase book report based on period and company id.Sale returns report.Purchase return report Stock register report Stock balance report Product report Daily sale reportProduct query report

Security mechanismTo avoid the unauthorized access, in any software, there is an access control is needed like password protection, group list, data encryption etc. The proposed software will have the password protection for access security, and also data encryption to avoid the data related unauthorized access.All employees as well as administrator can only see the information of any module. But whenever any users want to modify, delete and add operation then software will prohibit them from doing so. Therefore by using password protection and data encryption, I provided the better security for the proposed project. In this system date and time is used and on the every check point validation constraints are used.

Limitation of the projectSince project is developed in the eliminatory stage, there are many limitation of the project, besides the tools/platform limitation; there are many limitations regardless to the software working.This project doesnt cover all schemes that are issued by medical store.Only keyboard and mouse are used as input device.Some terms, which are used in project, has been assumed.It cannot support multi-user operating system like UNIX/LINUX

Scope of Future ApplicationMy project has been developed in web-based programming language and made of modules, so that in future any type of following important scheme may easily be changed according to the requirement.Reusability code for connect modules.In future it supports multi-user operating system like UNIX/LINUX.In future it support broad range of input and output device.It supports total working procedure of medical store.Fast searching technique.