Okay, danke erst mal für die Antworten. Das sieht mir sehr nach UseCases und User-Stories für den Anfang aus. Ich werde den Gedanken mal weiter verfolgen.
Stift und Papier nehme ich eigentlich ungerne, da das sehr unflexibel ist, wenn Änderungen anfallen oder ich noch etwas einfügen möchte, aber kein Platz mehr vorhanden ist. Deswegen suche ich schon länger nach einer Software, mit der man sowas machen kann. Aber viele sind hier zu stark an der Papiervariante der Diagramme orientiert - es ist also immer noch recht viel Aufwand, etwas zu entwerfen, Inhalte zu pflegen, neue Figuren zu zeichnen, Verbindungen herzustellen und aufrechtzuerhalten. Damit hab' ich derzeit noch ein großes Problem. Ich möchte meine Ideen einfach "schnell" eingeben können, aber gleichzeitig eine schöne Visualisierung des Ganzen vor mir haben.
Mal nebenbei: das Projekt, das ich wahrscheinlich als nächstes umsetzen werde, wird wohl eine Blogverwaltung oder ein Mini-CMS mit Blog- und Literaturfokus sein.
Da fällt mir auch ein weiterer Punkt ein: Ich werde vielleicht auch irgendwo Probleme mit dem UseCase-Schema haben, da ich gerne ein Interface vor mir sehe, mir vorstelle, wie ich dieses bediene und mir aufgrund dessen neue Funktionen oder Ideen kommen, die mir beim UseCase-Entwurf gar nicht einfallen können. Oder ist es üblich, dass man öfter zwischen diversen Schritten hin- und herspringt? Aber aus diesem Grund, tendiere ich eigentlich fast dazu mit Mockups anzufangen. Ich gehe auch schon vorher im Kopf durch, für was die Anwendung gut sein soll, was man damit machen kann etc.
Dann nochmal zur Datenstrukturplanung. Dass ich bei Webprojekten eine SQL-Datenbank verwenden werde, halte ich für recht unwahrscheinlich, da ich ein großer Fan von NoSQL-Datenbanken bin (und meiner Vorstellung nach lassen sich die Daten meiner Projekte auch gut damit abbilden). Allerdings hab' ich hier das Problem, dass es keine offiziellen Diagramme gibt, mit denen man Strukturen in solchen Datenbanken planen kann. Ich hab mir bisher immer mit Textdateien ausgeholfen. Das Gleiche gilt eben auch für JSON-Strukturen, wenn ich Server-Skripte schreibe, die Datenbankinhalte als JSON-String zurückliefern.