Mindmap-Galerie Grundlagen der Softwareentwicklung
Dies ist eine Mindmap über die Grundlagen des Software-Engineerings. Die Hauptinhalte umfassen: drei Phasen der Software, Software-Krise, Software-Engineering, Software.
Bearbeitet um 2024-04-13 19:32:34Welche Preismethoden gibt es für Projektunteraufträge im Rahmen des EPC-Generalvertragsmodells? EPC (Engineering, Procurement, Construction) bedeutet, dass der Generalunternehmer für den gesamten Prozess der Planung, Beschaffung, Konstruktion und Installation des Projekts verantwortlich ist und für die Testbetriebsdienste verantwortlich ist.
Die Wissenspunkte, die Java-Ingenieure in jeder Phase beherrschen müssen, werden ausführlich vorgestellt und das Wissen ist umfassend. Ich hoffe, es kann für alle hilfreich sein.
Das Software-Anforderungs-Engineering ist ein Schlüsselkapitel für Systemanalytiker. Zu den Kapiteln „Anforderungserhebung“ und „Anforderungsanalyse“ gehören häufig Veröffentlichungen.
Welche Preismethoden gibt es für Projektunteraufträge im Rahmen des EPC-Generalvertragsmodells? EPC (Engineering, Procurement, Construction) bedeutet, dass der Generalunternehmer für den gesamten Prozess der Planung, Beschaffung, Konstruktion und Installation des Projekts verantwortlich ist und für die Testbetriebsdienste verantwortlich ist.
Die Wissenspunkte, die Java-Ingenieure in jeder Phase beherrschen müssen, werden ausführlich vorgestellt und das Wissen ist umfassend. Ich hoffe, es kann für alle hilfreich sein.
Das Software-Anforderungs-Engineering ist ein Schlüsselkapitel für Systemanalytiker. Zu den Kapiteln „Anforderungserhebung“ und „Anforderungsanalyse“ gehören häufig Veröffentlichungen.
Grundlagen der Softwareentwicklung
Software
Definition
Computersoftware ist eine Sammlung von Programmen, Daten und zugehöriger Dokumentation
Merkmale
Software ist abstrakt und eine logische Einheit
Die Software hat keinen offensichtlichen Produktionsprozess
Es besteht kein Problem der Abnutzung und Alterung der Software während der Nutzung
Hängt von Hardware und Umgebung ab
Software ist komplex und teuer
Viele soziale Faktoren in der Softwareentwicklung und -gestaltung
Nach Funktion klassifiziert
Anwendungssoftware: Es handelt sich um eine Sammlung verschiedener Programmiersprachen, die Benutzer verwenden können, sowie in verschiedenen Programmiersprachen kompilierte Anwendungen. Zur Anwendungssoftware gehören Bearbeitungssoftware und Software für Bildungsmanagementsysteme
Systemsoftware: Es handelt sich um Software, die Computer und externe Geräte steuert und koordiniert und die Entwicklung und den Betrieb von Anwendungssoftware unterstützt. Das Betriebssystem ist Systemsoftware
Support-Software (oder Tool-Software): Dabei handelt es sich um Software, die die Entwicklung und Wartung verschiedener Software unterstützt, auch Software-Entwicklungsumgebung genannt. Browser sind Support-Software
Lebenszyklus
Produkt vorgeschlagen
erreichen
verwenden
pflegen
Nicht mehr nutzen (Ruhestand)
Softwarekrise
Definition
Da der Umfang der Computersoftware zunimmt, nimmt die Komplexität der Software selbst weiter zu, der Forschungs- und Entwicklungszyklus wird erheblich länger, die Genauigkeit lässt sich nur schwer garantieren, die Softwareentwicklungskosten steigen und die Produktionseffizienz sinkt stark, was dazu führt, dass dies der Fall ist Für Investoren ist es schwierig, die Softwareentwicklung zu kontrollieren, d. h. die sogenannte „Softwarekrise“
Spezifische Leistung
Der steigende Bedarf an Software wird nicht gedeckt
Die Kosten und der Zeitplan der Softwareentwicklung können nicht kontrolliert werden
Die Softwarequalität ist schwer zu kontrollieren
Software ist nicht wartbar oder sehr schlecht gewartet
Die Softwarekosten steigen weiter
Die Verbesserung der Softwareentwicklung und der Produktionsauslastung kann nicht mit der Entwicklung der Hardware und dem Wachstum der Anwendungsnachfrage Schritt halten. Das heißt, Themen wie Kosten, Qualität, Produktivität usw.
Softwareentwicklung
Drei Elemente der Softwareentwicklung
Methode
Werkzeug
Verfahren
Software-Engineering-Forschung
Softwareentwicklungstechnologie und Software-Engineering-Management
Strukturierte Analyse
Methode
Strukturierte Analysemethode (Schwerpunkt Prozess)
Objektorientierte Analysemethode (Ergebnisorientierung)
Werkzeug
Datenflussdiagramm: Eine Grafik zur Beschreibung des Datenflusses
Datenwörterbuch: Der Kern strukturierter Analysemethoden
Entscheidungstabelle: Kombinieren Sie Bedingungen in einer Datenanalyse in Form einer Tabelle
Entscheidungsbaum: Kontinuierliche Unterteilung nach verschiedenen Kategorien, um eine Datenanalyse zu erhalten
Drei Stufen der Software
Software-Definitionsphase
Pläne schmieden
Anforderungsanalysen und Softwareanforderungsspezifikationen sind die Endergebnisse der Anforderungsanalysephase. Sie beziehen sich nur auf Daten und Dokumente und haben nichts mit Programmanweisungen zu tun.
Anforderungserfassung
Anforderungsspezifikationen schreiben
Überprüfung der Anforderungen
Bedarfsanalyse
Die Rolle der Softwareanforderungsspezifikation (SRS)
Bequem für Benutzer und Entwickler zum Verstehen und Kommunizieren
Eine Struktur, die Benutzerprobleme widerspiegelt, kann als Grundlage und Basis für die Softwareentwicklungsarbeit dienen
Als Grundlage für die Bestätigungsprüfung und Abnahme
Bietet eine Grundlage für Kostenschätzungen und die Erstellung von Planungsplänen
Die Basis für kontinuierliche Softwareverbesserung
Software-Entwicklungsphase
Software-Design
Makro (Umrissentwurf)
Aufgabe
Entwerfen Sie die Systemstruktur einer Software
Datenstruktur und Datenbankdesign
Schreiben Sie ein High-Level-Designdokument
Zusammenfassende Überprüfung des Entwurfsdokuments
Skizzieren Sie den Entwurf häufig verwendeter Softwarestruktur-Designtools
Strukturdiagramm, auch Systemstrukturdiagramm genannt. Die Pfeillinien im Strukturdiagramm stellen die Aufrufbeziehungen zwischen Modulen dar.
Informationen zum Systemstrukturdiagramm
Je tiefer die Tiefe und je breiter die Breite, desto komplexer ist das System.
Atomares Modul: ein Modul, das sich an einem Blattknoten im Baum befindet
Zu den Arten des Datenflusses im Entwurfsentwurf gehören der Transformationstyp (Daten ändern sich) und der Transaktionstyp (Daten werden verteilt und übertragen).
Mikro (Detaildesign/Teildesign/Mikrodesign/Prozessdesign)
Grafische Werkzeuge: Programmflussdiagramm (PFD) (die Pfeile im Programmflussdiagramm stellen den Kontrollfluss dar), N-S-Diagramm (Blockdiagramm), PAD, HIPO
Tabellentool: Bestimmungstabelle
Sprachtools: PDL (Pseudocode)
Softwaretest
Zweck
Der Prozess der Ausführung des Programms nach der Fehlererkennung findet nur Fehler, ohne sie zu korrigieren. Es kann und ist unmöglich zu beweisen, dass das Programm keine Fehler aufweist, und es ist unmöglich, alle Fehler zu entdecken.
Objekt
Quellprogramm
Zielprogramm
Daten
Zugehörige Dokumente
Methode
White-Box-Tests: Die Hauptmethoden umfassen Logikabdeckung und grundlegende Pfadtests
Black-Box-Tests: Testen externer Funktionen und Merkmale. Die Hauptmethoden sind die Äquivalenzklassenteilungsmethode, die Grenzwertanalysemethode, die Fehlerspekulationsmethode und das Ursache-Wirkungs-Diagramm.
Schritt
Unit-Tests: hauptsächlich White-Box-Tests
Integrationstests: Überprüfen Sie, ob die Einheit in Konflikt steht, und konzentrieren Sie sich dabei auf die Verbindung, um hauptsächlich Fehler im Zusammenhang mit der Schnittstelle zu finden. Die Grundlage des Integrationstests ist die Entwurfsspezifikation
Bestätigungstests: Überprüfen Sie die Wirksamkeit der Software anhand der Softwareanforderungsspezifikation, hauptsächlich Black-Box-Tests
Systemtests: Die Umgebung beteiligt sich an den Tests. Die Testfälle basieren auf den Softwareanforderungsspezifikationen und konzentrieren sich auf die Umgebung.
Software-Wartungsphase
Nutzung, Wartung und Stilllegung sind die teuersten Phasen im Software-Lebenszyklus.
Phase der Anforderungsanalyse (Analyse von Daten)