Projektstarter: Projekt Coden - Wo fang ich an?

Hallo Leute.

Ich will zum ersten mal ein größeres Projekt starten.

Wo fange ich da am besten an? Oder nein. In welcher reinfolge arbeitet man am besten alles ab?

Design, Technik, CMS

Design, CMS, Technik

Ich würde es so machen das ich erstmal die Technik mache und nur das gröbste was dafür nötig ist an html hinschreiben wir Forumlare z.B..
Dann das Design und dann das CMS schreiben.
Wir würdet ihr das machen?

mfg

Phil alias der Projektstarter Oo

  1. Moin!

    Ich will zum ersten mal ein größeres Projekt starten.

    Und da geht es um? Kuchenbacken?

    Wo fange ich da am besten an? Oder nein. In welcher reinfolge arbeitet man am besten alles ab?

    Es gibt keine einzig denkbare Reihenfolge.

    Design, Technik, CMS

    Design, CMS, Technik

    Ich würde es so machen das ich erstmal die Technik mache und nur das gröbste was dafür nötig ist an html hinschreiben wir Forumlare z.B..
    Dann das Design und dann das CMS schreiben.
    Wir würdet ihr das machen?

    Was heißt denn bei dir "die Technik machen". Das ist so allgemein formuliert, dass man die Evaluation und Installation eines CMS darunter verstehen kann - warum dann noch separat ein CMS schreiben?

    Und warum das Design zuerst? Design ist flexibel, die zugrundeliegende Technik ist mit Templates und CSS in der Lage, jedes Design darzustellen. Umgekehrt ist ohne Technik gar kein Design darstellbar.

    Die grundsätzlichste Frage ist doch: Kannst du programmieren? Besitzt du also die Fähigkeit, aus einer großen, umfassenden, aber wenig spezifischen Aufgabe wie "das Projekt" immer kleiner werdende Teilaufgaben herauszulösen, deren Abhängigkeiten zu verstehen und diese dann schließlich zu lösen - sei es durch Entscheidung von Fragen, durch Schreiben von Code, oder durch "Design".

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. Also okay.. hab mich wirklich schlecht ausgedrückt.

      Design -> das Äußere auftreten
      Technik -> alles was im hitnergrund abläuft,
      Top100 lister erstellen, Login, Referer u.s.w. halt das was das Projekt macht.

      CMS -> Der ADmin Bereich der mir später ermöglicht News zu schreiben, User zu verwalten und und und...

      Ich kann oder besser hab den Umgangn mit HTML, PHP, MySQL, CSS, JavaScript

      Kalkuliert und Zielgruppe all das habe ich schon ich würd einfach gerne wissen .. wo fang tihr an zu programmieren und zu scripten..

      mfg

      Projektstarter

      1. Hallo,

        mach dir n Plan:

        • mal grössere rote Kreise mit den Funktionen (Anwendungsfälle, wie z.b. Top100 Liste), die du erstellen willst/sollst
        • verbinde diese roten Kreise miteinander wenn sie von einander abhängig sind (mit Richtungsangabe)
        • mal kleinere blaue Kreise in die grösseren roten und schreibe da hinein, welche Voraussetzungen die jeweilige Funktion braucht
        • verbinde die blauen Kreise miteinander wenn sie von einander abhängig sind (mit Richtungsangabe)
        • verbinde die blauen Kreise auch über die roten Kreise hinweg miteinander wenn sie von einander abhängig sind (mit Richtungsangabe)
        • fange jeweils mit den Kreisen an, auf die die meisten Pfeile/Abhängigkeiten zeigen (die brauchst du wahrscheinblich als erstes)
        • gibt es mehrere Möglichkeiten, nimm die zuerst, die am schwierigsten erscheint

        ... halt das was das Projekt macht.

        Unzureichende Aussage. Beantworte dir selbst "was das Projekt macht". Das "Projekt" besteht ja auch aus Design dachte ich?

        CMS -> Der ADmin Bereich der mir später ermöglicht News zu schreiben, User zu verwalten und und und...

        Was CMS bedeutet, wissen die meisten hier, nur ein CMS selbst besteht nach deiner Weltanschauung ja auch wieder aus Design und Technik). Ein CMS ist auch eine spezielle Funktion/Anwendung, während Technik und Design einfach abstrakt sind.

        Zu "und und und ..." siehe oben: Mach dir einen Plan, was willst du, was brauchst du dazu und warum. Pläne macht man sich, wenn man sie am meisten braucht (und das tust du, glaub mir) und am wenigsten machen kann.

        Kalkuliert und Zielgruppe all das habe ich schon ich würd einfach gerne wissen .. wo fang tihr an zu programmieren und zu scripten..

        Wenn du mit dem Design anfangen willst, weil es dir z.b. als am schwierigsten erscheint, dann mach dir einen statischen Design-Prototypen und übernimm später die erfolgreichen Teile davon.
        (Wenn du keine Informationen zum Anzeigen hast, wie willst du dann dein Design validieren/verifizieren).

        Wenn du mit der Technik anfangen willst (nach dem Motto, scheissegal wie's aussieht, es sollen erstmal nur die Informationen rauspurzeln, die sollen), dann implementiere einen technischen Prototypen (Datenbankmodell, Queries, Darstellungssemantik). Wenn du aus der gewonnenen Erfahrung mit diesem sagen kannst, dass du deine Funktionen damit ausreichend abdecken kannst, dann übernimm ihn, wenn nicht, bau einen neuen besseren.

        Ich persönlich fange meistens hinten an (das liegt aber daran, dass ich mehr Datenbankmensch als GUI Frickler bin).

        Ciao und Gut Nacht, Frank

  2. Hallo,

    es hängt zwar auch ziemlich davon ab, wass du genau unter einem für dich grösseren Projekt verstehst ... aber ich würde mal mit folgenden Dingen anfangen (in entsprechender Rei_he_nfolge *scnr*), ganz grob:

    • Anforderungen -> Analyse und Risikobewertung (inkl. geschätzten Aufwand)
    • Plattformunabhängige Modellierung (und erneute Risikobewertung)
    • Plattformabhängige Modellierung (und erneute Risikobewertung)
    • Implementierung (möglichst eines Vertikalschnitts durch das "Projekt" und zwar) von dem was am risikoreichsten erscheint
    • Testen
    • Implementierung der restlichen Dinge (jajaja, sehr pauschal)
    • Testen, Testen, Testen (Validierung dessen, was herauskommt)
    • Verifizierung dessen, was herauskommt mit den eingangs erwähnten Anforderungen

    Ich verstehe zwar nicht ganz, wie du den Begriff "CMS" speziell getrennt von den noch abstrakteren Begriffen Design und Technik meinst, aber intuitiv würde ich mich darum zuletzt kümmern in einer horizontalen Ebene.

    Für die o.g. Punkte (Analyse und Modellierung) brauchst du keine 2 Wochen am Stück aufwenden und brauchst auch keine Heerschar an Analysten, jedoch solltest du die Zielgruppe deines Projektes mit einbeziehen. Du arbeitest schliesslich nicht um deiner und der Technik willen sondern für die Zielgruppe. Und die Arbeitsergebnisse sollten auch (mindestens für dich) schlüssig dokumentiert sein.

    Einfach ins Blaue hineinzu-"coden" führt in 85% der Fälle zu (S)Crap-Code (den man hinterher (nach der Überarbeitung) unbedingt entsorgen sollte)

    So long, Frank

      • Anforderungen -> Analyse und Risikobewertung (inkl. geschätzten Aufwand)

      Was heisst hier "Risikobewertung"?

      [...]

      Ich würde gleich den Kontakt zum Abnehmer in die Plaunungen miteinfliessen lassen, damit der seinen "Prototyp" kriegt und immer schön spielen kann und Feedback geben kann (oder auch nicht, aber dann _hätte_ er Feedback geben können).

      [...] jedoch solltest du die Zielgruppe deines Projektes mit einbeziehen. Du arbeitest schliesslich nicht um deiner und der Technik willen sondern für die Zielgruppe.

      Die "Zielgruppe" ist jetzt nicht zu verwecheln mit den Abnehmern, oder? Und wer ist jetzt Abnehmer (Eigenabnahme?)?

      Und die Arbeitsergebnisse sollten auch (mindestens für dich) schlüssig dokumentiert sein.

      Und die investierte Zeit (Hey, btw, was macht Dein Zeiterfassungstool?).

      Einfach ins Blaue hineinzu-"coden" führt in 85% der Fälle zu (S)Crap-Code (den man hinterher (nach der Überarbeitung) unbedingt entsorgen sollte)

      Man kann nicht ins Blaue hineinkodieren, ich habe das früher gemacht, als ich noch keine Ahnung hatte (1979-1997 ;). Macht Spass, bringt Teilergebnisse, bringt letztlich das gute alte Scheitern, weil irgendwas nicht funzt (und auch nicht funzen kann).

      1. Servus,

        das Zeiterfassungstool liegt hier bei mir in benutzbarer Form herum, bzw. ist auf Arbeit in Einsatz. Chräcker und Alexander (letzterer hat sich überhaupt nicht zu einer Antwort bequemt) haben sich ja nicht mehr weiter gemeldet und Interessse bekundet. Eigentlich war es ja auch nur ein kleiner Spass/Versuch für mich, ob ich die gewünschten Anforderungen so einfach und flink umsetzen kann (ohne ein Monstrum draus werden zu lassen). "Keep it simple"-Prinzip

        "Risikobewertung" ... wie wahrscheinlich ist, dass Anforderung X aufgrund ihrer Komplexität fehlerhaft oder gar falsch implementiert wird. Es spielen auch die Komponenten "ich kenne mich damit nicht so aus" und vorhandene Infrastrukturen eine Rolle.

        "Zielgruppe" ... Evt. ist es Auftragsarbeit, evt. Frickelei für sich selbst oder für eine imaginäre Gruppe von Internetbenutzern (ich geh mal von einem Webprojekt aus). Ich wollte nicht dieses tolle neudeutsche Bullshit-Wort "Stakeholder" benutzen. Anyway, den mein ich aber.

        Man kann nicht ins Blaue hineinkodieren, ich habe das früher gemacht, als ich noch keine Ahnung hatte (1979-1997 ;).

        Entweder man kann nicht oder man kann (du hast es früher gemacht?). Was wolltest du jetzt damit sagen?

        1979 bis 1997 ... du hattest sehr lange Zeit keine Ahnung, wie es scheint. ;)

        So long,
        Frank

        1. 1979 bis 1997 ... du hattest sehr lange Zeit keine Ahnung, wie es scheint. ;)

          Absolut richtig, angefangen bin ich 1974 mit einem Eduscho-Taschenrechner, ich erinnere mich noch als wäre es heute als das kleine silbern glänzende Ding am frühen Nachmittag geliefert worden ist und stellvertretend von mir in Empfang genommen worden ist. Ich habe dann die mitgelieferte Batterie reingestopselt und schwupp - man war ja aus dem Öffentlich-Rechtlichen ein wenig vorgebildet - die Aufgabe 4x5 (es war das Produkt einer zweistelligen natürlichen Zahl) eingegeben, nach vielleicht 1 Sekunde nach Drücken der "="-Taste wurde das Ergebnis angezeigt, gab man das Produkt zweier grösserer Zahlen in Berechnung, dann musste man auch länger warten, schätzungsweise bis zu 5 Sekunden.

          Meinen ersten Programmierbaren hatte ich dann 1979 (ein Sharp für 300,-DM), die Apple II, C64er, Ataris und anderen Rechner gingen an mir vorbei bis ich 1987 für 3.000,-DM einen Schneider PC (2 "Floppy"-Laufwerke, keine Harddisk, eine Winchester-Platte (20MB) wurde für ca. 800,-DM nachgerüstet).

          1998 wurde ich dann IT-Profi, seit vielleicht 2002 weiss ich um was es geht. BTW - weisst Du um was es geht im IT-Bereich?

          Die meisten ITler (Einfach mal fragen "Was ist IT?") und BWLer (Hier hat sich die Frage nach der Mehrwertsteuer bewährt) wissen meiner Erfahrung zufolge nicht um was es geht. Aber, was solls, 99% der bisherigen Menschen sind unaufgeklärt (im Sinne der europäischen Aufklärung) gestorben und auch zurzeit dürften bundesweit nur ca. 20% als aufgeklärt betrachtet werden, erdweit siehts natürlich noch schlechter aus. (Ich bezweifle, dass es galaxienweit deutlich besser aussieht bzw. aussehen wird.)

          1. Hallo Hamster!

            1998 wurde ich dann IT-Profi,

            Schon wieder... :)

            Viele Grüße aus Frankfurt/Main,
            Patrick

            --

            _ - jenseits vom delirium - _
            <hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash>
        2. Man kann nicht ins Blaue hineinkodieren, ich habe das früher gemacht, als ich noch keine Ahnung hatte (1979-1997 ;).

          Entweder man kann nicht oder man kann (du hast es früher gemacht?). Was wolltest du jetzt damit sagen?

          Man kann es nicht, wollte ich sagen. Wenn Du es kannst, dann sieht es nur so aus als ob Du es kannst. An anderer Stelle erwähnst Du sinnvollerweise, dass Du bei den Daten anfängst. Und auch, wenn Du es nicht tust, dann hast Du eine klare Vorstellung bzgl. der Anforderungslage und Du kodierst vielleicht schon ein wenig GUI und frickelst vielleicht am Webserver herum, aber Du hast eine mehr oder weniger klare Vorstellung bzgl. des noch nicht datenseitig Bereitgestellten.

          Ins Blaue hineinkodieren heisst für mich:

          • mit den erfoderlichen Techniken/Technologien unvertraut zu sein
          • Schwierigkeiten mit dem Datendesign und -zugriff zu haben
          • nicht in Schichten zu denken (Bsp.:Historisierungsschichten, Nutzer-/Berechtigungsschichten, Designschicht, Darstellungsschicht)
          • mal dieses mal jenes zu machen und Problembeladenes zurückzustellen
          • bspw. am Design herumzufrickeln und eine fehlerhaft implementierte Beziehung zwischen zwei Entitäten unerkannt links liegen zu lassen

          Ist jetzt alles ein wenig philosophisch, sollte aber die Fragestellung des Threadinitiators durchaus berühren.

          1. Hi,

            ja genau deswegen schrieb ich ja, dass "ins Blaue hineinzu-proggen/coden/scripten" in 85% aller Fälle zu Crap-Code führt den man überarbeiten und dann wegwerfen sollte.

            Ansonsten stimme ich deiner voll Aussage zu. :)

            So long, Frank

            1. Ansonsten stimme ich deiner voll Aussage zu. :)

              Ich lege Wert auf die Tatsache, dass ich hier meist vollkommen nüchtern Beiträge einstelle.

  3. Ich würde es so machen das ich erstmal die Technik mache und nur das gröbste was dafür nötig ist an html hinschreiben wir Forumlare z.B..
    Dann das Design und dann das CMS schreiben.
    Wir würdet ihr das machen?

    Ich würde erst "das System" schreiben, also das Back-End. Also 1.) Datendesign (ich setze ein RDBMS voraus) 2.) den Datenzugriff 3.) die Datenanalyse (kann auch zurückgestellt werden bei "dynamischer" Anforderungslage).

    Dann frickel ich (oder jemand anderes) mir (oder jemand anderem) das GUI zusammen und am Schluss *Trara Tüttüttüt* wird das Design draufgelegt. Da dürfen dann auch gerne Graphiker und die Leute mit den "Supertools" wie Dreamweaver ran.

    (Stell Dir mal vor was passieren würde wenn erst die Dreamweaver-Leute loslegen würde. ;)
    (Oder bist Du Dreamweaver-Spezialist? ;)