MS

M.A. Steenbergen

info

Please Note

2 records found

How Programming Experience Affects Participation in Student Software Teams and Leveraging Repository Insights for Monitoring Participation

Group work is an integral part of Computing Education, but introduces problems when students either fail to participate enough or dominate, not allowing their team members to contribute. This research focuses on identifying the participation level of the students, allowing the teacher or teaching assistant who monitors the group throughout the project to identify and resolve problems. The software metrics that can be extracted from the code repository are often used in this monitoring process. Therefore, this study investigates the correlation between the software metrics and the participation level. Furthermore, this study aims to understand the correlation between programming experience and the participation level in the project.

To this end, four project groups were observed over several weeks, followed by interviews with their teaching assistants. A questionnaire assessed each student’s programming experience and collected data about confounding factors. A selection of software metrics to collect was made based on the literature and the teaching assistant interviews. Per contributor, we collected and analysed the number of lines of code, amount of issue comments, amount of MR comments, amount of commits, cumulative cyclomatic complexity, maximum cyclomatic complexity, amount of pipelines triggered, and pipeline failure ratio.

Of the twenty students in the observed groups, eight were classified as high participation, and six were identified as low participation. No significant correlation was found between participation level and gender, age, nationality, GPA, or group familiarity. Programming experience also did not predict participation, suggesting that a lack of experience is not a valid reason for low engagement. Furthermore, the number of lines of code students wrote, the number of commits students made, and the number of comments that students posted on merge requests are correlated with the participation level. This means these metrics can be used for monitoring student software groups and can indicate more than just code contribution. ...
Self-sovereign identity (SSI) provides users of the internet control over their own data by letting them store it on their own device or in a decentralized way, such as on a blockchain. The Super App is an SSI application currently under development by the Delft Blockchain Lab, but it still lacks one of the core features of SSI, which is interoperability. In SSI applications, the user will be in control over their identity when an issuer attests to it. Services can request confirmation about the identity of a user through a verifiable claim, to which the user can reply with this attestation. This research first focuses on building a claim portability framework, which means these verifiable claims and attestations can be communicated between the Super App and other applications. This framework is designed using a public key infrastructure, as that is already present in the Super App. Before sending a claim or attestation, it is signed by the sender and encrypted with the public key of the intended receiver for security purposes. The Super App currently lacks infrastructure to assign issuers of attestations, so a Trusted Issuer registry will have to be stored somewhere in the network. To contest the adoption problem that currently exists in many SSI solutions, the usability has been evaluated as it plays a significant part in adoption. For this, some mock-up user interfaces were created and evaluated by users through a survey and some suggestions were made for improvements. ...