Modelling and Simulation of Nigerian Airspace Management Agency Billing System Using Python Simulation Packages

: Revenue generation has a positive and significant effect on the growth of any business. The existing work process in Nigerian Airspace Management Agency (NAMA) billing system creates the loophole for revenue deficit. The need to enhance the billing system of this organization prompted the need for this study. Primary data were collected from NAMA station at Muritala International Airport and its corporate headquarters. The data include the process and time of attending to airlines or their agents (which includes arrival time, service time, departure time, Waiting time etc.), Six months financial statement of NAMA MMIA, Debt profile details for debtors and number of airlines attended to per day. These data formed the input for developing the SimPy model to bring together process based discrete events. Validation was done by comparing the simulated results with the real results using statistical t-test at p less than 0.05 (p<0.05). 15 airlines were considered for 5 months (assuming 30 days per month), making an average of 6 landings per day per route which represents 3 flights within a route per day. The rate is ₦7,000 per one-hour flight per route. The simulation results reveal that with the proposed model ₦23,948,044 was generated as against ₦12,486,680 of the existing system. This represents 191.788% improvement. This result is for Murhitala Muhammed International Airport (local wing) only. The python simulation package (SimPy) used, introduced approval levels for the various department, thereby ensuring no departments’ function was undermined. This model is useful for Airspace management, in that it reduces deficit without any negative impact on the safety and service delivery of airlines.


Introduction
Man, in search for better way of doing things, has always tried to use technology in order to improve life, make processes faster and easier.
A billing system is a combination of software and hardware that receives details of services information, groups this information for specific accounts or customers, produces invoices, creates report for management and records payments made. The study by Maria (2008) [3] explain billing and customer care systems as the link between end users and the service provider. Determination of the billing rates are associated with the billing records, calculating the cost for each billing record, aggregating these records periodically, usually monthly, to generate invoices, sending invoices to the customer, and collecting payments received from the customer.
Billing starts with the expression of interest by customers, collecting information needed to prepare an invoice from the customer, creating the invoice and issuing the invoice to customers Muzhir. et al., (2012) [12]. Billing requires speed, accuracy and satisfaction for customer. In a business environment where there are competitors, customer satisfaction on available process is very important.
Simulations are used to study the characteristics of a real-life system and compare it with the characteristics of a functional system by manipulating the variables. Simulations are used in airports, restaurants, mechanics, government agencies, and many other systems where poor resource allocation can lead to congestion, customer dissatisfaction, and critical transportation System Using Python Simulation Packages delays or loss of profit (Pellet, 2015) [13].
The unscheduled flight billing system used by NAMA comprises two sides; the arrival and the Departure sides. Usually it has fields which require to be populated by the operator. Example of such fields are: departure airport, arrival airport, aircraft type, aircraft weight, routes, registration number, time of departure, souls on board and destination airport. With these details when you click ok the amount will be displayed. The charges involved are: i. Terminal navigation charges (TNC) ii. En-route charges.
If an aircraft is too small that the TNC is less than the minimum charge, it simply sums up to the minimum charge. The process starts by the Aeronautical information service (AIS) department, generating the flight plan for a particular flight and forwarding same to the Air Traffic Control (ATC) at the control Tower, who now fills out a form called the ADR16 with all the information as required for the flight. It is this ADR 16 that is forwarded to the commercial department billing. The FOXPRO is used by NAMA to bill all flight departing Airport A to B, Overflies, or flight operations within a state e. g. Helicopters from Lekki to Ikeja Helipad. This study models and simulate the work process involved in the billing system of NAMA using SimPy, a framework in Python Simulation Software with a view to improve service delivery and revenue collection. Python is a high-level, interpreted, interactive and object-oriented scripting language. Python is designed to be highly readable. It uses English keywords frequently where as other languages use punctuation, and it has fewer syntactical constructions than other languages (Miller, 2004) [7]. SimPy is a process-based discrete-event simulation framework based on standard Python. Processes in SimPy are defined by Python generator functions and can, for example, be used to model active components like customers, vehicles or agents. SimPy also provides various types of shared resources to model limited capacity congestion points like servers, checkout counters and tunnels (Zinoviev, 2018) [14].
The model behaviour is demonstrated by means of computer simulation (Veronika, 2015) [6].

Related Works
Some studies have been carried out on improving billing system. Jong (2007) [15] researched on the optimizing cost effectiveness and flexibility of Air Taxis. Nikitas et al (2014) [1] worked on a systemic approach for an open internet billing System. It was concluded that internet billing is an inexpensive way of delivering billing information, because it has an interactive entry to a host of additional services which includes customer care. Through Internet billing, billers can streamline their processes, enabling more convenient communications with customers while reducing errors and the cost of the payment processing and bill delivery operations. A system approach to reducing utility billing error was studied by Ogura [2]. He proposed a method to find an appropriate metric for error analysis, by determining the direct quantitative triggers associated with the qualitative indicators for hazardous conditions. A System Dynamics model was used to generate the measurable quantitative indicators linked to more apparent qualitative factors for determining the health of an organization. This process may be adopted by many organizations seeking to find metrics for hazard analyses, to prevent errors in non-standardized work processes.
Jones [4] studied clinical documentation and billing with sophisticated algorithms to modify data for quality and operational improvements, with a view to create a link between the clinical documentation and charges involved. The work used an application that codes endoscopy, procedures based on available documentation to compare the automated coding method with manual billing in order to determine the efficacy of charge by documentation. This ensured periodic quality assurance testing of the system purposely for enhancement and documentation accuracy. Also, Bello [5] outlined that most problems, currently seen in water billing, result from the manual processes being followed. He proposed a solution which uses evolving Mobile Technologies known as Short Message Service (SMS) and vogue pay online payment technologies, as against the use of web applications for handling the organization's day to day transactions. This approach allows the water board to send bills to their consumers via SMS and consumers to pay their bills using ATM cards. The author concluded that consumer interaction with the organization was improved and also consumers can easily view their monthly water bills by logging in to the organization's web site. Rashid [11] observed that a good accounting / billing system for Airlines should validate all transactions, and commence recoveries in situations where incomplete collections or errors have occurred. A good billing system should reduce opportunities for fraud, and identify possible situations that can encourage fraud. It should effectively deliver very fast, accurate revenue and further send data to management and management information system. Due to the peculiarity of airline business, the process of reporting does not as it is in other transport industry and manufacturing organizations. This is because of the perishable and highly competitive nature of the airline business. Once an airplane takes off and it has empty seats, there is no way to recoup revenue losses as it perishes. Good billing systems will lead to effective corporate governance, which will in turn enhance the performance of the organization, by establishing such environment that will stimulate managers to maximize returns on investment, which will eventually lead to long-term productivity and growth.
Fattah et al [10] studied how Supply Chain Operations Reference (SCOR) model and Batch Deterministic and Stochastic Petri Nets can be utilized modeling and analyzing the performance of the inventory management system thereby providing information with respect to their behavior and how they affect other parameters. The resolution of the stochastic process associated with the warehouse management system permits for calculating the performance indicators like: average stock, average cost of stock, probability of an empty stock, and average supply and sales frequency. The results derived from this work, shows that some indicators require modifications that will help achieve set objective values. He focused on the analytical approach for modeling using performance evaluation for stock management. Techniques of Performance evaluation that is based on simulation assuming a very complex systems was proposed.
To buttress the point raised by Bello [5] that the use of mobile technology enhances the performance of the organization, Dairukina [9] introduced the utilization of process approach which is a crucial step towards optimizing the organization's work thereby eliminating losses and facilitating effective quality control management.
Also, Mirgaziyanovna. et al., [8], the introduction of information and communication technologies in all financial spheres have led to improving business processes and company management and the process of providing services, as they enable organizations to receive more information about their customers and consumers.

Methodology
The model was developed using the SimPy simulation framework which is built on Python. Due to the constraints of simulating an automated process in simpy, the python programming language was used to program the model and was integrated within the simpy environment.

Data Collection
Data were collected by physically visiting the four departments involved in the billing system process in NAMA. They were interviewed and their various roles were documented. The following information were collected: A list of airlines that visit NAMA within the period of 11am to 2pm. This represents the peak period of NAMA, Financial report of NAMA for Six months was collected. Only a summarized estimate was given with a vivid explanation of NAMA financial status.

Development of the Model
A flowchart was generated to represent the existing process involved in the billing system. It was discovered from the flowchart that a major cause of the revenue deficit in NAMA is because for scheduled flights, the role of commercial department comes up when a lot of debt have been accrued. This creates a lots of oppoturnity for over-violation of the debit window of 30 days given by NAMA to the airlines. Therefore, an adjustment has to be made on the flowchart to accommodate this lapse, in order to reduce the debt profile for NAMA.
The flowchart of the existing system was presented in Figure  1 where commercial department comes up towards the end of the work flow to collect ADR 16. For ATC to forward ADR 16 to AIS means the flight has been departed without checking its financial status. This creates a lot of opportunity for over-violation of the debit window of 30 days given by NAMA to the airlines. This puts NAMA in a difficult situation for so many reasons. This is why the new flowchart in Figure 2 which checks if airlines' payment is up to date and if debit period has exceeded 30 days. These two actions are performed by commercial department in order to check the debt profile of Airlines per route. Figures 3 and 4 shows the Unified Model Language (UML) activity diagram for both flowcharts, which depicts the activities of the departments.

Simulation of the Model
The model was simulated using the SimPy simulation framework which is built on Python. Using the collected data, the model was simulated with the aim of solving the loop holes and flaws in the existing system. The necessary libraries were imported. In the simpy environment, random library was used to generate random numbers and information, the datetime library for dates, time for handling time, numpy for handling numerical data and matplotlib for plotting of graphs. A Boolean value was generated, of either one (1) or zero (0) to set the status of each airline that comes, where a 1 stands for 'paid' and a 0 for 'debt'. A random number of days which is a date between the two months set initially was made. A threshold of 30 days is set to check the duration of the debt of each airline.

Validation of the Model
The financial report of NAMA (representing the real system) for 5 months was collected and compared with the financial output of the simulated existing system, also for 5 months. This was carried out using statistical package for social sciences (SPSS) independent means t-test with effect size at p<0.05. where p is the bonferroni adjusted alpha. The following notations were used to make the calculations: N=number of airlines per day n=number of days in a month (30 days was used for one month) d=number of months (5 months considered) A=amount per route per flight m=total amount per month per airline per route M=mean value per month SD=standard deviation per month The mean was given by = This gave mean value per month for both real and existing system model. For the standard deviation, the formula used is: The mean value per airline per month and the standard deviation per month were derived for both the existing model and real system. These values were used as input to the independent t-test of the SPSS. This validation was done for 30 landings covering both the real and existing model systems.
The validation results showed that p=0.01, this means that there is no significant difference between the real system System Using Python Simulation Packages which is manually calculated and the developed model.

Results and Discussion
The simulation of the scenario was carried out by considering three airlines randomly per route where each simulation represents one month. Five simulations were carried out which represents five months (August, September, October, November, December). This makes it a total of 15 airlines that were considered for 15 routes and 30 landings. The results are tabulated in Tables 1 and 2. From the tables, it is seen that the proposed (scenario) system model gives a better revenue output of ₦ 23,948,044 compared to the existing system model output which gives a revenue of ₦12,486,680. Noting that both were subjected to the same conditions (same number of airlines and number of months). This result represents values for Murhtala Muhammed International airport (local wing) only. Hence, NAMA revenue can be greatly enhanced as depicted in figure 5 to show this comparison.

Conclusion
This work was able to model, simulate and validate the billing system for NAMA using python simulation framework. It is shown that the total revenue of the newly developed system is much better than that of the existing system. It is not only enhance a better output but also reduce overload on the workers of NAMA especially the commercial department which will have a lot of log record to keep track of when balancing the records. The aim and objectives of this work have been achieved via the methodology used and the results shown to prove the flexibility and reliability of the newly developed model. Also, considering the nature of the existing system, the scheduled flights have unstructured arrangements and order as it is automated, it made it challenging to get a constant data as the flight's schedule was not sequential but rather random. This resulted in the use of the python programming language which was now integrated in the simply environment. The python programming language due to its rich features and flexibility made it possible to simulate this automated process.