Markus.K Geschrieben 22. September 2006 Teilen Geschrieben 22. September 2006 *schnüff* irgendwie mochte die IHK (Koblenz) meinen ersten Antrag nicht, und nach genauerer Betrachtung war das wohl wirklich etwas wenig, was man da darstellen konnte. Also nach kurzer Rücksprache für den neuen Antrag Plan B aus der Tasche gezogen. Tät mich freuen, wenn der eine oder andere da mal seinen Senf zugeben täte:) Thema Entwicklung eines Newsletter-Tools Projektbeschreibung Beim Projekt handelt es sich um einen betriebsinternen Auftrag. Zu entwickeln ist eine Anwendung zum Versand von E-Mail-Newslettern. Diese wird als eigenständige CGI-Anwendung einsetzbar sein, kann aber auch in eine vorhandene Standardsoftware von $Firma, insbesondere in "$Anwendung_Vertrieb" oder "$Anwendung_Shop" integriert werden. Die gesamte Anwendung ist vollständig web-basiert. Der Newsletter-Redakteur benötigt lediglich einen PC mit installiertem Browser. Das Programm soll folgende Möglichkeiten bieten:. 1. Verwaltung: Der Newsletter-Redakteur kann beliebig viele Newsletter-Texte erstellen. Hierzu ist eine geeignete Verwaltungs-Oberfläche zu entwickeln, in der Newsletter abgespeichert und zu einem späteren Zeitpunkt weiter bearbeitet werden. Innerhalb des Textes können dabei Platzhalter eingesetzt werden, an deren Stelle beim Versand dann beispielsweise eine persönliche Anrede an den Empfänger dargestellt werden kann. 2. Es sind verschiedene Empfänger-Gruppen zu verwalten. Empfänger-Gruppen können dabei sowohl nach Personenkreisen als auch nach Themengebieten eingeteilt werden. Die Bindung eines Newsletters an eine oder mehrere Empfänger-Gruppen kann dabei sowohl schon während der Erstellung des Newsletters als auch erst unmittelbar vor dem Versand erfolgen. 3. Für den Versand eines Newsletters ist auszuwählen, welche Empfänger-Gruppen diesen Newsletter erhalten sollen. Da jeder Empfänger eine individuelle E-Mail erhält, ist eine Balance zwischen Programm-Performance und Serverlast zu finden. 4. Für eine einfache Anmeldung für einen Newsletter ist ein individuell anpassbares Web-Formular zur Verfügung zu stellen. Bei Benutzung dieses Formulars ist ein Double-Opt-In erforderlich, bei welcher ein Empfänger seine angemeldete E-Mail-Adresse gesondert bestätigen muss. Hierdurch kann ein Missbrauch durch Fremdanmeldungen verhindert werden. 5. Ein Newsletter-Empfänger hat die Möglichkeit, seine persönlichen Einstellungen nach erfolgtem Login zu ändern. Hierbei ist sowohl der Fall zu beachten, dass ein Empfänger bereits in einem bestehenden System eingeloggt ist, als auch der Fall eines aus Programm-Sicht externen Newsletter-Empfängers. Änderbar sind neben der E-Mail-Adresse auch persönliche Daten (optional) und die Auswahl der gewünschten Newsletter-Gruppen. Fernerhin kann der Empfänger auswählen, ob er Newsletter im HTML-Format oder als reinen Text wünscht. Um einen seriösen Newsletter-Versand sicherzustellen, ist schon beim Erstellen des Newsletters ein Link zur Verfügung zu stellen, mit dem der Empfänger eine Möglichkeit erhält, den aktuellen oder auch alle Newsletter abzubestellen. Dabei ist eine Abwägung zwischen Datenschutz und Benutzerfreundlichkeit vorzunehmen. Für die Datenhaltung ist eine geeignete Datenbankstruktur zu entwickeln. Zum einen sind die Newsletter-Texte selbst zu verwalten, darüber hinaus auch die Empfängerdaten. Hierbei ist sicherzustellen, dass Schnittstellen für einen Abgleich mit vorhandenen Daten zur Verfügung stehen. Dieses wären z.B. die Shop-Kunden, aber auch Anwender der CRM-Software oder Firmenkontakte. Es muss aber auch der Fall berücksichtigt werden, dass das Newsletter-Programm als eigenständige Anwendung einsetzbar sein wird. Ein Abgleich wird vor allem an den Stellen erforderlich sein, wo die Empfänger eine Möglichkeit erhalten sollen, ihre individuellen Einstellungen nach einem erfolgten Login in das vorhandene System zu ändern. So muss ein angemeldeter Shop-Kunde oder Anwender der Vertriebssoftware sich nicht separat für den Newsletter anmelden. Web-Server Entwicklung: Debian Linux mit installiertem Perl 5.8 und MySQL 4.0. Es handelt sich um eine reine Test-Maschine, welche nicht im Produktiveinsatz und nicht an das Internet angebunden ist. Die Anwendung findet im Produktiveinsatz auf verschiedenen Web-Servern vergleichbare Bedingungen vor. Arbeitsplatz: PC mit Windows 2000, Editor: UltraEdit 10. Keine gesonderten Entwicklungstools erforderlich. Als Browser zum Testen kommen hier der Microsoft Internet Explorer 6 sowie Mozilla Firefox 1.5 zum Einsatz. Als Programmiersprache wird Perl eingesetzt, ergänzt durch JavaScript. Für die direkte Kommunikation zwischen Benutzer (Browser) und Web-Server wird von der AJAX-Technologie Gebrauch gemacht. Kosten-/Nutzen-Betrachtung: Es handelt sich um ein rein internes Projekt. Gesonderte Kosten für die Beschaffung eventuell notwendiger Hardware oder Software fällt nicht an. Auf der Kostenseite müssen also nur die Personalkosten des ausführenden Auszubildenden für 70 Mann-Stunden kalkuliert werden, einschl. Lohnnebenkosten sind hier ca. $Preis € anzusetzen. In welchem Umfang das fertige Produkt als kostenpflichtiges Modul entwicklungskostendeckend veräußert werden kann, lässt sich zum gegenwärtigen Zeitpunkt noch nicht konkret absehen. Diese Kosten erscheinen aber allein schon hinsichtlich der Konkurrenzfähigkeit und zur Steigerung der Produktattraktivität angemessen. Projektumfeld Die zu entwickelnde Anwendung ist zunächst vorgesehen als ein eigenständiges Produkt. Dabei wird es bevorzugt als Modul für die hauseigene Standard-CRM-Anwendung "$Anwendung_Vertrieb" und dem darin integrierten Webshopsystem "$Anwendung_Shop" zum Einsatz kommen. Diese Software ist streng modular aufgebaut und durch ihre Architektur besonders als Basis für kundenindividuelle Softwarelösungen geeignet. Sie ist als solches bereits als Vertriebslösung wie auch als Webshop bei mehreren großen Unternehmen im Einsatz. Die Software ist vollständig browserbasiert, es ist dabei keine Installation einer Software auf Rechnern des Kunden erforderlich, vielmehr kann die vollständige Anwendung auf dem Web-Server von $Firma verbleiben und dort laufend aktualisiert werden. Es ist allerdings auch möglich, die Software auf einem eigenen Web-Server des Kunden zu installieren. Der Anwender benötigt letztlich nur einen Computer mit Internetzugang und einen aktuellen Browser, um die Anwendung zu benutzen. Besonders hervorzuheben ist die Oberflächengestaltung: Diese erfolgt ausschließlich über Templates im HTML-Format. Somit lassen sich die Oberflächen kundenindividueller Anwendungen unabhängig vom Programm und ohne Programmierkenntnisse entwickeln. Das Template wird erst zur Laufzeit des Programms eingelesen, mit der Programm-Ausgabe gefüllt und an den Browser des Benutzers als Webseite ausgegeben. Die Produkte "$Anwendung_Vertrieb" und "$Anwendung_Shop" sind serverseitig vollständig in Perl unter Benutzung einer hauseigenen Klassenbibliothek entwickelt worden, clientseitig wird neben der reinen HTML-Erstellung intensiv Gebrauch von DHTML und JavaScript gemacht. Projektphasen Es werden insgesamt fünf Phasen des Projektes unterschieden: I. Kick-Off II. Umsetzung des Programms III. Tests IV. Abnahme durch Projektleiter V. Erstellen der Dokumentation I. Kick-Off Im ersten Schritt ist das Pflichtenheft und die Feinspezifikation zu erstellen. Der genaue Workflow der Anwendung ist zu definieren. Es wird ermittelt, welche Schnittstellen zu anderen Programmteilen geschaffen werden müssen und welche Informationen an welcher Stelle darzustellen sind. Fernerhin ist eine Genehmigung / Abnahme dieser Feinspezifikation durch den Projektleiter (Ausbilder) vor Beginn der Umsetzung vorgesehen. II. Umsetzung des Programms Die tatsächliche Umsetzung der einzelnen Programmteile: a) Erstellung und Verwaltung der Newsletter selbst Verwaltung der Empfängergruppen c) Newsletter-Versand d) Webformular Newsletter-Anmeldung e)Vereinfachte Abmeldung III. Tests Es wird eine formale Programmverifikation sowie eine Reihe vollständiger Anwendungstests durchgeführt, ergänzend zu den bereits während der Entwicklungsphase fortlaufend durchgeführten Funktionstests. IV. Abnahme durch Projektleiter Vor der endgültigen Fertigstellung des Programms ist das Projekt vom Projektleiter zu überprüfen und abzunehmen. Diese Projektphase dient gleichzeitig als Puffer für ggf. erforderliche Programmänderungen. V. Erstellen der Dokumentation Neben der eigentlichen Projektdokumentation ist eine interne Entwickler-Dokumentation für die Programmierer von $Firma sowie eine kurze Anleitung für Anwender des Moduls zu erstellen. Abschätzung Zeitaufwand: 10h Phase I. Kick-Off davon: - 6 h Erstellung Feinspezifikation - 2 h Entwurf Datenbankstruktur - 2 h Genehmigung durch Projektleiter 30 h Phase II. Programmierung davon: - 10 h Erstellung und Verwaltung der Newsletter selbst - 10 h Verwaltung der Empfängergruppen - 6 h Newsletter-Versand - 2 h Webformular Newsletter-Anmeldung - 2 h Vereinfachte Abmeldung 8 h Phase III. Tests 4 h Phase IV. Abnahme durch Projektleiter 18 h Phase V. Dokumentation davon: - 4 h interne Dokumentation - 4 h Dokumentation für Anwender - 12 h Projektdokumentation Gesamter Zeitaufwand: 70 h Dokumentation Die Dokumentation beinhaltet den üblichen Prozessbericht und eine Präsentation des fertigen Produktes. Als Anlagen sind geplant: 1. Erstelltes Pflichtenheft, zusätzlich ggf. erforderliche Abweichungen vom Pflichtenheft 2. Software-Dokumentation für den internen Gebrauch: - 2a. Schnittstellenbeschreibung des Moduls - 2b. Struktur der Datenbank 3. Kunden-Dokumentation: Beschreibung der Anwendung des Moduls für den Redakteur Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Carsten_77 Geschrieben 22. September 2006 Teilen Geschrieben 22. September 2006 Das übliche: wo wirst du Entscheidungen treffen? Dein Projekt*antrag* liest sich für mich teilweise schon fast wie die eigentliche Dokumentation. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Markus.K Geschrieben 22. September 2006 Autor Teilen Geschrieben 22. September 2006 Ja, da hast du wohl recht. Ich glaube, die allermeisten Entscheidungen, die ich im Rahmen der (von Chef gegebenen) Aufgabe treffen durfte, hab ich schon erledigt und gleich in den Antrag mit reingepresst. Ob es geht, wenn ich nicht alles verrate, was ich schon "erledigt" habe? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Markus.K Geschrieben 25. September 2006 Autor Teilen Geschrieben 25. September 2006 So, mal die Beschreibung zusammengestrichen. Ich denke, das ist nun im Wesentlichen der Stand, den ich von Chef als Auftrag erhielt. Das konkrete "Wie" hab ich also weitestgehend ausgeklammert. Ich denke, es widerspricht nicht der Praxis, wenn man sich vor Beginn der Arbeit schonmal ein paar Gedanken macht, wie es hinterher konkret aussehen könnte (tatsächlich hab ich sogar schon ziemlich das gesamte Pflichtenheft im Hinterkopf). Also, über konstruktives Mecker tät ich mich wirklich freuen. Chef ist da leider (mangels Zeit) keine soo große Hilfe. Ok, here we go again... Thema Entwicklung eines Newsletter-Tools Projektbeschreibung Beim Projekt handelt es sich um einen betriebsinternen Auftrag. Zu entwickeln ist eine Web-Anwendung zum Versand von E-Mail-Newslettern. 1. Es ist eine geeignete Datenverwaltung zu erstellen. In erster Linie soll eine Integration in die vorhandenen Kundenverwaltungen der Standardsoftware von $Firma, insbesondere in "$Anwendung_Vertrieb" oder "$Anwendung_Shop" erfolgen, aber auch ein Betrieb als eigenständige Anwendung soll möglich sein. 2. Die Anwendung selbst soll die Erstellung und den Versand der Newsletter ermöglichen. Es sollen mehrere unterschiedliche Newsletter-Typen verwaltet werden, gegliedert nach Personengruppen oder Themen. Hierfür ist einer geeigneter Workflow zu entwickeln und umzusetzen. 3. Die Empfänger müssen Zugriff auf Ihre persönlichen Daten erhalten. Hier ist sowohl Rücksicht auf Datenschutz-Belange als auch die üblichen Anforderungen an einen seriösen Newsletter-Versender zu nehmen. Web-Server Entwicklung: Debian Linux mit installiertem Perl 5.8 und MySQL 4.0. Es handelt sich um einen reinen Entwicklungsrechner, welcher nicht im Produktiveinsatz und nicht an das Internet angebunden ist. Im Produktiveinsatz findet die Anwendung auf verschiedenen Web-Servern vergleichbare Bedingungen vor. Arbeitsplatz: PC mit Windows 2000, Editor: UltraEdit 10. Keine gesonderten Entwicklungstools erforderlich. Als Browser zum Testen kommen hier der Microsoft Internet Explorer 6 sowie Mozilla Firefox 1.5 zum Einsatz. Als Programmiersprache wird Perl eingesetzt, ergänzt durch JavaScript. Für die direkte Kommunikation zwischen Benutzer (Browser) und Web-Server kann von der AJAX-Technologie Gebrauch gemacht werden, wenn sich dieses als sinnvoll erweist. Kosten-/Nutzen-Betrachtung: Es handelt sich um ein rein internes Projekt. Gesonderte Kosten für die Beschaffung eventuell notwendiger Hardware oder Software fällt nicht an. Auf der Kostenseite müssen also nur die Personalkosten des ausführenden Auszubildenden für 70 Mann-Stunden kalkuliert werden, einschl. Lohnnebenkosten sind hier ca. $Preis € anzusetzen. In welchem Umfang das fertige Produkt als kostenpflichtiges Modul entwicklungskostendeckend veräußert werden kann, lässt sich zum gegenwärtigen Zeitpunkt noch nicht konkret absehen. Diese Kosten erscheinen aber allein schon hinsichtlich der Konkurrenzfähigkeit und zur Steigerung der Produktattraktivität angemessen. Projektumfeld Die zu entwickelnde Anwendung ist zunächst vorgesehen als ein eigenständiges Produkt. Dabei wird es bevorzugt als Modul für die hauseigene Standard-CRM-Anwendung "$Anwendung_Vertrieb" und dem darin integrierten Webshopsystem "$Anwendung_Shop" zum Einsatz kommen. Diese Software ist streng modular aufgebaut und durch ihre Architektur besonders als Basis für kundenindividuelle Softwarelösungen geeignet. Sie ist als solches bereits als Vertriebslösung wie auch als Webshop bei mehreren großen Unternehmen im Einsatz. Die Software ist als Web-Anwendung vollständig browserbasiert, es ist dabei keine Installation einer Software auf Rechnern des Kunden erforderlich, vielmehr kann die vollständige Anwendung auf dem Web-Server von $Firma verbleiben und dort laufend aktualisiert werden. Es ist allerdings auch möglich, die Software auf einem eigenen Web-Server des Kunden zu installieren. Der Anwender benötigt letztlich nur einen Computer mit Internetzugang und einen aktuellen Browser, um die Anwendung zu benutzen. Besonders hervorzuheben ist die Oberflächengestaltung: Diese erfolgt ausschließlich über Templates im HTML-Format. Somit lassen sich die Oberflächen kundenindividueller Anwendungen unabhängig vom Programm und ohne Programmierkenntnisse entwickeln. Das Template wird erst zur Laufzeit des Programms eingelesen, mit der Programm-Ausgabe gefüllt und an den Browser des Benutzers als Webseite ausgegeben. Die Produkte "$Anwendung_Vertrieb" und "$Anwendung_Shop" sind serverseitig vollständig in Perl unter Benutzung einer hauseigenen Klassenbibliothek entwickelt worden, clientseitig wird neben der reinen HTML-Erstellung intensiv Gebrauch von DHTML und JavaScript gemacht. Projektphasen Es werden insgesamt fünf Phasen des Projektes unterschieden: I. Kick-Off II. Umsetzung des Programms III. Tests IV. Abnahme durch Projektleiter V. Erstellen der Dokumentation I. Kick-Off Im ersten Schritt ist das Pflichtenheft und die Feinspezifikation zu erstellen. Der genaue Workflow der Anwendung ist zu definieren. Es wird ermittelt, welche Schnittstellen zu anderen Programmteilen geschaffen werden müssen und welche Informationen an welcher Stelle darzustellen sind. Fernerhin ist eine Genehmigung / Abnahme dieser Feinspezifikation durch den Projektleiter (Ausbilder) vor Beginn der Umsetzung vorgesehen. II. Umsetzung des Programms Die tatsächliche Umsetzung der einzelnen Programmteile: 1. Integration in bestehende Systeme, Schnittstellen 2. Erstellung und Verwaltung der Newsletter selbst 3. Newsletter-Versand: Der eigentliche E-Mail-Versand 4. Zugriff für Empfänger III. Tests Es wird eine formale Programmverifikation sowie eine Reihe vollständiger Anwendungstests durchgeführt, ergänzend zu den bereits während der Entwicklungsphase fortlaufend durchgeführten Funktionstests. IV. Abnahme durch Projektleiter Vor der endgültigen Fertigstellung des Programms ist das Projekt vom Projektleiter zu überprüfen und abzunehmen. Diese Projektphase dient gleichzeitig als Puffer für ggf. erforderliche Programmänderungen. V. Erstellen der Dokumentation Neben der eigentlichen Projektdokumentation ist eine interne Entwickler-Dokumentation für die Programmierer von $Firma sowie eine kurze Anleitung für Anwender des Moduls zu erstellen. Abschätzung Zeitaufwand: 10h Phase I. Kick-Off davon: - 6 h Erstellung Feinspezifikation - 2 h Entwurf Datenbankstruktur - 2 h Genehmigung durch Projektleiter 32 h Phase II. Programmierung davon: - 8 h Integration in bestehende Systeme, Schnittstellen - 10 h Erstellung und Verwaltung der Newsletter selbst - 8 h Newsletter-Versand - 6 h Zugriff für Empfänger 6 h Phase III. Tests 4 h Phase IV. Abnahme durch Projektleiter 18 h Phase V. Dokumentation davon: - 4 h interne Dokumentation - 4 h Dokumentation für Anwender - 12 h Projektdokumentation Gesamter Zeitaufwand: 70 h Dokumentation Die Dokumentation beinhaltet den üblichen Prozessbericht und eine Präsentation des fertigen Produktes. Als Anlagen sind geplant: 1. Erstelltes Pflichtenheft, zusätzlich ggf. erforderliche Abweichungen vom Pflichtenheft 2. Software-Dokumentation für den internen Gebrauch: - 2a. Schnittstellenbeschreibung des Moduls - 2b. Struktur der Datenbank 3. Kunden-Dokumentation: Beschreibung der Anwendung des Moduls für den Redakteur Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
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.