der_tommy Geschrieben 9. Mai 2002 Geschrieben 9. Mai 2002 für alle Anwendungsentwickler eine kleine Aufgabe die keine größere Hürde darstellen sollte: Stellt euch vor ein Unternehmen hat ein Idee zu einem völlig neuen Produkt, was es nun umzusetzen gilt. Aufgabe ist es also ein sinvolles, zeitgemäßes Phasenmodell aufzustellen in welchem das Softwareentwicklungsprojekt abläuft. Grüße, Tommy Zitieren
treibel Geschrieben 9. Mai 2002 Geschrieben 9. Mai 2002 jo, genau mit so nem zeugs hab ichs gar net ... schreib ma deine lösung Zitieren
f1h9ha Geschrieben 9. Mai 2002 Geschrieben 9. Mai 2002 was genau meinst du damit !? Keine Anhaltspunkte ?! Zitieren
Jestertales Geschrieben 10. Mai 2002 Geschrieben 10. Mai 2002 Bestimmt ist damit jetzt gemeint so etwas wie das Wasserfall-Modell oder das V-Modell zu nehmen und es dann Anhand eines Beispieles durchzugehen. Zitieren
riana Geschrieben 10. Mai 2002 Geschrieben 10. Mai 2002 Ich beginne mit der Definitionsphase , in dieser Phase wird geschaut was ist schon vorhanden was braucht man noch welche Ziele sollen verwirklicht werden etc. dann kommt die Planunsphase macht mal weiter... habe gerade keine Zeit mehr :-(! Zitieren
Metaner Geschrieben 10. Mai 2002 Geschrieben 10. Mai 2002 Ich gehe mal davon aus, das nicht nur die reine Softwareentwicklung berücksichtigt werden soll. Bezogen auf die obige Aufgabe würde ich das so machen: 1. Ist-Aufnahme -> bezogen auf das Produkt: - Feststellen, ob ähnliche Produkte am Markt vertreten sind - Hersteller dieser Produkte ermitteln - etc. -> bezogen auf die SW-Entwicklung: - Soft- und Hardwareumgebung des Unternehmens - Welche Fachkräfte sind im Unternehmen (Stellenpläne) - etc. 2. Analyse -> bezogen auf das Produkt - Marktanalyse - Schwachstellen der Konkurenz(produkte) ermitteln - Wirtschaftlichkeitsanalyse - etc. -> bezogen auf die SW-Entwicklung - Feststellen, ob genügend Fachkräfte vorhanden sind - Reicht die Hard- und Software zur Entwicklung (ggfl. Nachkauf z.B. von Lizenzen ...) - Realisierbarkeit feststellen (z.B. durch Prototyping) - etc. 3. Sollkonzept - Pflichtenheft erstellen (nicht unbedingt notwendig bei einer internen Neuentwicklung) - zumindest Muss-, Kann- und Wunschkriterien festhalten - etc. 4. Umsetzung/Realisierung/Codierung - Programmierung - ggfl. Datenbanken erstellen - etc. 5. Testphase - Produkt auf Fehler überprüfen - Simulationen - etc. 6. Einführung / Schulung - Produkt auf dem Markt anbieten - Workshops anbieten - etc. 7. Pflege / Support - Updates und Upgrades erstellen - Hilfestellungen den Kunden bieten z.B. Hotline - etc. -> Begleitet wird das Ganze natürlich durch eine ausführliche und lückenlose Dokumentation (wie lieben sie doch alle *fg*) <- etwas Ironie darf doch sein ;-) ... mehr läßt sich bei einer solchen Aufgabenstellung nicht sagen :-)) ... oder doch? Gruss Metaner Zitieren
Jack Geschrieben 10. Mai 2002 Geschrieben 10. Mai 2002 Was ist eigentlich mit dem Pflichtenheft??? Kommt irgendwas drüber? Aufbau? Gruß Jack Zitieren
der_tommy Geschrieben 10. Mai 2002 Autor Geschrieben 10. Mai 2002 okay, ich versuche es mal: Der traditionelle Entwicklungsprozess ist das sogenannte Wasserfallmodell. Es handelt sich hierbei um ein Phasenmodell. Unter einem Phasenmodell versteht man die zeitliche Gliederung eines Projektes in bestimmte Teilabschnitte. Da wir aber heute auf sehr schnellen Märkten arbeiten wird dieses Modell in der Form in der Praxis nicht mehr eingesetzt. Denn die einzelnen Phasen werden sehr streng, sequentiell nacheinander durchgelaufen, wobei eine klare inhaltliche und zeitliche Trennung gegenüber anderer Phasen besteht. Rückkopplungen gibt es an dieser Stelle nicht. Ein typisches Wasserfallmodell sieht so aus: ------------------------------------------------------------------> Zeit Analyse --> Entwurf --> Realisierung --> Nutzung Sinnvollerweise verzahnt man einzelne Aktivitäten ineinader und spricht dann vom Ansatz des Simulaneous Engineering. Per Definition versteht man hier die zeitlich ineinader verzahnte Durchführung von phasenbezogenen Aufgaben während des gesamten Entwicklungsprozesses. Da Aufgaben parallel ablaufen und auch Rückkoppelungen zu einer vorherigen Phase möglich sind, ergibt sich somit ein Zeitersparnis am Ende des Projektes. Logischerweise verbessert sich somit auch die Wettbewerbsfähigkeit eines Unternehmen am Markt. Die Produktion erfolgt kostengünstiger und schneller. Voraussetzung ist hier aber eine effiziente Kommunikation mit allen Beteiligten während des Projektverlaufes, wie eine ausreichende Organisation vor dem Projekt. Neben den beiden genannten Modellen gibt es auch neuere, sogenannte ganzeinheitliche Modelle, welche sich nicht auf den reinen Softwareentwicklungsprozess beziehen sondern eine Betrachtung der Gesamtheit besitzen. Hier gibt es beispielsweise das sogenannte V-Modell, auch Vorgehensmodell genannt, was denn gesamten Projektverlauf von der Planung der Aktivitäten bis hin zur Integration des zu entwickelnden Systems in die vorhandene Systemumgebung enthält. Das Modell besitzt auch Funktionen der Qualitätssicherung und des Projektmanagements. Das V-Modell erstreckt sich überf olgende Subbereiche mit zugehörigen Aktivitäten: Softwareentwicklung (Analyse, Grobentwurf, Feinentwurf, Implementierung, Software-Integration, Systemintegration) Qualitätssicherung (Prüfung der Aktivitäten, Produktprüfung, Durchführungsentscheidung, Fertigprodukt prüfen, Qualitätsicherung-Berichtwesen) Konfigurationsmanagement (Konfigurationsmanagementplaung erstellen und einrichten, Changemanagement, Konfigurationsverwaltung, Konfigurationsmanagement-Berichtwesen) Projektmanagement (Projekt initialisieren, Projektplan, Projekthandbuch, Projekt begleiten, Projekthistprie, Berichtsdokumentation, Projekt abschließen, Projektschlußbericht) Ziel des V-Modelles ist die standardisierung des Softwareentwicklungsprozesss, da so mehr transparenz bei der Durchführung vn Projekten möglich ist. Frühzeitig werden Fehler erkannt, es findet eine verbesserte Kontrolle der Qualität statt und man hat eine gewisse Vergleichbarkeit und objektive Bewertung von Projekten. In den bisher genannten Modellen spielt der Benutzer also der Kunde eine eher untergeordnete Rolle. Projektleiter und die Entwicklungsteams bestimmen die Vorgehensweise und die Struktur des zu entwickelnden Systems. Gerade mal bei der Analyse des IST-Zustandes kann sich der Nutzer, beispielsweise in der Form eines Fragebogens, in den Prozess einbringen. Am Ende bekommt er lediglich das entwickelte System vorgesetzt. Letztendlich besitzt der Nutzer eine ganz andere Vorstellung von dem was er eigentlich haben möchte. Differenzen zwischen Anwender und Entwickler entstehen auf unterschiedlichste Ebene. Ein Konflikt ist die abstrahierende Sicht er Entwickler und die praxisbezogene Sicht der Anwender. Hierzu gibt es jedoch einen Prozess, in welche der Kunde mit einbezogen wird. Das sogenante Prototyping kommt so einer Forderung sehr nah. Man versteht hierunter einen Prozess, indem ein vorläufiges Anwendungssystem entwickelt wird, das bereits die wesentlichen igenschaftend es entgültigen Systems besitzt. Bei der Analyse wird der Benutzer bereits aktiv mit einbezogen. Er bestimmt wie Benutzeroberflächen aussehen solen, bestimmt Datenfolgen etc.. Das Entwicklungssteam entwicklt auf Absprache einen sogenannten Prototypen und der Benutzer gewinnt mit dem Prototypen zumindest optisch einen Eindruck vom Endprodukt. Auch bei Entwurf und Realisierung wird der Nutzer mit einbezogen und er kann aus eigenen Erfahrungen heraus Hinweise zum Ablauf der Software geben. Prototyping durchbricht also das traditionelle Phasenkonzept, bei dem genau festgeschriebene Phasen mit vorgegebenen Aufgaben und Methoden zu durchlaufen sind. Hierbei gibt es unterschiedliche Strategien: evolutionäres Prototyping: schrittweise werden mehrere Versionnen ancheinander entwickelt. Die Entwicklung des jeweils nächsten Prototypen resuliert aus notwendigen Änderungen zum letzten Prototypen. inkrementelles Prototyping: einzelne Teile des Gesamtsystems werden getrennt als Prototypen entwickelt und vom Benutzer getestet. Vergleichbar mit einem Puzzle werden die teile solange hinzugefügt bis ein kompletter Prototyp entsteht. Rapid Prototyping: Hierbei wird ein sehr schnell ein Prototyp entwickelt, welcher lediglich zu Testzwecken zur Verfügung stehen soll. Nach einem Test wird der Typ weggeworfen und ein komplett neues System entwickelt. Vorteile des Prototypings: - sehr hoher Deckungsgrad zwischen Benutzeranforderung und Funktionalität der Software - Frühzeitige Erkennung von Fehlern bei Analys, Entwurf, Realisierung - Große Akzeptanz der Benutzer mit der Software aufgrund eigener Mitwirkung - Reduzierung von Softwareentwicklungszeiten - Schulung der Nutzer erfolgt von Anfang an Nachteile: - Gefahr der unsauberen Entwicklung besteht, besonders wenn noch zu wenig Erfahrung mit Technik und Methoden des Prototypings besteht - die Akzeptanz schwindet wenn Prototyp nicht den Vorstellungend es Nutzers entspricht - Entwicklungsaufwand kann höher sein - Gefahr der endlosen Softwareentwicklung besteht: permanente Änderungswünsche Die Entwicklungsrichtungen unterscheiden sich in zwei Strategien. Der Botom-Up und der Top-Down Methode. Bei Top-Down wird das große Thema, die Gesamtaufgabe schrittweise in Teilaufgaben, Module heruntergebrochen. So findet eine zunehmende Verfeinderung der Aufgabe statt. Das Ergebnis ist eine Hierarchie von Aufgaben, die als Software-Module bezeichnet werden können. Im gegensatz dur TopDown-Strategie werden bei der Bottom-Up Strategie einzelne Aufgaben zu immer höheren Ebenen zusammengefasst. Dieser Prozess wiederholt sich solang bis die Gesamtaufgabe feststeht. In der Praxis gibt es meist eine Mischform beider Strategien (Middle-up-down-Strategie). Grüße, Tommy Zitieren
Metaner Geschrieben 10. Mai 2002 Geschrieben 10. Mai 2002 @tommy ... sehr ausführlich ... aber ich hätte jetzt als Prüfer meine Schwierigkeiten, Deine Antwort zu bewerten. Du beschreibst bloss die unterschiedlichen Vorgehensweisen, aber gehst nicht konkret auf die Aufgabe ein. Deine Aufgabenstellung war doch: Aufgabe ist es also ein sinvolles, zeitgemäßes Phasenmodell aufzustellen in welchem das Softwareentwicklungsprojekt abläuft. Ich lese aus der Aufgabe: 1.) Entscheide Dich für ein Phasenmodell (Wasserfall-, V-Modell etc.) 2.) Zeige wie anhand des gewählten Phasenmodells der Ablauf der Prozesse aussehen könnte (mit Beispielen vielleicht) Wie siehst Du das? Gruss Metaner Zitieren
der_tommy Geschrieben 10. Mai 2002 Autor Geschrieben 10. Mai 2002 jep, das ist richtig wollte mit dem Posting nur eine Hilfe geben und keine Anwort auf die Aufgabe. War an der Stelle etwas dumm formuliert ;-) Die Aufgabe an sich ist auch etwas zu lasch formuliert um sich für ein Phasenmodell zu entscheiden. Vielleicht hat jemand eine bessere Formulierung für eine Aufgabenstellung der Art. Prinzipiell glaube ich aber auch gar nicht das eine Aufgabe dran kommt, wo ein Phasenmodell direkt auszuwählen ist. Denn dafür gibt es keinen richtigen Standard. Genauso wie es keinen Standard gibt, wie ein Pflichtenheft auszusehen hat. Jede Firma handhabt das anders. An der Stelle kann man wirklich nur fragen, was ist eigentlich das Wasserfallmodell oder was ist Top-Down. Ich hoffe trotzdem einigen Leuten mit der Ausführung geholfen zu haben Grüße, Tommy Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.