Autoren:
(1) Xiyu Zhou, Fakultät für Informatik, Universität Wuhan, Wuhan, China;
(2) Peng Liang, Fakultät für Informatik, Universität Wuhan, Wuhan, China;
(3) Zengyang Li, Fakultät für Informatik, Central China Normal University, Wuhan, China;
(4) Aakash Ahmad, School of Computing and Communications, Lancaster University Leipzig, Leipzig, Deutschland;
(4) Mojtaba Shahin, School of Computing Technologies, RMIT University, Melbourne, Australien;
(4) Muhammad Waseem, Fakultät für Informationstechnologie, Universität Jyväskylä, Jyväskylä, Finnland.
Verbessern Sie die Kompatibilität zwischen verschiedenen IDEs und Editoren und vereinfachen Sie die Konfiguration von Copilot. Den Ergebnissen von RQ1 und RQ2 zufolge sind Kompatibilitätsprobleme die zweitgrößte Kategorie, und Editor-/IDE-Kompatibilitätsprobleme sind die Ursache, die zu vielen Nutzungsproblemen führt. Auch aus Anwendersicht haben wir viele Diskussionen über die Details im Zusammenhang mit der Konfiguration und den Einstellungen von Copilot beobachtet, was Modify Configuration/Setting zur am zweithäufigsten verwendeten Lösung macht. Darüber hinaus ist eine unsachgemäße Konfiguration/Einstellung die fünfthäufigste Ursache für Probleme. Basierend auf den Ergebnissen glauben wir, dass eine Verbesserung der Kompatibilität und eine Vereinfachung des Konfigurationsprozesses von Copilot für Benutzer ihre Erfahrung erheblich verbessern können. Daher kann das Copilot-Team detailliertere Installations- und Konfigurationsrichtlinien anbieten, benutzerfreundliche Konfigurationsoptionen bereitstellen und regelmäßige Updates und Wartungsarbeiten durchführen.
Es sind mehr Anpassungsoptionen erforderlich, damit Benutzer das Verhalten von Copilot an ihren eigenen Arbeitsablauf anpassen können. Unter den 123 FUNKTIONSANFRAGEN haben wir 52 Fälle solcher Anfragen identifiziert, das Verhalten von Copilot in verschiedenen Aspekten anzupassen, was etwa 50 % ausmacht. Zu den häufigsten Anfragen gehören die Angabe der Dateitypen oder des Arbeitsbereichs, in denen Copilot automatisch ausgeführt wird (11), das Ändern der Tastenkombinationen zum Akzeptieren von Vorschlägen (10), das zeilen- oder wortweise Akzeptieren von Codevorschlägen (9) und das Verhindern von Copilot von der Generierung bestimmter Arten von Vorschlägen (z. B. Dateipfade, Kommentare) (3) und der Konfiguration von Textfarbe und Schriftarten (3). In der Studie von Zhang et al. [19] wiesen sie auch darauf hin, dass es von wesentlicher Bedeutung ist, Benutzern die Anpassung von Vorschlägen zu ermöglichen. Darüber hinaus können wir anhand der SCHLECHTEN FUNKTIONALITÄTSERFAHRUNG (z. B. Wahrnehmung der automatischen Vorschläge von Copilot als ablenkend, was auch in der Studie von Bird et al. [20] erwähnt wird) erkennen, dass die Notwendigkeit besteht, das Verhalten von Copilot anzupassen. Den Ergebnissen zufolge glauben wir, dass das Ausmaß, in dem sich das Verhalten von Copilot gut an die individuellen Codierungsgewohnheiten der Benutzer anpassen kann, ein wesentlicher Faktor für ihre Entscheidung für die Verwendung von Copilot ist. Daher ist die Bereitstellung flexibler und benutzerfreundlicher Anpassungsmöglichkeiten von großem Vorteil. Darüber hinaus ist es sinnvoll zu untersuchen, wie KI-Codierungstools mit Benutzern interagieren sollten, und diese Tools in die praktische Entwicklung zu integrieren.
Benutzer benötigen mehr Möglichkeiten, die von Copilot generierten Inhalte zu steuern. Aus Tabelle IV ist ersichtlich, dass die meisten Lösungen auf Nutzungs- und Kompatibilitätsprobleme abzielen, während es nur wenige Lösungen für Probleme mit dem Inhalt von Vorschlägen gibt. Von 69 Inhaltsvorschlägen haben wir nur 5 Lösungen identifiziert, was darauf hindeutet, dass es für Benutzer möglicherweise schwierig ist, ideale Lösungen für die von Copilot vorgeschlagenen Inhaltsprobleme bereitzustellen. Dies ist teilweise darauf zurückzuführen, dass Benutzer neben Code und Codekommentaren an sich nur begrenzte Möglichkeiten haben, die Codegenerierung von Copilot zu steuern. Daher sind zusätzliche Methoden zur Behebung von Inhaltsproblemen bei Vorschlägen erforderlich, die es Entwicklern beispielsweise ermöglichen, mit Copilot zu interagieren und den generierten Code zu iterieren, bis der Code den Erwartungen der Entwickler entspricht.
Verbessern Sie die Qualität des von Copilot generierten Codes. Bei Problemen mit dem Inhalt von Vorschlägen sind die vorherrschenden Typen VORSCHLÄGE VON NIEDRIGER QUALITÄT (27) und UNSINNIGER VORSCHLÄGE (13). Das Experiment von Imai et al. [9] fanden heraus, dass Copilot im Vergleich zur Programmierung mit menschlichen Paaren zwar in der Lage ist, eine erhebliche Menge an Code zu generieren, aber auch zu mehr Codelöschungen während des Tests führte, was die Notwendigkeit einer Verbesserung der Codequalität von Copilot unterstreicht. Bird et al. [20] stellten fest, dass Copilot nach Angaben von Benutzern gelegentlich eigenartige und unsinnige Codevorschläge anbietet, von denen einige möglicherweise persönliche Informationen enthalten. Darüber hinaus glauben wir, dass dies in erster Linie darauf zurückzuführen ist, dass Benutzer Schwierigkeiten haben, Probleme dieser Art zu erkennen, und dass sie weniger geneigt sind, sie zu melden, obwohl es bei „INSICHERER VORSCHLAG“ und „WENIGER WIRKSAMER VORSCHLAG“ jeweils nur zwei Fälle gibt. Pearce et al. [6] fanden heraus, dass von den 1.689 von Copilot generierten Codefragmenten 40 % anfällig waren. Angesichts der aufeinanderfolgenden Iterationen von Copilot ist es unerlässlich, die Qualität seiner Vorschläge regelmäßig zu bewerten.
Die Verwendung von Copilot verändert den Codierungsprozess und erhöht den Zeitaufwand für die Überprüfung von Codevorschlägen, wodurch Codeerklärungen sehr wichtig werden. In unserer Forschung ist UNVERSTÄNDLICHER VORSCHLAG (8) das vierthäufigste Problem mit dem Inhalt von Vorschlägen. Einige Benutzer erwähnten die Probleme mit übermäßig langen Codevorschlägen, die zu einer eingeschränkten Lesbarkeit führten. Dies weist darauf hin, dass es zeitaufwändig sein kann, die Codelogik zu verstehen und ihre Richtigkeit zu überprüfen, wenn Copilot relativ komplexe Vorschläge liefert oder wenn Benutzern in einer bestimmten Domäne keine Programmiererfahrung fehlt. Die Studie von Wang et al. [21] zeigt, dass die Verwendung von KI-generiertem Code zu einem erheblichen Bewertungsdruck führen kann. Daher glauben wir, dass KI-Codierungstools (z. B. Copilot) die Verteilung der Zeit, die für verschiedene Aufgaben in der Softwareentwicklung aufgewendet wird, verändern werden. Wir haben vier Funktionsanfragen im Zusammenhang mit der Codeerklärung beobachtet und das Copilot-Team legt großen Wert auf die Erweiterung dieser Funktionalität. Die in Copilot
Berücksichtigen Sie geistiges Eigentum und Urheberrecht. Die Anzahl der Urheberrechts- und Richtlinienprobleme ist etwas höher als erwartet, und wir haben während des Datenextraktionsprozesses viele Bedenken sowohl von Benutzern als auch von GitHub-Repository-Besitzern festgestellt. Vögel et al. [20] bemerkte auch einige Diskussionen darüber, wie das Urheberrecht auf die Codevorschläge von Copilot angewendet wurde. Das Ziel unserer Forschung besteht nicht darin, eine Bewertung dieser Probleme und des Nicht-Open-Source-Charakters von Copilot bereitzustellen, da es sich um ein komplexes Problem handelt, das von verschiedenen Faktoren wie dem Ziel, den Zielbenutzern und dem Geschäftsmodell von Copilot abhängt. Wir sind jedoch davon überzeugt, dass das Copilot-Team Maßnahmen ergreifen kann, um diese Probleme anzugehen, indem es stabile und qualitativ hochwertige Dienste zur Codegenerierung bereitstellt und gleichzeitig die Privatsphäre und das geistige Eigentum der Benutzer schützt.
Dieses Papier ist