DWW Group For Finance management System An-Najah National University Information Technology Faculty Computer Information System “Finance Management System” Prepared by: Dunya Younis, Walaa Al-Bizreh, & Wedad Yaees’h Submitted to: Dr.Baker Abed-Alhaq 2010 2 TABLE OF CONTENTS: 1. Introduction 1.1. System proposal…………………………….………….……………… 5 1.2.System Description …………………………….………….…………… 6 1.2.1.Tools and programming language…………………………….…………… 6 …………………………….………….……………… 7 1.2.3. Dissemination…………………………….………….…………… 7 1.2.4. Conclusion …………………………….………….……………… 7 1.2.2.Objectives 1.3 . System Feature…………………………….………….……………… 8 1.4 .Solved Problems we faced in the project …………….…………..…… 9 1.5. Business Requirement …………………………….………….………… 12 1.5.1. Business Actor list …………………………….………….……… 12 1.5.2. Business use case…………………………….………….………… 12 1.5.3. Business Use Case Activity Diagram…………………………….… 13 1.6. System Requirement…………………………….………….…………… 14 1.6.1.System Actor list…………………………….………….…………… 14 1.6.2. Admin System Use Case List…………………………….………… 14 1.6.3. Customer System Use Case List…………………………….……… 14 1.6.4. Admin System Use Case List Details…………………………….… 15 1.6.5. Customer System Use Case List Details…………………………… 19 1.6.6. Admin System Use Case Diagram…………………………….…… 21 1.6.7. Customer System Use Case Diagram…………………………….… 22 2.Analysis 2.1.Static Analysis & class diagram …………………………...………….……… 23 2.2.Attribute……………………………………………………………………… 24 3 2.3.Dynamic Analysis ……………………………………………………….… 26 3.Realization ………………………………………………………. 27 4.Design 4.1.Tools and languages used ……………………….….…………..…….. 32 4.2..Database design ( schema ) ……………………………….….………… 34 4.3.Database Tables ……………………………….….…………….……. 36 5.Documentation 1.5.1.Screens documentation ………………………….………….….…….. 46 6.Glossary ……………………………………………….…….. …. 51 7.References ………………………………………………….......... 4 52 1.1. System proposal Date: 2 ,5, 2009 To: Dr. Baker Abd Alhaq From:Dunya Younis, Wala’a Albzreh , Wedad Yaeesh Subject: Graduation Project Proposal (Finance Management System) There is no doubt that the collections resulting from the collection of property tax as a source of important and significant revenue and income municipalities in the West Bank, as the Directorates of the property tax of the Ministry of Finance, the Palestinian National Authority in the West Bank collects these collections each year, traditional holders of the citizens for real estate owned buildings and land, hence the importance of the tax for the citizens they bounce them in the form of municipal services provided to them directly. Because of the difficulties and errors that we face a decline in the value of the collections in general as a result of difficult economic circumstances in which we live and which will prevent the majority of citizens to pay property taxes owed by them or obtained in a traditional manner of taxes and bills ignored by the people themselves or the absence of accurate collection. Our system aims to automate the process of collection of collections and facilitate the process of paying citizen have Tarifa auction and make it available through the Internet. Our main objective is to facilitate the achievement of our clients, and to comfort them most of the border. Because the Internet provides exciting opportunities to facilitate the collection of collections and electronic payments from customers, so we need to work the system through the Internet. For example, a customer can access the system and the disclosure of property and the dues and payment of such taxes at any time from anywhere, instead of visiting the organization or make a phone call. And can charge to see their property taxes and through a geographical map show the features of its real estate and details of their dues. The system can be used by taxpayers and staff, in both cases the process of collection will be faster and easier without the need for paper and pens. Linked to the system with the financial system and charge your credit card has its own for the repayment of dues. After you use this regime, we expect estimates of the future that the number of holders who will use our system, whether the goal of access and follow-up tax bills and their lands and properties, or to pay any taxes will increase, and rise the value of accuracy, and perform the collection and the collection by the public official, and in turn reduced human error and the number of persons evaders pay their dues. 5 Introduction:This proposal describes the online Finance Management System (DWW) developed to fit any finance operation regardless of the resource's type. (DWW) is available in many languages specified by the administrator. which will be (DWW) tends to supply organizations that want to provide it's customer with an online finance system for it's resources, and make them able to customize their system according to their needs. (DWW) will be used by the administrator (administrative account) ,and the organization's customers. The administrator is the person who has an administrative account and he is responsible for customize the system according to his organization needs, by fill descriptive forms with the information ( we as the system developer specify it ) he can add, update, delete resources , and see list. The organization's customer: : is the customer that the organization use our product to make him able to make online finance and tax for it's resources. 1.2 System Description: This section has a brief introduction about our project and the reasons why we choose it. Dww group is a website that aims is to facilitate the achievement of our clients, and to comfort them most of the border. Because the Internet provides exciting opportunities to facilitate the collection of collections and electronic payments from customers, so we need to work the system through the Internet. For example, a customer can access the system and the disclosure of property and the dues and payment of such taxes at any time from anywhere, instead of visiting the organization or make a phone call. And can charge to see their property taxes and through a geographical map show the features of its real estate and details of their dues. Before the start of work on the project team, they have to look and learn, and read many of the research to be able to complete the project on time, correctly, and the preservation of its main goals. 1.2.1 Tools and programming language: PHP, HTML, Flash,Java script,Ajax & Jquery: used in the interface MySQL Database: Use database project 6 1.2.2 Objectives •Facilitate the Finance operation for the customer. •Control the Finance operation and the Tax payment easily. •Customize the system according to the organization needs. •Retrieve different information about the Tax and Payment easily By Maps. •Provide the system in many languages according to the customer choice. •Have enough statistics about the Tax and ownership. 1.2.3. Dissemination This system will be widely spread over the world through the internet in many languages. So that any one can access the organization website and use the system. 1.2.4. Conclusion DWW has many features , which make it worth to be used, it provide Finance managment operations, online Tax payment, and it is available in many languages. The ability to customize it according to the organization needs without needing a developer , reduce time and cost needed to make a computerized Tax and finance system for any organizations. 7 1.3. System Features: 1. High performance, due to the use of AJAX in the most of the website pages, a very little time is needed when doing any operation because no reload is needed , all the information and forms appear in a single div(part of the page) in the homepage page. 2. the system is available in many languages(Arabic & English), because the texts were inserted to the PHP data array, if we want to add any new language, we just need to enter texts in this language to the array and then the inserted language is available, the administrator can customize his system to be available for his customers in the language he want too. 3. The system now is available in two languages ( Arabic and English) but any new language is available any time, because the text is dynamic, it is changed according to the chosen language. 4. The system can be customized to fit many finance systems, the administrator can customize it according to the organization's needs and the tax type, the resource features, options,are specified by the admin. 5. some of the customer information is required in any Finance And guess operation,(name, mobile, credit card), and some are required in specific mode( address, passport number, age….) the administrator can add any new information to ask the customer about. Each case can be in Yearly or in Monthly, according to the tax type 8 1.4 .Solved Problems we faced in the project 1. W decide to make our web page in both langueges (English,Arabic)we solve this problem by save Arabic characters in Arrays and retrieve the values from them: Ex: $a = array(); $a[0][en] = "ltr"; $a[1][en] = "User Id"; $a[2][en] = "Password"; $a[0][ar] = "rtl"; $a[1][ar] = ";"رقم المستخدم $a[2][ar] =";"كلمة المرور $a[3][ar] = ";"الدخول كمسؤول <?php echo $a[1][$lang] ?> <?php echo $a[2][$lang] ? 2. At the beginning the Arabic characters were not supported through the php application, we solve it by writing this code after the php connection statement : mysql_query('set names "utf8";'); 3. .uniform the same features, options , categories in different languages problem: we start programming by giving different IDs for the same features, options, categories in different languages, but we can not uniform them so we give a Unique word that entered by the admin when he inserts them ,this word must be the same for each one in different language in order to deal with them as a single object. 4. Using the same language while moving through the different pages with out needing to choose the language in each page, we solve this problem by passing the selected language through our pages Ex: function lang() if($lang=='en' ){ header("location:record.php?lang=$lang"); } else if($lang=='ar' ) 9 { header("location:record.php?lang=$lang"); } } 5. Dealing with the area piece numbers and electricity/water counters , we have aproblem while inserting data about specific area piece to choose appropriate electricity/water counters number , we solve this problem by using ajax function with our code that retrieve the appropriate electricity/water counters automatically according to the selected area piece numbers. <script type="text/javascript"> function countersFunction() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari var land=document.getElementById('land_id').value; //alert(land); //alert(land); xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { 10 alert("Your browser does not support AJAX!"); } } } return false; xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { var counters=xmlHttp.responseText; var counters_array=counters.split('/'); document.getElementById('wcn').value=counters_array[0]; document.getElementById('ecn').value=counters_array[1]; } } xmlHttp.open("GET","insert_building.php?x=1&land="+land,true); xmlHttp.send(null); } </script> 6. Separating between system users and owners in our data base by creating a separate table for each one, our system save data to all owners of all area piece numbers, but the processing data can just be shown to the system users only, and so there was a problem while inserting operation ;if the admin insert an owner ID which is not found in the data base in owners table,we alert him that this owner ID is not found and he must add this owner data before inserting the area piece number information. 7. In Flash there was a problem in dealing with the process data that will be shown on a flash map we need to convert our php code into an Xml code to be able to view our process results on the map. 11 1.5. Business Requirement: 1.5.1. Business Actor list: -Director-General: The formation of committees to guess after coordination with the Minister of Finance for approval. - Owner :The owner or a person acting as the king and will benefit from it directly benefited. -Employee: Scans tax receivables or any other debts and bills on the taxpayer to be paid -Accountant: a person who take money or enter valid credit card number for the customers. -Corporate Banks: banks that some customers have credit in, and use their credit card to pay. -GTFS" guessing and Tax file system": a preexisting system that used to handle and tax information. customers 1.5.2. Business Use Case List: B1: Customer Check ownership tax in specific time and date B2: Customer ask to know the ownership tax details. B3: Customer ask to cancel the ownership of building and land. B4: customer check the tax cost from the map details. B5:accountant give the customer a confirmation paper for his tax. B6:employee record the customer personal information and his tax information. B7:The manager add, delete and update resources and get list of ownership and taxes. 12 1.5.3.Business Use Case Activity Diagram (Tax manager) Choose operation (Customer) Customer Check ownership tax if its available [available] [Not available] (Customer) ask to know the ownership tax details cost (Accountant) Ask for tax cost (Employee) Record the tax payment information 13 1.6. System Requirement: 1.6.1.System Actor list: -Online customer: a person who use the system to checka and payment tax online. - Administrator: a person who has an administrative account and he log on to the system by enter username and password to add, delete and update resources to customize the system, control tax and ownership and create account. 1.6.2. Admin System Use Case List with relations: U1: admin browse the index.( include u2) U2: admin log on to the system.(included by u1, extended by (u3,u10,u11,u16,u19), include u20 ) U3: admin customize the system.(abstract, generalized by u4,u5, extend u2) U4: admin configure the system.(specializes u3) U5: admin configure the ownership and tax information. (specializes u3) U6: admin add building information.( include u7, included by u10,extended by u12) U7: admin add land information.( included by u6, extended by u13) U8: admin add water bill information.(included by u10) U9: admin add electricity bill information.(included by u10) U10: admin choose operation.(extend u2,include u6,u8,u9, extended by u14,u15) U11: admin create new owner accounts.(extend u2) U12: admin drop building information.(extend u6) U13:admin drop land information.(extend u7) U14: admin edit user account.(extend u10) U15: admin cancel user account. (extend u10) U16: admin specify customer information(extend u2). U17: admin Update building information.(extend u6). U18: admin Update land information.(extend u7). U19: admin fill about us page. (extend u2). U20: admin logoff. (included by u2) 1.6.3.Customer System Use Case List with relation: U1:customer browse the index.( include u2, extended by u3,u9) U2: customer view the latest available ownership.( included by u1,extended by u6) U3:customer search for the Estate on the map (extend u1,include u4) U4: customer choose the desired description.(included by u3,include u5) U5: customer show his estate .(included by u4,extended by u6) U6: customer view the details of the specific Estate .(extend u5,u2,extended by u7) U7: customer check availability of payment.(extend u6,include u8) U8: customer fill his personal information.(included by u7) 14 1.6.4.Admin System Use Case List Details: U1: browses the index(logon page):the admin browse the website (include u2) Precondition: none 1.the admin enter the system website address. 2.include u2 Post conditions :none U2:log on: the admin log on to the system.(included by u1, extended by (u3,u10,u11,u18,u19) , include u20) Precondition: access the log on page. 1.the admin enter his username. 2.the admin enter his password. 3.the admin select log on button. 4.extend with u3,10,11,18,19. 5. include u20 Post condition : the admin is logged on, and access the homepage. Abnormal path : A1: if the admin username/password is incorrect, the system tell him invalid username or password . U3: admin customize the system.(abstract, generalized by u4,u5, extend u2) Precondition: access the homepage and Choose the language he want. Post condition: the admin can customize the system or customize the tax information. U4: admin configure the system.(specializes u3) Precondition: 'customize system' link is chosen. 1. fill the form. 2. click Ok button Post condition :the system information is saved. U5: admin configure the tax and ownership information. (specializes u3) Precondition: 'customize system' link is chosen. 1. fill the form. 2. click Ok button Post condition :the tax information is saved. U6: admin add building information.( include u7, included by u10,extended by u12) Precondition: customize the system. 1. choose the (Area piece ID ) you want to add the building in. 15 2. 3. 4. 5. enter the value of the building attribute to be added. click confirm button. extend with u12. if the features are saved include u7 U7: admin add land information.( included by u6, extended by u13) Precondition: the feature that the land belongs to saved. 1. choose the (Area piece ID ) he want to add the land in. 2. choose the feature you want to add to the land. 3. click confirm button. 4. extend with u13. U8: admin add water bill information.(included by u10) Precondition: the system is customized . 1. choose the (Area piece ID ) he want to add the water bill in. 2. enter the previous counter reading. 3. enter the current counter reading.. Post condition: number of counter and the value reading are saved. U9: admin add electricity bill information.(included by u10) Precondition: the system is customized . 1. choose the (Area piece ID ) he want to add the water bill in. 2. enter the previous counter reading. 3. enter the current counter reading.. Post condition: number of counter and the value reading are saved. U10: admin choose operation.(extend u2,include u6,u8,u9, extended by u14,u15) Precondition: buildings, land, water-bill and electricity-bill information are saved . 1. choose the language you want to add the operation in. 2. specify the resource's information for each land. 3. specify the resource's information for each building . 4. specify the resource’s information for each water bill . 5. enter the resource’s information for each electricity bill. 6. click confirm button. 5. extend with u14,u15. 6. include u6,u8,u9. Post condition :resource’s information are saved. 16 U11: admin create new owner accounts.(extend u2) Precondition: cusomer has an account . 1. fill the form. 2. Determine account type by User number. 3. click 'OK' button. Post condition : an account according to the user number is created. U12: admin drop building information.(extend u6) Precondition: the building information you want to drop was saved. 1. choose the building. 2. click 'delete' link.. *supplementary requirement : s1.admin can drop another features by click 'drop another building information link Post condition : the selected feature is deleted. U13:admin drop land information.(extend u7) Precondition: the building you want to drop land from were saved. 1. choose the feature you want to drop the land from. 2. choose the land . 3. click 'delete' link. *supplementary requirement : s1.admin can drop another land by click 'drop another land link Post condition : the selected land is deleted. U14: admin edit user account.(extend u10) Precondition: user account are choosen. 1.select the desired options. 2.select the user account . 3.click 'OK 4. customer show the matched information. 5.click 'update' link. 6.change the information in the form. 7.click 'send' button. Post condition : the changes are saved.. U15: admin cancel user account. (extend u10) Precondition: user account are chosen. 1.select the desired options. 17 2.select user account. 4.click 'OK'. 5. customer show the matched resources. 6.click 'delete' link. 7.click 'send' button. Post condition : the resource is deleted. U16: admin specify customer information(extend u2). Precondition: the system was customize. 1. choose the language you want to add in. 2. enter the number of the required information. 3. click 'add' button. 4. enter the required information and their identifiers. 5. click 'confirm' button. Post condition : additional customer information is saved. U17: admin Update building information.(extend u6). Precondition: building information are chosen. 1.select the desired options. 2.select the building . 3.click 'OK 4. customer show the matched information. 5.click 'update' link. 6.change the information in the form. 7.click 'send' button. Post condition : the changes are saved.. U18: admin Update land information.(extend u7). Precondition: land information are chosen. 1.select the desired options. 2.select the land . 3.click 'OK 4. customer show the matched information. 5.click 'update' link. 6.change the information in the form. 7.click 'send' button. Post condition : the changes are saved.. U19: admin fill about us page. (extend u2). Precondition: homepage is accessed. 1.select the language you want to add the text in. 2.click 'OK' button. 3.enter the text. 4.click 'OK'. 18 Post condition : the about us page is ready. U20: admin logoff. (included by u2). Precondition: admin is logged on 1.click logoff button. 2.click 'confirm' button. Post condition : the admin exit from the system. 1.6.5.customer System Use Case List Details: U1:customer browse the index.( include u2, extended by u3,u9) Precondition: none 1.enter the system website address. 2.include u2 3.extend with u3,u9. Post conditions :none U2: customer view the latest available ownership.(included by u1,extended by u6) Precondition: access the homepage. 1.navigate the homepage to see all estate. 2.click to the desired estate. 3.view the estate details. 4.extend with u6. Post condition: none U3:customer search for his estate and ownership (extend u1,include u4) Precondition: the map information is choosen. 1.include u4. post condition: selection form is appeared on the map U4: customer choose the desired description.(included by u3, include u5) Precondition: none 1.select the desired options. 2.select the building or land. 3.click 'OK'. 5.include u5. post condition : the matches information are listed U5: customer show the available estate.(included by u4,extended by u6) Precondition: Estate is chosen 1.extend with u6. post condition: estate's details is appeared. 19 U6: customer view the details of the specific estatee .(extend u5,u2,extended by u7) Precondition: the resource's details is appeared 1.click”detail” link. 2.extended with u7. post condition: check availability form appears . U7: customer check availability for payment.(extend u6,include u8) Precondition: payment link is clicked. 1. fill the form 2. click 'send' button. 3. include u8. post condition: the availability is checked. U8: customer show his personal information.(included by u7) Precondition:1.estate is available. 2.cutomer show his details estate information and choose payment link. 1. fill the payment form 2. click 'confirm' button. post condition:. Payment operation is done. 20 1.6.6. Admin System Use Case Diagram 21 1.6.7. Customer System Use Case Diagram 22 2.Analysis 2.2 Static analysis & class Diagram: 23 2.2Attributes Building_Tax Building_tax_ID Area_Piece_ID Year Guess_value Final_guess Building_tax Prvious_bt M_tax Previous_mt Waste_tax Previous_wt Waste_ID Land_Tax Land_Tax_ID Area_Piece_ID Year Guess_value Final_guess Tax Previous Owner First_Name Second_Name Last_Name User_ID Address Email Telephone Note Building_Record Record_ID Office Country Region Area_Piece_ID Share_Rate User_ID Employee_ID Land_Record office country region area_piece_id user_id rate_share lrecordid emp_id Building building_id area_piece_id apartment_no floar room kitchen wc balcony living_room store shop garage description_of_use bshareno wcounter ecounter emp_id waste_id Land Area_Piece_ID Land Id Area Price_perm Share_No Employee_ID Notes Water_counter Tax_Type Electricity_counter Waste_tax Waste_ID Type Value Tax_ID Tax_Name 24 Bill Bill_NO Bill_Value Release_Date Payed Remain Paying_Date Type Electricity_Bill bill_num elec_couters_num Water_Bill bill_id water_counter_num wrelease_date wlast_date wprevious_reading wcurrent_reading wtotal_value wmaintainance area_piece_id previos_w Bank Card_ID Value Tax_ID Employee Employee_ID Employee_name Password country country_id country_name_en country_name_ar reigon reigon_id country_id region_name_en region_name_ar System-user-signup sys_user_id user_id password email Water-counter water_counter_num area_piece_id Area-piece area_piece_id status Electricity-counter-number elec_couters_num area_piece_id 25 2.3.Dynamic analysis: -Operations: User interface Open(web address: string) Show(estate: list) Select(estate: index) Search(estate: string ) Check(account: structure) Select(:customer) Show(:customer details) Confirm(:id) Change(account: structure) Alert message(:string) Access(:tax detail) Show(tax details: string) Logoff(account: structure) Delete(account:string) Edit(account: string) Cancel( :customer, :estate) Edit(:building details) Edit( :land details); Guessing estate Update(:guessing) guess(:estate) Show(:building details) Edit(: building details) Change(:land details) Edit(:customer details) Change(:guessing details) Cancel(:estate) Estate home Create( : customer, :estate):guessing Destroy(:guessing ) 26 3.Realization Communication Diagrams 1.2. Check(account) 1.1. Login admin account dice Communication Diagram for U2: admin login to the system. 27 e:estate 1. search(r) a:available _r 2. Check(r) system availability customer 4. View (a) 3. Retrieve (a) Admin Communication Diagram for U3:customer search for his estate 28 f: feature DWW system admin 1.choose (f) 2.add(L) 3. create(L) 4. View(L) L:land Communication Diagram for U7: admin add land information 29 Admin 1.add(building) 2.add(building) Dww admin Building Communication Diagram for U6: admin add building information 30 System a: account 1.1. LogOff(a) Dww Administrator Communication Diagram for U20: admin logoff. (included by u2) 31 4.Design: 4.1.Tools and languages used We used in designing this system the following tools and languages: MySQL: It is a popular open source SQL (Structured Query Language) database implementation, available for many platforms, including Windows, Unix/Linux and Mac OS. it is commonly used with web pages. It can allow viewers to look up specific information from a large quantity of data stored in the database. WAMP server: WAMPs are packages of independently-created programs installed on computers that use a Microsoft Windows operating system. The interaction of these programs enables dynamic web pages to be served over a computer network, such as the internet or a private network. . PHP (Hypertext Preprocessor) Hypertext Preprocessor is an open source software, it is a server-side scripting language, which is executed on the server, it supports many databases (MySQL, Informix, Oracle, Sybase, etc.) PHP has many open-source libraries included with the core build, and many more are readily available, we used many of its libraries that help us in our project. No doubt much of its popularity is due to its relative ease to learn, Arrays and variables in PHP are able to hold any type of object, variables need not be declared, and the syntax is remarkably simple. It also runs on different platforms (Windows, Linux, Unix, etc.), it is compatible with almost all servers used today (Apache, IIS, etc.) and it is easy to learn and runs efficiently on the server side, all of these reasons encourages us to use it in our project. AJAX Ajax (shorthand for asynchronous JavaScript and XML) is a group of interrelated web development techniques used on the client-side to create interactive web applications. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. The use of Ajax 32 techniques has led to an increase in interactive or dynamic interfaces on web pages. Data is usually retrieved using the XMLHttpRequest object. Flash: Adobe Flash (formerly Macromedia Flash) is a multimedia platform that is popular for adding animation and interactivity to web pages. Originally acquired by Macromedia, Flash was introduced in 1996, and is currently developed and distributed by Adobe Systems. We used flash in order to create the map for tax guessing to help user friendly dealing with map color to define their lands and ownership. JQuery: jQuery is a lightweight JavaScript library that emphasizes interaction between JavaScript and HTML . It was released in January 2006 at BarCamp NYC by John Resig. jQuery is free, open source software Dual-licensed under the MIT License and the GNU General Public License.jQuery contains the following features: DOM element selections using the cross-browser open source selector engine Sizzle, a spin-off out of the jQuery project DOM traversal and modification (including support for CSS 1-3 and basic XPath) Events CSS manipulation Effects and animations Ajax Extensibility Utilities - such as browser version and the each function Javascript : avaScript gives HTML designers a programming tool - HTML authors are normally not programmers, but JavaScript is a scripting language with a very simple syntax! Almost anyone can put small "snippets" of code into their HTML pages JavaScript can put dynamic text into an HTML page - A JavaScript statement like this: document.write("<h1>" + name + "</h1>") can write a variable text into an HTML page 33 4.2..Database design ( schema ): -Area-Piece (area_piece_id varchar(20) , status int(11)). -Bank (card_id int(11) , value int(11) , tax_id int(11)). -Bill (bill_no int(11) , bill_value float(10) , release_date date (10), payed float(10) remain float (10) , paying_date date (10), type int(11)). -Building (building_id int(11), area_piece_id varchar(20) , apartment_no int(11), floar int(11) room int(11) , kitchen int(11), wc int(11) , balcony int(11) , living_room int(11) ,store int(11) ,shop int(11) , garage int(11) , description_of_use varchar(50) , bshareno float wcounter int(11) ecounter int(11) , emp_id int(11), waste_id int(11 )). -Building_record (record_id int(11), office int(11), country int(11) ,region int(11) area_piece_id varchar(20) , share_rate float , user_id int(11), emp_id int(11) ). -Building_Record(bulding_tax_id int(11), area_piece_id varchar(20) , year varchar(4) guess_value int(11),final_guess float ,bulding_tax float ,previous_bt float , m_tax float , previous_mt float , waste_tax float , pevious_wt float , waste_id int(11)). -Country(country_id int(11) , country_name_en varchar(20) , country_name_ar varchar(20)). -Electricity-Bill(bill_num int(11) , elec_couters_num int(11) , erelease_date date, elast_date date, eprevious_reding int(11) , ecurrent_reading int(11) , emaintainance float , etotal_value float , area-piece-id varchar(20)). -Electricity –counter-number(elec_couters_num int(11) , area_piece_id varchar(20)). -Employee(emp_id int(11), emp_name varchar(50) , password char(10)). -Land(land_id int(11) ,area_piece_id varchar(20) , area float, price_perm float , guess_value float, emp_id int(11) , notes varchar(50) , wcounter int(11) , ecounter int(11)). 34 -Land-record(office int(11) ,country int(11) , region int(11) ,area_piece_id varchar(20) , user_id int(11), rate_share float , lrecordid int(11) ,emp_id int(11)). -Land-Tax(land_tax_id int(11) ,area_piece_id varchar(20) , year varchar(4) ,guess_value float , final_guess float , tax float, previous float)). -Owner(first_name varchar(50) ,second_name varchar(50), last_name varchar(50) , user_id int(11) ,address varchar(50) ,telephone int(11) ,note varchar(50)). -Reigon(reigon_id int(11) ,country_id int(11), region_name_en varchar(20) , region_name_ar varchar(20)). -System-User-signUp(sys_user_id int(11) , user_id int(11) , password varchar(20), email varchar(20) ). -Tax-Type(tax_id int(11) , tax_name varchar(20) ). -Waste-Tax(waste_id int(11), type varchar(50) ,value int(11)). -Water-Bill(bill_id int(11) ,water_counter_num int(11) , wrelease_date date , wlast_date date ,wprevious_reading int(11) ,wcurrent_reading int(11) ,wtotal_value int(11) , wmaintainance float , area_piece_id varchar(20) , previos_w float)). -Water-counters(water_counter_num int(11) ,area_piece_id varchar(20) ). 35 4.3.Database Tables: Area_piece Field area_piece_id status Type varchar(20) int(11) Null No No Indexes: Keyname Type Cardinality Field 158 area_piece_id PRIMARY PRIMARY 158 area_piece_id area_piece_id UNIQUE Building Field building_id area_piece_id apartment_no floar room kitchen wc balcony living_room store shop garage description_of_use bshareno wcounter ecounter emp_id waste_id Type int(11) varchar(20) int(11) int(11) int(11) int(11) int(11) int(11) int(11) int(11) int(11) int(11) varchar(50) float int(11) int(11) int(11) int(11) 36 Null No No No No No No No No No No No No No No No No No No Indexes: Keyname PRIMARY wcounter ecounter area_piece_id_2 Type Cardinality Field PRIMARY 2 building_id UNIQUE 2 wcounter UNIQUE 2 ecounter INDEX 2 area_piece_id Building_Record Field record_id office country region area_piece_id share_rate user_id emp_id Type Null int(11) int(11) int(11) int(11) varchar(20) float int(11) int(11) No No No No No No No No Indexes: Keyname PRIMARY area_piece_id user_id emp_id Type Cardinality Field PRIMARY 2 record_id INDEX 2 area_piece_id INDEX 2 user_id INDEX 2 emp_id Bill Field bill_no bill_value release_date Type int(11) float date 37 Null No No No Field Type payed remain paying_date type Null float float date int(11) No No No No Indexes: Keyname Type Cardinality Field 0 bill_no PRIMARY PRIMARY Bank Field card_id value tax_id Type Null int(11) int(11) int(11) No No No Indexes: Keyname Type Cardinality Field 0 card_id PRIMARY PRIMARY 0 tax_id tax_id INDEX Building_Tax Field bulding_tax_id area_piece_id year Type int(11) varchar(20) varchar(4) 38 Null No No No Field guess_value final_guess bulding_tax previous_bt m_tax previous_mt waste_tax pevious_wt waste_id Type int(11) float float float float float float float int(11) Null No No No No No No No No No Indexes: Keyname Type Cardinality Field 0 bulding_tax_id PRIMARY PRIMARY 0 area_piece_id area_piece_id INDEX 0 waste_id waste_id INDEX Country Field country_id country_name_en country_name_ar Type int(11) varchar(20) varchar(20) Null No No No Indexes: Keyname Type Cardinality Field 4 country_id PRIMARY PRIMARY Land_Tax Field land_tax_id area_piece_id Type int(11) varchar(20) 39 Null No No Field year guess_value final_guess tax previous Type varchar(4) float float float float Null No No No No No Indexes: Keyname Type Cardinality Field 0 land_tax_id PRIMARY PRIMARY 0 area_piece_id area_piece_id INDEX Owner Field first_name second_name last_name user_id address telephone note Type varchar(50) varchar(50) varchar(50) int(11) varchar(50) int(11) varchar(50) Indexes: Keyname Type Cardinality Field 50 user_id PRIMARY PRIMARY 50 user_id user_id UNIQUE 40 Null No No No No No No No Reigon Field reigon_id country_id region_name_en region_name_ar Type Null int(11) int(11) varchar(20) varchar(20) No No No No Indexes: Keyname Type Cardinality Field 2 reigon_id PRIMARY PRIMARY 2 country_id country_id INDEX System-user-signup Field sys_user_id user_id password email Type int(11) int(11) varchar(20) varchar(20) Null No No No No Indexes: Keyname Type Cardinality Field 2 sys_user_id PRIMARY PRIMARY 2 user_id user_id_2 UNIQUE 2 user_id user_id INDEX Employee Field emp_id emp_name password Type int(11) varchar(50) char(10) Indexes: 41 Null No No No Keyname Type Cardinality Field 1 emp_id PRIMARY PRIMARY Waste_tax Field waste_id type value Type Null int(11) varchar(50) int(11) No No No Indexes: Keyname Type Cardinality Field 0 waste_id PRIMARY PRIMARY Tax_Type Field Type tax_id tax_name Null int(11) varchar(20) No No Indexes: Keyname Type Cardinality Field 0 tax_id PRIMARY PRIMARY Electricity_Bill Field bill_num elec_couters_num erelease_date elast_date eprevious_reding ecurrent_reading emaintainance etotal_value area-piece-id Type int(11) int(11) date date int(11) int(11) float float varchar(20) 42 Null No No No No No No No No No Indexes: Keyname Type Cardinality Field 3 bill_num PRIMARY PRIMARY 3 elec_couters_num ecounter UNIQUE 3 area-piece-id area-piece-id INDEX Water_Bill Field Type bill_id water_counter_num wrelease_date wlast_date wprevious_reading wcurrent_reading wtotal_value wmaintainance area_piece_id previos_w int(11) int(11) date date int(11) int(11) int(11) float varchar(20) float Null No No No No No No No No No No Indexes: Keyname Type Cardinality Field 9 bill_id PRIMARY PRIMARY 9 water_counter_num wcounter UNIQUE 9 area_piece_id area_piece_id INDEX Electricity counter number Field elec_couters_num area_piece_id Type int(11) varchar(20) 43 Null No No Indexes: Keyname Type Cardinality Field 155 elec_couters_num PRIMARY PRIMARY 155 area_piece_id area_piece_id INDEX Land Field land_id area_piece_id area price_perm guess_value emp_id notes wcounter ecounter Type int(11) varchar(20) float float float int(11) varchar(50) int(11) int(11) Indexes: Keyname PRIMARY area_piece_id_2 wcounter_2 ecounter_2 Type Cardinality Field PRIMARY 7 land_id UNIQUE 7 area_piece_id INDEX 7 wcounter INDEX 7 ecounter 44 Null No No No No No No No No No Land record Field office country region area_piece_id user_id rate_share lrecordid emp_id Type Null int(11) int(11) int(11) varchar(20) int(11) float int(11) int(11) No No No No No No No No Indexes: Keyname PRIMARY userid area_piece_id emp_id Type Cardinality Field PRIMARY 5 lrecordid INDEX 5 user_id INDEX 5 area_piece_id INDEX 2 emp_id Water Counter Field Type water_counter_num area_piece_id int(11) varchar(20) Indexes: Keyname Type Cardinality Field 157 water_counter_num PRIMARY PRIMARY 157 area_piece_id area_piece_id INDEX 45 Null No No 4.Documentation: Interface Designs: Sign in Forms 46 Admin Operations: Operations on buildings: 1. Insert 47 2. Update and delete Operations on lands: 1. Insert 48 2. Update and delete Water/Electricity Counters: 49 Operations on users Accounts By user: By addmin: 50 6.Glossary TERMS DEFINITION Property tax (business object) Tax due on all the buildings and land located within the municipal boundaries of 1954, as amended. Image is for records guessing at the request of the owner to provide details of buildings and land of its own. Certificate of the personal record (system class) Accountant (business object) A person who collects the tax from taxpayers and property owners. Online customer(business object) A customer whose identity card number and credit card number is worthiness he can use the system online Owner(business object) The owner or a person acting as the king and will benefit from it directly benefited Guessing(system class) The inventory of land and buildings within the boundaries of municipalities and appreciation and be subject to tax. Property( business object) All land and buildings inside and outside the municipal limits depending on the map belonging to the municipality. Real Estate ( business object) Existing buildings on the land, whether inhabited or not used, everything else fixed it 51 7. References 1. Finance Management Department . 2. Nablus Municipality. (electricity and water management department) 3. Internet. 52