0% found this document useful (0 votes)
80 views

Development of Laravel Digital Platform Based On MVC Design Pattern For Compii Cated Data Structure-Take The Bible For Example

This document discusses developing a Laravel digital platform to organize the complex data structure of the Bible based on the MVC design pattern. The Bible has over 1,100 chapters divided between the Old and New Testaments, so traditional literature platforms are insufficient. The Laravel framework supports features like routing, dependency injection, ORM databases, and background jobs that make it suitable for this project. The system separates the Bible data into three layers - Model for the data, View for presentation, and Controller to link them. Testing showed the system efficiently handles the Bible's complicated structure.

Uploaded by

eduard
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
80 views

Development of Laravel Digital Platform Based On MVC Design Pattern For Compii Cated Data Structure-Take The Bible For Example

This document discusses developing a Laravel digital platform to organize the complex data structure of the Bible based on the MVC design pattern. The Bible has over 1,100 chapters divided between the Old and New Testaments, so traditional literature platforms are insufficient. The Laravel framework supports features like routing, dependency injection, ORM databases, and background jobs that make it suitable for this project. The system separates the Bible data into three layers - Model for the data, View for presentation, and Controller to link them. Testing showed the system efficiently handles the Bible's complicated structure.

Uploaded by

eduard
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

2020 3rd IEEE International Conference on Information Communication and Signal Processing

Development of Laravel Digital Platform Based on MVC Design Pattern for Compli
cated Data Structure-Take the Bible for Example

Chao-Hsien Hsieh1 Changfeng Li1


School of Software Engineering School of Software Engineering
Qufu Normal University Qufu Normal University
Qufu, Shandong Qufu, Shandong
e-mail: [email protected] e-mail: [email protected]

Ziyi Wang1 Chih-Horng Ke2*


School of Software Engineering Department of Information Management
Qufu Normal University Chang Jung Christian University
Qufu, Shandong Tainan, Taiwan
e-mail: [email protected] e-mail: [email protected]

Abstract—The digital platform can manage the documents New Testament and 929 chapters for Old Testament. It has
effectively, because it can help us to organize, query, and 31173 sections, up to 969200 words [2]. So, it is difficult to
update the documents. Also, we can query the documents on use the traditional literature digital platform to deal with
different mobile terminal devices with the help of the network. Bible efficiently and comprehensively.
However, some documents have complex data structure, such As an open source multi-purpose scripting language,
as the Bible. In the Bible, each chapter has its own PHP absorbs the characteristics of C and Java. Also, it can be
characteristic. The topic of each chapter in the Bible is embedded in HTML. And, PHP can use little system
introduced in its first sentence or its first paragraph. Therefore, resources to realize high performance during the image
it is necessary to use modern digital platform to organize
processing of active web page [1]. Recently, the mainstream
complex data structure in the Bible. Then, this paper designs
and develops a new system. This system is based on the
frameworks of PHP include Yii, CodeIgniter, CakePHP,
Laravel framework with MVC design pattern. The data Laravel, and Symfony. Literature [3] shows that the Laravel
components of this system are divided into three parts: Model framework based on MVC design pattern has become the
Layer, View Layer, and Controller Layer. The feature includes most popular framework in the last five years.
the architecture of interactive software system and the The original version of the Laravel framework was
technology of Laravel routing engine. The result of experiment released by Taylor Otwel on June 9, 2011. Its purpose is to
shows that the system has an excellent processing ability of add some key functions of building web applications aiming
complex data structure. By using the Laravel framework, both at the shortcomings of the original PHP framework:
the time of development and flow of design can be reduced CodeIgniter. Until version 6 in 2019, the Laravel framework
efficiently. shows its powerful functions with the help of MVC design
pattern. It is far more popular than other PHP frameworks [4].
Keywords-MVC; Laravel; digital platform; Bible; data Those functions include the following items: simple and
structure fast routing engine, powerful dependency injection container,
I. INTRODUCTION intuitive database ORM, powerful background job
processing, single server task scheduling, real-time event
The digital platform is a comprehensive platform for broadcasting, etc.
service and management of computer system, which As shown in Fig. 1, the Laravel framework has a simple
provides a variety of services for related groups. At present, directory structure, which makes the development process
the digital platforms are classified widely. It includes simple and efficient. When we want to develop an
business economy, education and training, life services, application program, the Laravel framework stipulates that
literature management, and e-learning platform that provides the core code of the application program should be placed in
online experimental environment for online learning students the “App” directory.
[1]. Some literature represented by the Bible often has the When executing the Laravel framework, it will be
characteristics of large amount of data, many chapters, and accompanied by the initialization of the relevant
complex relationship among chapters. For example, the configurations. At this time, the Laravel framework will read
Bible has totally 1189 chapters, including 260 chapters for the content of the “Bootstrap” directory. In order to meet a

978-1-7281-8823-2/20/$31.00 ©2020 IEEE 475


Authorized licensed use limited to: Polytechnic University of Bucharest. Downloaded on June 13,2023 at 09:28:19 UTC from IEEE Xplore. Restrictions apply.
specific requirement in the period of development, we will
customize the code appropriately. With the increase of the
configuration files, in order to keep the code simple, the
storage location of the configuration files will become more
important. As a result, the Laravel framework sets the
“Config” directory. We can find the required configuration
files through this directory.
Figure 2. Outline View of MVC design pattern.

Brodcasting
As shown in Fig. 2, MVC design pattern separates the
View layer and the Logic layer. Also, there are three layers:
Console

Events
Model layer, View layer, and Controller layer [5]. The
descriptions are as follows.
resources Exceptions
(1) Model. The Model layer is used to encapsulate methods
Http
of processing data. Those data are associated with the
Jobs
business logic of application. Also, the Model layer has
Web.app Listeners
the right to directly access the data. The Model layer is
Api.php
app Mail the main part of the application which contains two
routes parts: business logic and data. It is independent of the
Console.php
Notifications
View layer and the Controller layer. Also, it provides
Policies data for multiple Views. And it only needs to be written
Channels.php
Laravel Directory Structure once. Obviously, it helps us to avoid redundant coding.
Providers
Rules
(2) View. The View layer is an interface for users. It is
storage
Public
bootstrap used to present the Model layer. Also, it gets the
required data from Model layer. It should be multiple
framework
different forms for the same data.
config (3) Controller. The Controller layer lies between View
logs
tests layer and Model layer. When it gets data from View
public
layer, the analysis results of the data will be fed back to
vendor
database
Model layer. Generally, a View has only one Controller
which improves the flexibility and configurability of
the application.
Figure 1. Laravel directory structure.
Our platform is designed and developed in MVC design
Laravel is a framework that conforms to MVC design pattern and characteristics of PHP. Also, this system uses the
pattern. It places both layer of View and Controller in the Laravel framework based on PHP and the front-end
directory of “Resources” and “Routes” respectively. In the framework: Layui.
Model layer, the Laravel framework provides “Database” As shown in Fig. 3, our platform constructs View layer,
directory that is used for data operation. At the same time, Controller layer, and Model layer separately. It uses Layui
the Laravel framework also sets “Public” directory. In order framework to construct the View Layer and uses the Laravel
to simplify the test process, the Laravel framework places framework to construct the Controller Layer and the Model
related automatic test files of application program in “Tests” Layer. The Layui framework supports modular development
directory. In terms of performance optimization, the Laravel of code components and the Laravel framework supports
framework places the files generated by the framework for it ORM and the Routing Controller. Therefore, this platform
in the “Cache” directory alone. has the following characteristics.
For the early Web programs without MVC design pattern, (1) This platform supports a large number of users in
the View layer and the Logic layer stay together. Thus, as requesting messages at the same time.
long as system logic is modified at any time, the relationship
of data and the View layer should be updated at the same
time. In the process of system development, developers
should deal with the program logic and pay attention to the
changes of data relation in the View layer. To modify a place
frequently, this activity will lead to high coupling and poor
scalability of application. When the application is in a
concurrent processing environment, its loading capacity will
be not enough. Therefore, it becomes a potential problem of
traditional digital platform. This problem is solved until the
emergence of MVC design pattern. Figure 3. Digital platform scheme based on MVC.

476
Authorized licensed use limited to: Polytechnic University of Bucharest. Downloaded on June 13,2023 at 09:28:19 UTC from IEEE Xplore. Restrictions apply.
(2) The Model Layer can provide many forms of data (2) Secondly, considering the complex connections among
representation for multiple Views. Next, Model layer the scriptures of the Bible, we organize and build data
and View layer are independent of each other. When by category. At the same time, both primary key and
creating a new View Layer, we don’t need to rewrite foreign key are set up.
Model layer. (3) Thirdly, after all kinds of functions of data visualization
(3) The changes of data in the Model Layer will be are designed, we can use chart and list to help users
announced through a refresh mechanism. By this clearly understand the characteristics among the
mechanism, each View registered in the Model Layer chapters of the Bible.
can know the changes and refresh itself accordingly. (4) Eventually, this platform provides the function of
(4) The Model layer can be reused by multiple Views. Also, outputting data in multiple formats.
it is independent of the View Layer. So, the Model The rest of this article is organized as follows. The
Layer is possibly migrated to a new platform section Ⅱ mentions the system architecture and the
independently. Based on the above features, when explanation of various parts of the system. In the section Ⅲ,
developing the View Layer, developers only need to through further research and analysis, the method of studying
consider how to lay out a good user interface. In the the methodology of data structure in the Bible is determined.
process of establishing and developing the Model Layer, At the same time, the system application and system analysis
developers only need to focus on business logic and are mentioned in the section IV, including digital platform
data maintenance. Therefore, the development interface and performance test results. Finally, the section Ⅴ
efficiency of the digital platform is improved. expands and summarizes the relevant information of this
The Bible is rich in content and complex in structure. program.
Due to the diversity of its content, many people doubt the
integrity of the data structure. There are currently two points. II. SYSTEM ARCHITECTURE
First, the theology has traditionally denied any contradictions. Graphic User Interface
They believe that "The Bible is a revelation of God, and its
unity and integrity are beyond doubt." Second, some scholars File Query File Import

who study Hebrew literature, folklore, and history believe Back-End


that the Bible is a collection of books from different periods File Export
Management

or authors. On the whole, there is no uniformity.


Paradoxically, the Bible has been revised by many Back-End Processing Module

scholars since ancient times following some certain Routing Device

guidelines. Those rules present the consistency of the Bible


in a complete structure. Unlike other data structures, the
content of the Bible is both independent and related. Many Model Controller View

seemingly unrelated stories can be covered by this structure.


This structure can be summarized to show that from creation,
depravity, prophecy, breaking through the fetters, to reach
the ideal situation. Database
Based on the analysis of Biblical data structure, while
integrating the biblical chapters and the digital platform, we Figure 4. Architecture of digital platform system.
will encounter the following difficulties.
(1) Biblical scriptures are often quoted in a variety of data The purpose of this digital platform is to organize and
formats, such as books, texts, sounds, pictures, e-mails, process the complex data structure in the Bible efficiently.
newsletters, etc. Therefore, we should understand the We use the framework technology of Laravel and Layui.
number of data formats. Layui can provide the help of routing buffer. At the same
(2) There are complex connections among the scriptures of time, the features of MVC design pattern to develop this
the Bible. Therefore, in order to maintain the relevance digital platform are more modularly, efficiently, and
among the scriptures of the Bible, we should study how concisely.
to design and build the database. Fig. 4 shows that the digital platform is mainly composed
(3) Although the digital platform provides management of three parts: visual interface, background processing
functions of adding, deleting, modifying and querying, module, and database.
some data doesn’t need all the management functions. (1) Visual Interface. This function is based on Layui
Therefore, we open up the compatible functions for framework. Also, Layui is a front-end framework that
every kind of data. supports modular development. This interface provides
(4) After the functions are designed as the requirement, we some functions, such as File Query, File Import, File
need to set up the fields in the database. Export, and Background Management. File Query can
In view of the above problems, this digital platform help users to find the passage when they input the key
possesses four advantages. words to the search box. In order to help users to
(1) Firstly, it allows both inputs of single and batch. Also, browse the results conveniently, the returned content is
it has the functions of deletion, modification, and query. displayed in the form of table. The system supports

477
Authorized licensed use limited to: Polytechnic University of Bucharest. Downloaded on June 13,2023 at 09:28:19 UTC from IEEE Xplore. Restrictions apply.
content expansion, because some chapters are lost in development platform. And, profile of virtual platform is the
the process of dissemination or the data is updated too configuration file in the virtual development platform. The
fast to see some chapters. We set the function of File sequential diagram shows the development process. It
Import. Users can import all kinds of content into consists of five steps as follows.
different regions with different labels. In order to fit • First, the developers start the Vagrant (virtual
different data requirement, this platform also sets the management tool) through process ①. Then, they use
File Export function that exports data in different the Vagrant to read the profile of virtual platform
formats. Every robust website has its own management through process ②. Next, they initialize the virtual
function. Then, our platform also has this function platform through process ③. And, it feedbacks the log
which supports the management of users and literature. file to the developers through process ④. When this
(2) Background Processing Module. The module includes system is initialized successful, the log fie returns
the Model layer and the Controller layer. And, this normal message. But, if it fails, the log file returns error
module is developed on the Laravel framework and message.
accepted by a large number of requests from users. • Second, the secret key is verified through process ⑤.
Then, the module is possible to response immediately Then, it is checked through process ⑥. After the secret
due to the Routing Engine of Laravel framework. We key passes the status of check, it goes to the login
use the cache and ORM of Laravel framework to interface of virtual platform. After success to login, the
design the Model layer, which supports the functions of system feedbacks the successful operation information
data cache, database migration, and SQL operation. in process ⑦.
(3) Database. To store data, we establish table through • Third, we start to build the project that switches process
MySQL database. And, we set primary key and foreign ⑧ in the directory. Then, process ⑨ creates projects
key to keep the association among multiple tables. and modifies the option of folders in the virtual
III. EMETHODOLOGY OF DATA STRUCTURE IN BIBLE platform profile. Next, the image is set to the address of
the local project. Process ⑩ modifies the local profile
It is challenging for the digital platform to storage, that is accessed by the virtual platform. Now we can
organize, and process data for the complex data structure preview the results of execution in the project at any
represented by the Bible. And there are some researches for time.
U-shaped structure mode for creation, depravity, prophecy, • Fourth, process ⑪ restarts the command of the virtual
breaking through the fetters, and reaching the ideal situation. platform. The process ⑫ uses management tool to
It shows that our system is very innovative. overload configuration. After that, process ⑬ uses
management tool to feedback the information.
Virtual
Developer
Management Virtual platform Local • Finally, process ⑭ is to input the restart command in
tool platform profile
profile
virtual environment. The process ⑮ overloads the
configuration. Then, process ⑯ feedbacks the response
information.
IV. SYSTEM APPLICATION AND ANALYSIS
For literature with U-shaped structure represented by the
Bible, this system uses Controller layer to show the different
chapter titles in the literature. It is necessary to set function
among associated chapters, so that users can search quickly
according to the associated chapter titles. To consider the
amount of biblical data, multiple caches can avoid reading
restrictions caused by network congestion. Because the Bible
has complex data structures, we place the titles of chapters
and the content in Model layer and Controller layer
separately. It can greatly reduce the complexity.
The construction of digital platform is divided into five
Figure 5. Flow chart of system development.
stages: development environment construction, platform
development, performance test, analysis test, and application.
A. Operational Process A. Environment Construction
As shown in Fig. 5, developers need to create the Laravel The hardware environment is in Intel platform, corei5
project firstly. This project in virtual development architecture. The CPU is the main frequency of 2.5GHz with
environment includes three parts: management tool, virtual memory of 8GB. The software includes sublime text [6-7]
platform, and profile of virtual platform. The management and VIM eclipse. The sublime text can be launched quickly
tool is responsible for setting the virtual development in different platforms. The development tool of this platform
environment. The virtual platform is the same as a virtual is Git for Windows. In addition, this platform also needs the

478
Authorized licensed use limited to: Polytechnic University of Bucharest. Downloaded on June 13,2023 at 09:28:19 UTC from IEEE Xplore. Restrictions apply.
following items: VirtualBox5.2.20, Vagrant2.2.1, Homestead, • File Query. This function provides comprehensive
and Git2.16. services, including the query chapter of the Bible,
the query of church location distribution, the
B. Application diagram
statistical charts of church distribution, and believers.
The applications of the digital platform are described as The function of query chapter provides many query
follows. interfaces. And, the interfaces are divided into local
• Login Interface. In order to ensure the security, the query and multi-query. The query function of church
login interface is divided into three parts: user name, location distribution reflects the changes of church
password, and verification code. It will generate 6- distribution and other relevant information. The
digits verification code automatically according to believers include the main meal, baptism, etc. Also,
user name and password. it provides the query function of key words and
shows an external interface for more chapters. Figure
7 shows the statistical charts of church distribution.
In addition, the query of church location distribution
is able to represent at map through this function.

Figure 6. Enter the main page.

• Main Interface. The main interface after login is


shown in Fig. 6. There are five functions of Arrange Figure 7. Query function.
Home Page: File Query, File Import, File Export and
Background Management at the top of the page. This • Background Management. The interface for users
page can be named as Top Page. And, it can be used displays the records of books in the local database.
to all pages of the digital platform. The main purpose Also, it helps users to heavily delete, modify, sort,
of this design is to easily go back to the content for and add data in the database.
users when they want no matter which pages they
C. System Analysis Diagram
are browsing. To click the links in the page, you will
see the subfunctions under the major functions. Fig. 8 shows the test results. We use simulated data to
There is a Tab option between Home Page and Top simulate user operation that displays the CPU consumption
Page. It will help users to master the location of the curve of system. After the system receives the user requests,
web page when browsing by the synchronization the CPU usage will increase slightly. For subsequent
mechanism. requests, the CPU usage will remain small and stable. It
• File Import. When users operate this system, the shows that the digital platform takes up less CPU usage in
stored data should be updated or supplemented at the the process of multiple concurrent requests after obtaining
same time. So, the function of File Import guides the the data in the initial stage. Then, it reflects the high
users to import a large number of sorted data files performance of this system. Also, it shows a strong reaction
into the database. Then, Tab option can separate data capacity to multiple concurrent requests in this system.
summary and detailed information. We firstly fill in
the relevant information of the data that needs to be
imported, so that the system can identify the chapters
and store the data by classification. At the same time,
the imported data, which is labeled, reflects the
popularity of the content.
• File Export. In addition to the function of File
Import, this system provides the function of File
Export which is able to export the required
information. It uses the local database, for instance,
the form of MS-Excel. Figure 8. Memory usage.

479
Authorized licensed use limited to: Polytechnic University of Bucharest. Downloaded on June 13,2023 at 09:28:19 UTC from IEEE Xplore. Restrictions apply.
We use simulated data for user operation which displays the platform. Second, the optimization of the database is
the memory consumption curve of system, as shown in necessary: according to user's preferences to develop
Figure 9. After removing the necessary of memory capacity intelligent recommendations and queries. Thus, this system
for the operating system to run, the memory occupied by the still needs to be improved. In the future, the distributed
system also shows a trend of increasing first and then computing and distributed storage can also be used for
decreasing. Last, it remains in a low-occupancy status. larger-scale data processing.
REFERENCES
[1] L. Chen, W. Huang, A. Sui, D. Chen and C. Sun, “The online educati
on platform using Proxmox and noVNC technology based on Laravel
framework,” in the 16th International Conference on Computer and In
formation Science (ICIS), pp. 487-491, 2017.
[2] K. Nugroho, Sumardi, S. Murdowo and Muljono, “Comparing networ
k structures of different versions of a book: A case study of the Bibl
e,” in Proceddings of the 17th International Conference on Digital Lib
raries: Providing Quality Information, vol. 9469. Springer Verlag, 20
Figure 9. CPU usage. 15, pp. 1412-152.
[3] R. F. Olanrewaju, T. Islam, N. Ali, “An empirical study of the evoluti
V. RELATED WORKS on of PHP MVC framework,” in the 1st International Conference on
Communication and Computer Engineering, pp. 399-410, 2014.
Not only can PHP support text files, such as HTML, [4] R.Y. HE, “Design and implementation of web based on Laravel fram
XHTML and XML, it also outputs images, PDF files, and ework,” in 2014 International Conference on Computer Science and E
Flash movies. At the same time, it can run on various lectronic Technology, 2015.
platforms, servers, and databases efficiently [8]. [5] Z. Wang, “The Design and Implementation of an Online English Test
The Laravel framework is applied to many Web ing System Based on MVC Model,” in the 1st International Conferen
platforms because of its robust features. As we know, the ce on Real Time Intelligent Systems, pp. 432-439, 2016.
traditional information system exists some problems, for [6] Sublime text3.2(Windows-64-bit). https://pan.baidu.com/s/1jH6o5sa?
errno=0&errmsg=Auth%20Login%20Sucess&&bduss=&ssnerror=0
example: data storage failure and data storage error. Then, &traceid=#list/path=%2F, 2020-02-07.
the system based on the Laravel framework deals with those
[7] Subilme text3.2(OS X). https://pan.baidu.com/s/1slWENqH#list/path
problems more efficiently, such as the internship monitoring =%2F, 2020-03-04.
system [9]. Also, the system of Laravel framework has [8] X. Li, S. Karnan, and A. C. Jahanzaib, “An empirical study of three P
significant advantages in improving productivity compared HP frameworks,” in the 4th International Conference on Systems and
with the PHP programming language [10], [11]. Informatics, pp. 1636-1640, 2017.
In the project development of Web, MVC has been a [9] M. Anif, A. Dentha, and H. W. S. Sindung, “Designing internship mo
standard design pattern that is applied in many project nitoring system web based with Laravel framework,” in the 2017 IEE
developments of digital platform [12]. The MVC design E International Conference on Communication, Networks and Satellit
e (Comnetsat), pp. 112-117, 2017.
pattern is not only applied to the development of a large web
[10] R. Valarezo, T. Guarda, “Comparative analysis of the laravel and cod
application, but also it is workable for the design of small eigniter frameworks: For the implementation of the management syst
application [13]. Moreover, a significant result shows the em of merit and opposition competitions in the State University Pení n
innovative pattern that combines the technology of UML, sula de Santa Elena,” in the 13th Iberian Conference on Information S
MVC, and J2EE. This technology improves many ystems and Technologies (CISTI), pp. 1-6, 2018.
shortcomings of the development process [14]. The MVC [11] K. Nugroho, Sumardi, S. Murdowo and Muljono, “Mobile Cloud Lea
model has been developed for many years, but it still has rning System Using Laravel Framework and Android Studio Web Vie
w,” in Proceddings of the 2019 International Seminar on Application
potential for development. for Technology of Information and Communication (iSemantic), Insti
tute of Electrical and Electronics Engineers Inc., 2019, pp. 141-144.
VI. CONCLUSIONS
[12] F. Li-Xia, “English Course Online Learning System Design Based on
This paper proposes the Laravel framework that is based MVC,” in the Sixth International Conference on Intelligent Systems
on MVC design pattern and uses it to deal with the complex Design and Engineering Applications (ISDEA), pp. 372-375, 2015.
data structure, such as the Bible. This scheme provides a new [13] X. Li, N. Liu, “Research on L-MVC Framework,” in the 17th Internat
ional Conference on Parallel and Distributed Computing, Application
method to solve the problem of digital management of the s and Technologies (PDCAT), pp. 151-154, 2016.
complex data structure. Then, the results of experiment prove
[14] C. Zhang, W. Shen, “The studies on integrated development approach
Laravel framework exits its unique advantage for building based on the architecture and MVC design pattern,” in the 2012 IEE
digital platform. But it is still not perfect. First, the hardware E Symposium on Electrical and Electronics Engineering, pp. 578-580,
condition has limitations. The system is failed to perform 2012.
high concurrent stress testing, so it could not test the limits of

480
Authorized licensed use limited to: Polytechnic University of Bucharest. Downloaded on June 13,2023 at 09:28:19 UTC from IEEE Xplore. Restrictions apply.

You might also like