Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Hilfe! Alle reden von Geschäftsprozessen, BizTalk, Enterprise Services...
dragi
myCSharp.de - Member



Dabei seit:
Beiträge: 368
Herkunft: Moers

Themenstarter:

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

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 10084

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
joerg.uth
myCSharp.de - Member

Avatar #avatar-2080.jpg


Dabei seit:
Beiträge: 485
Herkunft: Lonnig

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
dragi
myCSharp.de - Member



Dabei seit:
Beiträge: 368
Herkunft: Moers

Themenstarter:

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #nZo9Gyth4VPDSxGqM4sT.jpg


Dabei seit:
Beiträge: 3790
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden

Zitat
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
private Nachricht | Beiträge des Benutzers
joerg.uth
myCSharp.de - Member

Avatar #avatar-2080.jpg


Dabei seit:
Beiträge: 485
Herkunft: Lonnig

beantworten | zitieren | melden

https://msdn.microsoft.com/library/default.asp?url=/library/en-us/BTS06coredocs/html/7a91a0e4-9b1c-4cd2-a98b-337d6d42b08a.asp

Jörg

P.S. Fussball geht weiter
private Nachricht | Beiträge des Benutzers
userid4106
myCSharp.de - Member



Dabei seit:
Beiträge: 480

beantworten | zitieren | melden

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"
private Nachricht | Beiträge des Benutzers
Horego
myCSharp.de - Member

Avatar #avatar-1562.gif


Dabei seit:
Beiträge: 43
Herkunft: Eppingen

beantworten | zitieren | melden

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ß
private Nachricht | Beiträge des Benutzers
joerg.uth
myCSharp.de - Member

Avatar #avatar-2080.jpg


Dabei seit:
Beiträge: 485
Herkunft: Lonnig

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
Yellow
myCSharp.de - Experte

Avatar #avatar-2347.png


Dabei seit:
Beiträge: 832

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
joerg.uth
myCSharp.de - Member

Avatar #avatar-2080.jpg


Dabei seit:
Beiträge: 485
Herkunft: Lonnig

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
Rainbird
myCSharp.de - Experte

Avatar #avatar-2834.jpg


Dabei seit:
Beiträge: 3953
Herkunft: Mauer

Szenario

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
joerg.uth
myCSharp.de - Member

Avatar #avatar-2080.jpg


Dabei seit:
Beiträge: 485
Herkunft: Lonnig

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 10084

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
Kantiran
myCSharp.de - Member



Dabei seit:
Beiträge: 71
Herkunft: CH

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4802
Herkunft: Leipzig

beantworten | zitieren | melden

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

Mit "Teuer" war wohl auch nicht der Preis gemeint.
private Nachricht | Beiträge des Benutzers
dragi
myCSharp.de - Member



Dabei seit:
Beiträge: 368
Herkunft: Moers

Themenstarter:

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 10084

beantworten | zitieren | melden

@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.
private Nachricht | Beiträge des Benutzers
Rainbird
myCSharp.de - Experte

Avatar #avatar-2834.jpg


Dabei seit:
Beiträge: 3953
Herkunft: Mauer

beantworten | zitieren | melden

Zitat
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.
private Nachricht | Beiträge des Benutzers
svenson
myCSharp.de - Member



Dabei seit:
Beiträge: 8775
Herkunft: Berlin

beantworten | zitieren | melden

Zitat
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).
private Nachricht | Beiträge des Benutzers
Rainbird
myCSharp.de - Experte

Avatar #avatar-2834.jpg


Dabei seit:
Beiträge: 3953
Herkunft: Mauer

Benutzung

beantworten | zitieren | melden

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.).
private Nachricht | Beiträge des Benutzers