Was bedeutet "interdisziplinÀr"?
Eine Disziplin bedeutet einen Teilbereich aus der Wissenschaft.
Einzelne Wissenschaften sind zum Beispiel die Wirtschaftswissenschaften, Ingenieurwissenschaften, Naturwissenschaften oder auch Geisteswissenschaften.
inter-disziplinÀr
“Inter” bedeutet “ĂŒbergreifend”. So wie ein Unternehmen, das als “Global player” weltweit, also ĂŒber mehrere Nationen, prĂ€sent ist, als inter-national bezeichnet wird.
Das bedeutet, interdisziplinĂ€re StudiengĂ€nge – und dass sind, neben einigen anderen, insbesondere Wirtschaftsinformatik und Wirtschaftsingenieurwesen – sind StudiengĂ€nge, die zwei Disziplinen behandeln und verbinden.
Das Adjektiv “multidisziplinĂ€r” wird in der Regel von “interdisziplinĂ€r” abgegerenzt. MultidisziplinĂ€r ist zum Beispiel Informatik im Hauptstudium + BWL im Nebenfach. Das Studium befasst sich mit zwei Wissenschaften, aber diese beiden Wissenschaften sind nicht aufeinander abgestimmt und behandeln keine Schnittstellen zwischen beiden Disziplinen. Ein Beispiel ist ein Germanistikstudium mit Nebenfach BWL.
Ein interdisziplinÀres Studium muss nicht unbedingt ein Studium in Richtung Wirtschaftswissenschaften + Natur-/Ingenieurwissenschaften darstellen, also völlig verschiedene Wissenschaften unter einen Hut bringen.
Ein anderes Beispiel ist das Studium Mechatronik. Mechatronik bezeichnet ein Zusammenspiel zwischen Mechanik/Maschinenlehre und Elektrotechnik und vermittelt als Studienfach die Lehrinhalte des Maschinenbaus (die eine Disziplin) und der Elektrotechnik (die andere Disziplin). Im Studium Mechatronik werden insbesondere auch die Schnittstellen, an welchen elektrische Energie in mechanische Bewegung (bzw. umgekehrt) umgesetzt wird, genauer thematisiert, Mechatronik ist daher interdisziplinÀr, wobei die beiden Disziplinen zwar verschieden, aber beide Ingenieurwissenschaften sind.
SchnittstellenfÀcher in der Wirtschaftsinformatik sind z.B. betriebswirtschaftliche Anwendungssysteme oder der Ein-/Verkauf von Informationssystemen. SchnittstellenfÀcher des Wirtschaftsingenieurwesens sind z.B. die Logistik oder der technische Ein-/Verkauf.
LagerkrĂ€fte und StabkrĂ€fte – Technische Mechanik
Bei gegebener Statik befindet sich die Konstruktion in Ruhe, d.h. sie bewegt sich nicht, verbiegt bzw. zerbricht nicht.
Die summierten KrĂ€fte jeder Dimension mĂŒssen sich daher gegenseitig aufwiegen, also Null ergeben. Dies soll an Hand eines Beispiels mit Lager- und StabkrĂ€ften verdeutlicht werden.
Gegeben sind zwei StÀbe, welche von zwei Festlagern gehalten werden und einen Punkt bzw. ein Objekt fixieren.

Die StĂ€be sind gleich lang und bilden ein gleichschenkliges Dreieck. Am BerĂŒhrungspunkt C der beiden StĂ€be ist zwischen den StĂ€ben der Winkel 2*α aufgespannt.

Auf die Konstruktion wirkt eine gegebene Kraft F auf den zu fixierenden Punkt ein. Die Kraft wirkt schrĂ€g, in einem Winkel ÎČ zur Spiegelachse des gleichschenkligen Dreiecks. Diese Kraft mĂŒssen die Lager und StĂ€be aufnehmen. In der Konstruktion befinden sich drei Lager. Die beiden Festlager, mit denen die StĂ€be am Fundament befestigt sind sowie die Stabverbindung, welche beide StĂ€be (und möglicherweise ein Objekt) zusammenhĂ€lt.

(mehr…)
Queue Datenstruktur in C#
Eine Queue (Warteschlange) ist eine First-in-First-out-(FIFO) Datenstruktur.
Die Datenstruktur Queue ist ein Stapel, auf welchem nach und nach Daten abgelegt werden.
Allerdings wird auf Elemente der Queue nur von unten zugegriffen. Das unterste Element ist das mit höchster PrioritĂ€t, nur auf dieses als erstes hinzugefĂŒgte Element kann zugegriffen werden.
Ein Pointer (Zeiger) zeigt intern immer auf das Element, welches (relativ zu den anderen Elementen) als erstes in die Queue aufgenommen wurde.
Ein einfaches “Lösche aus der Queue” gibt es nicht, ein Element kann aus der Queue mit Peek() herausgelesen und mit Dequeue() herausgelesen und zugleich entfernt werden.
An das Warteschlangenende angereiht werden Elemente mit Enqueue();
Funktionsweise einer Queue an Hand eines praktischen Beispiels:
Stellen Sie sich vor, Sie mĂŒssten eine Software fĂŒr ein Theater schreiben. Die Software soll Ticket-Bestellungen fĂŒr
VorfĂŒhrungen bearbeiten. Nun sind die Vorstellungen aber sehr schnell ausgebucht, so dass viele Tickets nicht mehr ausgestellt werden können. Bei der Ticket-Bestellung gilt jedoch “wer zu erst kommt, mal zu erst”.
Die Daten aller eingehenden Bestellungen legen Sie in eine Queue (Warteschlange). Die Daten in der Queue werden vom ersten bis zum letzten Eintrag abgearbeitet, bis die Queue vollstĂ€ndig abgearbeitet wurde oder keine PlĂ€tze mehr verfĂŒgbar sind.
Stack Datenstruktur in C#
Ein Stack (Stapel) ist eine Last-in-First-out-(LIFO) Datenstruktur.
Die Datenstruktur Stack sollte dann verwendet werden, wenn Daten gesammelt werden, jedoch immer nur ein Datenelement aktuell bearbeitet werden darf.
Das aktuelle Element ist dann das einzige, auf welches zugegriffen werden kann. Alle anderen Elemente bleiben im
Hintergrund und werden erst (und dann auch jeweils einzeln) bearbeitet, wenn das aktuelle Element abgearbeitet und vom Stapel entfernt wurde.
Ein Pointer (Zeiger) zeigt intern immer auf das Element, welches (relativ zu den anderen Elementen) als letztes auf den Stapel gelegt wurde.
Ein einfaches “Lösche aus dem Stack” gibt es nicht, ein Element kann aus dem Stack mit Peek() herausgelesen und mit Pop() herausgelesen und zugleich entfernt werden.
Ein Element kann mit Push() auf den Stack gelegt werden.
Die Funktionsweise des Stack an Hand eines praktischen Beispiels:
Stellen Sie sich einen Stapel Teller vor, welchen sie abwaschen möchten. Sie wĂŒrden sicherlich beim obersten Teller anfangen, diesen vom Stapel nehmen und abwaschen. Erst dann können Sie den nĂ€chsten Teller vom Stapel nehmen.
Gelenke in der Technischen Mechanik
Gelenke dienen Ă€hnlich wie Lager der Fixierung einer Konstruktion. Ein Gelenk soll jedoch nicht alle inneren KrĂ€fte ĂŒbertragen, sondern einer bestimmten Kraft nachgeben. So kann eine Beweglichkeit in einer Konstruktion bzw. in einem Tragwerk erreicht werden.
Innere KrĂ€fte, die bestimmte Gelenke nicht ĂŒbertragen sollen:
Moment: Momente sind die aus gegenlÀufigen KrÀften mit Hebel resultierende Drehkraft
Querkraft: Die Querkraft wirkt vertikal aus Sicht des Koordinatensystems, daher wird sie auch Vertikalkraft genannt
Normalkraft: Die Normalkraft wirkt senkrecht zur Querkraft, also horizontal.
Hashtable in C#
Hashtables (Hash-Tabellen) sind Datenstrukturen, die den Arrays sehr Àhnlich sind.
Hashtables können in C# Ă€hnlich wie eine ArrayList verwendet werden, der Zugriff erfolgt ĂŒber einen Index.
Der Index ist ein spezieller Key, welcher eine Zahl (z.B. vom Typ Float oder Integer) genauso wie ein String sein darf.
-
// Beispiele, Syntax: hashtablename[key] = value;
-
-
ht_pass[32.3] = "juhu";
-
ht_pass[5] = "tobias";
-
ht_pass["zoo"] = 45.3;
Wozu werden Hashtables benötigt?
Hashtables sind sinnvoll, wenn sich Listen bzw. Arrays verknĂŒpfen bzw. verschachteln lassen. So kann der Wert eines Listenfeldes der SchlĂŒssel zu einem Wert eines anderen Feldes sein. Zwar lieĂe sich das auch mit einem normalen Array
(und somit Integer-Werten als Index) realisieren, dann wÀren jedoch einige zusÀtzliche Listen/Tabellen nötig, um von einer
Zahl auf einen speziellen SchlĂŒssel und von diesem SchlĂŒssel wieder auf eine anderen ZahlenschlĂŒssel zu verweisen.
C# bietet natĂŒrlich einen gewissen Komfort bei Benutzung von Hashtables (wie bei vielen anderen Dingen auch). In der Programmiersprache C haben Programmierer eigene Hash-Funktionen entwickelt, um z.B. einen Text als Zahl umzuschlĂŒsseln (z.B. "Hallo" -> "2342424", "Schule" -> "792942" usw.), um diesen dann als Index (SchlĂŒssel) fĂŒr ein Array zu benuten. Vorteil: Um einen Wert zu suchen, musste nicht unbedingt das ganze Array durchlaufen und im
schlimmsten Falle alle Felder iteriert werden. Man musste sich nur die SchlĂŒssel fĂŒr bestimmte Werte merken, diese in eine Zahl konvertieren, auf den Wert im Feld mit dem SchlĂŒssel zugreifen und es auslesen. Daraus ergibt sich ein sehr groĂer Geschwindigkeitsvorteil.
Der Nachteil liegt in der GröĂe des Arrays, dieses muss nĂ€mlich so groĂ sein bzw. so einen hohen Index haben, wie eine Zahl, die aus einem Text resultiert, werden kann. AuĂerdem könnte es vorkommen, dass Werte nicht abgespeichert werden können, da zwei oder mehrere unterschiedliche Texte trotz ausgereiften Algorithmus den selben Index ergeben. Ausweichmöglichkeiten sind zwar vorhanden (den Index verschieben, bis ein freies Feld gefunden wurde), macht die Sache jedoch trotzdem nicht viel unproblematischer.
Die Hashtables in C# sind weitaus dynamischer, denn intern ist ein Hahstable auch nur so groĂ, wie es notwendig ist. Der Zugriff ist jedoch absolut schnell, konstant schnell! UnabhĂ€ngig von der GröĂe des Hashtable ist die Zugriffszeit konstant.
Ebenes Fachwerk
FĂŒr Konstruktionen, die sehr stabil sein mĂŒssen, werden Fachwerke (oder fachwerkĂ€hnliche Konstruktionen) verwendet. Fachwerke werden z.B. im Hochhaus-, Dach- und BrĂŒckenbau verwendet. Ein Fachwerk ist eine Stabkonstruktion. Die StĂ€be des Fachwerks sollen ausschlieĂlich auf Druck und Zug in Stabrichtung belastet werden und nicht etwa auf Biegung.
Ein beispielhaftes (ebenes) Fachwerk fĂŒr eine BrĂŒcke:
Das Fachwerk besteht aus 15 StÀben. Die FÀcher (ZwischenrÀume) bestehen aus gleichschenkligen Dreiecken.
Typisch fĂŒr eine BrĂŒcke, ist es auf der einen Seite durch ein Festlager, auf der anderen Seite durch ein Loslager fixiert. Das Loslager soll die aus einer temperaturabhĂ€ngigen Ausdehnung resultierende Spannung abbauen.
(mehr...)
Lagerung – Loslager vs Festlager
GrundsÀtzlich soll eine Lagerung eine Konstruktion fixieren. Das typische Lager ist daher das Festlager, welches die Konstruktion in alle Richtungen fixiert.
Da Bauteile sich jedoch ausdehnen oder mechanisch beweglich sein mĂŒssen, sind nicht im jeden Fall Festlager einsetzbar.
Loslager fixieren eine Konstruktion nur (ZweidimensionalitÀt) in einer bzw. (DreidimensionalitÀt) in zwei Richtungen.
Loslager kommen z.B. bei der Lagerung einer Welle zum Einsatz oder im Stahl-BrĂŒckenbau.
Fest- und Loslager ĂŒbertragen keine Momente. Eine momentĂŒbertragende Lagerung ist hingegen die Einspannung.
Ein Lager im Sinne der Technischen Mechanik wird auch als Auflager bezeichnet.
Einspannmoment
Los- und Festlager können zwar KrÀfte im zwei- bzw. dreidimensionalen Raum aufnehmen, tun sich aber mit der Aufnahme von Momenten schwer. So können Bauelemente durch Verdrehung möglicherweise aus der Lagerung gerissen werden.
Ist eine besondere WiderstandsfĂ€higkeit gegenĂŒber Momenten notwendig, kann dieses durch Einspannung erreicht werden. Die Einspannung wird durch tiefe Verankerung ermöglicht. Die Verankerung kann durch feste Verbindung mit dem Fundament (z.B. durch FestschweiĂen oder mehrfache Vernietung), im Idealfall mit tiefer Verwurzelung im Fundament, erreicht werden.
Ein Beispiel in der vereinfachten, weil zweidimensionalen, Darstellung: Ein Stahlbalken ist in einem Betonfundament verankert. Es nimmt KrĂ€fte in horizontaler als auch in vertikaler Richtung auf. ZusĂ€tzlich kann der Balken nicht verdreht werden, da er mit dem Fundament verankert ist (man mĂŒsste also theoretisch das Fundament mitdrehen, um den Balken drehen zu können). Die Einspannung als Lager ist daher dreiwertig und sehr stabil. AbhĂ€ngig vom Fundament und dem Werkstoff des Balkens, ist auch die Tiefe und Form/Verzweigung der Verankerung fĂŒr die FĂ€higkeit zur Momentaufnahme maĂgeblich. Ein Balken mit Ecken und Kanten lieĂe sich z.B. weit schwieriger verdrehen als ein runder Balken.
In der RealitÀt, also im dreidimensionalen Raum, können bei Einspannung KrÀfte und Momente in allen Richtungen aufgenommen werden. Die Einspannung als Lager ist im dreidimensionalen Raum daher sechswertig (KrÀfte in X-,Y- und Z-Richtung, Momente um die X-, Y- und Z-Achse) .
Datenbankmanagementsystem (DBMS)
Die Datenmenge einer Datenbank ist nicht nur oft sehr groĂ, sondern auch verteilt. Die Daten sind in verschiedenen Containern (Tabellen) vorliegend und möglicherweise sogar auf verschiedene Rechner oder gar Netzwerke verteilt. Die Daten werden von mehreren Benutzern aufgerufen, bearbeitet oder gelöscht.
Ein Datenbankmanagementsystem, kurz DBMS oder auch Datenbankverwaltungssystem, organisiert die Datenbankzugriffe (Transaktionen) und verhindert so Probleme, die bei der Arbeit mit Datenbanken auftreten können.
Darstellungsprinzip
Eine Datenbank ist eine Sammlung an Daten, abstrahiert in mehreren Dateien. Datenbanken sind abstrakt und fĂŒr den Menschen nur schwer, am besten aber bildlich vorstellbar. Ein DBMS stellt die Datenbank durch Objekte dar, es zeigt die Beziehungen der Daten zueinander und die Daten lassen sich auch in der Objektdarstellung bearbeiten.
Schnittstellenprinzip
Ein DBMS trennt im Grunde die Datenbank-Benutzer von der Datenbank. Die Benutzer sprechen die DatenbankgrundsĂ€tzlich ĂŒber das DBMS an, so dass keine Transaktion nicht von der DBMS z.B. auf ValiditĂ€t (GĂŒltigkeit der eingegebenen Daten) geprĂŒft wird.
Des weiteren lassen sich mit einem DBMS hĂ€ufig Datenbank- und Speichereinstellungen (z.B. in welcher Kodierung Texte abgespeichert werden sollen) benutzerfreundlich und ohne Datenbankabfragesprachen (z.B. SQL) einstellen. Die Benutzer werden daher weitgehenst von Programmiersyntax verschont und verwalten die Daten ĂŒber ergonomische BenutzeroberflĂ€chen.
Sicherheit und ZugriffsbeschrÀnkung
In einem Unternehmen, welches eine Datenbank fĂŒr Kunden- und Zulieferdaten hat, ist es mit Sicherheit erwĂŒnscht, dass nicht jeder Benutzer Zugriff auf die gesamten Daten hat und diese beliebig verĂ€ndern kann. Beispielsweise sollte ein Mitarbeiter der Abteilung "Einkauf" nicht die Rechnungsdaten der Endkunden verĂ€ndern, vielleicht nicht einmal einsehen, dĂŒrfen. Die Rechnungsdaten dĂŒrfen nur die Mitarbeiter der Abteilung "Verkauf/Vertrieb" bearbeiten. Die GeschĂ€ftsfĂŒhrung soll aber alle Daten einsehen und verĂ€ndern dĂŒrfen. Vielleicht gibt es auch Zulieferer oder Endkunden, die bestimmte Daten aus der Datenbank lesen oder sogar verĂ€ndern dĂŒrfen.
Ein DBMS verwaltet Zugriffsrechte, die von den Datenbank-Administratoren eingerichtet werden. So mĂŒssen nicht alle Daten der gesamten Belegschaft oder Dritten anvertraut werden mĂŒssen. Da es diesbezĂŒglich sehr viele strenge Rechtsvorschriften gibt, ist ein DBMS mit ausgereiftem Rechtevergabesystem sogar Pflicht!
Ein weiterer Punkt ist die Nachvollziehbarkeit von Datenzugriffen. So kann nachvollzogen werden, welcher Benutzer wann und welche Daten angelegt, verÀndert oder gelöscht hat.
Inkonsistenz bei Redundanz
Datenbanken sollten grundsĂ€tzlich keine redundanten Daten enthalten. Bei Datenbanken, die besonders schnell sein mĂŒssen, können diese jedoch in Kauf genommen worden sein. Oder die Datenbank ist derart verteilt oder gesplittet, dass benötigte Daten an einem Zugangspunkt nicht immer zur VerfĂŒgung stehen (z.B. im zeitweisen Offline-Betrieb) und die Daten daher zusĂ€tzlich lokal angelegt werden und somit datenbankglobal redundant sind.
Bei solchen Redundanzen muss das DBMS eine Inkonsistenz verhindern oder ggf. nachtrÀglich korrigieren, so dass DatensÀtze mit gleichen Inhalt immer abgeglichen werden.
Schutz vor Datenverlust
Sollte der Schreibzugriff auf Daten in der Datenbank fehlgeschlagen sein, droht - abhĂ€ngig von der Datenbank - Datenverlust. Auch andere GrĂŒnde, z.B. ein Update, Upgrade oder ein Hardwareausfall, können zum Datenverlust fĂŒhren. Ein gutes DBMS sorgt nicht nur fĂŒr ein benutzerfreundliches Backup (Datensicherung), sondern prĂŒft Backups auch auf AktualitĂ€t und fĂŒhrt nötigenfalls periodenweise oder unmittelbar vor einem kritischen Zugriff in Eigenregie ein Backup aus.
Mehrbenutzer-Probleme
Daten werden in der Regel von mehreren Benutzern verwaltet. Auf die Kundendaten können z.B. die Mitarbeiter der Rechnungs-, Support-, Vertriebs- und der Reklamationsabteilung zugreifen. Kritisch werden die Transaktionen, wenn mehrere Benutzer zeitgleich die selben Daten bearbeiten wollen.
Ein DBMS hat zur Aufgabe, Daten zu sperren, die in Bearbeitung sind und idealerweise DatenÀnderungen zwischenzuspeichern, abzugleichen und zu speichern.
GewÀhrleistung der IntegritÀt
Ein DBMS kontrolliert bei Datenzugriff die DatenintegritĂ€t. So kann z.B. kein neuer Rechnungsdatensatz angelegt werden, ohne eine Kundennummer. Wird bei Eintragung von Rechnungsdaten die Kundennummer ausgelassen, wird der Datensatz nicht in die Datenbank gespeichert. Wird eine Kundennummer angegeben, prĂŒft das DBMS, ob die Kundennummer (und damit auch der Kundendatensatz) existiert. Existiert kein Kunde mit der angegebenen Kundennummer, kommt wiederum eine Fehlermeldung durch das DBMS. So können nur DatensĂ€tze in die Datenbank gelangen, die komplett in einem Zusammenhang einzubringen sind. Eine Rechnungsdatensatz ohne Kunde ist ein wertloser Datensatz.
Umgekehrt soll auch kein Kundendatensatz gelöscht werden, welcher noch offene Rechnungen hat. Auch diese PrĂŒfung wird vom DBMS durchgefĂŒhrt und ist sehr wichtig, um die IntegritĂ€t der Daten in der Datenbank zu gewĂ€hrleisten.
« vorherige Seite — Nächste Seite »