software entwicklung

Diskutiere software entwicklung im Java Basics - Anfänger-Themen Bereich.
H

Heyoka955

hallo und schönen abend,

wir haben eine aufgabe bekommen wo wir zwei personals entwickeln sollen für ein Software, wo man Hausaufgaben verwaltet und diese abgibt und korrigiert wird.
Wir sollen zwei personas entwickeln für mehrere Nutzergruppe, wie zbs Schüler und Lehrer etc?
und wir sollen das nur dokumentieren mehr nicht.

Wie stellt man sich sowas vor?
was meint man genau mit personals und wie entwickelt man vorallem sowas, ich weiß dass nab aufjedenfall eine Datenbank braucht
 
M

mrBrown

Lies bitte noch mal die Aufgabenstellung und guck mal, was genau da gefordert wird, „personals“ sind’s ganz sicher nicht...
 
M

mrBrown

Und jetzt gehst du zu Google und suchst mal nach Personas.

Da du Datenbank erwähnst, bist du bisher zumindest völlig auf dem Holzweg...
 
H

Heyoka955

dann gehe ich so vor für die aufgabe 1, erstmal erkläre ich wie man ein persona entwickelt und dazu habe ich die seite gefunden.


nachdem ich das gemacht habe, erwähne ich wie das als Beispiel aussehen kann für die nutzergruppe student und korrektor.

Und dann überlege ich wie ich das in java zu implementieren habe ? oder ist das überflüssig?
und wenn ja würde ich das gerne nach dem solid prnzip gestalten?
 
H

Heyoka955

Entwickeln Sie zwei Personas aus unterschiedlichen Nutzergruppen der Software. Sie finden weiter unten im Dokument eine Erklärung, was Personas sind und Tom Scheuvens als ein Beispiel für eine Persona. Ihre Persona soll sich klar von Tom unterscheiden.

ImportantBei der Bewertung der Aufgabe werden wir darauf achten, dass das die Personas als Prototypen der jeweiligen Nutzergruppen verwendbar sind. Wir werden darauf achten, dass ausreichend viele Informationen vorhanden sind, aber auch, dass nicht vollkommen irrelevante Details aufgeführt werden.


11793
 
M

mrBrown

Entwickeln Sie zwei Personas aus unterschiedlichen Nutzergruppen der Software. Sie finden weiter unten im Dokument eine Erklärung, was Personas sind und Tom Scheuvens als ein Beispiel für eine Persona. Ihre Persona soll sich klar von Tom unterscheiden.
Und jetzt beantworte dir anhand dieser Aufgabenstellung mal dieses beides:

dann gehe ich so vor für die aufgabe 1, erstmal erkläre ich wie man ein persona entwickelt
Und dann überlege ich wie ich das in java zu implementieren habe ? oder ist das überflüssig?
und wenn ja würde ich das gerne nach dem solid prnzip gestalten?
 
H

Heyoka955

Und jetzt beantworte dir anhand dieser Aufgabenstellung mal dieses beides:
also das untere was ich sagte ist überflüssig, das heißt ich muss gucken wie man personas hersstellt also die daten herbekomme plus ich muss auch so eine Tabelle angeben für zwei verschiedene nutzergruppen
 
M

mrBrown

Da fehlt nichts. Aber gucken, wo man die Daten herbekommt, ist etwas unglücklich ausgedrückt.

Wie zur Hölle kommst du drauf, dass du in irgendeiner Art und Weise das Programm beschreiben sollst?
 
M

mrBrown

Angenommen, du hast direkt nach dem erstmaligen Lesen der Aufgabenstellung hier gepostet, hättest die Aufgabe seit etwa 2h fertig sein können...
 
H

Heyoka955

Da fehlt nichts. Aber gucken, wo man die Daten herbekommt, ist etwas unglücklich ausgedrückt.

Wie zur Hölle kommst du drauf, dass du in irgendeiner Art und Weise das Programm beschreiben sollst?
ka weil da stand entwickeln, ich dachte solle beschreiben wie man das in java programmieen soll.
 
M

mrBrown

Immerhin hast du das Wort "Aufgabe" nicht als Aufforderung zum Aufgeben interpretiert..
 
H

Heyoka955

Immerhin hast du das Wort "Aufgabe" nicht als Aufforderung zum Aufgeben interpretiert..
so ich habe meine lösung hier für die aufgabe 1
Code:
== Aufgabe 1: Personas
    Zu aller erst muss man erklären wie man generell Personas entwickelt und dazu gibt es folgende Schritte an die man sich halten muss.
    Zu aller erst ist es wichtig dass man versteht was ein Personas ist, darunter versteht man eine Mensch-Comeputer-Interaktion, die einen Prototyp für eine Nutzergruppe darstellt.
    Im folgenden werde ich erläutern wie man ein Persona herstellt.

    Als ersten Schritt muss man recherchieren bzw man muss Informationen sammeln wofür die Personas gebraucht werden. In dem Falle brauchen wir Personals für ein Abgabesystem
    und dies beinhaltet folgende Nutzergruppen wie Korrektor, Organisator und Studierende. Es ist wichtg dabei zu beachten wie viele Persona man braucht daher ist die Recherche so notwendig.
    
    
    Nachdem man genung Informationen gesammelt hat, muss man demographsiche Informationen zu den Personas bzgl. ihrer Tätigkeit im Privatem und ihre Tätigkeit für das Abgabesystem hinzufügen.
    Anbei angefügt wäre es passend wenn man ein Foto vom jeweiligen Persona zur Verfügung stellt. Man sollte in dem Fall nur angeben das Alter, Name, Geschlecht und in welcher Semester man sich befindet vielleicht wäre es hier sogar sinnvoll wenn man erwähnt zu welcher Nutzergruppe man gehört ob man Studierender oder Korrektor ist.
    
    
    Nachde man die basic-Informationen über die Personas preisgegeben hat, muss man nun persöhnliche Interessen und Tätigkeiten auch background genannt erwähnen, am besten wäre es wenn man angeben könne was man im privatem gerne macht und seine Leidenschaften erläutert bzgl unserer Nutzergruppen könne man erwähnen wie einem das Studium fällt ider welche Moduel besonders spaßig sind.
    
    
    Als vierten Schritt wäre es essentiel die Ziele und die Motivation jeweiliger Nutzergruppen anzugeben, hier wäre es beduetsam bezüglich sich auf das Studium zu beziehen, bzw was man nachdem Bachelor oder Master machen möchte etc.
    
    
    
    
    Anschließend zeige ich zwei Beispiele für die Nutzergruppen Studierender und Korrektor:
    Bsp : Studierender:
    
    
    |===
    |Name | Hintergrund | Ziel

    a| image::Akin.png[]

    [quote, Akin Hans (23)]
    Ich freue mich so sehr ein neues Abgabesystem zu programmieren! Auas nervt !

    | Ich studiere an der Hhu Informatik und befinde mich im vierten Semester, derzeit belege ich Info 4 und Propra 1.
    
    Ich hatte nie in der Schule informatik aber dennoch habe ich mich dafür stark interesiert vorallem im Ki-Bereich.

    Meine Interessen sind Boxen, Fitness und Musik etc.

    | Mein Ziel ist es die Zulassung für propra zu bekommen ebenfalls möchte ich meinen Master in Ki machen.
    |===
    
    
    
    Bsp : für Korrektor
    |===
    |Name | Hintergrund | Ziel

    a| image::Rudolf.png[]

    [quote, Rudolf Bumi (27)]
    Ich freue mich so sehr im Auas 2.0 die neuen Abgaben zu korrigieren und den Studenten zu helfen.

    | Ich bin Doktorand und schreibe meine Doktorarbeit in Compilerbau
    
    Meine Interesse sind Programmieren, Feiern und chillen.

    Meine Motivation fürs Studium war, dass ich besondere Neigung zu mathematischen Sachverhalte habe.

    | Mein Ziel ist es den Leuten zu helfen, die im Studium Probleme haben mit den Aufgaben.
    |===
    
    
denkt ihr dass das reicht?

ist alles in ascidoc geschrieben
 
A

AndiE

Ich denke, das ist ein halber Kilometer am Ziel vorbei.

So wie ich das verstanden habe, geht es um ein Produkt( einem Abgabe und Ablegesystem für Hausaufgaben), dass von mehreren Nutzergruppen benutzt wird- Studierenden und Korrektoren.

Nun sollst du zwei Persona erstellen, die diese Nutzergruppen lebhaft machen.

Der Persona Studierende steht also für den BWL-Studenten ebenso wie für die KI-Studentin, den ET-Studenten usw.

Ebenso bei den Korrektoren.

Hintergrund wäre für mich eher zu sehen, wie sieht deren Arbeitsalltag derzeit aus( Ist-) und als Ziel, was soll das neue System für sie bringen(Soll).

Evtl. solltest du dir tatsächlich mal klarmachen, wie so ein System funktionieren könnte- Stichpunkt Swimlane.
 
M

mrBrown

so ich habe meine lösung hier für die aufgabe 1
Alles bis "Bsp : Studierender:" ist überflüssig. Du sollst einfach nur zwei Personas schreiben, nicht erklären, wie man die schreibt.
Du sollst ja auch nicht beschreiben, wie man Kartoffeln züchtet, wenn du einkaufen gehen sollst...


Die erste Persona finde ich etwas unglücklich, grad das "Zitat" würde ich da so nicht sehen - er ist Nutzer des Systems, nicht der Programmierer.
Die zweite sieht schon besser aus.

Ich denke, das ist ein halber Kilometer am Ziel vorbei.
[...]
Nun sollst du zwei Persona erstellen, die diese Nutzergruppen lebhaft machen.

Der Persona Studierende steht also für den BWL-Studenten ebenso wie für die KI-Studentin, den ET-Studenten usw.

Ebenso bei den Korrektoren.
Ne, das, was er gemacht hat, sind schon Personas.

Personas sind nicht abstrakt gehalten, es gibt also keinen Persona "Studierende", der mehrere Studenten umfasst.
Personas sind ganz konkrete Personen, in diesem Fall dann ein konkreter Student und ein konkreter Korrektor.
 
Zuletzt bearbeitet:
H

Heyoka955

Alles bis "Bsp : Studierender:" ist überflüssig. Du sollst einfach nur zwei Personas schreiben, nicht erklären, wie man die schreibt.
Du sollst ja auch nicht beschreiben, wie man Kartoffeln züchtet, wenn du einkaufen gehen sollst...


Die erste Persona finde ich etwas unglücklich, grad das "Zitat" würde ich da so nicht sehen - er ist Nutzer des Systems, nicht der Programmierer.
Die zweite sieht schon besser aus.


Ne, das, was er gemacht hat, sind schon Personas.

Personas sind nicht abstrakt gehalten, es gibt also keinen Persona "Studierende", der mehrere Studenten umfasst.
Personas sind ganz konkrete Personen, in diesem Fall dann ein konkreter Student und ein konkreter Korrektor.
ich habe andere Beispiele gemacht und mich auf die aufgabe eher bezogen ich zeige das mal,
Code:
== Aufgabe 1: Personas
#### Lösung
Zu aller erst muss man erklären wie man generell Personas entwickelt und dazu gibt es folgende Schritte an die man sich halten muss.
Zu aller erst ist es wichtig dass man versteht was ein Personas ist, darunter versteht man eine Mensch-Comeputer-Interaktion, die einen Prototyp für eine Nutzergruppe darstellt.
Im folgenden werde ich erläutern wie man ein Persona herstellt.

* Als ersten Schritt muss man recherchieren bzw man muss Informationen sammeln wofür die Personas gebraucht werden. In dem Falle brauchen wir Personas für ein Abgabesystem
* und dies beinhaltet folgende Nutzergruppen wie Korrektor, Organisator und Studierende. Es ist wichtg dabei zu beachten wie viele Persona man braucht daher ist die Recherche so notwendig.
    
    
* Nachdem man genung Informationen gesammelt hat, muss man demographsiche Informationen zu den Personas bzgl. ihrer Tätigkeit im Privatem und ihre Tätigkeit für das Abgabesystem hinzufügen.
* Anbei angefügt wäre es passend wenn man ein Foto vom jeweiligen Persona zur Verfügung stellt. Man sollte in dem Fall nur angeben das Alter, Name, Geschlecht und in welcher Semester man sich befindet vielleicht wäre es hier sogar sinnvoll wenn man erwähnt zu welcher Nutzergruppe man gehört ob man Studierender oder Korrektor ist.
    
    
* Nachde man die basic-Informationen über die Personas preisgegeben hat, muss man nun persöhnliche Interessen und Tätigkeiten auch background genannt erwähnen, am besten wäre es wenn man angeben könne was man im privatem gerne macht und seine Leidenschaften erläutert bzgl unserer Nutzergruppen könne man erwähnen wie einem das Studium fällt ider welche Moduel besonders spaßig sind.
    
    
* Als vierten Schritt wäre es essentiel die Ziele und die Motivation jeweiliger Nutzergruppen anzugeben, hier wäre es beduetsam bezüglich sich auf das Studium zu beziehen, bzw was man nachdem Bachelor oder Master machen möchte etc.
    
    
    
    
Anschließend zeige ich zwei Beispiele für die Nutzergruppen Studierender und Korrektor:
* Bsp Studierender
    
|===
|Name | Hintergrund | Aufgabe

a| image::Akin.png[]

[quote, Akin Wahr (28)]
Ich bin so motiviert ein neues Abgabesystem zu programmieren.

| Ich studiere Informatik im vierten Semester und belege propra1. Ich finde die Aufgabe sehr spaßig.

In der Schule hatte ich kein Informatik daher muss ich einiges nachholen aber mein Anreiz treibt mich voran.

Meine Interessen sind programmieren, Fitness und Boxen, vorallem interesiiere ich mich für Ki.

Ich möchte ein neues Abgabesystem programmieren wo wir unabhängig sind von allen außerdem will ich korrekte Abgaben machen.
| Meine Aufgabe ist es Module und Übungen zu belegen und die Hausaufgaben fristgerecht abzugeben.
|===
    
    

* Bsp Korrektor

|===
|Name | Hintergrund | Aufgabe

a| image::Sami.png[]

[quote, Sami Wur (27)]
Ich bin ein Korrektor in propra 1 und freue mich auf die Abgaben und auf das neue Abgabesystem.

| Ich bin Doktorand im Bereich Deep Learning und will nach meiner Doktorarbeit in ein Groß-Unternehmen.

In der Schule hatte ich Informatik und zuhause war ich viele Bücher lesen über Ai und Complierbau etc.

Meine Interessen sind Zocken, Spazieren gehen, Leuten zu helfen und Webseiten zu designen.

Ich finde, dass sich das Auas System komplett ändern muss.
| Meine Aufgabe ist es die Abgaben zugewiesen zu bekommen und diese zu bewerten und meinen Kommilitionen zu helfen in progra1.
|===
ich kann es aber dennoch so stehen lassen wie man personas herstellt, ich meine es gibt ja keine Minuspunkte.
Ist es so besser?
 
M

mrBrown

ich habe andere Beispiele gemacht und mich auf die aufgabe eher bezogen ich zeige das mal,
Den einzigen genannten Kritikpunkt hast du genauso übernommen und es insgesamt eher schlechter gemacht....Glückwunsch.

ich kann es aber dennoch so stehen lassen wie man personas herstellt, ich meine es gibt ja keine Minuspunkte.
Ob es Minuspunkte gibt, kommt auf das Bewertungsschema an. Ich würde mich dafür einsetzen, dass es dafür Abzüge gibt.

Wenn du schon irgendwas beliebiges reinschreibst, schreib wenigstens irgendwelche coolen Funfacts oder 'n leckeres Rezept rein, davon hat der Korrektor sicher mehr...

Ist es so besser?
Nein, schlechter.
 
H

Heyoka955

Den einzigen genannten Kritikpunkt hast du genauso übernommen und es insgesamt eher schlechter gemacht....Glückwunsch.


Ob es Minuspunkte gibt, kommt auf das Bewertungsschema an. Ich würde mich dafür einsetzen, dass es dafür Abzüge gibt.

Wenn du schon irgendwas beliebiges reinschreibst, schreib wenigstens irgendwelche coolen Funfacts oder 'n leckeres Rezept rein, davon hat der Korrektor sicher mehr...


Nein, schlechter.
achso ja, kann ich umändern, ich meine ist halt nur ein kleiner fehler. Ansonsten ist alles top. ich änder das um jetzt muss ich die zweite aufgabe bearbeiten, ich hatte überlegt an uml diagram zu basteln?

Eine Kernkomponente der Software wird ein Abgabesystem werden. Ein Workflow in dem Abgabesystem ist:

  1. Studierende laden die Aufgabenbeschreibung herunter und bearbeiten die Aufgaben.
  2. Studierende laden die Lösungen in das Abgabesystem hoch.
  3. Organisatoren starten manuell die faire Verteilung von Abgaben auf Korrektoren.
  4. Organisatoren laden Nachzügler hoch, wenn aus gutem Grund die Abgabefrist verpasst wurde.
  5. Korrektoren bewerten die Abgaben.
  6. Studierende können Ihre Resultate einsehen.

Entwickeln Sie Komponenten, die den Arbeitsfluss implementieren können. Beachten Sie dabei die Konzepte, die Sie in der Vorlesung gelernt haben, insbesondere das Prinzip des Information Hidings nach Parnas. Welche Entscheidungen könnten sich möglicherweise noch ändern? Kapseln Sie diese Entscheidungen in Komponenten.

Beschreiben Sie für jede Komponente die Aufgabe, die die Komponente erfüllt und erklären Sie die Schnittstellen der einzelnen Komponenten. Erklären Sie, warum die Komponente benötigt wird und welche Entscheidung ggf. durch sie gekapselt wird. Erläutern Sie, wie der Workflow mit Ihren Komponenten funktioniert. Sie brauchen keinen Code zu schreiben!

ImportantBei der Bewertung der Aufgabe werden wir darauf achten, dass die Aufteilung in die Komponenten schlüssig erklärt wird und sich der Workflow tatsächlich wie beschrieben realisieren ließe. Wir werden auf die Verständlichkeit des Textes achten (inkl. Rechtschreibung und Grammatik). Der Text soll eine klare Linie haben und nicht "schwafeln". Eine stichpunktartige Auflistung reicht uns nicht aus.


 
H

Heyoka955

Wenn du meinst...



Du hast aber die Hinweise zur Aufgabe schon gelesen?!?
dass soll alles schlüssig sein das heißt Wir sollten das Solid Prinzip anwenden sowie eine gute Verkapselung. da steht ja auch kein code. Ansonsten weiß ich nicht was ich astelle machen soll.
 
M

mrBrown

Du machst das Studium doch als "richtiger" Student und guckst dir nicht einfach ein paar Vorlesungen neben der Grundschule an? ;)


Verständlichkeit des Textes [...] Der Text [...] stichpunktartige Auflistung reicht uns nicht aus
Auf was für ein Abgabeformat könnte das wohl hindeuten?
 
H

Heyoka955

Du machst das Studium doch als "richtiger" Student und guckst dir nicht einfach ein paar Vorlesungen neben der Grundschule an? ;)



Auf was für ein Abgabeformat könnte das wohl hindeuten?
als text aber ich kann doch vorarbeiten mit einem uml Diagramm udn dann den als text schreiben?
 
H

Heyoka955

Du kannst auch mit Förmchen im Sandkasten vorarbeiten...
Meine Idee ist es ein interface zu schreiben, public interface Hochladen mit der Methode hochladen und dieses interface wird implementiert von Studierender und und Organisator, da in der aufgabe steht das beide nutzergruppen diese hochladen können, aber ich habe ebenfalls das interface erweitert mit herunterladen, denn es wäre ja Vorteil hafter wenn auch der Organisator von der seite aus die aufgaben herunterladen kann.

Nachdem ich dieses interface implementiert habe wollte ich erstmal zwei Klassen schreiben wie Student und Organisator, die das interface implementieren und in den Klassen existieren flgende Methoden zbs student hat zwei Methoden wie +ansehen und bearbeiten und Organisator hat folgende Methoden wie die Verteilung der Aufgaben.

Danach wollte ich eine klasse schreiben korrektor und die hat eine Methode namens aufgabe bewerten aber hier habe ich das problem dass ich nicht weiß wie die Beziehung sein soll zwischen korrektor und den anderen klassen

so sieht mein uml aus
 

Anhänge

Zuletzt bearbeitet von einem Moderator:
M

mrBrown

Schmeiß alles weg was du hast, vergiss das alles, und fang noch mal von Vorne an.
 
A

AndiE

Ne, das, was er gemacht hat, sind schon Personas.

Personas sind nicht abstrakt gehalten, es gibt also keinen Persona "Studierende", der mehrere Studenten umfasst.
Personas sind ganz konkrete Personen, in diesem Fall dann ein konkreter Student und ein konkreter Korrektor.
Das mögen formal gesehen Personas sein.

In der Aufgabe steht aber, dass diese Personas beispielgebend für den Personenkreis sein, für den sie stehen. Und angelegt werden, weil man damit die Software aus Nutzersicht betrachten will. Und das kann ich beides nicht an den Personas erkennen.
 
M

mrBrown

Das mögen formal gesehen Personas sein.

In der Aufgabe steht aber, dass diese Personas beispielgebend für den Personenkreis sein, für den sie stehen. Und angelegt werden, weil man damit die Software aus Nutzersicht betrachten will. Und das kann ich beides nicht an den Personas erkennen.
Guck dir das Beispiel in der Aufgabe an.


Wenn ich über „Tom, 25 Jahre, Informatikstudent mit Hobbys XY“ schreibe, ist das ein Beispiel für einen Studenten und aus dessen Sicht kann man die Software betrachten.


Wenn da Stände „Student, 18-27 Jahre, Studiert ein Studienfach“ ist das weder ein Beispiel für Studenten, noch kann man aus dessen Sicht irgendwas machen.


Analog mit was völlig anderem: wenn du eine Beispielhafte Zahl aus N nennen sollst, nennst du auch eine konkrete Zahl (42 ist eine natürliche Zahl) und sagst nicht „eine ganze Zahl über 0“ ist ein Beispiel für einen natürliche Zahl“.
 
H

Heyoka955

also zu aufgabe 2, ich glaube was damit gemeint ist, dass man den workflow realisieren soll.

Bsp so

Aufgaben werden hochgeladen vom Organisator --> Aufgaben werden heruntergeladen vom Studenten ---> Aufgaben werden bearbeitet --- > Gespeichert ---> Verteilt --> Korrigiert

ist vllt damit gemeint? wie der Prozess sein soll?
 
A

AndiE

@mrBrown: Dann werde ich mal konkret. Das Aufgabeablagesystem wird von vielen Studenten verschiedener Fachbereiche genutzt. Wie allgemeingültig ist da "ich will ein neues System programmieren", wie es der TE anbietet?

Da er das aber nicht richtig durchdacht hat, kommt er bei der zweiten etwas ins Schwimmen.
 
M

mrBrown

@mrBrown: Dann werde ich mal konkret. Das Aufgabeablagesystem wird von vielen Studenten verschiedener Fachbereiche genutzt. Wie allgemeingültig ist da "ich will ein neues System programmieren", wie es der TE anbietet?
Die Interessen (EDIT: gemeint ist Beschreibung und andere Angaben, die nicht das Ziel des Projekts beschreiben, sonder der Identifizierung mit der Person dienen, zb Name und "spielt Basketball") der Personen in Personas sind nicht "allgemeingültig", am wenigsten das Zitat. Die sollen durchaus ganz konkret sein, so wie auch "ich will ein neues System programmieren" konkret ist. Das dieses eine Zitat in diesem Kontext wie von mir schon gesagt sehr unglücklich ist, liegt nicht daran, dass es zu konkret und zu wenig allgemeingültig ist.

Das Problem ist, dass es keine Aussage eines studentischen Nutzers ist - dieser eine Studenten baut eben nicht das System, und kann sich daher auch nicht drauf freuen.
Die Aussage aus dem Beispiel ("In meine BA baue ich denen mal ein vernünftiges Abgabesystem") ist nicht weniger konkret, hat aber das Problem, dass es gar nicht möglich ist, nicht mehr - dass kann nämlich durchaus ein gewünschtes BA-Thema seitens des Studenten sein, ob er dafür einen Betreuer findet ist eine andere Frage.

Da er das aber nicht richtig durchdacht hat, kommt er bei der zweiten etwas ins Schwimmen.
Ne, dass liegt an vielem, aber sicher nicht daran, dass man dafür Personas bräuchte.
 
Zuletzt bearbeitet:
H

Heyoka955

Eien Komponente kann auch eine Klasse sein oder Gruppe etc.

Komponenten entwerfen aber habe ich das im uml nicht gemacht ?
 
M

mrBrown

Sicher, dass die einzige Definition von Komponente "eine Klasse oder Gruppe" ist?
 
H

Heyoka955

Komponenten sind Klassen,
Bzw man verwendet die Bezeichnung Komponente wenn man mehrere Klassen hat.

Diese Klassen werden jeweils zu einem Komponent.
Am besten wäre es wenn diese sogar zusammen hängen sein können.

In unserem Beispiel könnte man drei Komponenten Bilder und in jedem Komponenten befinden sich mehrere Klassen zbs

Komponente können sein Studierender und in dieser Komponenten kann man mehrere Klassen bilden wie zbs Studierenderbearbeiten studierenderansehen
Und dies kann man auch für Korrektor machen und Organisator.
Das heißt wir machen mehrere Klassen und diese bezeichnen wir als Komponente!
 
K

kneitzel

Ich denke, er hat das gleiche Problem wie ich. Ich wollte schon antworten:

Gut, dass ich Deine Schrift nicht lesen kann, sonst müsste ich da jetzt noch im Detail drüber nachdenken. :)
 
mihe7

mihe7

Ach, "Hochladen" heißt das - ich hatte irgendwas mit Gulasch gelesen.
 
K

kneitzel

Das kann ich Dir nicht sagen, denn immer, wenn ich Dir inhaltlich antworten will, habe ich seit kurzem plötzlich auftretende Denk- und Schreibblockaden. Schlimm ist das.
Das ist ganz schlimm. So schaffen wir die #500 nicht ... Das ist wirklich kaum zu verantworten!

Sitze in der Uni habe kein Laptop zur Verfügung. Ist diese Idee richtig zur Beantwortung der Frage ,
Meinst Du denn, dass Du die Aufgabenstellung richtig verstanden hast? Oder hast Du Probleme mit dem Verständnis?
Wenn Du die Aufgabe verstanden hast: Hast Du den Lösungsweg verstanden? Gibt es fachlich Dinge diesbezüglich, die Du nicht verstanden hast?
Wenn Du in dem Bereich meinst, dass Du ein genaues Verständnis von der Aufgabe, den notwendigen fachlichen Dingen und dem Lösungsweg:
Dann kannst Du selbst schauen, ob Deine Lösung eine Lösung für die genannte Aufgabe ist.
 
H

Heyoka955

Das ist ganz schlimm. So schaffen wir die #500 nicht ... Das ist wirklich kaum zu verantworten!


Meinst Du denn, dass Du die Aufgabenstellung richtig verstanden hast? Oder hast Du Probleme mit dem Verständnis?
Wenn Du die Aufgabe verstanden hast: Hast Du den Lösungsweg verstanden? Gibt es fachlich Dinge diesbezüglich, die Du nicht verstanden hast?
Wenn Du in dem Bereich meinst, dass Du ein genaues Verständnis von der Aufgabe, den notwendigen fachlichen Dingen und dem Lösungsweg:
Dann kannst Du selbst schauen, ob Deine Lösung eine Lösung für die genannte Aufgabe ist.
Ich habe die Aufgabe nicht wirklich verstanden.
Ich habe gedacht wir sollen ein Diagramm anfertigen.
 
mihe7

mihe7

Das ist ganz schlimm. So schaffen wir die #500 nicht ... Das ist wirklich kaum zu verantworten!
Ja, tut mir auch echt leid. Vermutlich ist das der Schock, den ich zu Beginn dieses Threads erlitt, da nach nur einer Seite nichts mehr kam. Ich meine, das muss man erst mal verkraften. Mein gesamtes Weltbild drohte einzustürzen. Panik machte sich breit, ich konnte hier nur noch mit schwitzenden Händen tippen. Aber, Gott sei Dank, kam nach ein paar Tagen doch noch die Erlösung.
 
A

AndiE

Ich habe die Aufgabe nicht wirklich verstanden.
Ich habe gedacht wir sollen ein Diagramm anfertigen.
Du sollst Komponenten angeben. Wenn du nicht weißt, was das ist, und wie die funktionieren, könnte etwas experimentieren helfen.

Nimm dir eine einfach Klasse, z.B. "Name", die einen Namen speichert. Wie würde das Interface dazu aussehen? Welchen Vorteil hat es, mit dieser Klasse über dieses Interface zu kommunizieren? Nun kann man sagen, so eine Klasse mit einem Interface ist eine Komponente. Da sich das Interface anbietet, ist es ein "Lollypop". Um dies zu Nutzen benötigen die anderen Komponenten offensichtlich grafisch "Sockets", oder müssen dieses Interface implementieren. Im einfachsten Fall also die main-Methode das Interface IName, um auf Inhalte der Klasse "Name" zugreifen zu können.
 
H

Heyoka955

Du sollst Komponenten angeben. Wenn du nicht weißt, was das ist, und wie die funktionieren, könnte etwas experimentieren helfen.

Nimm dir eine einfach Klasse, z.B. "Name", die einen Namen speichert. Wie würde das Interface dazu aussehen? Welchen Vorteil hat es, mit dieser Klasse über dieses Interface zu kommunizieren? Nun kann man sagen, so eine Klasse mit einem Interface ist eine Komponente. Da sich das Interface anbietet, ist es ein "Lollypop". Um dies zu Nutzen benötigen die anderen Komponenten offensichtlich grafisch "Sockets", oder müssen dieses Interface implementieren. Im einfachsten Fall also die main-Methode das Interface IName, um auf Inhalte der Klasse "Name" zugreifen zu können.
Also könnte man eine
Komponente bilden namens hochladen und in dieser Komponente existiert ein Interface hochladen und dieses Interface wird dann für Studierender und Organisatior Verwendet?
Das wäre ein Beispiel ?
 
A

AndiE

Eine Komponente ist wie eine Klasse ein Kommunikationsobjekt. Daher wird es mit einem Substantiv bezeichnet: Customer, Person, Item usw. am besten natürlich in Englisch, oder in Deutsch ohne Umlaute (ÄÖÜ). Offensichtlich hat das Interface meist im Namen einen Bezug zu dieser Komponente (IPerson). In so einem Interface befinden sich eine Anzahl Methoden, die man typischerweise mit Verben(Tätigkeitswörtern) oder im CamelCase bezeichnet(HoseAnziehen).

Überprüfe deinen Entwurf mal danach.
 
H

Heyoka955

bitteschön also habe mich auf die Aufgabenstellung und kernkomponennte bezogen
 

Anhänge

H

Heyoka955

Ich ahbe es umgeändert ich denke so ist es jetzt richtig.
Ich habe drei Komponente Student Verwaltung und Korrektor.
Jedes dieser Komponenten behobeltet mindestens ein Interface und diese interfaces werden von den Klassen jeweils implementiert und seine Methoden des interfaces.

Zbs komponent Student beinhaltet drei interfaces namens IStdHochladen mit der Methode hochladen dann haben IStdAnsehen mit der Methode ansehen und IStdBearbeitet mit der passenden Methode und zu den drei interfaces werden drei Klassen implementiert mit den privaten Methoden.
Anhand der
Pfeile sieht man auch den Workflow.
Als erstes lädt der Student seine Aufgabe runter nachdem er die Abgabe hochgeladen hat,
Wird wird Kompoenenntr verwaltung aufgerufen und dieser gibt die Zuweisung an die jeweiligen Korrektoren und der Korrektor bewertet die und gibt die zum Studenten zurück.

Der Grund wieso ich das so abgespalten habe ist weil ich mich an das SOLID prinzip halten wollte.
 

Anhänge

A

AndiE

Ich habe drei Aktoren: Student, Verwaltung, Korrektor. Wo docken diese bei deinem Bild an? Was ist übrigens mit der Aufgabe und der Anzahl der Lösungen?

Wo beginnt der Workflow? Beim Studenten, wenn er die Aufgabe runterlädt?
 
H

Heyoka955

Ich habe drei Aktoren: Student, Verwaltung, Korrektor. Wo docken diese bei deinem Bild an? Was ist übrigens mit der Aufgabe und der Anzahl der Lösungen?

Wo beginnt der Workflow? Beim Studenten, wenn er die Aufgabe runterlädt?
Beim Studenten wenn er die Abgabe runterladt ?

Was meinst du mit docken und Anzahl der Lösungen ?
 
H

Heyoka955

Beim Studenten wenn er die Abgabe runterladt ?

Was meinst du mit docken und Anzahl der Lösungen ?
Also Verwaltung kann hochladen wenn der Student die Abgabe vergaß und zuweisen an die Korrektoren.
Verwaltung = Organisator

Und Korrektor korrigiert die jeweiligen Abgaben.
Ich habe zu allen Aufgabenbereichen und Komponenten Interface implementiert zur Abstraktion.

Denke das müsste fast richtig sein
 
A

AndiE

Du hast den Workflow nicht verstanden:

Prof. Meier erstellt eine Aufgabe. Diese stellt er über das System den Studenten bereit. Einer davon, Max, schaut sich die Aufgabenstellung an und erstellt eine Lösung. Max gibt diese Lösung ab. Prof. Meier sammelt die Lösungen seiner Studenten und verteilt diese an die Korrektoren. Dr. Paul ist einer von ihnen. Er wertet die zugewiesenen Arbeiten aus und trägt die Bewertungen in das System ein. Prof. Meier liest die Bewertungen gegen und gibt die Bewertung an die Studenten weiter. Der gesamte Vorgang wird von ihm archiviert.

So wäre die Use-Story zu dem Beispiel. Meist, aber nicht immer, greifen die Beteiligten über entsprechende Grafische Nutzeroberflächen, auch Graphical User Interfaces zu. Da haben wir wieder das böse I-Wort. Diese Interfaces muss das System und dessen Komponenten bereitstellen, oder erwarten.

Was ich bewusst vergessen habe, sind Entscheidungen, die in den einzelnen Punkten getroffen werden. Die sollen ja auch eingefügt werden.
 
K

kneitzel

@AndiE Dich hat er bald soweit, dass Du die Lösung postest, damit das Grauen ein Ende hat :)

@Heyoka955 Du tust mir wirklich leid. Als ich früher studiert habe, da gab es Vorlesungen, in denen Professoren / Dozenten ein Thema vermittelt haben. Dabei wurde auf Lehrmaterialien hingewiesen. Und es gab Übungen, in denen der Stoff dann über die Anwendung vertieft wurde.... Das waren noch Zeiten .... Heute bekommt man ganz offensichtlich nur noch die Aufgaben die man dann ohne irgendwelche Wissensvermittlung vorher lösen muss ...

Also wenn Du denkst: "das müsste fast richtig sein" - Dann denkt noch einmal drüber nach!
a) Außerhalb der Prüfung: Wie kannst Du feststellen, ob es richtig ist? Wo kannst Du nachlesen? Was fehlt Dir um sicher zu sein?
b) In der Prüfung: denk noch einmal drüber nach, wenn es die Zeit zulässt. Wenn Du meinst, dass es richtig ist: Ok. Wenn Du meinst, dass es falsch ist: Wieso? Was wäre deine Erwartungshaltung? Wenn es offensichtlich falsch ist: Schreib auf, wieso! Das kann Dir ggf. auch noch einen Punkt einbringen, weil der Prof / Dozent da erkennen kann, dass Du doch etwas verstanden hast. Das ist besonders dann wichtig, wenn du eigentlich durchgefallen bist und der Prof schaut, ob er die evtl. nur fehlenden 1 oder 2 Punkte noch irgendwo finden kann.

Also b ist vor allem in Mathe wichtig. Ein dummer Rechenfehler, den man auf Anhieb nicht findet und man kommt zu einem Ergebnis, das nicht stimmen kann. (Die 5m lange Leite, die in einem 60 Grad Winkel an eine Mauer gelehnt wurde, trifft die Mauer nicht in 7,1 m Höhe ... Sollte man dann kurz schreiben. Zumindest bei uns war der GMV, der Gesunde Menschen Verstand, immer wichtig und konnte von einer Aufgabe mit mehreren Punkten durchaus noch einen Punkt retten!)

Aber was rede ich ... ich habe ja schon erkannt, dass meine Uni Zeit (aus dem letzten Jahrtausend!) nicht auf die heutige, moderne Welt angewendet werden kann .....
 
H

Heyoka955

Du hast den Workflow nicht verstanden:

Prof. Meier erstellt eine Aufgabe. Diese stellt er über das System den Studenten bereit. Einer davon, Max, schaut sich die Aufgabenstellung an und erstellt eine Lösung. Max gibt diese Lösung ab. Prof. Meier sammelt die Lösungen seiner Studenten und verteilt diese an die Korrektoren. Dr. Paul ist einer von ihnen. Er wertet die zugewiesenen Arbeiten aus und trägt die Bewertungen in das System ein. Prof. Meier liest die Bewertungen gegen und gibt die Bewertung an die Studenten weiter. Der gesamte Vorgang wird von ihm archiviert.

So wäre die Use-Story zu dem Beispiel. Meist, aber nicht immer, greifen die Beteiligten über entsprechende Grafische Nutzeroberflächen, auch Graphical User Interfaces zu. Da haben wir wieder das böse I-Wort. Diese Interfaces muss das System und dessen Komponenten bereitstellen, oder erwarten.

Was ich bewusst vergessen habe, sind Entscheidungen, die in den einzelnen Punkten getroffen werden. Die sollen ja auch eingefügt werden.
Für mein work Flow wäre dies so;

Die Aufgabe wird runter geladen vom Studenten, die Aufgabe wird bearbeitet und anschließend hochgeladen.
Die Verwaltung sorgt dazu dass die Abgabe auf die jeweilige Korrektor verteilt wird und nachdem sie verteilt wird, korrigiert der Korrektor die Abgabe und anschließend kann der Student die Abgabe ansehen.
 
F

flopalko

Beim Studenten wenn er die Abgabe runterladt ?
Wieder geht es mal um das ewig leidige Thema mit dir: deine Rechtschreibung. Meinst du damit jetzt, dass du es so siehst oder stellt du genau die gleiche Frage, die dir gestellt wurde, zurück?

Bemühe dich wirklich mal mit deiner Rechtschreibung, in 90% der Fälle versteht niemand, was du eigentlich brauchst. Komm jetzt auch nicht wieder mit deiner Ausrede, dass du zu schnell schreibst. Ich schreibe auch schnell und schaffe es dabei verständliche und richtige Sätze zu konstruieren. Außerdem: dann musst du halt langsamer schreiben, wenn dir das hilft. Merkregel: Schreibe immer langsamer als (oder maximal gleich schnell wie) du auch denken kannst.

Bei dir Frage ich mich ernsthaft wie du eigentlich eine Zulassung zu einem Studium erhalten hast...
 
H

Heyoka955

Wieder geht es mal um das ewig leidige Thema mit dir: deine Rechtschreibung. Meinst du damit jetzt, dass du es so siehst oder stellt du genau die gleiche Frage, die dir gestellt wurde, zurück?

Bemühe dich wirklich mal mit deiner Rechtschreibung, in 90% der Fälle versteht niemand, was du eigentlich brauchst. Komm jetzt auch nicht wieder mit deiner Ausrede, dass du zu schnell schreibst. Ich schreibe auch schnell und schaffe es dabei verständliche und richtige Sätze zu konstruieren. Außerdem: dann musst du halt langsamer schreiben, wenn dir das hilft. Merkregel: Schreibe immer langsamer als (oder maximal gleich schnell wie) du auch denken kannst.

Bei dir Frage ich mich ernsthaft wie du eigentlich eine Zulassung zu einem Studium erhalten hast...
Junge Nerv nicht wenn du nicht klar kommst dann ciao
 
A

AndiE

Für mein work Flow wäre dies so;

Die Aufgabe wird runter geladen vom Studenten, die Aufgabe wird bearbeitet und anschließend hochgeladen.
Die Verwaltung sorgt dazu dass die Abgabe auf die jeweilige Korrektor verteilt wird und nachdem sie verteilt wird, korrigiert der Korrektor die Abgabe und anschließend kann der Student die Abgabe ansehen.
Fragen:
Wo kommt die Aufgabe her?
Wo wird aus der Aufgabe eine Abgabe?
Wann verteilt die Verwaltung die Abgabe? Ist das nur eines, das zerteilt wird?
Warum soll der Student die Abgabe hinterher ansehen wollen, die er eingereicht hat?
Bekommt der Student keine Bewertung zur eingereichten Antwort?
Wie viele Leute bekommen gleichzeitig so eine Aufgabe gestellt?

Wo sind die Sonderfälle? Welche gibt es?
 
H

Heyoka955

Fragen:
Wo kommt die Aufgabe her?
Wo wird aus der Aufgabe eine Abgabe?
Wann verteilt die Verwaltung die Abgabe? Ist das nur eines, das zerteilt wird?
Warum soll der Student die Abgabe hinterher ansehen wollen, die er eingereicht hat?
Bekommt der Student keine Bewertung zur eingereichten Antwort?
Wie viele Leute bekommen gleichzeitig so eine Aufgabe gestellt?

Wo sind die Sonderfälle? Welche gibt es?
Ich gebe dir Dir Antwort. Ich schreibe jetzt einen langen Text dazu
 
A

AndiE

Ich bin sauer. Der TO hat die 2. Aufgabe nicht abgegeben. Wozu der Aufwand?
 
K

kneitzel

Also ich weiß nicht, wo du was studierst. Diese Aufgaben sind aber in der Regel so gestaltet, da es problemlos machbar ist.

Ich weiß, was ich sage ist unbequem, kostet Zeit und es ist alles eine Wiederholung, weil ich und auch andere es dir mehrfach schon gesagt haben:
Es gibt keinen bequemen, schnellen Weg! Studium bedeutet, seine Zeit mit studieren zu verbringen. Wenn man sich einmal schlau macht, woher das Wort kommt, dann versteht man evtl. auch die Erwartungshaltung:
Ich hoffe, dass Du die Herkunft selbst auf der Seite finden und lesen kannst. Und was daraus folgt, darüber kannst Du Dir für Dich selbst Gedanken machen.

Was Du dringend brauchst ist eine Selbsterkenntnis: was weißt du wirklich? Was kannst du? Wie hast Du nachgewiesen, dass Du etwas wirklich kannst?

Und dann musst Du, so Du Erfolg haben willst, an Dir arbeiten. Schwächen ausmerzen ... geht nicht immer in allen Bereichen, aber fachliche Lücken lassen sich aufarbeiten!

Selbständigkeit ist existenziell. Dazu gehört, dass man eine Aufgabe als Ganzes liest. Mir fehlt zumindest komplett das Verständnis, wenn jemand die Aufgabe bringt, dabei einen Begriff nicht versteht und dann stellt sich heraus, dass dieser Begriff auch noch erläutert wird! (Sorry, aber das war Standard schon an der Schule: Aufgabe immer erst ganz lesen und dann erst starten. Idealerweise liest man alle Aufgaben von Anfang bis Ende ehe man anfängt, diese zu lösen.)

Also noch mal zurück zur ersten Aussage:
Es gibt keinen einfachen, bequemen Weg! Studieren bedeutet, sich intensiv mit Themen zu beschäftigen. Und das in eigenständiger Arbeit. Wenn Du das nicht willst, dann mach etwas anderes! Mach z.B. eine Ausbildung. Muss noch nicht einmal in der It sein. Was macht Dir Spaß? Was für Hobbies hast Du? Handwerk sucht Leute. Wenn du mit Menschen arbeiten willst: da gibt es viele Möglichkeiten..... Aber mach etwas, was Dir liegt! Und wenn du meinst, dass du das nicht willst, weil es ja in der IT dann nach dem Studium 100k+ € im Jahr als Einstiegsgehalt gibt: hör auf zu träumen! Und wenn Dir etwas nicht liegt, dann wirst du den Job nicht gut machen, du wirst neue Dinge nicht schnell erfassen u.s.w., d.h. die 100k wirst Du auch nicht nach mehreren Jahren haben .... Wurde aber wohl alles schon gesagt ....

Was ich erwarte:
Hinweise, die man bekommt, verfolgt man! Ansonsten hilft dir bald niemand mehr. So lernt man dann auch schnell Neues dazu und dann klappt es auch mit den Abgaben... (Aber das ist mir egal. Es ist Dein Studium und nicht meins!)
Du musst es nicht gleich alles meistern, aber das sollte Dein langfristiges Ziel sein!

Ok, ich bin da evtl. eine Ausnahme. Siehe mein Thread bezüglich Java Zertifizierung. Ich will Java richtig meistern, d.h. die Spezifikationen der Sprache und der VM gehören zum Basiswissen. Die Zertifizierung ist z.B. mein Weg, zu erkennen, ob ich es kann oder ob meine Selbsteinschätzung falsch war. Aber ohne auswendig lernen! Das ist sinnlos aber ich will alles im Detail kennen. Da habe ich mir z.B, diese Function<...> angesehen. Hat das hier schon einmal jemand genutzt? (Indirekt bei Lambdas ist klar, aber wirklich Code wie Function<Typ1, Typ2> myFunc = p -> doSomething(p); ???) Aber ich will es meistern, d.h. Ich will es kennen und nutzen können. Also suche ich alles, was mir was zeigen könnte, was mir noch fehlt (Dazu nutze ich derzeit diese Fragen zur Prüfungsvorbereitung ... das finde ich ganz interessant um Anregungen zu bekommen um mit Code zu spielen, Dinge nachzulesen u.s.w.)
Aber so weit musst Du nicht gehen. Du bekommst doch die Anregungen im Studium. Klare Aufgaben. Da musst du sicher gehen, dass du alles weißt, um diese Aufgaben bearbeiten zu können. Also folge Hinweisen, vertiefe Dinge, die Dir fehlten! Das ist in meinen Augen existentiell für ein erfolgreiches Studium ...

Damit bin ich jetzt aber wieder weit genug abgeschweift... und ich bezweifle, dass es die Zeit wert war...

Ich bin sauer. Der TO hat die 2. Aufgabe nicht abgegeben. Wozu der Aufwand?
@AndiE Nicht ärgern oder so. Das liegt halt ganz beim TO. Wir können nur versuchen, etwas zu helfen. Lass uns dabei Spaß haben und gut ist es.
 
Thema: 

software entwicklung

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben