Laden...

Hilfe! Alle reden von Geschäftsprozessen, BizTalk, Enterprise Services...

Erstellt von dragi vor 17 Jahren Letzter Beitrag vor 17 Jahren 7.900 Views
D
dragi Themenstarter:in
368 Beiträge seit 2005
vor 17 Jahren
Hilfe! Alle reden von Geschäftsprozessen, BizTalk, Enterprise Services...

Hallo,

ein kleiner Entwickler hat da mal eine Verständnissfrage:

Irgendwie redet die ganze Welt davon Geschäftprozesse abbilden zu wollen, den BizTalk Server nutzen zu wollen und von .Net Enterprise Services! Aber was soll das sein? Wenn ich mir die BizTalk Seiten bei MS ansehe reden die davon wie schön man das in seine Geschäftprozesse einbinden kann, diese Modelieren und ändern kann...aber was meinen die damit? Meinen Briefverkehr mit Kunden automatisieren? Irgendwie habe ich keine Vorstellung was das alles in der Praxis bewerkstelligen soll. Kann mir wvtl mal jemand ein Szenario beschreiben wie man so etwas nutzt...und was macht man da als Entwickler?
UNd was sind .Net Enterprise Services bzw. wofür braucht man diese? Ich lese immer nur etwas von einem Application Server...ist damit ein Server gemeint der Applicationen auf Clients verteilt?

Bitte helft mir...ich komm mir vor als lebe ich hinter dem Mond. Ich dachte als C# Entwickler ist WPF, WCF, WWF eine Sache die man sich jetzt aneignen sollte...aber wenn ich das alles so lese... 🙁

Gruß

dragi

F
10.010 Beiträge seit 2004
vor 17 Jahren

Der BizTalk Server ist ein mehrere €10.000 teures Produkt von MS.

Wenn Du bis jetzt noch nichts damit zu tun hattest, vergiss es.
Die Einarbeitung in die Materie ist genauso umfangreich wie z.B. SAP.

.NET Enterprise Services sind der neue Name für COM+.
Auch hier, wenn Du bisher nichts davon gehört hast, vergiss es.

484 Beiträge seit 2006
vor 17 Jahren

BizTalk ist geil 🙂

Unter Geschäftprozesse kannst Du auf gut deutsch auch Vorgang sagen.
z.B.:
Ein Vorgang ist z.B. Bestelleingang das wiederum löst dann verschiedene andere Vorgänge aus, Bestätigung versenden, Lagerbestand prüfen, Versand, Lieferschein, Rechnung, Mahnung 🙂

Jörg

Zu mehr habe ich jetzt leider nicht die Zeit.

D
dragi Themenstarter:in
368 Beiträge seit 2005
vor 17 Jahren

OK, wenn es so umfangreich wie SAP ist denke ich das man sich das kaum im alleingang beibringen kann. Gilt das auch für .Net Enterprise Services?

Wäre ien Beispiel für Geschäftprozesse z.B. Amazon? Online Bestellunge geht ein, Bestätigung wird vom Mailserver Versand, Ware wird aus dem lager geholt, geht zum Versand, wird Verschickt?

Gruß

Dragi

3.825 Beiträge seit 2006
vor 17 Jahren

Ein Vorgang ist z.B. Bestelleingang das wiederum löst dann verschiedene andere Vorgänge aus, Bestätigung versenden, Lagerbestand prüfen, Versand, Lieferschein, Rechnung, Mahnung

Macht das nicht SAP oder eine andere Warenwirtschaft ? Mahnungen ein Finanzbuchhaltungsprogramm ?

Kann man mit BizTalk SAP nachprogrammieren ? Lohnt sich das ?

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3

U
457 Beiträge seit 2006
vor 17 Jahren

coole frage...weil wenn ich ehrlich bin kann ich mir auch nichts darunter vorstellen...ist irgendwie nichts was man mal so eben installieren kann und "anfassen kann"

42 Beiträge seit 2004
vor 17 Jahren

Hallo,

Um vllt. mal schnell ein paar Fragen zu klären 😉

BizTalk ist eine EAI Anwendung. ( http://de.wikipedia.org/wiki/EAI )

Mit dem BizTalk Server kannst du sozusagen mehere Anwendungen miteinander verbinden. Seien es interne Anwendungen oder externe Anwendungen von Partner, Kunden, Lieferanten usw.

Den Prozess (Ablauf) kannst du mit den Orchistrations abbilden.
kann z.B. so aussehen:

  1. Ein Auftrag geht ein
  2. Auftragssumme höher als 12.000
    3.Wahr = Muss genehmigt werden
    3.Falsch = Auftragsbestätigung senden.

Ein ApplicationServer ist nichts anderes als ein Dienst, der Zentral irgendwo läuft die Logik der Anwendungen beinhaltet. Der Client dient dann nur noch der Anzeige.

Du kannst dir es etwa so vorstellen wie im Web ohne JavaScript 😉

Es werden Daten eingegeben, die werden an den Server gesendet u. dort validiert.
Danach bekommst du eine Rückmeldung ob alles ok war, bzw. eine Fehlerbeschreibung.

Vllt. konnte ich ja ein bischen helfen 😉
Gruß

484 Beiträge seit 2006
vor 17 Jahren

Nur was viele nicht richtig verstehen ist die Terminologie.

http://de.wikipedia.org/wiki/Gesch%C3%A4ftsprozess

Das ist nämlich so ein schicker Oberbegriff hinter dem sich alle verstecken 🙂
Vielleicht hilft hier die OO-Variante "Alles ist ein Object"

Irgendwo habe ich da ein Webcast oder Video im Kopf der das mal Live zeigt.
Muss mal nachdenken bzw. mal meine Festplatten durchsuchen 🙂

Jörg

476 Beiträge seit 2004
vor 17 Jahren

Also,

der BizTalk-Server ist eine feine Sache. Es gibt auch eine dotnettv-Folge (Geschäft ist Geschäft: BizTalk Server im Einsatz mit Christof Sprenger) zum BizTalk-Server die man sich interessehalber anschauen kann. Es lohnt sich meiner Meinung nach aber nicht, sich das Ding in Eigenregie nahezubringen, dafür ist er viel zu komplex. Du wirst wesentlich mehr davon haben, ein Video oder einen Webcast dazu anzuschauen, zu wissen was es ist, und dann wieder abzuhaken. Solltest du zu einem solchen Projekt hnzugezogen werden, wirst du dich schnell genug einarbeiten, voraussgesetzt du kennst die Basistechnologien wie XML etc...

-yellow

Selbst ein Weg von tausend Meilen beginnt mit einem Schritt (chinesisches Sprichwort).

Mein Blog: Yellow's Blog auf sqlgut.de

484 Beiträge seit 2006
vor 17 Jahren

Das einzigste was ich bei mir jetzt gefunden habe sind die Betas und das Release sowie jede Menge Dokumente vom Biztalk 2006.

Aber das Video war denn wohl auf ner Website.

Jörg der jetzt Feierabend macht 🙂

3.728 Beiträge seit 2005
vor 17 Jahren
Szenario

Hallo dragi,

Du wolltest wissen, was ein Application Server ist und wofür man sowas braucht:

Ich schließe mich meinen Vorrednern an!
Ein Applikationsserver führt an zentraler Stelle Code aus und stellt den Clients eine bestimmte Funktioalität zur verfügung (z.B. ein Lagerbuchungssystem). Außerdem stellen Applikationsserver Infrastruktur zur verfügung.

Beispiele:*Sicherheit: Die Clients bekommen nur die Daten zurückgeliefert, die sie laut Berechtigung sehen dürfen *Verteilte Transaktionen: Operationen, die verschiedene Datenbanken (z.B. Lager und Versandabwicklung) , welche möglicherweise auf verschiedenen Server liegen, betreffen, können transaktional verarbeitet werden (Damit die Konsistenz aller beteiligter Datenbanken gewährleistet ist). *Historie: Der Anwendungsserver kann standardmäßig eine Historie für Änderungen an wichtigen Daten führen, ohne dass der Client-programmierer einen Finger krumm machen müsste.

Man hat einfach die Kontrolle an zentraler Stelle. Das ist besonders dann nützlich, wenn mehrere Clients an einem Vorgang arbeiten müssen. Außerdem lässt sich die selbe Geschäftslogik für verschiedene Clients nutzen (z.B. Windows.Forms-Client, PocketPC, ASP.NET Webseite).

Enterprise Services (COM+) ist der kostenlose, in Windows integrierte, Applikationsserver. Am besten schaust Du Dir mal das folgende kurze Video über ES an: http://www.microsoft.com/germany/msdn/nettv/folge3.mspx

Mit WCF, Remoting kann man sich aber auch selber einen Applikationsserver bauen.
http://www.microsoft.com/germany/msdn/nettv/folge1.mspx Oder man nimmt den IIS dafür her. Dann sind's eben Webservices.

Nun zum BizTalk Server:

BizTalk Server wird für EAI (Enterprise Application Integration) eingesetzt. Das bedeutet: Integration verschiedener Anwendungen ein einem Unternehmen. Jedes Unternehmen hat heute eine Vielzahl an Anwendungen, die für verschiedene Aufgaben eingesetzt werden. Eine Firma könnte z.B. folgende Anwendungen einsetzen:*Groupware-System (Exchange, Lotus Notes, etc.) *ERP-System (z.B. SAP, SageKHK, etc.) *Webshop-System (z.B. PHP basierter Shop auf Linux-Server) *Content Management System *Versandlogistik-Applikation *Finanzbuchhaltung *Dokumenten Management System *Intranet Portal *Software für Elektronischen Zahlungsverkehr (z.B. Multicash) *CTI-Application/Callcenter *Zeiterfassung

Da hat man nun jede Menge redundanter Daten (z.B. Adressen und Telefonnummern von Kunden, Lieferanten und sonstigen Partnern), enige verschiedene Benutzerverwaltungen (Für jedes dieser Programmen müssen sich die armen Anwender Anmeldenamen, Passwörter und PINs merken) und einen ganzen Raum voller surrender Server, auf denen das ganze Zeug aufgeteilt ist.
Die meisten Geschäftsprozesse betreffen mehr als eine dieser Anwendungen gleichzeitig.
Genau an dieser Stelle setzt der BizTalk Server ein. Statt alle Anwendungen untereinander zu integrieren und klassische AnwendungA-Zu-AnwendungB-Schnittstellenprogrammierung zu betreiben, bindet man all diese Anwendungen an einen BizTalk Server an. Über diverse Adapter gelangen Nachrichten der einzelnen Anwendungen in eine zentrale Datenbanke (die Message Box). Von da aus stoßen sie Orchestrations an, die Geschäftsprozesse abbilden. Diese Orchestrations werden grafisch entworfen (Trotzdem kann an beliebiger Stelle auch herkömmlicher C#-Code eingefügt werden!). Dadurch können Geschäftsprozesse bei Änderungen sehr schnell angepasst werden. Bei sämtlichen Entwurfstools des BizTalk Servers handelt es sich übrigens um Visual Studio-Plugins.
Schnell ist das ganze trotzdem, da die Orchestrations als .NET Assemblies kompiliert und auf dem BizTal Server deployed werden. Gegen das Benutzerkonto- und Passwort-Chaos hilft die SSO (Single Sign-On) Unterstützung des BizTalk Servers. Dabei handelt es sich um ein Mapping der Anmeldedaten der einzelnen Applikationen. Wenn automatisch irgendwelche Prozesse laufen sollen, müssen diese sich auch automatisch an den einzelnen Anwendungen anmelden können.

Ein weiteres großes Einsatzgebiet von BizTalk Server ist elektronische B2B-Kommunikation. Automatischer Austausch von Bestellungen, Auftragsbestätigungen, Rechnungen, Gutschriften, Preislisten, Produktkatalogen, etc. Moderne Firmen tauschen alle möglichen Daten in verschiedenen Formaten (z.B. BMECat, cbXML, RosettaNet, xCBL, EDIFACT, DTA, ...) aus. Wie bringt man die Daten aus den eigenen Applikationen in diese standardisierten Formate? Wie transportiert man diese Daten zuverlässig und sicher zum Geschäftspartner? Wie überwacht und analysiert man firmenübergreifende Prozesse, die verschiedene Anwendungen betreffen?
Richtig! Mit dem BizTalk Server.

Ich hoffe etwas mehr Klarheit geschaffen zu haben.

484 Beiträge seit 2006
vor 17 Jahren

Eine gute Zusammenfassung 👍

Gerade deshalb, weil BizTalk so viele Möglichkeiten bietet, dass es schwer wird dies kurz und knapp auf den Punkt zu bringen.

Auch hat sich der SQL-Server 2005 mittlerweile so entwickelt, dass es halt mehr ist, als ein reiner "Datenbankserver". Dies nur mal am Rande.

Das Thema ist mittlerweile so umfangreich, das ein Buch da wohl nicht ausreichen würde, um es transparent und nachvollziehbar darzustellen.

Jörg

F
10.010 Beiträge seit 2004
vor 17 Jahren

Ja, leider benutzen jetzt einige Entwickler mehr den Sql-Server für den BL und
erzählen wie toll das ist.
Leider vergessen Sie dann immer zu erwähnen wie Teuer das ist,
bzw. wie schlecht das zu scalieren geht.

K
71 Beiträge seit 2005
vor 17 Jahren

Hallo FZelle

Das mit der BL im SQL-Server habe ich auch vermehrt festgestellt.
Ich finde dies jedoch auch etwas schlecht zu skalieren und zu warten.

Aber teuer finde ich den SQL-Server überhaupt nicht.
DB, OLAP, Reporting, Replikation, IS usw. ist schon alles im Standard dabei.

Gruss Fellmer

N
4.644 Beiträge seit 2004
vor 17 Jahren

Original von Fellmer Lloyd
Aber teuer finde ich den SQL-Server überhaupt nicht.

Mit "Teuer" war wohl auch nicht der Preis gemeint. 😉

D
dragi Themenstarter:in
368 Beiträge seit 2005
vor 17 Jahren

Also ich muss euch Danken!
Mir ist es nun schon viel klarer und vor allem nach der tollen Ausführung Rainbird kann ich mir nun endlich etwas darunter vorstellen. Es klingt ziemlich interessant aber ich denke es ist viel zu komplex um sich damit ohne Grund zu beschäftigen. Sollte ich beruflich so ein Projekt durchführen müssen sieht das schon ganz anders aus.
Ich werd mich jetzt erstmal um WPF und WCF kümmern.

Danke

Dragi

F
10.010 Beiträge seit 2004
vor 17 Jahren

@Fellmer Lloyd:
Nun wenn Du einen SQL-Server installierst brauchst Du pro Client eine CAL.
Oder ab einer gewissen anzahl Clients eine ProzessorLizenz.

Wenn jetzt deine BL aber immer complexer wird, brauchst Du evtl mehr als einen Server.
Jetzt wird es teuer, denn Du benötigst jetzt mehrere Lizenzen.

Wenn die BL in einem getrennten Appserver steckt, brauchst Du diese extralizenzen deutlich später, oder garnicht.

Und wenn Du Dir die grossen Lizenzen anschaust, sprechen wir hier von >>€10.000.

3.728 Beiträge seit 2005
vor 17 Jahren

Original von dragi
Ich werd mich jetzt erstmal um WPF und WCF kümmern.

Noch eine Anmerkung zum BizTalk Server. Die nächste Version (also die nach 2006 kommt) wird auf WWF (Windows Workflow Foundation) und WCF basieren. Dann könnte Dir Dein .NET Framework 3.0 Wissen, welches Du Dir jetzt aneignest, von Nutzen sein.

Für viele Anwendungsfälle wird WWF alleine (also ohne BizTalk) bereits ausreichen.

S
8.746 Beiträge seit 2005
vor 17 Jahren

Original von FZelle
Wenn die BL in einem getrennten Appserver steckt, brauchst Du diese extralizenzen deutlich später, oder garnicht.

Lass das nur nicht MS hören.... 😉

Im Ernst: Gemäß Lizenzbedindungen muss man Enduserlizenzen bezahlen. Ob dazwischen ein App-Server hängt oder nicht, ist Wurscht.

Der Einsatz eines App-Servers bringt Vorteile in der Architektur (Kapselung des Backends), ist technisch motiviert (Transaktionen) und skaliert u.U. besser (Lastverteilung, Caching).

3.728 Beiträge seit 2005
vor 17 Jahren
Benutzung

Da muss ich FZelle zusimmen.

Die Client-Benutzer "benutzen" den SQL Server zwar indirekt, aber sie benutzen ihn und haben einen Mehrwert dadurch. Aus dem selben Grund müssen z.B. auch 20 Office Lizenzen erworben werden, wenn 20 User EIN installiertes Office-paket auf einem terminal Server verwenden. Ob es ein Terminal Server ist oder ein eigener Server-Dienst, der zwischen Benutzer und einer entfernten Software vermittelt, ist spielt juristisch keine Rolle.

Leider kennen auch viele Systemhäuser die Produkte, die sie verkaufen, nicht richtig. Das führt allerdings meistens zur Überlizenzierung (Aktuelles Beispiel wäre z.B. die Virtualisierungsklausel in der Lizenz des Windows Server 2003 R2, die besagt, dass auf einer physikalischen Maschine 5 Kopien installiert werden dürfen.).