Ashok Water Supply Project PDF
Document Details
Uploaded by ProtectiveLagrange
SDM College of Business Management
Tags
Summary
This document details a software project for managing a water supply system, including modules for owners, customers, and workers. It outlines the objectives, project categories, and hardware/software requirements.
Full Transcript
ASHOK WATER SUPPLY 1.SYNOPSIS 1.1 TITTLE OF THE PROJECT “ASHOK WATER SUPPLY” 1.2 INTRODUCTION Ashok Water Supply is a software to maintain supply of water to the clients on daily...
ASHOK WATER SUPPLY 1.SYNOPSIS 1.1 TITTLE OF THE PROJECT “ASHOK WATER SUPPLY” 1.2 INTRODUCTION Ashok Water Supply is a software to maintain supply of water to the clients on daily basis. Admin can also add details. He can also maintain bills of customers. Admin can add images to the gallery. He can also have credit information about the customers. Admin does external billing here. Admin can assign work to workers. In this software users can view the services. Users can view contact information of the company. User can also view the bill by logging into the website. User can also provide the feedback for services provided by the company 1.3 OBJECTIVE OF THE PROJECT To display contact information to the user. Improve transaction between owner and customers. Maintain credit notes of owner and customers age no Maintain records of bills of the employees. 1.4 PROJECT CATEGORY Web based Relational Database Management System SDMCBM Page | 1 ASHOK WATER SUPPLY 1.5HardwareandSoftwareRequirements: 1.5.1 HardwareRequirements: Processor:11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz, 2419 MHz, 4 Core(s), 8 Logical Processor(s) ProcessorSpeed:Minimum3.70GHz RAM:8GB HardDisk: 256GBorabove 1.5.2SoftwareRequirements: OperatingSystem:Windows11. TextEditor: Notepad++,sublime text or vs code. Server:Campserver. Browser:Chrome,MozillaFirefoxoranyother. 1.6LanguageTools User Interface Design: Html5, CSS, JS.Bootstrap. Server-sideScripting: PHP Backend:MySQL 1.7OperatingSystemUsed: Windows11OperatingSystem. 1.8Purpose of the Project The purpose of Ashok Water Supply is to maintain credit note of the Customers. It alsoprovides 24*7 water supply to the customers.Displays the details of the services provided to customers. It also allows view the bill and contact information of company. SDMCBM Page | 2 ASHOK WATER SUPPLY 1.9ModuleDescription 1) Owner This module will be maintained by the owner. This modulewillbefocusingon the followingsub modules. Submodules: Login:This module authenticates and validates the user depending on his/her user credentials and type of user logging in to provide them access. Add details: The owner can add the details of the company. Assign workers: The owner can assign the workers. View workers: The Owner can view the Workers. View attendance: The owner can view the attendance provided by the workers. Bill generation: The owner can generate the bill. View the work: The owner can view the work completed Add the salary: The owner can add the salary of the workers on monthly basis View the bill:The Admin can view the bill and print the invoice and delete the bill. Add capacity:The admin can update the liter and amount. View the payment: The owner can view the payment. View leave application: The owner can view the leave application of the workers Logout: The owner can logout through the web application 2) Customer Module The Module is which is been view by the customers Customerhas following activities: Registration: New user needs to register first by giving certain personal details Login: Login option can be enabled with user name and password View details/services:user can view the details/services of the company through the web application Booking for water Supply: The user can book for water tanker has per his or her service Feedback: This module providing the feedback of the software View the bill: The user can view the bill prepared by the admin Add payment Details:The user can provide his or her payment details View the payment Status: The user can view the payment status SDMCBM Page | 3 ASHOK WATER SUPPLY Logout:The user can logout from web application 3) Worker Module This module is maintained by the workers Workers have following activates Login:This module authenticates and validates the user depending on his/her user credentials and type of user logging in to provide them access. Add attendance: The worker need add attendance on daily basis View the assigned work:The worker can view the work assigned by the owner View salary confirmation: The user can view the salary confirmation once the owner confirms the salary. Leave note: The worker can provide the leave note to the admin Logout:The worker can logout from web application FutureScopeofthe project 1. Customers can easily view the service/detailsabout the company through website. 2. Customers can make bookings throughShort Message Service (SMS) 3. GPS Tracker can be developed for the Customers 4. Android and IOS can be developed. 1.9ModuleDescription 4) Owner This module will be maintained by the owner. This modulewillbefocusingon the followingsub modules. Submodules: Login:This module authenticates and validates the user depending on his/her user credentials and type of user logging in to provide them access. Add details: The owner can add the details of the company. Assign workers: The owner can assign the workers. View workers: The Owner can view the Workers. View attendance: The owner can view the attendance provided by the workers. Bill generation: The owner can generate the bill. View the work: The owner can view the work completed Add the salary: The owner can add the salary of the workers on monthly basis View the bill:The Admin can view the bill and print the invoice and delete the bill. SDMCBM Page | 4 ASHOK WATER SUPPLY Add capacity:The admin can update the liter and amount. View the payment: The owner can view the payment. View leave application: The owner can view the leave application of the workers Logout: The owner can logout through the web application 5) Customer Module The Module is which is been view by the customers Customerhas following activities: Registration: New user needs to register first by giving certain personal details Login: Login option can be enabled with user name and password View details/services:user can view the details/services of the company through the web application Booking for water Supply: The user can book for water tanker has per his or her service Feedback: This module providing the feedback of the software View the bill: The user can view the bill prepared by the admin Add payment Details:The user can provide his or her payment details View the payment Status: The user can view the payment status Logout:The user can logout from web application 6) Worker Module This module is maintained by the workers Workers have following activates Login:This module authenticates and validates the user depending on his/her user credentials and type of user logging in to provide them access. Add attendance: The worker need add attendance on daily basis View the assigned work:The worker can view the work assigned by the owner View salary confirmation: The user can view the salary confirmation once the owner confirms the salary. Leave note: The worker can provide the leave note to the admin Logout:The worker can logout from web application FutureScopeofthe project 5. Customers can easily view the service/detailsabout the company through website. 6. Customers can make bookings throughShort Message Service (SMS) SDMCBM Page | 5 ASHOK WATER SUPPLY 7. GPS Tracker can be developed for the Customers 8. Android and IOS can be developed. SDMCBM Page | 6 ASHOK WATER SUPPLY 2. SOFTWARE REQUIREMENT ANALYSIS ANDSPECIFICATION 2.1 Introduction Software Requirements specification is a document that completely describes what the proposed software must do. The basic purpose of SRS is to bridge the communication gap between the individuals involved in development of software. It is the medium through which client and user needs are accurately specified. SRS establishes an agreement between the client and the user on what the purpose of the software should be. 2.1.1 Purpose: The main purpose of the SRS is to serve as a guide to the developers and testers who are responsible for the development of the system. And it also translates the ideas in the minds of a client into a formal document. Through SRS the client clearly describes what it expects from the proposed system and the developer clearly understands what capabilities are required to build the system. This will allow for the correct software to be developed for the end user well be used for the development of the future stages of the project This SRS well provide the foundation of the project. 2.1.2Scope: This SRS describes the requirement of the system. It is meant for use by the developer and will be the basis for validating the final delivered system; any changes made to the requirement in the future will have to go through the formal changes approval process. This project is mainly used for tracking the details water supply details and employee details. SDMCBM Page | 7 ASHOK WATER SUPPLY 2.1.3 Definition,Acronyms,andAbbreviations: DFD :DataFlowDiagram SRS :SoftwareRequirementAnalysisandSpecifications. SQL :StructuredQueryLanguage RAM :RandomAccessMemory HTTP :Hyper TextTransfer Protocol TCP/IP :TransmissionControlProtocol/InternetProtocol 2.1.4 References: https://www.w3schools.com https://themewagon.com https://getbootstrap.com 2.1.5 Overview: Promoting water conservation: Water supply companies may encourage customers to use water more efficiently through education and outreach programs, as well as by offering incentives and rebates for installing water-efficient appliances and fixtures. Improving infrastructure: Water supply companies may invest in improving and upgrading their infrastructure to ensure that it is efficient, reliable, and able to meet the changing needs of the community. Enhancing customer service: Water supply companies may strive to provide excellent customer service by offering multiple ways for customers to pay their bills, providing timely and accurate information about service interruptions or water quality issues, and responding quickly and effectively to customer complaints or concerns. Protecting the environment: Water supply companies may work to minimize the environmental impact of their operations by reducing energy consumption, minimizing water loss through leaks and evaporation, and using sustainable practices for treating and disposing of wastewater. Overall, the objectives of a water supply company are centered around ensuring that customers have access to safe and reliable drinking water, while also promoting sustainability, efficiency, and customer satisfaction. SDMCBM Page | 8 ASHOK WATER SUPPLY 2.2 Overall Description: 2.2.1 Product perspective: Ashok Water Supplyiscapableofmanagingeachandeverydataregardingsupply of water, attendance, and workers information. This helps us in managing in an extremelyefficient way. The main objective of the company to provide safe and reliable water to the customers.Theworkeruserisabletologinandhe/shecancreateotherstaff. Thesystem admin creates the different structures related to company details, application, attendance and manages thedatabase.Whereasthestaff user oftherespective companyworks on supply of water to customer needs.Theusershavetheirowndashboardtoseethedetailsofthecompany.Theycan keep updatethedetails company information. 2.2.2 ProductFunction: Theusersshould be able to usethesystem onlyafter enteringvalidusernameandpassword. Threetypesofusersaremaintainedinthesystem(i.e.,Admin worker and User). TheAdminCan o The admin can login o The admin can add and view workers o The admin Assign workers and view the assigned work o The admin can View work completion o The admin can generate Bill and view the bill o The admin can add salary and View payment TheUsercan o The user can Register & login into the web application o The user View details of the company. o The user can book for water supply o The user can View bill o The user can provide Feed back o The user can Add and view payment details o The user can Logout Theworker can o The user can Register & login into the web application o The user can Add attendance and View assigned work o The user can View the salary o The user can add Leave note o The user can Logout SDMCBM Page | 9 ASHOK WATER SUPPLY 2.2.3 User Characteristics: The system is designed with the intension to provide easy to use simple system so that nocumbersomeandelaborate training for operationis needed. Projectevaluationhas3levelsof Theadmin o Admin can Add workers o Admin can View workers o Admin Assign workers o Admin View assign o Admin View work completion Theuser o User can Register to company website o User can Login’ o User can View details o User can Booking for water supply o User Feed back o User can View bill The worker o Login o Add attendance o View assigned work o View salary 2.2.4 General Constraints: Requiresallthemandatoryfieldstobefilledwiththe properinformation. 2.2.5 Assumption and Dependencies: UsershouldbefamiliarwithBasiccomputerknowledge. Thesystemiscompletelydependentoninternetconnection. TheInformationprovidedbytheuserisassumedtobegenuine. 2.3Specific Requirements: SDMCBM Page | 10 ASHOK WATER SUPPLY Thissectiondescribesallthedetailsthatthesystemdeveloperneedstoknowfordesigninganddevelop ingthissystem,theserequirementscanbeorganizedbythemodesofoperationuserclassobject,featur es, andfunctional hierarchies. 2.3.1 External Interface Requirements: Itspecifiesalltheinterfaceofthesystem:tothepeople,othersystem,hardwareandothersystem. 2.3.1.1 User Interfaces: Theuser can accessthesitethroughaweb browser. Homepagewhichhas links tootherpages. Hecan navigateto thevarious iconsand viewthefeatureon the system. Astartvalidationisprovidedtotheloginform.Onsuccessfulvalidation,thepermissionto usethe system is provided. 2.3.1.2 Hardware Interfaces Anydevicewhichhas a web browser installedin it. 2.3.1.3 Software Interfaces InsoftwareInterfacesthesystemrequirementsneededfortheProjecttorunonasystemisspecified. 2.3.1.4 CommunicationInterfaces: Thesystemworkswiththehelpofinternetconnection.Theapplicationislinkedtothedatabasemainta inedin theserver. TCP/IP 2.3.2 Functional Requirements: Functional Requirement specifies which output should be produced for the given inputs. Allinputs are entered according to the data type and no blanks are allowed for mandatory fields.Invalid inputs are not allowed in the system. It prompts to re-enter the data. Appropriate errormessagesaredisplayed. WORKER SIDE: o Login SDMCBM Page | 11 ASHOK WATER SUPPLY Theuserneedstologintothesystemwiththeusernameandpasswordwhichtheuserh as usedduring theregistration process. o Add Attendance The worker needs add attendance on daily basis Which is important to input or record their attendance for a specific shift or workday. o View Salary The user can view the salary confirmation once the owner confirms the salary. o Leave note The worker can provide the leave note to the admin o Logout The worker can logout from web application ADMINSIDE: o Login This module authenticates and validates the user depending on his/her user credentials and type of user logging in to provide them access. o Add workers The owner can assign the workers. o View Workers The Owner can view the Workers. o View attendance The owner can view the attendance provided by the workers. o Assign Workers The owner can assign the workers. o Bill Generation The owner can generate the bill. o View Bill The admin can view the bill and print the invoice and delete the bill. o View Payments The owner can view the payment. SDMCBM Page | 12 ASHOK WATER SUPPLY o Add Salary The owner can add the salary of the workers on monthly basis o Logout The owner can logout through the web application CLIENTS SIDE: o Registration New user needs to register first by giving certain personal details o Login Login option can be enabled with user name and password o View Details User can view the details/services of the company through the web application o Booking Water Supply The user can book for water tanker has per his or her service o Feedback This module providing the feedback of the software o View Bill The user can view the bill prepared by the admin o Add Payment details The user can provide his or her payment details o View Payment Status The user can view the payment status o Logout The user can logout from web application 2.3.3 Non -Functional Requirements: 2.3.3.1Performancerequirements: SDMCBM Page | 13 ASHOK WATER SUPPLY Theperformanceoftheoverallsystemshouldbefasteranderrorfree,withbuiltinerrorcheckingandco rrection facilities. In order torun this application, werequire: AnInternetwithminimum56kbpsbandwidth. Toaccessthispage,werequireanyhigherversionbrowserlikeChrome,Microsoftedge. Systemrequiresthe pythonpackage, MySQLpackageand otherpackages. 2.3.3.2 Design Constraints Emailfieldto beenteredwithtext inemail formatitself. Theuseremailandpasswordareverifiedand thenonlyusercanaccesstheproduct. Requirestospecifytheinformationforall the mandatoryfields. Theapplicationshallhavearelational database. Theapplicationshalldisplayerrormessagestotheuserwhenanerrorisdetected. 2.3.3.3 Safety Requirements Thesystemissafetouse.Thedataisstoredin the centraldatabaseanditis madesurethatthereisminimumdatalossincaseofanymishaps.Incasetheuserforgetspas sword,forgotpassword functionalityhelps to set a new password. Authorizationhelpstocheckthe permissionleveloftheuseraccessingthesite. The system is supported by CSRF (Cross Site Request Forgery) middleware protection whichhelpsindefendingfrommaliciousattacksandtoensurethatGET requestareside effectfree. 2.3.3.4 Security Requirements: Thesystemisprotectedbytheuseofloginsystemthatismaintainedbytheadminofthesystem withcertain set ofconstraints. The system converts the admin and staff user password to unreadable form with encryptionmethodPBKDF2 algorithm by default. SDMCBM Page | 14 ASHOK WATER SUPPLY 2.3.3.5 Software Quality Attributes Efficiency:Thesystemisbuiltusingpre- definedguidedprocessandthedatafromallthesystemsis stored in one central database. Extensibility:Thesystemsupportsfuturemodificationswithoutanysideeffects. Portability:Thesystemcanberuninanyoperatingsystemwithlatestversionofbrowser installed. Flexibility:Thesystem keepson updatingthe dataaccording tothechangesthat takeplace. Reliability:Asthesystemiscenteredonthedatabase,thereliabilitydependsonthemain tenanceofthedatabase. Usability:Theinterface isuserfriendly;itiseasytoaccessandunderstand. SDMCBM Page | 15 ASHOK WATER SUPPLY 3.SYSTEMANALYSIS& DESIGN 3.1 Introduction: System design is the process or art of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. One could see it as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering. In System design focus is on deciding which modules are needed for the system, the specifications of the modules should be interconnected is called System Design. System design is also called top-level design. Here we consider a system to be set of components with clearly defined behavior that interact with each other in a fixed manner to produce some behavior. In a system design, the design consists of module definitions, with each module supporting a functional abstraction. 3.2 Content Flow Diagram: It is common practice to draw the context-level data flow diagram first, which shows the interaction between the system and external agents which acts as data source and data sinks. On the context diagram the system’s interactions with the outside world are modelled purely in terms of data flows across the system boundary. The context diagram shows the entire systems the single process, and gives no clues as to its internal organization. SDMCBM Page | 16 ASHOK WATER SUPPLY 3.3Data Flow Diagram Data Flow Diagram: A Data Flow Diagram (DFD) is a graphical representation of the“flow”ofdatathroughaninformationsystem.Adataflowdiagramcanalsobeusedforthevisualizat ionof data processing. It is common practice for a designer to draw a context-level DFD first which showsthe interaction between the system and outside entities. This context-level DFD is then “exploded” toshowmoredetail of thesystem being modelled. A DFD represents flow of data through a system. Data flow diagrams are commonly usedduringproblemanalysis.Itviewsasystemasafunctionthattransformstheinputintodesiredoutpu t.ADFDshows movementof datathrough the differenttransformations orprocesses inthesystem. Dataflow diagrams can be used to provide the end user with a physical idea of where thedatatheyinputultimatelyhasan effectuponthestructureofthewholesystemfromordertodispatchtorestock how any system is developed can be determined through a dataflow diagram. The appropriateregister saved in database and maintained by appropriate authorities. In the normal convention, logicalDFDcan becompleted using some notations. SDMCBM Page | 17 ASHOK WATER SUPPLY LEVEL 1 DFD FOR OWNER(ADMIN) SDMCBM Page | 18 ASHOK WATER SUPPLY LEVEL 2 DFD FOR MANAGE WORKERS(OWNER) LEVEL 2 DFD FOR MANAGE ADD CAPACITY (OWNER) SDMCBM Page | 19 ASHOK WATER SUPPLY LEVEL 2 DFD FOR BILL GENERATION(OWNER) SDMCBM Page | 20 ASHOK WATER SUPPLY LEVEL 1 DFD FOR CUSTOMER LEVEL 2 DFD FOR AUTHENTICATION(CUSTOMER) SDMCBM Page | 21 ASHOK WATER SUPPLY LEVEL 1 DFD FOR WORKER SDMCBM Page | 22 ASHOK WATER SUPPLY 3.4 Entity-Relationship Diagram Anentity–relationship(ER)diagramisaspecializedgraphicthatillustratestheinterrelationships between entities in a database. ER diagrams often use symbols to represent threedifferent types of information. Boxes are commonly used to represent entities. Diamonds are normallyusedto represent relationships and ovalsareused to representattributes. An entity-relationship model (ERM) in software engineering is an abstract and conceptualrepresentationofdata.Entity– relationshipmodellingisarelationalschemadatabasemodellingmethod,used to produce a type of conceptual schema or semantic data model of a system, often a relationaldatabase,and its requirements in atop-down fashion. Anentitymaybedefinedasathingwhichisrecognizedasbeingcapableofanindependent existence and which can be uniquely identified. An entity is an abstraction from the complexities ofsome domain. When we speak of an entity, we normally speak of some aspect of the real world whichcanbedistinguished from other aspects of thereal world. Anentitymaybeaphysicalobjectsuchasahouseor acar, aneventsuchasahousesale orcar service, or a concept such as a customer transaction or order. Although the term entity is the onemostcommonlyused,followingChenweshouldreallydistinguishbetweenanentityandanentityt ype.Thereareusuallymanyinstancesofanentitytype.Becausethetermentitytypeissomewhatcumb ersome,most peopletend to usethe termentity asasynonym forthis term. A relationship captures how two or more entities are related to one another. Relationshipscan be thought of as verbs, linking two or more nouns. Examples: an owns relationship between acompany and a computer, a supervises relationship between an employee and a department, a performsrelationshipbetweenanartistandasong,aprovedrelationshipbetweenamathematiciananda theorem.Relationshipsarerepresentedas diamonds,connectedbylinesto eachoftheentitiesintherelationship. SDMCBM Page | 23 ASHOK WATER SUPPLY SDMCBM Page | 24 ASHOK WATER SUPPLY 4. DATABASEDESIGN 4.1 INTRODUCTION: A Database is a collection of related data, which can be of any size and complexity, by using the concept of Database, we can easily store and retrieve data. The major purpose of a database is to provide the information, which utilizes it with the information that the system needs according to its own requirements. Database design is done before building it to meet needs of end users within a given Information system that a database intended to support to stop the database defines the needed data and data structures that such a database comprises Mail a major physical implemented using SQL server. Along with documenting your database design from the most important design wall you should have his to create a table structure theories table has a primary key and foreign key primary key should meet the following goals. Each record is unique within a table and no other record within the table has all of its columns equal to any other. For record to be unique all the columns are necessary that is data in one column should not be repeated anywhere else in the table regarding the second goal the column that has completely unique data throughout the table is known as a primary key field a foreign key field is a field that links one table to another. 4.2 NORMALIZED TABLES: 4.2.1 User Register Table: The User Register Table is a structured collection of data that stores information about registered users in a system or application. Attribute Type Length Constraints Description User id int 30 Primary Key User id User Name Varchar 50 Not null User name Email Varchar 50 Not null Email Password Varchar 50 Not null Password Page | 25 ASHOK WATER SUPPLY 4.2.2 Book Table:The Book Table is a structured collection of data that stores information about bookings done by user. Attribute Type Length Constraints Description id int 30 Primary Key id Name Varchar 50 Not null Name Email Varchar 50 Not null Email Contact Varchar 50 Not null Contact City Varchar 50 Not null City Date Varchar 50 Not null Date Capacity Varchar 50 Not null Capacity 4.2.3 Bill Table:The Bill Table is a database table that is used to store information related to financial transactions and invoices within a business or organization. Attribute Type Length Constraints Description User id int 30 Primary Key id Name Varchar 50 Not null Name Email Varchar 50 Not null Email Contact Varchar 50 Not null Contact Location Varchar 50 Not null City Capacity Varchar 50 Not null Capacity Page | 26 ASHOK WATER SUPPLY 4.2.4 Feedback Table:The Feedback Table is a database table that is used to store information related to feedback provided by users or customers of a system, product, or service. Attribute Type Length Constraints Description User id int 30 Primary Key id Name Varchar 50 Not null Name Email Varchar 50 Not null Email Subject Varchar 50 Not null Subject Message Varchar 50 Not null Message 4.2.5 Payment Table:The Payment Table is a database table used to store inforelated to financial transactions and payments made by customers or clients. Attribute Type Length Constraints Description id int 30 Primary Key id Date Varchar 50 Not null Date Customer Varchar 50 Not null Customer Detail detail Amount Varchar 50 Not null Amount 4.2.6 Admin Login Table: The Admin Login Table is a database table that stores information related to administrative user accounts and their login activities. Attribute Type Length Constraints Description Id int 30 Primary Key id Email Varchar 50 Not null Email Password Varchar 50 Not null Password Page | 27 ASHOK WATER SUPPLY 4.2.7 Workers Table:The Workers Table is a database table that is used to store information about the workers or employees within an organization. Attribute Type Length Constraints Description Id int 30 Primary Key id Name Varchar 50 Not null Email Profile Varchar 50 Not null Password Email Varchar 50 Not null Email Mobile no Varchar 50 Not null Mobile no Adhar Varchar 50 Not null Adhar Photo Photo Licence Varchar 50 Not null Licence Password Varchar 50 Not null Password 4.2.8 Attendance Table:The Attendance Table is a database table that is used to store information related to the attendance of employees or individuals within an organization. Attribute Type Length Constraints Description User id int 30 Primary Key User id Name Varchar 50 Not null Name Date Varchar 50 Not null Date Status Varchar 50 Not null Status Page | 28 ASHOK WATER SUPPLY 4.2.9 Assign Table:The Assign Table is a database table that is used to store information about assignments or tasks assigned to individuals or teams within an organization. Attribute Type Length Constraints Description User id int 30 Primary Key User id Name Varchar 50 Not null Name Contact Varchar 50 Not null Contact Date Varchar 50 Not null Date Work Varchar 50 Not null Work Location Varchar 50 Not null Location 4.2.10 Bill Generation Table:The Bill Generation Table is a database table that is used to store information related to the generation and processing of bills or invoices within a business or organization. Attribute Type Length Constraints Description User id int 30 Primary Key id Name Varchar 50 Not null Name Email Varchar 50 Not null Email Contact Varchar 50 Not null Contact Location Varchar 50 Not null City Capacity Varchar 50 Not null Capacity Page | 29 ASHOK WATER SUPPLY 4.2.11 Add Capacity Table:The Capacity Table in a water supply organization is a database table used to store information about the capacity and availability of water resources, infrastructure, and systems. Attribute Type Length Constraints Description id int 30 Primary Key id Litre Varchar 50 Not null Litre Amount Varchar 50 Not null Amount Vehicle No Varchar 50 Not null Vehicle No 4.2.12 Add Salary Table:The Salary Table is a database table used to store information about employee salaries within an organization. Attribute Type Length Constraints Description id int 30 Primary Key id Name Varchar 50 Not null Name Date Varchar 50 Not null Date Salary Varchar 50 Not null Salary Status Varchar 50 Not null Status 4.2.13 Leave Note Table:The Leave Note Table is a database table used to store information related to leave requests and corresponding notes or comments within an organization. Attribute Type Length Constraints Description id int 30 Primary Key id Worker Id Varchar 50 Not null Worker Id Date Varchar 50 Not null Date Subject Varchar 50 Not null Subject Message Varchar 50 Not null Message Page | 30 ASHOK WATER SUPPLY 4.2.14 Worker Login Table:The Worker Login Table is a database table used to store information related to worker or employee login activities within an organization's system or application. Attribute Type Length Constraints Description Id int 30 Primary Key id Email Varchar 50 Not null Email Password Varchar 50 Not null Password Page | 31 ASHOK WATER SUPPLY 5. DETAILED DESIGN 5.1 INTRODUCTION: This document is the design report for Ashok Water Supply This is mainly about ‘How to do’ and will help provide an insight to the whole system design and implementation of the Ashok Water Supply. Detailed design is the second level of the design process. During detailed design, we specify how the module in the system interacts with each other and the internal logic Of each of the modules specified during system design is decided, hence it is also called as logic design. Detailed design essentially expands the system design and database design to contain a moredetaileddescriptionoftheprocessinglogicanddatastructuressothatthedesignissufficientlyco mpleteforcoding. 5.2 Applicable Documents: Synopsis document for “Ashok Water Supply”. Software Requirement Specification (SRS) For “Ashok Water Supply” Database Design document for “Ashok Water Supply”. 5.3 Structure of the Software Program: The functional Components are: User Module Admin Module Worker Module 5.3.1 Structure chart For Admin: Page | 32 ASHOK WATER SUPPLY Modulesof Admin: Login Location Add workers Add Details View Workers View Attendance Assign Workers View Assign View Work Bill Generation View Bill View Payment Add Salary Add Capacity View Leave Logout Modules Description of the components Description of the components o Login This module authenticates and validates the user depending on his/her user credentials and type of user logging in to provide them access. o Location The owner can add the Location o Add workers The owner can assign the workers. o View Workers The Owner can view the Workers. o View attendance The owner can view the attendance provided by the workers. o Assign Workers The owner can assign the workers. o View Assign The Owner Can View Assign Page | 33 ASHOK WATER SUPPLY o Work Completion The Owner Check for Work Completion o Bill Generation The owner can generate the bill. o View Bill The admin can view the bill and print the invoice and delete the bill. o View Payments The owner can view the payment. o Add Salary The owner can add the salary of the workers on monthly basis o Add Capacity The Owner Can add Capacity o Logout The owner can logout through the web application 5.3.2 Structure chart For Worker: Page | 34 ASHOK WATER SUPPLY Modulesof Worker: Login Add Attendance View Assigned Work View Salary Leave Note Logout Modules Description of the components Description of the components o Login Theuserneedstologintothesystemwiththeusernameandpasswordwhichtheuserh as usedduring theregistration process. o Add Attendance The worker needs add attendance on daily basis Which is important to input or record their attendance for a specific shift or workday. o View Salary The user can view the salary confirmation once the owner confirms the salary. o Leave note The worker can provide the leave note to the admin o Logout The worker can logout from web application 5.3.3 Structure chart For Worker: Page | 35 ASHOK WATER SUPPLY Modulesof User Side: Registration Login View Details Booking Water Supply Feedback View Bill Add Payment details Logout Modules Description of the components Description of the components o Registration New user needs to register first by giving certain personal details o Login Login option can be enabled with user name and password o View Details user can view the details/services of the company through the web application o Booking Water Supply The user can book for water tanker has per his or her service o Feedback This module providing the feedback of the software o View Bill The user can view the bill prepared by the admin o Add Payment details The user can provide his or her payment details o View Payment Status The user can view the payment status o Logout The user can logout from web application Page | 36 ASHOK WATER SUPPLY 6. CODING 6.1Introduction: The goal of coding or programming phase is to translate the design of the system produced during the design phase into code in a given programming language, which can be executed by a computer and that performs the computation specified by the design. The coding phase affects both testing and maintenance profoundly. The goal during this phase is not to simplify the job of the programmer. Rather, the goal should be simplifying the job of the tester and the maintainer. There are many different criteria for judging a program, including readability, size of the program, execution time and required memory. Having readability and understanding as a clear objective of the coding activity can itself help in producing software that is more maintainability. 6.2 Programming Style: It is impossible to provide an exhaustive list of what to do and what not to do produce simple read able code. Being able to do this will amount to providing an algorithm for writing good code. Next, we will list some general rules that usually apply. 6.2.1 Names: Selecting module and variable names often not considered important by novice programmers. Only when one starts reading programs written by other where the variable names are cryptic and not representative does one realize the importance of selecting proper names. Most variables in a program reflect some entity in the problem domain, and the modules reflect some process. Variable names should be closely related to the entity they represent, and module name should reflect their activity. Itis bad practice to choose cryptic names just to avoid typing or totally unrelated names. It is also bad practice to use the same name for multiple purposes. 6.2.2 Control Constructs: It is desirable that as much as possible single-entry, single exit constructs be used. It is also desirable to use the few standard control constructs rather than using a wide variety of constructs, just because they are available in the language. 6.2.3 Information Hiding: Information hiding should be supported where possible. Only the access function for the data structures should be made visible while hiding the data structure behind these functions. Page | 37 ASHOK WATER SUPPLY 6.2.4User-DefinedTypes Modern languages allow users to define types like the Enumerated type. When such facilitiesare available, they should be exploited where applicable. For example, whenworking with dates, thetypecan bedefinedfortheday of the week. 6.2.5Nesting The different control constructs, the if-then-else, can be nested. If the nesting becomes toodeep, the programs become harder to understand. In case of deeply nested if-then-else, it is oftendifficult to determine then if statement to which a particular else clause is associated. Whereverpossible,deep nesting shouldbeavoided, even ifit means alittleinefficiency. 6.2.6 ModuleSize We discussed this issue during system design. A programmer should carefully examine anyroutine with very few statements (say fewer than 5) or with too many statements (say more than 50).Large modules often will not be functionally cohesive and too small modules might incur unnecessaryoverhead. There is can be no hard-and-fast rule about module sizes the guiding principle shouldcohesionand coupling. 6.2.7 ModuleInterface A module with a complex interface should be carefully examined. Such modules might not befunctionally cohesive and might be implementing multiple functions. As a rule of thumb, any modulewhose interface has more than five parameters should be carefully examined and broken into multiplemoduleswith simplerinterfaceif possible 6.2.8 ProgramLayout How the program is organized and presented can have great effect on thereadability of it. Proper indentation, blank spaces, and parenthesesshouldbe used to enhance thereadability of programs. Automated tools are available to “pretty print” a program, but it isgoodpracticeto haveaclear layout of programs. 6.2.9SideEffects When a module is invoked, it sometimes has side effect of modifying the programstate beyond the modifications of parameters listed in the module interface definition, forexample, modifying global variables. Such side effects should be avoided where possible,andif amodulehassideeffects, they should beproperly documented. 6.2.10Robustness Aprogramisrobustifitdoessomethingplannedevenforexceptionalconditions.Aprogrammightenc ounterexceptionalconditionsinsuchformsasincorrect input,theincorrectvalueofsomevariable, andoverflow.Ingeneral,aprogramshouldcheckfor validity inputs, where possible, and should check for possible overflow of the datastructures. If such situations do arise, the program should not just “crash” it should producesomemeaningful messageand exit gratefully Page | 38 ASHOK WATER SUPPLY 6.3Coding Admin Login:The Admin Login code is a software component designed to authenticate and authorize administrative users to access an application or system with elevated privileges.