Design of a Blockchain-Based e-Portfolio Evaluation System to Assess the Education and Teaching Process

The e-Portfolio evaluation can truthfully assess the education and teaching process. This technique boasts several advantages: diverse evaluation subjects, emphasis on process evaluation, support to individualized development, and integration between teaching and evaluation. This paper applies blockchain to e-Portfolio evaluation, aiming to solve the thorny issues in traditional e-Portfolio evaluation: privacy protection, data sharing, and information tracing. Firstly, the functional demand of blockchain-based e-Portfolio evaluation system was analyzed for multiple users: student, teacher, visitor, and administrator. Next, modular design was conducted for the system, the system boundaries and roles were defined, the relationship between roles was clarified, and a use case was provided to illustrate the client for each user. Based on the functional realization logic of the system, a sequence diagram was plotted for the realization of system functional demand. Finally, seven chaincodes were designed to satisfy the requirements of the evaluation system. The advantages of the system performance were verified through experiments. The research results provide theoretical and practical bases for the application of blockchain in other evaluation tasks of education and teaching. Keywords—Blockchain, e-Portfolio evaluation, system design


Introduction
In the Internet era, e-Portfolio evaluation can truthfully assess the education and teaching process through information technology. This technique has broad application prospects, by virtue of several advantages: diverse evaluation subjects, emphasis on process evaluation, support to individualized development, and integration between teaching and evaluation [1][2][3][4].
In the traditional evaluation system for online education and teaching, the e-Portfolios are not possessed by students, but stored collectively in educational administration system (EAS) of their schools. The EASs of different schools are customized in different software providers [5][6][7].
Sometimes, the e-files of a student are missing or not backed up, and the file data are not shared timely between schools or between his/her school and employer. In this case, when the student transfers to another school or goes to work upon graduation, the unit that should receive his/her e-files cannot receive the file data. Then, the receiving unit could not know about the learning process of the student, not to mention preparing a scientific learning or career plan for the student.
To make matters worse, the traditional EAS cannot encrypt the e-files of students, which are a kind of electronic assets. As a result, the data in the centrally stored e-files are not necessarily authentic and reliable. All the above problems with the e-Portfolio could be resolved by the emerging blockchain technology [8][9][10].
The traditional evaluation system for online education and teaching faces multiple defects: the high proportion of quantitative components, the lack of diverse evaluation subjects, and the neglection of difference between students. Therefore, scholars at home and abroad have probed deep into the feasibility analysis, design, and implementation of e-Portfolio evaluation [11][12][13][14]. For example, Awang [15] applied e-Portfolio evaluation to senior high school courses, and sorted out the contents of course evaluation scientifically: a fully list of the tasks in classroom learning, a continuous set of assignments or works reflecting the course learning process, the results of peer evaluation, and the results of teacher evaluation. Iio and Wakabayashi [16] introduced the implementation path of e-Portfolio evaluation, clarified the structure design of the portfolio, and verified the effectiveness of the designed evaluation system through examples. Balaban [17] elaborated on the three major functional modules of e-Portfolio evaluation system, namely, student user module, teacher user module, and system management module, and constructed an operation model for the entire system based on the file-client-browser structure.
Blockchain has been widely adopted in many fields, e.g., finance, energy, and medical treatment, thanks to its excellence in decentralization, openness, autonomy, tamper-proofing, and anonymity [18]. In the financial industry, blockchain helps to verify the ownership and trace the transactions of digital assets in the links of transaction and settlement [19]. To safeguard asset migration and simplify supervision and review, Agricultural Bank of China and China Construction Bank have built asset management platforms based on blockchain [20].
In the coming decade, global energy blockchain applications are expected to create a cumulative revenue of 19 billion USD, which will grow at a compound annual rate of 66.9%. To solve the operational problems in power transaction and energy management in the energy Internet, Abidin et al. [21] constructed a blockchain-based architecture for energy supply system, simplified the multi-layer architecture of traditional energy systems, and provided a safe transaction platform at all levels for power producers, operators of distribution/transmission system, power suppliers, and consumers.
In the medical field, Mok [22] adopted the blockchain to manage the electronic medical record (EMR) of traditional medicine, analyzed the functional demand of different users (e.g., patient, doctor, department, and administrator) in blockchainbased EMR system, presented the chaincode for each function in the blockchain complied by the principle of network interaction, and realized all desired functions under the model-view-controller (MVC) architecture.
To sum up, blockchain has rarely been applied to the evaluation of education and teaching. In an attempt to integrate blockchain into evaluation system for online edu-cation and teaching, this paper explores the feasibility of applying blockchain in e-Portfolio, and wishes to provide a novel solution to the issues in traditional e-Portfolio evaluation: privacy protection, data sharing, and information tracing.
The main contents of this paper are as follows: 1. The functional demand of blockchain-based e-Portfolio evaluation system was analyzed for multiple users: student, teacher, visitor, and administrator, and used to build up a functional framework. 2. Modular design was conducted for the system based on Hyperledger Fabric blockchain platform. Considering the goals of system design, the system boundaries and roles were defined, the relationship between roles was explained, and a use case was provided to illustrate the client for each user. 3. Based on the functional realization logic of the system, a sequence diagram was plotted for the realization of system functional demand. 4. According to the requirements of the evaluation system, seven chaincodes were designed, each of which can execute a segment of functional realization logic. The data structures and functions were detailed. After completing the functional test of the system, the authors designed comparative experiments to verify the advantages of the system performance.

Functional Demand of System Modules
Focusing on the process of course learning, the proposed blockchain-based e-Portfolio evaluation system involving multiple users, such as student, teacher, visitor, and administrator. To realize different functional demand of each user, the data were integrated based on blockchain and database technologies.
The functional architecture of e-Portfolio evaluation system is illustrated in Figure  1.
For students, five functional modules were set up: material or evaluation query, resource retrieval, file upload and download, self and peer evaluation, as well as communication and discussion. These modules support the feedback, summary, and multisubject communication of the learning process of each student.
For teachers, seven functional modules were set up: notification release, assignment management, score management, evaluation and evaluation management, assignment and work display, resource management and recommendation, as well as examination and assessment. These modules enable teachers to dynamically remind, supervise and inspect, evaluate and guide, and encourage and motivate students in each phase of education and teaching, thereby broadening the horizons of students.
For visitors like parents, and school and employer staff, four functional modules were set up: Evaluation query module, assignment and work query, evaluation, as well as communication and interaction.
For administrators, five functional modules were set up: multi-user information management, multi-user authority management, system file update, system maintenance, and system upgrade.

Hyperledger Fabric-Based Modular Design
Based on Hyperledger Fabric blockchain platform, the modules were designed in details for the evaluation system of the e-Portfolio shared among multiple schools and employers, aiming to overcome the defects of traditional evaluation system for online education and teaching: centralized storage, isolation, low security, and difficulty in sharing.
The traditional evaluation system for online education and teaching was optimized by the distributed storage ledger, multiple channels, and tamper-proofing of Hyperledger Fabric blockchain platform. The optimization facilitates the management of multiple users, overcomes the disadvantages of centralization, promotes the participation of peer nodes, and breaks the restriction of information isolated islands.

Goals of system design
This paper attempts to establish a blockchain-based evaluation system for shared e-Portfolio, which centers on evaluating the course learning process of students. The realization logic of overall system functions was designed by analyzing the processes of education and teaching, such as school and department management, student participation in course teaching, and teacher's tutoring and guidance. In addition, a set of scientific user authority management strategies was developed to ensure the safety and accessibility for parents, and school/employer staff to call and view student e-Portfolio.
The detailed design of these functions was realized on Hyperledger Fabric blockchain platform by writing and deploying smart contracts. The information in the blockchain was visualized based on the HTTP server, which was established on the server-side JavaScript, and the corresponding front-end page in jQuery. The goals of system design can be summarized into three points: 1. According to the traditional evaluation process of online education and teaching, design the realization logic for basic system functions, such as user registration, user login, department management, historical data or evaluation query records, self and mutual evaluation, and management of student and teacher authorities. 2. Design the clients for the four kinds of users of the system: student, teacher, visitor, and administrator, and create the identity management chaincode for each kind. Meanwhile, design and write the chaincodes for the management of evaluations, portfolio, and access authorities. 3. During system implementation, build an HTTP server based on the completed chaincodes, call the SDK APIs of different chaincodes by the server-side JavaScript to save and modify the data stored in blockchain, and compile the compatible front-end page in jQuery to display the query and operation results.

System boundaries and users
The system boundaries of the evaluation system were defined as the functional structures that can be operated by the four kinds of users: student, teacher, visitor, and administrator. Specifically, each school or employer was defined as the largest organization Org in Hyperledger Fabric blockchain, and the departments in the school were defined as Peer nodes. In each Peer node, the clients were divided into four types: student client Client-ST, teacher client Client-TE, visitor client Client-TO, and administrator client Client-MA. The boundaries and user relationships in e-Portfolio evaluation system are presented in Figure 2.
As shown in Figure 2, our evaluation system consists of all clients in a department Peer 1 of two schools Org1 and Org2, and one employer Org3. All users are clustered in the same channel Channel1 (dashed circle), including teachers, employer staff, department administrators, students, and parents. Since students and parents are users of the client registered by any of the largest organizations in the channel, the evaluation data in the e-Portfolio of each student can be shared whether the student transfers to another school or goes to work upon graduation. Student use case: In the evaluation system, the student client Client-ST has the right to control and query its e-Portfolio, but does not have the right to add new files or modify old files. A typical use case of student is shown in Figure 3.  Upon entering the system, a student needs to register or fill in his/her username and login password in order to log in. The relevant information is written into the corresponding chaincodes of the blockchain platform. Before the student participates in course teaching, the department administrator should import the student information, such that the student could add his/her basic information (e.g., name and student number) into the to-do list.
After login, the student could query the historical records of self and peer evaluation and score trend in his/her e-Portfolio, and realize the following operations during course participation: Data query, resource retrieval, file upload and download, self and peer evaluation, as well as communication and discussion.
Teacher use case: In the evaluation system, the teacher client Client-TE mainly manage and evaluates student e-Portfolio through such operations as creating course evaluation records, querying historical evaluations and scores of students, as well as creating and saving new files. During course teaching, the teacher could also release notifications, manage and evaluate assignment and scores, display assignment and work, recommend resources, and organize examination and assessment. A typical use case of teacher is shown in Figure 4. Upon entering the system, a teacher needs to register or fill in his/her username and login password in order to log in. The relevant information is written into the corresponding chaincodes of the blockchain platform. After login, the teacher can view the to-do list of the department. The teacher can create n evaluation records for each student, using the student's username as the index. Then, he/she needs to request the department administrator to fill in the authorization code for the new electronic file.
After the authorized by the administrator, the teacher could obtain the authorization code by refreshing the evaluation records, and use the code to view the historical records in the student e-Portfolio. Based on various information (e.g., participation in course teaching), the teacher will create a new e-Portfolio for each student, make evaluations, and save the evaluations in the e-Portfolio, along with the evaluation records of the teacher and department. Visitor use case: In the evaluation system, the visitor client Client-TO is configured primarily for parents, and school/employer staff. A typical use case of visitor is shown in Figure 5. The visitor client Client-TO only has the right to inquire about student e-Portfolio, in addition to the query and evaluation of assignment and work, as well as communication and interaction in course participation. A visitor could request the authorization code for accessing e-Portfolio from the administrator and student at the same time. Once authorized, the visitor could view the historical data in the student e-Portfolio with the code.
Administrator use case: In the evaluation system, the administrator client Client-MA is mainly responsible for handling the information and authorities of multiple users, updating and maintaining system resources, and updating the system. A typical use case of administrator is shown in Figure 6. The administrators can manage the list of teachers in the department, and serve as the liaison between teachers and students.

Structural design of the system
The functional realization logic determines the design orientation of the system. Figure 7 provides the framework of functional realization logic for the e-Portfolio evaluation system. Obviously, the framework encompasses an application layer, a functional realization logic layer, and a data access layer.
Among them, the application layer, consisting of jQuery front-end pages developed based on Hyperledger Fabric, supports human-computer interaction. Different navigation bars are provided for different users to guide their operations.
Targeting the specific operation of users, the functional realization logic layer was designed based on the backend of Hyperledger Fabric. This layer realizes a variety of functions, including the management of registration and login information, e-Portfolio management, evaluation record management, department management, course education and teaching process management, and department review.
In the data access layer, the blockchain data are accessed and modified by calling chaincodes of each kind of user on the jQuery middleware.

System workflow
For clarity, the functional demand of the system was realized in four phases: initialization, course education and teaching process, process evaluation, and evaluation  As shown in Figure 8, the four kinds of users realize interaction with Hyperledger Fabric blockchain data, using their chaincodes.

Chaincode design
Considering the complexity of the e-Portfolio evaluation system, this paper designs 7 chaincodes that meet the requirements of the evaluation system and could execute a segment of functional realization logic, according to the use cases of the four kinds of users. Each kind of user operates at the front-end page. Then, the HTTP server responds to their operations, and the corresponding chaincodes are called, and fed back to the front-end page. Figure 9 presents the associations between the designed chaincodes.

Curriculum process evaluation manager chaincode (CPEM_C):
The CPEM_C mainly enables the department administrator to manage teacher evaluations and target students. The data structure and functions of CPEM_C are described in Tables 1 and  2

Evaluation record manager chaincode (ERM_C):
The ERM_C mainly enables the teacher to create the course process evaluation record for each student. The data structure and functions of ERM_C are described in Tables 3 and 4, respectively.  Table 4. The functions of ERM_C

Function Description
Evaluation record management •Before course process evaluation: the teacher creates an evaluation record indexed by student ID.
•After course process evaluation: The teacher deletes the evaluation records of the target students. Adding authorization code Department administrator fills in the authorization code of the new e-Portfolio for the teacher. Viewing authorization code Teacher receives and views the authorization code.

Information manager of student course participation process chaincode (IMSCPP_C):
The IMSCPP_C mainly manages the student participation in course teaching. The data structure and functions of IMSCPP_C are described in Tables 5  and 6, respectively.  The student enters his/her basic information to register, and create an account indexed by his/her ID.

Student login
During login, the student checks whether the login information matches the registered information.

Personal information modification
The student modifies the basic information entered during registration.
Information records of student participation in course teaching •Query course data; •Retrieve course resources; •Upload and download assignment or work; •Conduct self or peer evaluation of learning effect of each teaching link; •Perform communication and discussion.

Information manager of teacher course teaching process chaincode (IMTCTP_C):
The IMTCTP_C mainly manages the teaching activities in class. The data structure and functions of IMTCTP_C are described in Tables 7 and 8, respectively.

Visitor access to archives manager chaincode (VAAMC_C):
The VAAMC_C mainly enables parents, and school/employer staff to access student electronic files. The data structure and functions of VAAMC_C are described in Tables 9 and 10, respectively.  The visitor enters his/her basic information to register, and create an account indexed by his/her ID. Visitor login During login, the visitor checks whether the login information matches the registered information. Department administrator adding authorization code Department administrator gives the visitor the authorization code to access student e-Portfolio. Student adding authorization code The student gives the visitor the authorization code to access his/her e-Portfolio. Visitor checking authorization code The visitor receives and views the authorization code.

Authority and updates manager of student electronic archives chaincode (AUMSEAC_C):
The AUMSEAC_C mainly handles the authorization and file update information during the management of student e-Portfolio. The data structure and functions of AUMSEAC_C are described in Tables 11 and 12, respectively.

Creation manager of student electronic archives evaluation chaincode (CMSEAE_C):
The CMSEAE_C mainly enables the teacher to create a new electronic file for each student about the course. The data structure and functions of CMSEAE_C are described in Tables 13 and 14, respectively.  File query by student The student queries the details of the electronic file, using file ID and authorization code.

Software Performance Verification
The proposed e-Portfolio evaluation system, which is based on Hyperledger Fabric blockchain platform, was constructed, and tested on Linux virtual machine service. The hardware parameters of the server computer are as follows: Intel Core i5-8500 processor, 24G memory, 1T storage, and Ubuntu-16.04 operating system. The Hyperledger Fabric blockchain platform is of the version V1.4.3, and the database is MySQL 5.7.24. After testing the functions of each module, the software performance of the system was verified through tests.
The proposed e-Portfolio evaluation system adopts a pluggable architecture. The blockchain network is non-adversarial by default, aiming to improve the consensus efficiency. The Raft algorithm, which includes two steps of leader election and log replication, was selected as the consensus algorithm. The performance of the blockchain network was measured by two key indices, namely, network throughput and delay, using the Hyperledger's official tool Caliper.
The Raft algorithm was compared against the Practical Byzantine Fault Tolerance (PBFT) algorithm provided by the platform. Figure 10 displays the relationships between time consumption and the number of client nodes of the two algorithms. It can be seen that the time consumptions of both algorithms increased with the number of nodes. But Raft algorithm consumed shorter time than PBFT, because it could reach a consensus in one round of election. Figure 11 shows the network throughput trends of PBFT and Raft to reach a consensus in response to 400 requests. With the growing number of client nodes, the network throughputs of the two algorithms changed from slight oscillation to gradual decline. The network throughput of Raft declined faster than that of PBFT. The main reason is that Raft uses idle communication resources of peer nodes, which generates more network throughput overhead. Figure 12 shows the network delays of PBFT and Raft to reach a consensus in response to 400 requests, at different number of client nodes. When there were fewer than 17 client nodes, Raft had a relatively stable network delay of about 17.37s, which is shorter than that of PBFT. With the growing number of nodes, the network delays of both algorithms increased linearly, but Raft always had the shorter network delay. Figure 13 shows the variations in the network throughputs of the two algorithms with the changes in the number of requests, in the presence of 10 client nodes. It can be seen that PBFT and Raft witnessed a linear growth in network throughput with the increase in the number of requests, when that number was below 220 and 280, respectively; the peak communication volumes of PBFT and Raft were 152.3TPS and 163.2TPS, respectively. The throughput of Raft was 6.5% larger than that of PBFT. Figure 14 shows the variations in the network delays of the two algorithms with the changes in the number of requests, in the presence of 10 client nodes. It can be seen that the network delays of both algorithms increased with the number of requests. However, Raft had shorter network delay than PBFT, a sign of relatively good network performance.

Conclusion
This paper designs a blockchain-based e-Portfolio evaluation system. Firstly, the functional demand of the system was discussed for four kinds of users: student, teacher, visitor, and administrator. The discussion was followed by system modular design. Based on the design goals, the system boundaries and users were defined, the relationships between and clients of users were developed, and a sequence diagram was plotted for functional demand realization. Next, 7 chaincodes that meet system requirements were designed, and the modules of our system were subject to functional test. Finally, the software performance of our system was verified. Test results show that our system has great advantages in both network throughput and network delay.