Zum Inhalt springen

Ich bitte um eine Bewertung meines Projektantrags


Gnoraz

Empfohlene Beiträge

Hallo,

ich würde mich über eine Bewertung meines Projektantrags sehr freuen. Konstruktive Kritik würde mir sehr weiter helfen :)

___________________________________________________________________________

Thema

Entwicklung einer Klasse zum nachträglichen Ersetzen von Platzhaltern in einer PDF-Datei.

Projektbeschreibung

3.1 Ist-Zustand

Es wurde ein Prüfprogramm auf Basis von C# unter Verwendung von Visual Studio entwickelt. Dieses dient der rechnergestützten, wiederkehrenden Prüfung der analogen Rechenschaltungen der Reaktorschutzsysteme, sowie Neutronenflusssysteme der Kernkraftwerksanlagen XXXX und XXXXXX.

Dieses Programm muss von den Gutachtern des TÜV entsprechend qualifiziert werden, erst dann ist das Prüfprogramm für den Einsatz dieser Prüfungen im Kernkraftwerk zugelassen.

Unter Berücksichtung der Sicherheitsauflagen einer solchen Software muss gewährleistet sein, dass die Prüfergebnisse korrekt auf dem Prüfprotokoll ausgegeben werden, eine gewollte oder unbeabsichtigte Manipulation muss erschwert werden.

3.2 Soll-Konzept

Als Teilprojekt des Prüfsystems entwickle ich eine eigenständige Klasse unter Verwendung von C# und der Entwicklungsumgebung Visual Studio 2010. Diese Klasse soll es ermöglichen eine bereits generierte PDF nachträglich so zu verändern, dass in ihr enthaltene Platzhalter mit den entsprechenden Werten des Prüfsystems ersetzt werden. Diese Platzhalter weisen einen definierten Nummernbereich zur exakten Identifikation der durch den Prüfbetrieb entstandenen Werte auf.

Ist die Wordvorlage nun entsprechend mit Platzhaltern für die Werte versehen, wird aus ihr eine dekomprimierte PDF generiert, welche weitere Manipulationen der Messwerte durch den Benutzer im befüllten Bericht ausschließt. Die von mir zu entwickelnde Klasse soll nun diese in die Vorlage integrierten Platzhalter mit den dazugehörigen Werten entgegennehmen und die in der PDF-Protokollvorlage enthaltenen Platzhalter mit Werten befüllen. Diese Verfahrensweise hat den Vorteil, dass das Layout eines Prüfprotokolls auch ohne eine weitere Änderung des Quellcodes des Prüfprogramms angepasst werden kann. Da lediglich das Prüfprotokoll nach einer Änderung erneut qualifiziert werden muss und nicht das komplette Prüfprogramm, hält sich bei dieser Methode der Aufwand in Grenzen. Wohingegen die Qualifizierung des Prüfprogramms nach einer Quellcodeänderung erheblichen Aufwand bedeuten würde. Außerdem wird dem Kunden ermöglicht schnell und unkompliziert neue Protokollvorlagen mit allen komfortablen Möglichkeiten der Formatierung in Word zu erstellen.

Projektumfeld

Das Projekt wird in den Räumlichkeiten der Firma XXX bearbeitet.

- Entwicklungsumgebung: Visual Studio 2010

- Eingesetztes Betriebssystem: Windows 7 32 bit

- Zielsystem: Windows 7 32 bit

- Programmiersprache: C#

- Quellcodeverwaltung: Microsoft Visual Sourcesafe

Das Projekt stellt ein Teilprojekt dar, welches in ein durch den TÜV zu qualifizierendes Prüfsystem für den Kunden XXX, integriert wird.

Projektphasen

Ist-/Soll-Analyse (2 Stunden)

Analyse der technischen Spezifikationen und Aufbau des PDF-Formats von Adobe (20 Stunden)

Erstellen eines Grobentwurfs (2 Stunden)

Erstellen eines Klassenentwurfs/Feinentwurf (4 Stunden)

Entwicklung eines Prototypen (4 Stunden)

Entwicklung der PDF-Klasse (12 Stunden)

Testen der Klasse und Fehlerkorrektur (8 Stunden)

Dokumentation der Projektarbeit (10 Stunden)

Erstellung der Projektpräsentation (6 Stunden)

Puffer (2 Stunden)

Gesamtbearbeitungszeit: 70 Stunden

Dokumentation

Art: Prozessorientierte Projektdokumentation

Aufbau:

Titelblatt

Inhaltsverzeichnis

1. Einleitung

2. Problemstellung

2.1 Ist-Analyse

2.2 Soll-Konzept

3. Projektplanung

3.1 Zeitlicher Ablauf

4. Analyse des PDF-Formats von Adobe

5. Entwurf

5.1 Klassenentwurf

6. Umsetzung

7. Testphase

8. Begriffserklärung

9. Quellenangabe

10. Anlagen

10.1 Quellcodedokumentation

10.2 Anwenderdokumentation

Link zu diesem Kommentar
Auf anderen Seiten teilen

Aus deinem Antrag kann ich leider nicht erkennen was du nun genau machen willst. Erst steht da etwas von PDFs und das du in diesen Platzhalter ersetzen möchtest. Dann aber schreist du das die Manipulation deiner Protokolle erschwert werden muss was denn nun? Wenn du ein mal ein PDF hast was geschützt ist dann wirst du es schwer haben da überhaupt noch was zu ersetzen. Denn die Daten in dem PDF sind dann nicht mehr im Klartext zu sehen sondern in einem speziellen binären Format.

Ich kann im Moment nicht glauben das du die pdf Spec mit mehreren 1000 Seiten in deinem 70 Std. Projekt auch nur ansatzweise lesen und verstehen kannst um das dann noch nach deinen Anforderungen umzusetzen. Zumal das Thema Signierte PDFs und weitere spezielle Schutzmechanismen eher nur schlecht oder überhaupt nicht öffentlich dokumentiert sind. Ohne fertige API sehe ich nicht das das Projekt umsetzbar ist.

Hinzu kommt das mir nicht klar ist was du dann noch mit den Wordvorlagen machen möchtest?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Aus deinem Antrag kann ich leider nicht erkennen was du nun genau machen willst. Erst steht da etwas von PDFs und das du in diesen Platzhalter ersetzen möchtest. Dann aber schreist du das die Manipulation deiner Protokolle erschwert werden muss was denn nun?

Sollte ich hier bei der Stelle, dass die Manipulation erschwert werden soll erwähnen, dass damit die Manipulation durch den Benutzer gemeint ist? Ich dachte das geht daraus hervor.

Wenn du ein mal ein PDF hast was geschützt ist dann wirst du es schwer haben da überhaupt noch was zu ersetzen. Denn die Daten in dem PDF sind dann nicht mehr im Klartext zu sehen sondern in einem speziellen binären Format.

Eine standard PDF liegt im komprimierten Format vor, hier ist die Rede von einer unkomprimierten PDF, dort ist zumindest der Inhalt klarschriftlich lesbar.

Ich kann im Moment nicht glauben das du die pdf Spec mit mehreren 1000 Seiten in deinem 70 Std. Projekt auch nur ansatzweise lesen und verstehen kannst um das dann noch nach deinen Anforderungen umzusetzen. Zumal das Thema Signierte PDFs und weitere spezielle Schutzmechanismen eher nur schlecht oder überhaupt nicht öffentlich dokumentiert sind. Ohne fertige API sehe ich nicht das das Projekt umsetzbar ist.

Die Dokumentation von Adobe über die technischen Spezifikation des PDF Formats umfasst ca. 800 Seiten, das ist wahr. Jedoch werde ich für mein Vorhaben sicherlich nicht die komplette Spezifikation analysieren müssen, sondern jediglich das was ich für mein Projekt benötige. Dies würde die basics des PDF Formats betreffen und wie PDF mit Inhalten und Schriften verfährt. Eine API ist für das Projekt nicht vorgesehen.

Hinzu kommt das mir nicht klar ist was du dann noch mit den Wordvorlagen machen möchtest?

Geht aus dem Text nicht klar genug hervor, dass eine Protokollvorlage zunächst in Word erstellt wird, der Kunde dann noch das Layout beliebig anpassen kann und dann daraus eine PDF entsteht, welche für den Einsatz im Programm verwendet wird? Wäre es besser diesen Schritt garnicht zu erwähnen sondern gleich von einer fertigen Vorlage im PDF-Format auszugehen ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

soweit ich weiss und falls deine lokale IHK nichts anderes sagt, ist die Erstellung der Abschlußpräsentation nicht in den 70 Stunden enthalten.

Gruß Martin

Hrm das war mir seither entgangen, da werde ich nochmals genauer nachsehen. Danke für die Info :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Neben dem schon von schiller256 Genannten, habe ich auch Verständnisprobleme mit der Prozeßkette: Word - pdf erstellen - pdf modifizieren

warum passiert das nicht direkt, zB mit einem entsprechenden PDF-Druckertreiber der nebenbei auch modifiziert?

Ich verstehe nun nicht ganz, was du mit diesem Druckertreiber meinst, meinst ich solle lieber einen Druckertreiber schreiben der das modifiziert? Das ist wohl nicht machbar :)

Word wird im späteren betrieb kein Bestandteil der Prozesskette mehr sein. Es liegt eine PDF-Vorlage vor, diese wird durch die Klasse modifziert, fertig.

--> Word und andere Software ausser dem Prüfprogramm ist auf den ausführenden Prüfrechnern nicht vorhanden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie willst du denn in einem PDF was du für deine Verarbeitung im Klartext hast nachträglich gegen weitere Veränderungen sichern? Ich werde auch mehrmaligem lesen aus dem Antrag nicht schlau. Wenn ich mal davon ausgehe das du eine simple pdf Datei hast die ${platzhalter} enthält die du dann ersetzen möchtest. Dann brauchst du dich erstmal überhaupt nicht mit der PDF Spec auseinander setzen. Denn das kannst du recht einfach mit suchen und ersetzen machen. Das wäre dann mit Sicherheit kein FIAE Abschlussprojekt.

Danach kann aber immer noch jeder deine PDF verändern wie er möchte. Wenn du das dann aber unterdrücken willst wäre es wirklich sinnvoll deine bearbeitet PDF Datei noch mal durch einen Druckertreiber zu jagen und sie somit zu signieren. Damit sie nicht mehr von jedem bearbeitet werden kann. Wieso es dann aber zu bearbeiten unbedingt eine PDF Datei sein muss verstehe ich dann nicht.

Die 800 Seiten sind aber nur die basics da wird wenn überhaupt nur ganz oberflächlich auf die Sicherheitsfeatures eingegangen. Es gibt nicht ohne Grund nur wenige Produkte auf dem Markt die Signierte PDFs erzeugen können.

Alternativ könntest du auch über xpdf oder fpdf nachdenken. Dann erstellst du als Vorlage eine PDF Datei und öffnest sie dann zusammen mit der xpdf/fpdf Datei in diesen Dateien stehen dann deine echten Werte drin. Das ist dann in etwa genauso sicher wie eine suchen und ersten Lösung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich kann im Moment nicht glauben das du die pdf Spec mit mehreren 1000 Seiten in deinem 70 Std. Projekt auch nur ansatzweise lesen und verstehen kannst um das dann noch nach deinen Anforderungen umzusetzen.

Man darf in einem Abschlussprojekt doch sicherlich auch bereits vor Projektbeginn vrohandenes Wissen nutzen oder Komponenten verwenden, die dieses Wissen umsetzen? ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie willst du denn in einem PDF was du für deine Verarbeitung im Klartext hast nachträglich gegen weitere Veränderungen sichern? Ich werde auch mehrmaligem lesen aus dem Antrag nicht schlau. Wenn ich mal davon ausgehe das du eine simple pdf Datei hast die ${platzhalter} enthält die du dann ersetzen möchtest. Dann brauchst du dich erstmal überhaupt nicht mit der PDF Spec auseinander setzen. Denn das kannst du recht einfach mit suchen und ersetzen machen. Das wäre dann mit Sicherheit kein FIAE Abschlussprojekt.

Danach kann aber immer noch jeder deine PDF verändern wie er möchte. Wenn du das dann aber unterdrücken willst wäre es wirklich sinnvoll deine bearbeitet PDF Datei noch mal durch einen Druckertreiber zu jagen und sie somit zu signieren. Damit sie nicht mehr von jedem bearbeitet werden kann. Wieso es dann aber zu bearbeiten unbedingt eine PDF Datei sein muss verstehe ich dann nicht.

Die 800 Seiten sind aber nur die basics da wird wenn überhaupt nur ganz oberflächlich auf die Sicherheitsfeatures eingegangen. Es gibt nicht ohne Grund nur wenige Produkte auf dem Markt die Signierte PDFs erzeugen können.

Alternativ könntest du auch über xpdf oder fpdf nachdenken. Dann erstellst du als Vorlage eine PDF Datei und öffnest sie dann zusammen mit der xpdf/fpdf Datei in diesen Dateien stehen dann deine echten Werte drin. Das ist dann in etwa genauso sicher wie eine suchen und ersten Lösung.

Ich habe mir das bereits schonmal angesehn. Einfaches Suchen und Ersetzen ist dies bei weitem nicht. Wer das schonmal versucht hat weiss, dass jedes einzelne Zeichen in einer PDF mit einem definierten Abstand dort eingetragen wird, würde ich nun einfach einen Text ersetzen, würden sich ettliche Buchstaben einfach überlagern. So ist es dem Benutzer schonmal nicht möglich den Text einfach so zu verändern.

Über zusätzliche Sicherungsmechanismen werde ich mir noch Gedanken machen. Die Dateien sind aber ohne hin über CRC-Prüfsummen geschützt, dies gehört jedoch nicht zu meinem Projekt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Muss ich mir im Antrag wirklich schon so tiefgehende und detaillierte Gedanken über das Projekt machen, dass der Antrag im Prinzip schon eine Dokumentation des Projekts darstellt?

Mich würde nun interessieren:

- Was wäre noch zu ergänzen um den Antrag etwas verständlicher zu machen?

- Ist die Zeitgliederung in Ordnung?

- Ist der Punkt Dokumentation in Ordnung?

Ich weiss eure Mühe zu schätzen, das Projekt jetzt schon so umfassend ausklügeln zu wollen, aber muss man das tun?

Natürlich informiert man sich im Vorab schonmal über das Thema in welches man vorhat sich zu begeben. Und daraus resuliert

- Einfaches Suchen udn Ersetzen ist nicht möglich

- Texte werden in Streamobjekten abgelegt, welche mit dem zLib Algo komprimiert sind.

- dekomprimieren würde also auch wieder gehen.

- um Text zu verändern müssen mehrere Teile der PDF neu generiert werden

- die Referenztabelle der Objekte

- Die Schriftartparameter des Schriftartdictionaries

- das Streamobjekt selbst.

- und weitere...

In meinen Augen ist dies ein schönes 70 Stunden Projekt. Ich sehe nun momentan nicht was dagegen sprechen würde dies so umzusetzen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

In meinen Augen ist es eben kein FIAE Projekt ein Bibliothek für das manipulieren von PDF zu bauen. Denn das ist wenn du es richtig machen willst in 70 Std. nicht machbar. Zumal es bereits fertige Produkte gib die dir PDF erzeugen. In meinen Augen ist es auch wenig sinnvoll in einem Antrag davon zu reden die Manipulation von den Dokumenten zu erschweren/ nicht zu erlauben. Dann aber selbst unkomprimierte und unsignierte Dokumente durch deine Bibliothek zu manipulieren. Zum Schluss fallen dann wieder Dokumente heraus die eben auch noch weiterhin manipuliert werden können.

Ich habe bereits durch einfaches suchen und ersetzen auch PDF Dokumente bearbeitet. Die ersten PDFs die Banken als Bestätigung für Überweisungen erzeugt haben waren recht einfach zu manipulieren. Da konnte man recht einfach eine Kontonummer ändern oder eben auch einen Betrag oder Namen. Inzwischen ist das nicht mehr so einfach möglich.

Am besten schreibst du deinen Antrag nochmal vielleicht wird dann auch klarer was du möchtest. Denn aus deinem bisherigen Antrag geht das nicht hervor. Hast du dir fpdf oder xpdf auch mal angeschaut? Ich finde deinen Lösungsansatz auch echt Fragwürdig vor dem Hintergrund das du eine Manipulation eigentlich unterbinden willst.

Link zu diesem Kommentar
Auf anderen Seiten teilen

In meinen Augen ist es eben kein FIAE Projekt ein Bibliothek für das manipulieren von PDF zu bauen. Denn das ist wenn du es richtig machen willst in 70 Std. nicht machbar. Zumal es bereits fertige Produkte gib die dir PDF erzeugen. In meinen Augen ist es auch wenig sinnvoll in einem Antrag davon zu reden die Manipulation von den Dokumenten zu erschweren/ nicht zu erlauben. Dann aber selbst unkomprimierte und unsignierte Dokumente durch deine Bibliothek zu manipulieren. Zum Schluss fallen dann wieder Dokumente heraus die eben auch noch weiterhin manipuliert werden können.

Ich habe bereits durch einfaches suchen und ersetzen auch PDF Dokumente bearbeitet. Die ersten PDFs die Banken als Bestätigung für Überweisungen erzeugt haben waren recht einfach zu manipulieren. Da konnte man recht einfach eine Kontonummer ändern oder eben auch einen Betrag oder Namen. Inzwischen ist das nicht mehr so einfach möglich.

Am besten schreibst du deinen Antrag nochmal vielleicht wird dann auch klarer was du möchtest. Denn aus deinem bisherigen Antrag geht das nicht hervor. Hast du dir fpdf oder xpdf auch mal angeschaut? Ich finde deinen Lösungsansatz auch echt Fragwürdig vor dem Hintergrund das du eine Manipulation eigentlich unterbinden willst.

Ich danke dir für deine Kritik. Ich werde den Antrag nochmal neu formulieren, damit etwas klarer hervorgeht wie ich mir das vorgestellt habe. :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Projektbeschreibung

3.1 Ist-Zustand

Es wurde ein Prüfprogramm auf Basis von C# unter Verwendung von Visual Studio entwickelt. Dieses dient der rechnergestützten, wiederkehrenden Prüfung der analogen Rechenschaltungen der Reaktorschutzsysteme, sowie Neutronenflusssysteme der Kernkraftwerksanlagen xxxxx und xxxxx

Dieses Programm muss von den Gutachtern des TÜV entsprechend qualifiziert werden, erst dann ist das Prüfprogramm für den Einsatz dieser Prüfungen im Kernkraftwerk zugelassen.

Derzeit fehlt eine Möglichkeit, die vom Prüfprogramm erzeugten Werte in einem Protokoll anzuzeigen oder auszudrucken.

Die Protokollvorlagen hierfür sollen im PDF-Format vorliegen. Der Kunde wünscht, das Layout für eine solche Protokollvorlage beliebig definieren zu können.

3.2 Soll-Konzept

Als Teilprojekt des Prüfsystems entwickle ich eine eigenständige Klasse unter Verwendung von C# und der Entwicklungsumgebung Visual Studio 2010. Diese Klasse soll es ermöglichen eine bereits generierte PDF nachträglich so zu verändern, dass in ihr enthaltene Platzhalter mit den entsprechenden Werten des Prüfprogramms ersetzt werden. Diese Platzhalter weisen einen definierten Nummernbereich zur exakten Identifikation der durch den Prüfbetrieb entstandenen Werte auf.

Die von mir zu entwickelnde Klasse soll die in die Vorlage integrierten Platzhalter mit den dazugehörigen Werten entgegennehmen und die in der Protokollvorlage enthaltenen Platzhalter mit Werten befüllen. Diese Verfahrensweise hat den Vorteil, dass das Layout eines Prüfprotokolls auch ohne eine weitere Änderung des Quellcodes des Prüfprogramms angepasst werden kann. Da lediglich das Prüfprotokoll nach einer Änderung erneut qualifiziert werden muss und nicht das komplette Prüfprogramm, hält sich bei dieser Methode der Aufwand in Grenzen. Wohingegen die Qualifizierung des Prüfprogramms nach einer Quellcodeänderung erheblichen Aufwand bedeuten würde. Außerdem wird dem Kunden ermöglicht schnell und unkompliziert neue Protokollvorlagen mit allen komfortablen Möglichkeiten der Formatierung in Word zu erstellen und daraus eine PDF zu generieren, welche als neue Vorlage dient.

ich habe nun eine neue Projektbeschreibung verfasst. Den Aspekt der Sicherheit habe ich mal ganz aussen vor gelassen, da dieser Punkt wohl ausserhalb des Projekts geregelt ist. Eine leichte Sicherheit gewährt das Format dennoch. Dies würde dann näher in der Projektdoku beschrieben werden.

Was haltet ihr davon? Verständlich genug?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Naja versuchen kannst du es gerne so. Von mir würdest du den Antrag mit den bereits genannten Punkten wieder zurück bekommen. Spätestens im Fachgespräch würde ich dir ganz genau auf den Zahn fühlen.

Denn für mich ist das vollkommen unsinnig aus einer Word Vorlage erst ein PDF zu erstellen ums es dann anschließend zu manipulieren. Um dann wieder ein PDF zu erzeugen. Dafür gibt es eben bereits fertige Lösungen die Formulare in PDF Dateien mit Werten füllen können. Dafür brauchst du nicht selbst im Binärstrom der PDF Datei rum zu manipulieren.

Alternativ würde es sich anbieten gleich Word als Eingabe zu nutzen und dann dort Werte zu setzen um dann ein PDF zu erzeugen. Dafür gibt es bereits fertige Produkte zu kaufen.

Vielleicht schaut ja noch ein anderer auf deinen Antrag drauf und ich sehe das alles nur viel zu schwarz.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Sowas ist ja als Anforderung ein Kopfschuss.

Selbst wenn man sich auf PDF festlegt, dann gibt dir der Kunde ein PDF mit einem Scan der Vorlage und du hast mit dem Textersetzen die A..karte.

Also das find ich nun irgendwie nicht schlüssig, wieso sollte der Kudne eine Vorlage scannen?! Das macht null Sinn!

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...