
Lähtekoodi Failikogu Analüüsimise, Struktureerimise ja Otsingu Infosüsteemi Loomine
Dokumentinformationen
Autor | Denis Volkov |
instructor | Andre Sääsk, Assistent |
Schule | Narva Kolledž |
Fachrichtung | Infotehnoloogiliste Süsteemide Arendus |
Dokumenttyp | diplomitöö |
Veröffentlichungsjahr | 2018 |
Ort | Narva |
Sprache | Estonian |
Seitenanzahl | 37 |
Format | |
Größe | 1.30 MB |
- tarkvaraarendus
- infosüsteemid
- lähtekoodi analüüsimine
Zusammenfassung
I. Einleitung
Die vorliegende Arbeit befasst sich mit der Entwicklung eines Informationssystems zur Analyse, Strukturierung und Suche von Quellcode-Sammlungen. Der Auftraggeber, ein Softwareentwicklungsunternehmen, benötigte ein System, das die Arbeit seiner Entwickler bei der automatisierten Suche und Analyse von Quellcode erleichtert. Die Notwendigkeit eines solchen Systems ergibt sich aus der Verarbeitung umfangreicher Quellcode-Sammlungen. Die Hauptziele der Arbeit umfassten die Entwicklung eines Subsystems zur Analyse des Quellcodes, die Generierung einer Datenbank und die Erstellung einer benutzerfreundlichen Benutzeroberfläche. Ein zentrales Anliegen war es, die Effizienz der Entwickler zu steigern, indem die Zeit für manuelle Suchvorgänge reduziert wird. Die Implementierung eines solchen Systems könnte die Qualität und Geschwindigkeit des Kundenservices erheblich verbessern.
1.1 Zielsetzung
Die Zielsetzung dieser Arbeit war es, ein System zu entwickeln, das den Anforderungen des Auftraggebers gerecht wird. Die Benutzeroberfläche sollte einfach zu bedienen sein und die Möglichkeit bieten, nach spezifischen Klassen und Methoden im Quellcode zu suchen. Die Implementierung sollte auf den Betriebssystemen Windows und MacOS funktionieren. Ein weiterer wichtiger Aspekt war die Darstellung der Suchergebnisse in einer hierarchischen Struktur, um die Navigation und Analyse zu erleichtern. Die Arbeit zeigt, dass die Entwicklung eines solchen Systems nicht nur die Effizienz steigert, sondern auch die Qualität der Softwareentwicklung verbessert.
II. Verwendete Technologien
Die Arbeit beschreibt die Technologien, die zur Umsetzung des Informationssystems verwendet wurden. Die Programmiersprache Java wurde gewählt, da sie plattformunabhängig ist und eine breite Unterstützung in der Softwareentwicklung bietet. Die integrierte Entwicklungsumgebung (IDE) Eclipse wurde für die Programmierung verwendet, während das Build-Automatisierungssystem Maven für die Kompilierung und das Management der Softwareprojekte zuständig war. Für die Versionskontrolle kam GitHub zum Einsatz, was eine effiziente Zusammenarbeit im Team ermöglicht. Die Testphase wurde durch die Verwendung der JUnit-Bibliothek unterstützt, die speziell für die Softwaretests in Java entwickelt wurde. Diese Technologien bilden die Grundlage für die Entwicklung eines robusten und effektiven Systems.
2.1 Agile Entwicklungsmethoden
Die Arbeit hebt die Bedeutung agiler Entwicklungsmethoden hervor, insbesondere Scrum und XP (Extreme Programming). Diese Methoden fördern eine iterative Entwicklung, die es ermöglicht, flexibel auf Änderungen in den Anforderungen zu reagieren. Scrum organisiert die Arbeit in Sprints, die eine kurze, fokussierte Entwicklungsphase darstellen. Dies ermöglicht es den Entwicklern, regelmäßig Fortschritte zu überprüfen und Anpassungen vorzunehmen. XP hingegen betont die Bedeutung von automatisierten Tests und der Zusammenarbeit im Team. Diese Methoden tragen dazu bei, die Qualität des Endprodukts zu sichern und die Effizienz des Entwicklungsprozesses zu steigern.
III. Ergebnisse und Ausblick
Die Ergebnisse der Arbeit zeigen, dass das entwickelte Informationssystem die Effizienz der Softwareentwicklung erheblich steigern kann. Durch die Automatisierung der Quellcodesuche und -analyse können Entwickler wertvolle Zeit sparen und sich auf die Verbesserung der Codequalität konzentrieren. Die Implementierung des Systems ermöglicht es, die gesammelten Daten effektiv zu nutzen und die Zusammenarbeit im Team zu fördern. Zukünftige Arbeiten könnten sich darauf konzentrieren, das System weiter zu optimieren und zusätzliche Funktionen zu integrieren, um den sich ständig ändernden Anforderungen der Softwareentwicklung gerecht zu werden. Die vorliegende Arbeit leistet somit einen wertvollen Beitrag zur Verbesserung der Softwareentwicklung und zur Unterstützung von Entwicklern in ihrer täglichen Arbeit.
3.1 Praktische Anwendungen
Die praktischen Anwendungen des entwickelten Systems sind vielfältig. Unternehmen können die Effizienz ihrer Entwicklungsprozesse steigern und die Qualität ihrer Softwareprodukte verbessern. Die Möglichkeit, Quellcode schnell zu analysieren und relevante Informationen zu extrahieren, ist besonders wertvoll in großen Softwareprojekten, wo der Überblick über den Code oft verloren geht. Die Implementierung eines solchen Systems kann nicht nur die Produktivität der Entwickler erhöhen, sondern auch die Zufriedenheit der Kunden durch schnellere und qualitativ hochwertigere Softwarelösungen steigern.
Dokumentreferenz
- Andmettlusssteem (Petuhhov)
- Java (Metshein)
- Build automation system (Clark)
- library(2) (Vallaste)
- XML (Vallaste)