"Projektbegleitende Literatur"

Laddi1987

Cadet 4th Year
Registriert
Jan. 2011
Beiträge
109
Hey Leute,

Ich hoffe mal, dieses Forum ist das richtige. :) Es ist zumindest am dichtesten dran an meiner Frage.

Ich spiele schon länger mit dem Gedanken, ein kleines Android Projekt zu starten. Erfahrungen konnte ich bisher bei der Umsetzung einer Java Anwendung von mittlerer Größe sammeln, die ich für meinen Hiwi Job zuammen geschustert habe. Nun bin ich damals (wenn man es sehr positiv ausdrücken will) agil vorgegangen^^. Ich habe einfach mal so drauf los programmiert und dementsprechend chaotisch war später auch die Fehlersuche und die Optimierung der ganzen Geschichte.

Nun machen wirs kurz und knapp: Dieses mal möchte ich mich strickter an die Methoden des Software Engineerings halten, gerade auch um das mal für mich zu üben. Ich brauche also einen Strukturleitfaden!
Nun suche ich ein Buch, das mir dabei hilft. Und zwar denke ich dabei nicht an das ein oder andere Standardwerk in Sachen UML oder Software Engineering (die habe ich bereits gesichtet/geliehen). In der Theorie weiß ich ja auch schon, wie so ein Projekt aufgezogen wird. Ich suche ein Buch, das sozusagen Projekt/Praxisorientiert ist und mich von den ersten Schritten des "Was soll meine Software können" bis zum Bugfixing begleitet. Also quasi ein Praxisbegleiter von der Analyse über Grob- und Feinentwurf bis zur Integration, oder so?!

Kennt jemand von euch zufällig ein solches Buch? Es darf auch gerne selbst ein Projekt "vorgeben", da kann ich dann ja meine eigenen Ideen einfach "Lückentext"- mäsig einsetzen^^.

Wäre cool, wenn da irgendwem ein Literaturtipp oder sonst etwas einfällt!

Beste Grüße
Laddi
 
Also mal vorweg:

'agile' Vorgehensweise ist eine offizielle Form des Software Engineerings! Und außerdem ist das in kleinen bis sehr kleinen Projektgruppen die beste Wahl, da man sich sehr schnell absprechen kann und man sich bei 8-10 Leuten beim Programmieren eigentlich nie in die Quere kommt.
Ich spreche hier nicht von chaotisch agiler Programmierung.. System MUSS sein. Z.B. dass jeder nur in seinem eigenen Code bastelt und man nicht einfach irgendwas in fremde Branches pusht. Dazu sollte dann natürlich MVP benutzt werden und auch das ein oder andere Diagramm gemalt werden. Und bei großen Design-Entscheidungen hockt man sich trotzdem zusammen und nimmt sich aus allen Ideen und Vorschlägen das Beste raus. (So läuft das gerade bei uns im 8-Mann Projekt (Nr.9 testet immer mal wieder zwischendurch den Code und schreibt Tickets). Und es läuft verdammt gut und schnell. Alle 2 Wochen oder so gibt's dann mal 'nen kleinen Zwischenfall der 1 Stunde Zeit in Anspruch nimmt, weil beim mergen im git was schief gegangen ist. Aber das war's auch schon)
'agil' bedeutet heutzutage: Schneller fertig, weniger kosten. Und im kleinen Kreis bedeutet es nicht mal, dass eine Umstrukturierung länger dauern muss.

Zu UML: Viel Erfolg bei der Suche nach einem Standardwerk :D Du wirst keins finden. Wenn man sich strikt an die Spezifikation hält hast du immernoch so viele Freiheiten, dass es im Prinzip egal ist, wie du es machst. Hauptsache es besteht aus Stichen und Text.



Aber nun mal zum eigentlichen Thema:
- Als ich in der Uni damals mein Software Projekt gemacht habe mussten wir uns auch selbst darum kümmen, wie man so einen Entwurf und Analyse und so macht. Und wir mussten auch selbst gucken, wo wir die ganzen Informationen herbekommen was da so reinkommt. Eigentlich ist es nicht schwer, im Netz finden sich sehr sehr viele gute PDFs, die einen kompletten Software Entwurf beinhalten.

Ich bin mir trotzdem nicht sicher, ob du das machen willst ;) Im Studium war das in etwa so aufgeteilt: 1 Semester nur Vorarbeit (UML, Entwurf, etc.) und dann noch 1 Semester, das quasi nur aus Progammierung bestand. Und ich will nicht behaupten, dass die Programmierung durch die Vorarbeit groß erleichtert wurde.
Eigentlich waren nur die Schnittstellen der einzelnen Module nützlich und teilweise die Ansicht, wo man die Kommunikation der ganzen Module untereinander sieht. Ich bin immernoch der Ansicht, dass sich die lange Vorarbeit für dieses kleine Projekt auf keinen Fall gelohnt hat...


Grüße
 
Ja, dass agile Programmierung ein Konzept ist und selbiges auch hat ist mir bewusst. Das Ding ist: Ich setze das Projekt ja vorraussichtlich alleine um, es ist nicht Teil meines Studiums. Und das dort das strikte Vorgehen nach Methoden irgendwie nen Arbeitsoverhead erzeugt ist mir auch klar. Dennoch geht es mir um die Übung soetwas mal gemacht zu haben (Ich will also in einem Hobby Projekt Klassendiagramme, architekturen und Use Cases entwerfen, der Übung halber).
Und da die Softwareentwicklung nicht wirklich bestandteil meines Studiums ist und die freiwllige Teilnahme an einem Entwicklungspraktikum wohl auch etwas zu viel Stress bedeuten würde, dachte ich, ich versuche meine Fähigkeiten in einem privaten Projekt vorranzubringen.

Die Sache mit der Literatur die ich bisher so habe ist ja die:
-Entweder Sie stellt die Methodik als solche vor und bringt eher am Rande Praxisbeispiele (das meinte ich mit Standardwerk...also sowas wie das Balzert Lehrbuch o.ä.)
- oder Sie will Kenntnisse in einer Programmiersprache vermitteln und arbeitet dann zwar an einem konkreten Projekt, jedoch mit Fokus auf der tatsächlichen Implementierung, weniger auf der Konzeption.

Aber vielleicht hat ja doch noch jemand nen guten Tipp :)

Wenn nicht, werd ich halt einfach mal so drauf los Analysieren und Entwerfen ^^

Grüße
 
Zuletzt bearbeitet:
Ich hab jetzt mal spontan sowas hier gefunden:
www.bis.uni-oldenburg.de/linthin/beispiele/pflicht.pdf

Suche bei Google mal nach 'Uni Software Pflichtenheft', da findest du genügend Beispiele ;)


Soweit ich mich gerade erinnere läuft das Ganze so ab:
1. Pflichtenheft <- Projektbeschreibung in Worten
2. Entwurf <- Projektbeschreibung in UML
3. Analyse <- Weitergehende Beschreibung und Umsetzung
 
Zuletzt bearbeitet:
Also quasi das Pferd von den Ergebnissen her aufzäumen und sich daran orientieren...ja, auch eine gute Idee! :)
Ich bin ja für jeglichen Input dankbar!^^
Grüße
 
Ich werfe einfach mal ein paar Bücher in den Raum, die sich damit beschäftigen. Vielleicht kannst du die irgendwo auftreiben oder schon am Inhaltsverzeichnis auf Amazon erkennen, ob es das ist, was du suchst.

Software Development

Ansonsten solltest du das hier beherrschen um vernünftig entwickeln zu können:
Design Patterns
OOA & OOD

Bei der Serie wird alles immer recht praktisch und realitätsnah erklärt. Beim letzterem scheiden sich die Geister (habs selbst noch nicht gelesen). Das Design Patterns Buch kann ich aber wirklich empfehlen.
 
Zurück
Oben