-
Gesamte Inhalte
984 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
54
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von stefan.macke
-
-
vor 8 Stunden schrieb SuRReal2k:
Das Projekt ist allerdings kein firmeninternes, sondern ein Kundenauftrag.
Welche Kosten kalkulierst du denn überhaupt? Eure internen Projektkosten, die dem Kunden in Rechnung gestellt werden? Dafür ist egal, ob der Kunde sich einen Server angeschafft hat. Und falls ihr ihn im Auftrag des Kunden angeschafft habt, rechnest du den ganzen Server mit rein (denn den muss er euch ja bezahlen). Ob und wie der Kunde ihn dann abschreibt, ist für deine Projektkosten irrelevant.
Falls du eine Amortisationsrechnung für den Kunden erstellst (warum auch immer das deine Aufgabe sein sollte), gehört die AfA natürlich mit dazu,
-
Grundsätzlich solltest du dich als Prüfling mit der rechtlichen Lage bzgl. der Nutzung von Logos usw. auseinandersetzen. Aber ich vermute, dass kein Prüfer dir einen Punkt abziehen wird, wenn du nicht hinter jedes "Microsoft" im Text ein "(r)" schreibst (was ich tatsächlich schon so gesehen habe). Ich finde das für den Lesefluss eher nervig. Und in der Präsentation sieht das auch sehr seltsam aus. Ich würde mich als Prüfer dadurch sogar aufgefordert sehen, Fragen zum Thema Markenrecht zu stellen!
Ich will nicht sagen, dass das Thema unwichtig ist. Die Präsentation ist allerdings nicht öffentlich und du verdienst kein Geld damit. Also sollten sich die rechtlichen Konsequenzen stark im Rahmen halten.
Aber egal wie du dich entscheidest: Die Prüfer könnten dir im einen wie im anderen Fall Fragen dazu stellen. Also bereite dich entsprechend vor.
- SebastianB. reagierte darauf
-
1
-
vor 32 Minuten schrieb larsson:
Deswegen würde ich auch von Büchern abraten
Na das passt jetzt aber nicht so recht. Welches Lernmaterial ist denn didaktisch besser aufbereitet als ein fundiertes und lektoriertes Fachbuch? Ich würde Einsteigern immer zu einem (guten) Buch raten!
- SebastianB. reagierte darauf
-
1
-
vor 4 Stunden schrieb Haolong:
Eine Ausbildung kann man doch auf 2 Jahre verkürzen, nicht wahr?
Du kannst auch einfach eine Zeit lang in dem Beruf arbeiten und dann ohne zusätzliche Ausbildung eine Externenprüfung ablegen. Normalerweise sind dafür 5 Jahre einschlägige Berufserfahrung notwendig (z.B. bei kompletten Quereinsteigern, die 5 Jahre als Entwickler arbeiten ohne die geringste Ausbildung in diesem Bereich). Ich bin mir aber nicht sicher, ob du mit einer FISI-Ausbildung nicht sogar deutlich früher teilnehmen kannst. Denn der Prüfungsinhalt ist ja wirklich zu großen Teilen identisch (mind. GA2 und WiSo). Daher wird vielleicht sogar die Ausbildungszeit angerechnet oder so.
-
Dann würde ich vorschlagen, du legst die Kosten des physikalischen Servers auf die VM um und rechnest sie deinem Projekt zu. Du wirst ja irgendwie herausbekommen, wie viele virtuelle Maschinen auf der Hardware laufen und wie die Lastverteilung ist. Dann kannst du das einfach umrechnen.
Auch wenn die Kosten am Ende vielleicht nicht allzu hoch sind, würde ich sie nicht weglassen. Diese so genannten "eh da"-Kosten (weil die Hardware und die betreuenden Admins ja "eh da" sind, auch wenn das Projekt nicht umgesetzt wird) werden viele Prüfer hinterfragen. Ein häufiger Irrglaube bei Prüflingen ist nämlich, dass das Projekt bis auf ihre eigene Arbeitszeit nichts kostet. Aber es kommen halt auch die Stundensätze der Kollegen für die Besprechungen, die Kosten für die Infrastruktur, die des laufenden und zukünftigen Betriebs usw. hinzu.
-
vor einer Stunde schrieb KampfKatze:
Wie siehts mit Büchern aus?
Das kommt ganz darauf an, was du lernen willst. Ich würde ein Buch vorschlagen, das zu der von dir verwendeten Programmiersprache passt.
Alternativ geht immer "Clean Code" von Robert C. Martin.
Nochmal zu den Vorkenntnissen: Meine eigene Auszubildende ist auch "bei 0" gestartet und hat die beste Abschlussprüfung in unserem Bundesland gemacht. Viele Ausbilder denken sogar, dass Vorkenntnisse negativ sind, weil diese meist nicht gerade dem entsprechen, was erfahrene Entwickler "sauberen Code" nennen würden. Und Halbwissen ist manchmal schwieriger geradezurücken als ganz neues Wissen zu vermitteln.
-
Dazu brauchen wir noch ein paar mehr Informationen. Werden die Server ausschließlich für dein Projekt aufgesetzt und verwendet? Wenn nein, zu welchem Anteil nutzt dein Projekt die Server?
Grundsätzlich nimmst du die Anschaffungskosten und verteilst sie anhand des Nutzungsanteils auf dein Projekt. Die Kosten einer Lizenz kannst du bestimmt bei eurer Buchführung erfragen. Wenn es eine Paketlizenz ist, dann teil halt die Gesamtkosten durch die Anzahl an Server. Alternativ bekommst du von der Buchführung einen pauschalen Betrag für den Einsatz eines Servers, in dem ggfs. auch Wartungsarbeiten und -verträge einkalkuliert sind.
-
Ich feuer einfach mal los mit allem, was mir gerade einfällt
- Warum wird der Code überhaupt generiert?
- Wie wurde der Build-Prozess automatisiert?
- Wird der generierende Code getestet? Wie?
- Wird der generierte Code getestet? Wie?
- Alternativen zum MVC-Modell
- Wo wird bei MVC die Datenvalidierung durchgeführt?
- Unterschied Fat/Thin Controller
- Unterschied Fat/Anemic Model
- Warum wurde nicht Java 8 eingesetzt?
- Was wären Vorteile von Java 8 gewesen?
- Was ist ein Lambda-Ausdruck?
- Was kann man Schönes mit Streams in Java 8 machen?
- Unterschied checked/unchecked Exceptions in Java.
- Warum wurden die genannten Frameworks genutzt und nicht selbst programmiert?
- Wie greift man auf Annotationen zu (Reflection)?
- Wie definiert man eigene Annotationen in Java?
- Gäbe es Alternativen zur Lösung mit Annotationen? Was wären Vor-/Nachteile?
- Zu Generics: Type Erasure, Co-/Kontravarianz, Type Inference
-
Mal ne ganz andere Frage: Warum liest denn dein/e Ausbilder/in die Doku nicht? Der/die sollte dir doch sinnvolle Hinweise geben können.
-
vor 7 Stunden schrieb Fauch:
Fairerweise muss man hierzu aber noch anmerken, dass ein Blatt mit der Syntax der Prüfung beigelegt ist.
Darauf würde ich mich als Prüfling nicht verlassen. SQL ist so wichtig, dass man es einfach können muss. Und es stehen auch nicht immer alle benötigten Befehle auf dem Beiblatt. Zumindest in GA1 für FIAE gab es schon mehrfach Aufgaben, die nicht nur mit der Befehlsreferenz lösbar waren. Es waren z.B. UNION oder ANY nicht angegeben.
-
vor 7 Stunden schrieb Harry05:
z.b a left b oder b right a komm nicht das gleiche raus ??
Nein.
A LEFT OUTER JOIN B -> alle Sätze aus A und verknüpfte Sätze aus B, falls vorhanden. Falls kein passender Satz in B vorhanden ist, werden NULL-Werte für die Spalten geliefert.
A RIGHT OUTER JOIN B -> alle Sätze aus B und verknüpfte Sätze aus A, falls vorhanden, ansonsten NULL-Werte.
-
vor einer Stunde schrieb Fauch:
Meistens sind die SQL-Aufgaben aus der GA2 (dem was die beiden Berufe gemeinsam haben) deutlich einfacher. Hier ist sogar öfters schon ein join das höchste der Gefühle.
Das stimmt. Dafür kommen aber öfter mal andere Abfragen wie UPDATE oder CREATE TABLE dran anstatt "schwierige" SELECTs.
-
vor einer Stunde schrieb Fauch:
Ich kann mich nicht daran erinnern, dass in einer IHK-Prüfung schonmal explizit mit right/left joins gearbeitet werden musste - kann mich da aber täuschen.
Da kann ich widersprechen. Es gab schon mehrere Aufgaben, die ein LEFT OUTER JOIN erforderten. In einem Beispiel sollten u.a. Ferienhäuser mit ihren Kundenbuchungen ermittelt werden und es gab auch Häuser ohne Buchungen.
vor einer Stunde schrieb Fauch:Ansonsten gibt's halt bei SQL relativ einfach Teilpunkte dafür, dass man allein schon die richtigen Spalten hinter das SELECT schreibt.
Das kann ich bestätigen! Bei vielen Aufgaben gibt es die Hälfte der Punkte schon für ein "Auflisten" der Spalten und Tabellen. Also unbedingt immer hinschreiben, auch wenn man den Rest der Aufgabe vielleicht nicht lösen kann!
-
vor 1 Stunde schrieb Whiz-zarD:
Du suggierierst den Leser, dass Pseudocode auch im Alltag verwendet wird:
Und das ist schlichtweg falsch.
Nein, das ist definitiv nicht so gemeint. Ich dachte, dass es aus dem Kontext heraus klar wäre. Ich ergänze das mal:
ZitatDer Vorteil für die Prüflinge beim Einsatz von Pseudocode gegenüber den Diagrammen ist ganz klar, dass man ihn fast „runterprogrammieren“ kann, wie man es aus der täglichen Arbeit gewohnt ist.
Mein Artikel gibt die Empfehlung, von den drei gegebenen Möglichkeiten die - meiner Meinung nach - beste auszuwählen.
Und ich sage auch nicht, dass man Pseudocode im Alltag verwendet, sondern dass man die Aufgabe "runterprogrammieren" kann (wie man es im Alltag in seiner Programmiersprache tut), anstatt Diagramme zu zeichnen (wie man es wohl eher nicht tut).
Noch einmal zu deinen restlichen Ausführungen: Ich empfehle nicht Pseudocode als Werkzeug für die Praxis, sondern nur für die Prüfung, falls man vor die Wahl gestellt wird. Prüfungen in Baden-Württemberg erlauben z.B. explizit eine erlernte Programmiersprache. In den restlichen Bundesländern werden aber halt meistens nur die genannten Möglichkeiten erlaubt.
Dazu sei auch noch einmal gesagt, dass Pseudocode nicht standardisiert ist und man im Zweifel auch einfach direkt Java oder eine andere Programmiersprache hinschreiben kann. Das geht immer als "Pseudocode" durch.
vor 2 Stunden schrieb Whiz-zarD:Man bekommt aber Teilpunkte für die Aufgaben und für einen Anwendungsentwickler sind das leichtverdiente Punkte.
Das stelle ich mal zur Diskussion. Du musst in max. 20 Minuten unter Zeitdruck eine komplexe Aufgabenstellung verstehen und dann noch in Code umsetzen. Im Vergleich zu "Nennen Sie die Aufgaben eines Projektleiters." sind das keinesfalls geschenkte Punkte.
-
vor einer Stunde schrieb Chiyoko:
Und auch Cobol geht objektorientiert @stefan.macke.
Das weiß ich. Ich weiß auch, dass man in SAP mit Java anstatt ABAP entwickeln kann. Die Frage ist doch, wer das tatsächlich macht! Und stehen z.B. wirklich alle Konzepte der OO zur Verfügung oder ist das nur rangefrickelt, weil es damals mal jemand haben wollte? Ich möchte nur darauf hinweisen, dass man sich als Host-Entwickler sehr wahrscheinlich noch ein zweites Paradigma aneignen muss. Ausnahmen gibt es natürlich immer.
-
vor einer Stunde schrieb Whiz-zarD:
Du machst eine dreijährige Ausbildung zum Anwendungsentwickler und gerade deine Paradedisziplin in der Abschlussprüfung würdest du lieber auslassen wollen? Darf ich dann fragen, was du in den letzten drei Jahren gemacht hast?
Das hat wenig damit zu tun, dass man nicht programmieren kann. Hast du dir mal die Aufgaben in der Prüfung angeschaut? Dafür hast du dann nur knapp 20 Minuten Zeit und bekommst genau so viele Punkte dafür wie für deutlich weniger komplexe Aufgaben. Es ist eine rein "wirtschaftliche" Entscheidung, diese Aufgaben zu streichen, weil sie enorm aufwändig sind. Viele Prüflinge verschenken wertvolle Prüfungszeit bei diesen Aufgaben.
vor einer Stunde schrieb Whiz-zarD:aber ich würde diesem Code keine allzu große Aufmerksamkeit schenken, denn Pseudocode ist entgegen der Behauptung in diesem Text:
Auch hierzu: Schau dir bitte mal die Prüfungen an! Dort wird man meist explizit vor die Wahl zwischen Pseudocode, PAP oder Struktogramm gestellt. Es geht nicht darum, ob das in der Praxis genutzt wird oder nicht, sondern was die Prüfung fordert.
vor einer Stunde schrieb Whiz-zarD:Bestimmte Konstrukte, wie z.B. for-schleifen, verwendet man auch im Alltag nur noch sehr selten. Auch Arrays kommen nicht mehr so häufig explizit zum Einsatz, denn zu über 90% wird man nur durch die Elemente iterieren, da bieten sich dann eher Iteratoren an, anstatt eine Indexierungsvariable, um besseren und lesbaren Code zu schreiben. Ich selber kann mich auch gar nicht mehr daran erinnern, wann ich zuletzt eine for-Schleife geschrieben habe.
Das mag alles sein, ist in der Prüfung aber irrelevant. Die Aufgaben müssen programmiersprachenunabhängig gestellt sein, da es keine Standardsprache für alle Prüflinge gibt. Und Lambdas, Iteratoren usw. gibt es nicht in allen Programmiersprachen. Daher werden die Aufgaben voraussichtlich noch lange Zeit mit Arrays, for-Schleifen usw. arbeiten. In Java oder C# arbeitet man heute vielleicht anders, aber viele Prüflinge verwenden ABAP, C, PHP (ohne OO) usw. Geh also bitte nicht von deiner Programmierumgebung aus, wenn du allgemeine Tipps zur Prüfung geben möchtest.
vor einer Stunde schrieb Whiz-zarD:Switch-Anweisungen an falschen stellen erhöhen deutlich die zyklomatische Komplexität. Man sollte sie also mit Vorsicht genießen oder sie sogar eher vermeiden. Switch-Anweisungen verwende ich eigentlich eher nur noch für Factory-Methoden.
Ich stimme dir zu. Ist aber - mal wieder - irrelevant für die Prüfung. if, switch, for, while usw. sind grundlegende Programmierkonstrukte, die alle Programmiersprachen bieten. Und die werden in der Prüfung abgefragt. "Schönes" Design von Klassen usw. ist nicht Teil der Prüfung. Dafür fehlt schlicht die Zeit.
Abschließend vielleicht noch ein allgemeines Feedback, da ich schon häufiger deine Antworten auf Programmierfragen gelesen habe. Das Niveau der Prüfungen ist ein anderes, als du es vielleicht aus dem Alltag gewohnt bist. Es hilft den Prüflingen nicht, wenn du auf eine Frage nach einem switch-Statement mit "das ist doof, nimm lieber Polymorphie" anwortest. In der Praxis stimme ich dir 100%ig zu. In der Prüfung wird das aber nicht gefordert und ist teilweise sogar kontraproduktiv. Wenn du dir mal ein paar IHK-Prüfungen anschaust, wirst du das auch feststellen.
Jetzt kann man natürlich darüber meckern, dass die IHK-Prüfungen nicht mit der Zeit gehen. Und das stimmt wahrscheinlich auch. Aber ändern können wir daran erstmal nichts. Stattdessen sollten wir die Prüflinge so gut es geht auf die Anforderungen der Prüfung vorbereiten. Dass sie in der Praxis moderne Techniken anwenden sollten, steht außer Frage! Und dafür ist das Abschlussprojekt da!
- Ulfmann, JimTheLion und Fauch reagierten darauf
-
3
-
Ich würde bei der Frage nach der Ausbildung nicht die Anforderungen der Abschlussprüfung vergessen. COBOL ist eine prozedurale Sprache, in der Prüfung wird aber viel Objektorientierung abgefragt. Daher lernen die Azubis bei uns z.B. mind. noch eine weitere Sprache wie Java dazu (wir arbeiten bei uns in der Versicherung mit Natural, das sehr ähnlich zu COBOL ist). Darauf würde ich auch bei der Auswahl des Ausbildungsbetriebs achten. Drei Jahre lang prozedural programmieren und dann eine Prüfung mit Schwerpunkt auf einem anderen Paradigma absolvieren könnte schwierig werden. Sicherlich lernt man das alles auch in der Berufsschule, aber die Anwendung in der Praxis verfestigt das Wissen wahrscheinlich besser.
Ansonsten kann ich meinen Vorrednern nur zustimmen. Es wird wohl noch eine ganze Weile lang Jobs im COBOL-Umfeld geben. Aber die Tendenz ist in vielen Unternehmen auch, den teuren und schwerfälligen Mainframe-Bereich zu verlassen. Ob ich heute noch eine Karriere darauf aufbauen würde, weiß ich nicht. Ich würde beide Welten verbinden.
-
vor 2 Stunden schrieb Rick30:
Wäre eine Änderung jetzt Zulässig oder muss ich damit nun arbeiten?
Änderungen sind nicht nur zulässig, sondern ganz normal. Welches Projekt läuft in der Praxis genau nach Plan? Solange sich an deiner grundsätzlichen Aufgabe nichts ändert (also bspw. eine komplett andere Domäne für das zu programmierende Programm oder anstatt Active Directory auf einmal OpenLDAP), sollte das kein Problem sein.
Für geringfügige Abweichungen vom Projektantrag wie die deine würde ich ein separates Kapitel mit genau dieser Überschrift vorsehen.
Was genau hast du denn geändert? Wenn z.B. anstatt 3h jetzt 4h für die Doku anfallen, ist das ganz normal und muss nichtmal im o.g. Kapitel erwähnt werden (sondern nur in einem Soll-/Ist-Vergleich). Wenn du aber z.B. anstatt 20h Design auf einmal nur noch 2h brauchst, ist das natürlich eine andere Hausnummer.
-
vor 13 Minuten schrieb Whiz-zarD:
Das, was du definieren willst, ist eine sog: 1:n (One-to-many)-Beziehung.
Du meinst bestimmt m:n- bzw. Many-to-many-Beziehung. 1 Kunde -> m Module und 1 Modul -> n Kunden.
-
vor einer Stunde schrieb Rienne:
dort gibt es extra einen Punkt "Inwiefern werden Abweichungen zum Antrag erläutert"
vor 1 Stunde schrieb Saheeda:Dabei geht es eher um andere Dinge wie z.B. im Antrag steht Werkzeug X, wir haben jetzt aber doch Werkzeug Y verwendet oder im Antrag wollte der Kunde Feature X, jetzt will er aber doch Feature Y. Abweichungen bei der Zeitplanung sind ganz normal und werden meistens in einem Soll-/Ist-Vergleich am Ende der Dokumentation beschrieben.
vor 1 Stunde schrieb Saheeda:3. Ich arbeite nach TDD. Gebe ich dann bei der Zeitplanung trotzdem nur einen großen Zeitblock für Unittests an, oder sollte ich das aufschlüsseln?
Deine Beschreibung sollte der Realität entsprechen! Wenn du wirklich TDD anwendest, gibt es keinen "Block" für Tests. Deine Entwicklungszeit verlängert sich einfach etwas durch das Schreiben der Tests. Also anstatt 5h für "Entwicklung der Logik" jetzt halt 7h (Beispiel).
In vielen Dokus lese ich immer wieder Buzzwords wie TDD, Kanban, Scrum usw. und stelle dann in der Zeitplanung fest, dass das wirklich nur Schlagwörter waren. Eine lange Testphase oder ein detaillierter Entwurf mit einem Klassendiagramm gehören für mich genau zu solchen fragwürdigen Punkten (bei angeblicher Anwendung von TDD!). Analog wäre z.B. eine lange Entwurfsphase (oder die anderen "klassischen" Wasserfall-Phasen) bei Anwendung von Scrum ein Indiz dafür, dass die Methodik nicht korrekt angewendet wurde.
-
Für eine Antwort, die dir ganz sicher einen Punktabzug erspart, wende dich bitte an deine IHK. Die helfen dir sicher gerne.
Oder du stellst den genauen Wortlaut der Vorgaben hier zur Verfügung (und bekommst dann trotzdem nur eine unverbindliche Auskunft).
-
vor 31 Minuten schrieb mqr:
Konzentriere Dich mehr auf den Informatikteil.
Grundsätzlich ein guter Tipp. Aber das heißt nicht, dass die Kostenbetrachtung unwichtig ist. Im Gegenteil: das ist Pflichtprogramm in der Projektdokumentation!
ZitatDurch die Projektarbeit und deren Dokumentation soll der Prüfling belegen, daß er Arbeitsabläufe und Teilaufgaben zielorientiert unter Beachtung wirtschaftlicher, technischer, organisatorischer und zeitlicher Vorgaben selbständig planen und kundengerecht umsetzen [...] kann.
§ 9, Verordnung über die Berufsausbildung im Bereich der Informations- und Telekommunikationstechnik
-
vor 12 Minuten schrieb projekt2016:
bei manchen gehe ich davon aus, dass diese wenn sie Bruttolohn schreiben eigentlich (Bruttolohn + Sozialaufwendungen des Arbeitgebers meinen, manchmal auch noch + Gemeinkosten).
Davon gehen die Prüfer allerdings nicht aus. Das würde einen Punktabzug geben, da die Fachbegriffe nicht korrekt verwendet wurden und außerdem die Kalkulation auch noch falsch ist. Davon mal abgesehen, dass kein Prüfling "Lohn" bekommt...
-
Es ist eigentlich auch nicht unbedingt deine Aufgabe als Informatiker, die Stundensätze zu kalkulieren. Die bekommst du vom Chef, der Buchhaltung oder wem auch immer genannt.
Aber in vielen Unternehmen gibt es die Zahlen wohl nicht (oder die Prüflinge fragen einfach nicht). Dann muss man natürlich irgendwie die Kosten des Projekts berechnen, um die Wirtschaftlichkeit nachzuweisen. Und dabei geht es natürlich um die Kosten für das Unternehmen, also muss alles eingerechnet werden, was der Chef bezahlt. Und das sind zusätzlich zum Bruttogehalt (bzw. eigentlich der Ausbildungsvergütung) insb. die Sozialabgaben und Gemeinkosten. Da aber niemand von dir erwarten kann, die Gemeinkosten selbst zu berechnen, bist du spätestens hier auf eine Aussage deines Unternehmens angewiesen.
Die Beispielrechnung oben ist sicherlich unvollständig (sind es z.B. wirklich 220 Arbeitstage?) und nur ein Beispiel (insb. für den Formelsatz in LaTeX). Man fährt sicherlich besser, wenn man die pauschalen Sätze des Arbeitgebers verwendet. Die lassen sich von den Prüfern nicht so leicht hinterfragen. Aber jeder Prüfling muss trotzdem unbedingt erklären können, wie sich diese Stundensätze zusammensetzen (also z.B. von Gehalt über Sozialabgaben bis Gemeinkosten und Gewinn).
State of the Art JavaEE Technologien
in Java
Geschrieben
Wir machen mehrere Projekte mit JavaEE. Spring ist eine Alternative zu EE. Die "reinen" EE-Standards, die häufig verwendet werden, sind wohl JPA als ORM (z.B. mittels Hibernate), JSF für das Frontend (z.B. mit PrimeFaces), JAX-RS für REST (z.B. Jersey) und CDI um alles zu verdrahten (mittels @Inject usw.).
Aber das schöne an Java EE ist ja die große Auswahl (ich glaube es sind 32) an Spezifikationen, die aufeinander abgestimmt sind. Du kannst also z.B. auch JAXB für XML einsetzen oder JTA für Transaktionen, wenn du sie brauchst. Mit Version 7 sind einige wichtige Technologien ergänzt worden. Und die Schwergewichtigkeit der alten Versionen ist aufgelöst. Java EE 7 ist schon wirklich einfach und braucht wenig Code.