Zum Inhalt springen

Fragen zum Thema "Entwicklungsumgebung Hardware und Software"


Empfohlene Beiträge

Hallo, momentan hänge ich beim Thema "Entwicklungsumgebung Hardware und Software" fest. Genauer gesagt geht es um die Plattformauswahl, notwendige Netzkomponenten, IDEs und geeignete Testsysteme.

Ich habe wenig Anhaltspunkte, denke aber mal dass grobe Informationen ausreichen, die ich von euch verifizieren lassen möchte.

Plattformauswahl: Hier stellt sich sicher die Frage, auf welchen Plattformen und genauen Betriebssystemen soll die zu entwickelnde Software laufen? (Windows 7, Windows Server 2012, Linux Ubuntu, Mac OSX,...). Dementsprechend muss natürlich auch die passende Programmiersprache gewählt werden. .Net Sprachen eignen sich bspw. am besten für Windows Plattformen. Dazu noch das Stichwort Cross-Plattform.

notwendige Netzkomponenten: Mir erschließt sich nicht so recht der Zusammenhang. :confused: Ich denke, wenn es um ein IT-System aus mehreren Teil geht, müssen entsprechende Netze/das Netz aufgebaut werden? Wenn die Software Internet benötigt, müssen Internetzugänge geschaffen werden sowie Firewalls zur Sicherheit?

IDEs: Für einige Sprachen passende IDEs aufzählen können, evtl. pro Programmiersprache 2 IDEs vergleichen.

Testsysteme: Diese sollten identisch mit dem Produktivsystem des Kunden sein. Eventuell Kompromisse aufzählen können und wie weit das Testsystem 1:1 nachgebaut werden muss. Wenn die zu entwickelnde Software bspw. nur 3 Server im Gesamtsystem betrifft, müssen nur 3 Server für das Testsystem beschafft werden.

Passt das soweit? Es handelt sich um eine IHK Weiterbildung in der ich nicht programmieren muss. Es geht eher um das Projektmanagement.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

bist du dir sicher, das man sich heute so genau darüber noch Gedanken machen muss? Ich meine es gibt virtuelle Maschinen und Frameworks die für verschiedene Plattformen entwickelt wurden. ( die .NET Sprachen müssen daher nicht nur auf Windows Maschinen laufen). Hast du dir einmal Docker angesehen? Docker ermöglicht es dir innerhalb Windows oder innerhalb Linux ziemlich unabhängig zu sein.

Gezielt zu deinen Fragen.

Plattformauswahl: Ich persönlich habe die Erfahrung gemacht, das im Serverbereich sich Linux langsam durchsetzt. Dies setzt jedoch voraus, dass es Administratoren gibt die sich damit auskennen. Die Community ist sehr groß und es wird in der Regel sehr schnell geholfen. Auch gibt es Firmen, die Supportverträge abschließen und einen 24 Stundenservice anbieten. Jedoch auf Clientseite hast du sehr oft die Windows Umgebungen. Da die meisten Anwender wohl eher privat selbst eine Windowsmaschine haben und damit verbundene Schulungskosten für das Betriebssystem entfallen.

Netzkomponenten: Vielleicht wird da ja die Cloud-Technologie gemeint? Also Festplattenplatz, Office 365 etc. Es könnte allerdings auch auf Thin-Clients gehen. Musst hier einfach mal nachfragen. Auch die Frage nach der Quellcodeverwaltung macht hier wohl sinn.

IDE: Ich als .NET Entwickler ... ganz klar :) Nimm das Visual Studio. :) Also für die .NET Sprachen ist das VS2015 in der Express Version eines der besten IDEs. Eclipse oder NetBeans für Java und Borland hatte ich damals bei C++. Die funktionalen Sprachen sind auch sehr im kommen. Ich selbst programmiere in F# in VS. Haskel kann man sehr gut in Leksah entwickeln.

Testsysteme: Identisch mit dem Produktivsystem bist du wohl nie. Selten hat man die Daten im Testsystem 1:1 zur Verfügung. Es hat sich die Konstellation Produktion/Staging/Development durchaus durchgesetzt. Im Development brauch man nur ein paar Informationen. Hier wird ständig getestet und Komponenten ausgetauscht. Continuous integration sollte dir da ein Begriff sein. Unit-Tests, Integrationstests kann man mit den verschiedenen Komponenten wie xUnit usw hervorragend lösen. Bei jedem Checkin in deine Sourceverwaltung ( Git, SVN, TFS ) sollten dann automatisiert alle Tests laufen und bei Erfolg auf dem Developmentsystem ausgerollt werden.

Staging hat dann durchaus eine direkte Nähe zur Produktion. Es sollten die Daten aus der gleichen Quelle gelesen werden. Aber du musst darauf achten, das die Speicherung dann nicht in die Produktionsdaten erfolgt. Es kann also nur eine Produktivnahe Umgebung erstellt werden.

Ich hoffe dir vielleicht ein paar nützliche Tipps gegeben zu haben.

LG

Christian

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo nochmal, nun habe ich mir das Ganze nochmal genauer angeschaut und deine Ansätze sind wie gesagt super.

Eine Frage hätte ich aber noch zum Thema Produktion/Staging/Development. Ist das die sinnvollste Reihenfolge? Im Internet steht Development am Anfang und Produktion am Anfang. Es gibt, wenn auch nicht unbedingt schön, deine Reihenfolge, dass erst Software produziert wird, dann wird getestet und danach wird nach-entwickelt für die finale Version.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo. Ich denke was du meinst ist die agile Entwicklung. Selbst verständlich ist das eine sehr gute Möglichkeit dem Kunden Fortschritt zu präsentieren und bei Bedarf direkt Fragen und Änderungen einzubauen. Aber dem Kunden möchtest du doch nicht eine völlig fehlerhafte Software präsentieren oder?

Es sollte zumindest einmal irgendwo laufen, was NICHT deine Maschine ist. Du wirst dich erschrecken was manchmal nicht funktioniert. Und sei es nur eine Abhängigkeit die nicht direkt mit ins Verzeichnis kopiert wird. Du hast mich nach dieser Möglichkeit direkt gefragt und je nach Größe des Unternehmens sollte sich eine getrennte QA (Qualitätssicherung) damit befassen. Dies muss aber nicht heißen, dass große Listen abgearbeitet werden müssen.

Es kommt am Ende sowieso immer darauf an wie die Infrastruktur aufgebaut werden kann und welche Resourcen zur Verfügung stehen. Was mit dem Kunden abgesprochen ist und in wie fern er auf die agile Vorgehensweise eingeht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Entschuldige dass ich nochmal nachfragen muss. Ich glaube durch meine Unachtsamkeit ist der entscheidende Satz unverständlich und es kam zu einem Missverständnis. :upps

Muss bei der Konstellation nicht Development am Anfang stehen, dann kommt Staging und am Ende Production? In deinem ersten Post hattest du Production/Staging/Development geschrieben, in deinem neusten die von mir genannte Konstellation. War das ein Fehler in deinem ersten Beitrag oder verstehe ich es einfach nicht? :( Laut Google gibt es auch nur die D/S/P Variante.

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...