Submission Deadline-08th July 2024
June 2024 Issue : Publication Fee: 30$ USD Submit Now
Submission Deadline-20th July 2024
Special Issue of Education: Publication Fee: 30$ USD Submit Now

An Algorithmic Approach in the Development of Student-Project Allocation Software

An Algorithmic Approach in the Development of Student-Project Allocation Software

Omogbhemhe Izah Mike

Department of Computer Science, AAU, Ekpoma, Benin, Nigeria

DOI: https://doi.org/10.51584/IJRIAS.2024.90221

Received: 23 January 2024; Revised: 09 February 2024; Accepted: 13 February 2024; Published: 16 March 2024

ABSTRACT

The traditional way of allocating project/seminar to students in the higher institution needs to be reconsidered since project/seminar research writing is a sensitive aspect of student education in the higher institution. At the beginning of graduating session or semester, the students are required to write project/seminar on their field of study as part of requirement to complete the academic studies. Each student is allocated to a supervisor who will supervise the academic project/seminar to enhance correctness and academic acceptability of the project/seminar work. Normally in some institution, the allocation of students to the supervisor is done by the head of academic department/Unit or the project coordinator. This approach is characterized with two or more problems. Biasedness is one in the sense that the department head or the project coordinator may have interest in some students either due to academic performance of such a students or personal reasons and thereby allocate such student to him/herself. The time wastage in the allocations in order to avoid double allocation is another serious problem of the manual system. Hence, this paper presents an algorithmic approach to ameliorate the identified problems in project allocation. Using the algorithm, a system was implemented which allocated students to project supervisor, effortlessly and seamlessly.

Keywords: Algorithmic, Student Project, System, Allocation

INTRODUCTION

In many tertiary institutions in the country, students seek a project in a given field of specialty as part of the upper level of their degree programme (Stanley, 2016). Usually, a project/seminar can be filled by at most one student, though in some cases a project/seminar is suitable for more than one student to work on simultaneously. To give students something of a choice, there should be as wide a range of available projects as possible, and in most cases the students number always varies with supervisors available. Each student has preferences in terms of area of interest in a particular field, whilst a lecturer or a supervisor will as well have preferences and in-depth knowledge in a particular domain or area of specialization (Mahmoud and Ahmed, 2011). Each student has preferences over the available projects that he/she finds acceptable, whilst a lecturer will normally have preferences over the students that he/she is willing to supervise. There may also be upper bounds on the number of students that can be assigned to a particular project, and the number of students that a given lecturer is willing to supervise. In this paper we consider the ways of allocating student project in our various institutions. For undergraduate and postgraduate students in higher institutions of learning, research projects are a graduation requirement which usually have high credit units. Project and seminar supervisor allocation is a resource allocation problem that needs to be solved for students and lecturers. In order to ensure that the research project/seminar is enjoyable and fruitful for the students, there is need to consider their preferences for supervisors. Lecturers do not usually have an input in the choice of students because they are most likely to select the bright students, causing the less-than average students to be disadvantaged (Ryder, et al, 1999). In achieving a suitable solution, constraints such as number of students per lecturer, the number of lecturers per student, or the number of students per project topic need to be considered (Pudaruth, 2013). When students are requested to rank potential supervisors, they are likely to favorably rank lecturers whose courses they enjoyed taking or those whose areas of research interest they like. Thus, it is possible that some popular lecturers are oversubscribed. On the part of the lecturers, they may have a fixed number of slots for project students, based on their workloads. A head of department/ departmental chair as well as professors having many graduate students may be required to supervise fewer undergraduates than other lecturers. However hard the research project coordinator tries, it is difficult, if not impossible, to manually match supervisors to students such that all parties feel that they have been treated fairly.  We refer to the problem of assigning students to projects and seminar supervisors to these preference lists and capacity constraints as the Student-Project-Seminar Allocation problem (SPSA). The basic Student Project-Seminar Allocation (SPSA) problem seeks to allocate projects and Seminar to students, taking into account the students’ preferences for projects/seminars. There are many variations of the SPSA. Sometimes, lecturers are additionally assigned to projects/seminars. These lecturers may have preferences over the students and/or the projects/seminars. Projects and Seminar may have capacities, i.e., the number of students that can participate in each project/seminar. Similarly, lecturers’ capacities refer to the number of projects/seminar each lecturer may be involved in.  Kwanashie (2014) designed algorithms to solve the SPA problem in which each student can be assigned to at most one project and there are constraints on the maximum number of students that can be assigned to each project and lecturer. The model takes into consideration lecturer upper and lower quotas. The optimal solution was obtained by applying the Ford-Fulkerson algorithm for finding the maximum flow in a network

According to Abraham, et al (2003), they described a SPA problem in which students have preferences over available projects and lecturers have preferences over students. The allocation is based on preference lists and capacity constraints. A linear-time algorithm was devised for finding a student-optimal stable matching using a sequence of apply operations.

The SPA problem allows students’ preferences over projects and lecturers’ preferences over students, as well as lecturers’ and projects’ capacity constraints. Two algorithms based on constraint programming technique were presented for finding stable matchings. The outcome of the first algorithm is a student-optimal stable matching, such that each student obtains the best project that is available in any stable matching while the outcome of the second algorithm is a lecturer-optimal stable matching in which each lecturer obtains the best students that are available in any stable matching. SPA is an example of a two-sided matching problem, a large and very general class of problems whose input includes a set of participants that can be partitioned into two disjoint sets A and B (in this case A is the set of students and B is the set of projects), and we seek to match members of A to members of B, i.e. to find a subset of A × B, subject to various criteria.

Both historical evidence and game-theoretic analysis indicate that participants involved in two-sided matching problems should not be allowed to construct an allocation by approaching one another directly and making ad hoc arrangements. Rather, the allocation process should be automated by means of a centralised matching scheme. Moreover, it has been convincingly argued that, when preference lists exist on both sides, the key property that a matching constructed by such schemes should satisfy is that of stability. A formal definition of stability follows, but informally, a stable matching M guarantees that no two participants who are not matched together in M would rather be matched to one another than remain with their assignment in M. Such a pair of participants could come to a private arrangement that would undermine the integrity of the matching (Manlove, and O’Malley, 2007).

The National Resident Matching Program (NRMP) in the US is perhaps the largest and best-known example of a centralised matching scheme (NRMP, 2003). It has been in operation since 1952, and currently handles the allocation of some 30,000 graduating medical students, or residents, to their first hospital posts, based on the preferences of residents over available hospital posts, and the preferences of hospital consultants over residents. The NRMP employs at its heart an efficient algorithm that essentially solves a variant of the classical Hospitals/Residents problem (HR) (Stanley, 2016). The algorithm finds a stable matching of residents to hospitals that is resident-optimal, in that each resident obtains the best hospital that he/she could obtain in any stable matching. To give students something of a choice, there should be as wide a range of available projects as possible, and in any case the total number of project places should not be less than the total number of students. Typically, a lecturer will also order a number of projects but does not necessarily expect that all will be taken up by students (Abraham, et al 2003). Each student has preferences over the available projects that they find acceptable, whilst a lecturer will normally have preferences over the students that he or she is willing to supervise. There may also be upper bounds on the number of students that can be assigned to a particular project, and the number of students that a given lecturer is willing to supervise. With the advancement in file saving and file retrieval system, an institution cannot afford to be ignorant of the basic tool, which is the driving force behind technological oriented administration (Anwar and Bahaj, 2003). A lot can be achieved if an institution should have a well-organized management system. Students project can easily be allocated to each or group of students without the problem of delayed project allocation from the supervisor or conflict of topic between two individuals or group of students in the same department. Students update can be easily accessed if the database system is enhanced. This project considers the ways of allocating student project in the university.

The traditional way of allocating project/seminar to students in our higher institution needs to be reconsidered since project/seminar research writing is a sensitive aspect of student education in the higher institution. At the beginning of graduating session or semester, the students are required to write project/seminar on their field of study as part of requirement to complete the academic studies. Each student is allocated to a supervisor who will supervises the academic project/seminar to enhance correctness and academic acceptability of the project/seminar work. Normally in some institution, the allocation of students to the supervisor is done by the head of academic department/Unit or the project coordinator. There after the student meet their supervisor and the project/seminar topic is given to the student to work on or the student himself submit list of topics to the supervisor and the supervisor choose the prefer one. This approach is characterized with two or more problems. One in the sense that the department head or the project coordinator may have interest in some students either due to academic performance of such a students or personal reasons and thereby allocate such student to him/herself. Conflict of Interest is another factor Sometimes when a topic is given to a student by his supervisor, the student may not be able to cope due to the research interest or the supervisor may not have favorite topic from the list of topics submitted by the students and thereby asking the student to look for another list of topics which eventually leads to waste of time and there may not be research interest agreement between the two.

REVIEW OF RELEVANT LITERATURE

In the modern age that we live in, rapid changes in information and communication technologies (ICT) have become common in every field of our lives. Teaching and learning are two dimensions of the academic world and both depend on lecturers’ capabilities, therefore, an effective lecturer has been conceptualized as one who produces desired outcomes in the course of his duty as a lecturer. Upon the observed deterioration in the academic accomplishments, attitude, and values of students, one therefore wonders whether the high failure rates and the poor quality of the students are not a reflections of the teaching quality or lack of lecturer’s competencies.

Matzler&Woessmann (2010) studied the relationship between lecturer competencies and students’ outcome and discovered that the teaching quality was directly related to students’ achievement and it was very important for lecturers to adopt strong teaching competencies in order to deliver quality teaching. One of the lecturer competencies they specifically mentioned in their study was lectures subject knowledge because without having subject knowledge, the lecturer is unable to comprehend the students with relevant knowledge and skills required for that particular subject. Therefore, the subject knowledge is essentially important for lecturers so that students could meet the desired learning outcome and become satisfied with their learning.

For undergraduate and postgraduate students in higher institutions of learning, research projects are a graduation requirement which usually have high credit units. Project supervisor allocation is a resource allocation problem that needs to be solved for students and lecturers. In order to ensure that the research project is enjoyable and fruitful for the students, there is need to consider their preferences for supervisors. Lecturers do not usually have an input in the choice of students because they are most likely to select the bright students, causing the less-than average students to be disadvantaged (Ryder, et.al, 1999). In achieving a suitable solution, constraints such as number of students per lecturer, the number of lecturers per student, or the number of students per project topic need to be considered (Pudaruth, et al, 2013). When students are requested to rank potential supervisors, they are likely to favorably rank lecturers whose courses they enjoyed taking or those whose areas of research interest they like. Thus, it is possible that some popular lecturers are oversubscribed. On the part of the lecturers, they may have a fixed number of slots for project students, based on their workloads. A head of department/departmental chair as well as professors having many graduate students may be required to supervise fewer undergraduates than other lecturers. However hard the research project coordinator tries, it is difficult, if not impossible, to manually match supervisors to students such that all parties feel that they have been treated fairly.

The SAP is concerned with allocating project supervisors to students taking into account the students’ preferences for lecturers as well as lecturer supervision capacities. For example, the head of department could have a supervision capacity of three students due to the responsibilities of his/her office, while a visiting lecturer could have a capacity of two students. All other lecturers may have supervision capacities of say, five students each. The students rank the lecturers according to preference; a ranking of 1 for a lecturer indicates that the lecturer is the most preferred supervisor for a given student, a ranking of 2 shows that a lecturer is the second most preferred for a given student, and so on. A lecturer can supervise several students, but each student can be supervised by only one lecturer. Conflicts arise when the number of students who have a given lecturer as their first choice exceeds the lecturer’s supervision capacity.

Allocation of Resources

Resource allocation is the distribution of the available resources in an economical manner. The allocation of a project is like a subset of the resource allocation problem. The allocation of projects should be done fairly for both the lecturers and students. The resources are the projects, students and academics. The same academics act as both supervisors and examiners but for different projects. For every undergraduate student of the University for Development Studies (UDS), a final year project (FYP) which has to be taken. Any project undertaken carries six credits and reports must be submitted for marking. Every year, the computer science department in the university experiences problems in allocating projects to final year students. These problems are mainly due to the fact that year after year, the number of students keeps increasing which leads to an increase in the complexity of the allocation of the projects. There are also constraints such as supervisors’ workload which plays an important role in the allocation of projects. All supervisors should have more or less the same number of projects to supervise. The lecturers need to propose a certain number of project topics for all the three programs. According to Augustsson and Jaldemark (2012), the supervisor(s) shall monitor, support and direct the student’s work and progress soon after the allocation of project/dissertation titles.  Bouki (2007) and Augustsson (2012) highlighted the responsibilities of students in handling their research work.  According to Stanley (2016), system called Project List was proposed by Loughborough University UK. This system was intended to first manage easily a large list of dissertation projects, allocate them to students with minimum overhead by avoiding as much as possible manual solutions that frequently involve multiple documents and spreadsheets, flurries of emails, and lots of fiddly details to keep track of. It also aimed at simplifying the supervision process and bring everything together in a single place by easing remote accessibility to academics and students at any time or place.

The Case Study of an Online Assignment Submission at UOM by Ramnarain-Seetohul (2012) explained how the assignments given to the students can be managed online. The system also showed the graph of the feedback given to that system that how friendly it proved by the students as well as the teachers.

The article titled “Web Based Student Information Management System” by Bharamagoudar et al., (2013) describes that how the maintenance of the record of the students’ information can be done easily at one place thus giving an idea about maintaining all of the project related tasks at one single page. Also, it tells about maintaining the progress report of the students based on their work performance.

A multi-objective approach for the project allocation problem by Pudaruth et al., (2013) describes that the system performs allocation of the project as well as allows academics to rate the projects. The project captured the preferences of examiners as well as students and allocates projects to them in order to maximize the number of students who get their first choice in their preference list.

Kazakov (2001) explains that supervisors have to submit a list of their proposals in a structured format to the secretarial staffs. A document with all project titles is then provided to students to take from. Students are allowed to meet the supervisors and discuss the projects later in the year. During these meetings, the supervisor elaborates on the skills required for the particular project. The final decision of selecting the project remains entirely on the student after taking advice from the supervisor. Since it is almost impractical for a supervisor to meet all the students twice, the allocation is normally done on an early attendance basis even though the student may not have all the appropriate skills for the project.

METHODOLOGY

The design of the system started with incorporating all of the data and procedures into functional program design. The methodology used in this project is Rational Unified →Process Methodology (RUP). In RUP, an iterative approach is used to produce the software product and this product is designed and built in a succession of incremental iterations which accelerates the development process. The programming languages used in the development of this project are;javascript, jquery and ajax, Mysql and PHP. Survey, interview and observation were the data gathering techniques used in this project. Similarly, BOOTSTRAPS was used for this development. It uses HTML, CSS and JavaScript (jQuery and Ajax) which greatly reduces the need of coding the front end of this software. Its goal in this system/paper was to design a responsive front end page. The server scripting language PHP was used as part of the application layer to perform operations as instructed by the user. PHP integrates seamlessly with MySQL and hence it is trivial to parse and send queries to the SQL database. The majority of web servers run a PHP server as standard, so no additional services will be required to install and operate the software when employed into any existing systems. The database management system used was MySQL and hence SQL queries were sent to the database to retrieve and insert the necessary data. A relational database such as MySQL was chosen as this allows for efficient storage of data and avoids unnecessary data duplication that is associated with flat-file databases. Hence the system algorithm is shown below.

Input:    L => Lis t of lecturers

               S => List of Students

Output: Ap => A dictionary mapping of student to project supervisors

               As =>A dictionary mapping of students to seminar supervisors

STEP I: start

STEP II: while (student Si is free {

                              For (I = 0, I ≤ len (L); I ++) {

                              If  li is over – allocated {

                                                            Skip (li)

                              }

                              }

                              }

                              Li = Si

                              End while

Return (As: {S → L})

Return (Ap: {S → L})

Step III: Stop

Description of the System

The system adopts the above algorithm in dividing the students to each supervisor. The division process is done in such a way that a particular student is not allocated to the same supervisor in both seminar and project as it is mostly practice in most Nigeria higher institutions of learning. The system picks a supervisor, allocate the student for project and check to be sure that such a student is not allocated to the same supervisor in the seminar section. The software is very careful to note that a particular student must not have the same supervisor in both seminar and project. In using the system, the operator must supply all the supervisors’ names and students’ names (uploaded by each student) to the system allocation module database. Then the system will divide all the students to each supervisor just with the help of a button click. A sample of the allocation is shown in figure 5.

System Execution and Testing

To execute the system, XAMPP and web browser is needed: XAMPPis an open source package which enables PHP and MySQL development on an apache server. Its goal in this paper is to develop the back end without subscribing to web hosting package. While web browser is a software used to locate, retrieve and display content on the world wide web. its goal in this paper is to interpret and display html, Css, JavaScript, ajax and other content on the web server.  The system provided an interface for the students to enter their preferences to the available SEMINAR/PROJECT and supervisor (project) to the available students.

The Student Registration Process

From figure 1 below, the student indicates his/her identity by clicking the button for register students and then fills the details on name column which contains 1-50 characters and the departments column, then registers it by clicking the register button. After this a comment is automatically displayed on the output console indicating the success or failure of the student’s registration.

Figure 1: Students Registration Interface

Lecturer Registration Process

Figure 2 above shows the registration process of the lecturer indicating his/her identity by clicking the button add lecturer and then fills the details on name column which contains 1-50 characters and the departments column, then registers it by clicking the register button. After this a comment is automatically displayed on the output console indicating the success or failure of the lecturer’s registration.

Figure 2: Lecturer Registration Interface

The Administrator

Figure 3 below shows the admin interface. The admin opens up the page by filling the correct information needing (username and password), and then proceeds. Figure 4 shows the system database outputs.

Figure 3: Admin Login Form

Figure 4: Show of System Database

Output screen after a successful allocation

Figure 5: Output screen after a successful allocation

CONCLUSION

Projects contain extremely valuable information since they report the results of first-hand research information conducted by students within any specific department. It is therefore important for a system to be developed and implemented in order to allow other researchers, students and academic staff, easy and prompt access to this information. The allocation of projects is part of a degree course for many tertiary institutions and before the allocation of projects to students is done, a series of steps need to be followed. Many constraints need to be taken into consideration to achieve a fair allocation. The allocation of project causes many problems as some constraints may not be satisfied. These problems emerge mainly due to the increasing number of students which leads to an increase in the complexity in the allocation of the projects. This paper has presented a project-supervision allocation system that allocates students to seminar/project supervisors without clashes. This goal has been achieved through developing a web-based automated allocation system. In the software, there are four major determinant; the student, the supervisor, the seminar and the project. The algorithm is very careful in handling these allocation determinants. The system will allocate a student to a particular project supervisor and make it compulsory that such a student is not allocated to the same supervisor for his /her seminar. There exist program modules in the software that do the checking as this is one of the main objectives of the system. After the implementation, the system was tested with some sample data of students and supervisors. The results (see figure 5) show that with the help of a web browser, the system could perform perfect project/seminar allocation without error or clashes.

REFERENCES

  1. Kwanashie A, Irving R. W, Manlove D. F, and Sng C. T. (2014). “Profile-based optimal matchings in the student/project allocation problem,” in Combinatorial Algorithms, Springer International Publishing,  2014, pp. 213-225.
  2. Anwar A. A. and Bahaj A. S. (2003). Student project allocation using integer programming. IEEE Transactions on Education, 46(3):359–367, 2003.
  3. Abraham D.J (2013): Two algorithms for the student-project allocation problem. Journal of Discrete Algorithms 5(1):pp. 73-90, 2007.
  4. Augustsson, G. and Jaldemark, J. (2012), Supervisors’ utterances in online supervision of first-year students’
  5. Bouki V. (2007) Undergraduate computer science projects in UK: what is the point? In: Kefalas, et al, (eds.) Proceedings of Informatics Education Europe II (IEEII 2007): Developments in South East Europe. SEERC, Thessaloniki, Greece, pp. 176-184. Cormen et al. Introduction to Algorithms, 2nd Edition. MIT Press and McGraw-Hill, 2001.
  6. Manlove D. F, and O’Malley G. (2008). “Student-project allocation with preferences over projects,” Journal of Discrete Algorithms, vol. 6 no. 4, pp. 553-560.
  7. Stanley M. (2016). A Two Year Case Study: Technology Assisted Project Supervision. Journal of the Higher Education Academy Engineering Subject Centre. 4(2).
  8. Mahmoud I. M and Ahmed H. A (2011). A Visual Implementation of Student Project Allocation
  9. Ryder J, Leach J, and Driver R(1999). “Undergraduate science students’ images of science,” Journal of Research in Science Teaching, vol. 36 no. 2, pp. 201-219, 1999.
  10. Pudaruth P, Bhugowandeen P, and Beepur V,(2013). A multiobjective approach for the project allocation problem,” International Journal of Computer Applications, vol. 69 no. 20, pp. 26-30, 2013.
  11. National Resident Matching Program NRMP (2003). Why the Match? Web document available at http://www.nrmp.org/whythematch.pdf.
  12. Kazakov. Co-ordination of student-project/seminar allocation. https://www-users.cs. york.ac.uk/˜kazakov/papers/proj.pdf, 2001.
  13. Matzler & Woessmann (2010). An Analyses on the Relationship between Lecturer and Students Competencies and Students Satisfaction. International Education Studies; Vol. 7, No. 1; 2014
  14. Ramnarain-Seetohul (2012) . A Case Study of an Online Assignment Submission System at UOM. World Academy of Science, Engineering and Technology, International Journal of Social, Behavioral, Educational, Economic, Business and Industrial Engineering
  15. Bharamagoudar S. R, Geeta R. B .Totad S.G, (2013). Web Based Student Information Management
    System. International Journal of Advanced Research in Computer and Communication Engineering
    Vol. 2, Issue 6

Article Statistics

Track views and downloads to measure the impact and reach of your article.

1

PDF Downloads

394 views

Metrics

PlumX

Altmetrics

Paper Submission Deadline