Content by Category
.NET 1.x
.NET 2.0
.NET 3.0
.NET 3.5
.NET 4.0
.NET 4.5
.NET Assemblies
.NET Framework
.NET Getting Started
Accessibility
ADO.NET
Advertorials
Agile Development
AJAX
Amazon Web Services
Analysis Services
Android
Architecture
Arduino
ASP .NET Web API
ASP.NET
ASP.NET MVC
ASP.NET WebForms
Azure
B2B (Business Integration)
BDD
Big Data
Bing
BizTalk
Book Excerpts
Build and Deploy
Business Intelligence
C#
C++
ClickOnce
Cloud Computing
Code Contracts
CODE Framework Info - non Technical
CODE on the Road!
COM+
Community
Conferences
Continuous Integration
Crystal Reports
CSLA.NET
CSS
Data
Debugger
Design Patterns
Development Process
Display Technologies
Distributed Computing
Document Database
DotNetNuke
DSL
Dynamic Languages
Dynamic Programming
Editorials
Enterprise Services ("COM+")
Entity Framework
Events
Expression Blend
F#
Fox to Fox
Frameworks
Functional Programming
Git
Graphics
HTML 5
Internet Explorer 8.0
Interviews
IOS
iPhone
Iron Ruby
Java
Java Script
JavaScript
jQuery
JSON
Lightswitch
LINQ
Linux
LUA
Mac OS X
MDX
Messaging
Metro
Microsoft Application Blocks
Microsoft Business Rules Framework
Microsoft Dynamics
Microsoft Expression
Microsoft Office
Mobile Development
Mobile PC
Mono
MsBuild
MVVM
MySQL
Network
NHibernate
node.js
NOSQL
Nuget
Object Oriented Development
Objective C
Odata
OLAP
Open Source
Opinion
Opinions
Oracle
ORM
Other Languages
Parallel Programming
Patterns
PHP
Podcasts
Post Mortem
PowerPoint
Print/Output
Prism
Product News
Product Reviews
Project Management
Prolog
Python
Q&A
Rails
Rake
Razor
Reporting Services
REST
RIA Services
Ruby
Ruby on Rails
Scheme
Search
Security
Services
SharePoint
SignalR
Silverlight
SOA
Social Networks
Software & Law
Software Business
Source Control
Speech-Enabled Applications
SQL Server
SQL Server 2000
SQL Server 2005
SQL Server 2008
SQL Server 2012
SQL Server CE/AnyWhere/Mobile/Compact
SSIS
Subversion
Sync Framework
Tablet PC
TDD
Team System
Techniques
Testing and Quality Control
TFS
Tips
TypeScript
UI Design
UML
User Groups
VB Script
VB.NET
Version Control
VFP and .NET
VFP and SQL Server
Virtual Earth
Vista
Visual Basic
Visual Basic 6 (and older)
Visual FoxPro
Visual Studio .NET
Visual Studio 11
Visual Studio 2005
Visual Studio 2008
Visual Studio 2010
Visual Studio 2011
Visual Studio 2012
Visual Studio Tools for Office
VSX
WCF
Web Development (general)
Web Services
WebMatrix
WF
Whitepapers
Windows 7
Windows 8
Windows Azure
Windows Live
Windows Phone 7
Windows Phone SDK
Windows Server
Windows Vista
WinForms
WinRT
Workflow
WPF
XAML
Xiine Documentation
XML
XNA
XSLT



LearnNow


XAMALOT
 


SSWUG

Reader rating:
Click here to read 3 comments about this article.
Article source: CoDe (2007 - Jul/Aug)


Article Pages:  1  2 3 4 5 6 - Next >


Enterprise Application Integration with Microsoft BizTalk Server 2006, Part 2

Enterprise Application Integration (EAI) is a collection of architectural principles combined to integrate new and existing applications both within the enterprise and in business to business or partner integration scenarios. Building on the principles introduced in Part 1 (May/June issue of CoDe Magazine), I’ll provide a step-by-step example of how to implement a solution that addresses a business case and suggest some real-world patterns and techniques for fulfilling the business case.

In Part 1 (May/June issue of CoDe Magazine) of this article, I discussed what Enterprise Application Integration is all about along with a bird’s eye view of some of the common challenges associated with integrating legacy applications with new systems and building transport agnostic, workflow-modeled software in a loosely coupled manner. This is especially important when integrating existing investments with new applications and systems.

"
BTS 2006 provides an optional Microsoft Visio add in, known as the Orchestration Designer for Business Analysts (ODBA). The tool is intended for facilitating collaboration between developer, analyst, and stakeholder in designing Orchestrations around business processes.
"

I presented a high-level look at how Microsoft BizTalk Server 2006 provides a robust platform and complimentary toolset for building elegantly connected applications while addressing many common EAI chores. Specifically, I explained how the Messaging Engine and Orchestration Engine work together to address discrete aspects of the problem domain in a loosely coupled manner.

I wrapped up Part 1 with an overview of the Visual Studio 2005 Project System, which consists of tools that enable you to work with BizTalk Server 2006. In Part 2 I’ll move beyond the theory and put into practice a simple (yet common) integration scenario that will help to form a foundational understanding of how to leverage BizTalk Server 2006 within your own application integration projects. I’ll use BizTalk Server to streamline an existing business process and increase automation by focusing more closely on the business domain and less on the plumbing itself.

Streamlining and Automating an Order and Fulfillment Process

Northwind Traders, purveyors of gourmet foods and other fine goods, have vendors all over the world so that they may provide customers with the best selection of products available.

While the company has been very successful, the sales team conducts most business over the phone and e-mail as well as through their award-winning mail order catalog. Some existing relationships go so far back that some customers still place their orders in person.

Until now, how the sale was made hasn’t really mattered all that much because once a sale is made, it is entered into a purchase order template within a spreadsheet that has been used successfully for several years. A use case diagram (Figure 1) shows the business process (clockwise).

Click for a larger version of this image.

Figure 1: The current Northwind Traders Order & Fulfillment process.

The sales person enters the items in the purchase order, saves it, and then simply sends an e-mail with the purchase order spreadsheet attached to the IT team. The IT team takes the spreadsheet (given a very strict service level agreement (SLA) of course) and imports the spreadsheet into the Orders table in the company database. The e-mail message containing the purchase order is archived just in case the order gets lost along the way. With purchase orders hitting the company database at any given time, the fulfillment department runs intra-day reports. Members of the fulfillment team proactively monitor the report for purchase orders hitting their region and promptly act on them. Upon taking ownership of a purchase order, the fulfillment team takes several actions:

  1. The fulfillment specialist checks inventory for the purchase order. If the requested item is not in stock, the vendor is contacted over the phone to place an order for the item.
  2. Provided the item ordered is in stock, the customer’s payment is processed and entered into the general ledger. Northwind Traders accepts checks for older, loyal customers, but prefers credit cards as the method of payment. As such, the fulfillment specialist charges the customer’s credit card (or uses an e-check) and posts monies to the general ledger. Should the credit card transaction fail, the fulfillment specialist must contact the customer to request an alternate form of payment.
  3. Once the payment has cleared, the fulfillment specialist pulls the item from the warehouse, affixes the customer’s purchase order to it, and prepares the order to be shipped.
  4. A shipping specialist picks up packages, striving to synchronize carrier pick up times so that the packages go out the day they are staged for shipment. The shipping specialist weighs the contents, measures the dimensions, and affixes the appropriate paid shipping label which also contains the carrier’s tracking number. The shipping specialist then manually duplicates the tracking number on a shipping log, which the shipping specialist carries on a clipboard. At the end of each day, all shipping specialists drop their shipping logs in the fulfillment team’s “inbox” for manual processing later.
  5. Each morning, a designated fulfillment specialist takes the tracking numbers listed in the paper shipping log and manually enters the data into another spreadsheet and then promptly sends the spreadsheet via e-mail to the IT team. The IT team faithfully imports the spreadsheet into the company database where the parcel’s tracking id is correlated to the purchase order.

The use case in Figure 1 represents an overview of Northwind Trader’s current business process. Perhaps not unlike the reader, many of the business analysts and stakeholders have identified several opportunities for improving the Northwind Traders’ business process:

  • Orders take too long to fulfill.
  • The IT team is too slow in processing purchase orders and sometimes purchase orders just seem to “disappear”.
  • The fulfillment team is understaffed and overworked and too much of their job is manual and clerical in nature.
  • There is a lack of visibility as to where an order is within each step of the process. This leads to confusion and frustration for members of all teams.
  • Many times orders are shipped late because the fulfillment and shipping team is overwhelmed with packages that need to be prepared and staged for shipment.
  • The fulfillment team is frustrated that they have to enter the tracking id’s from the shipping log and it often takes a couple of hours each morning to get all tracking IDs entered, which prevents the sales team from accurately answering customer inquiries on the status of orders in a timely manner. (Sometimes, this information is not available in the database until mid-morning the next business day.)

Furthermore, the marketing team is convinced that if the business process was streamlined using a more robust back office, orders could be fulfilled more rapidly, and, with some automation improvements, the timing would be great to put together an online store front which would, in turn, drive revenues even higher.

Looking for a better way to streamline the business process and improve morale while increasing revenue and expanding the reach to customers all over the world (via the Internet), the leadership team at Northwind Traders commissions a new project that will provide enhanced business process automation and better visibility through closely instrumented business process management. They identify several nifty applications as part of the new vision for a faster, more responsive, and transparent business process:

  • Design and deliver a new, public-facing Web site along with a number of applications and services to support the new online store.
  • New applications and services should interface with each other as well as with middle-tier services that the IT department will implement as part of the business process automation and management streamlining effort.
  • It is critical that existing operations are not disrupted. As such, during development (and after delivery), things must remain business as usual from an order fulfillment perspective.
  • The company must maintain their legacy database.
  • Sales associates (the lifeblood of the company) must be able to continue submitting purchase orders via the spreadsheet templates. It is likely that one day the spreadsheets will be phased out, but until then, they must be fully supported and still benefit from the new investments in automation. To this end, once the online store front is complete, the IT team will start using it as their new interface for entering new purchase orders so that data entry and processing is consistent.

While the marketing team works with a design firm to come up with a snazzy new Web site, let’s focus on the middle-tier applications and services that will drive this new era of productivity!

&

By: Rick Garibay

With over 13 years’ experience delivering solutions on the Microsoft platform across industry sectors such as finance, transportation, hospitality and gaming, Rick is a developer, architect, speaker and author on distributed technologies and is the General Manager of the Connected Systems Development Practice at Neudesic.

Rick specializes in distributed technologies such as Microsoft .NET, Windows Communication Foundation, Workflow Foundation, and Windows Azure to deliver business value and drive revenue while reducing operational costs.

Rick serves as a member of the Microsoft Application Platform Partner Advisory Council and is an advisor to Microsoft in a number of capacities including long-time membership on the Business Platform and Azure Technology Advisors group. As a five-time Microsoft Connected Systems MVP, Rick is an active speaker, writer and passionate community advocate in the national .NET community. Rick is the Co-Founder of the Phoenix Connected Systems User Group, celebrating four years in operation.

Recent presentations include talks at the Microsoft SOA and Business Process Conference in Redmond, WA, Microsoft TechEd, DevConnections, .NET Rocks, Desert Code Camp, and numerous Microsoft events throughout North America. Rick is a frequent contributor to industry publications such as CODE Magazine, and is the co-author of Windows Server AppFabric Cookbook by Packt Press.

When not immersed in the work he loves, Rick enjoys mountain biking and spending time with his wife, Christie and two children, Sarah and Ricky.

Fast Facts

In BizTalk Orchestrations, there are two types of transactions: Atomic and Long-Running.



Article Pages:  1  2 3 4 5 6 - Next Page: 'Requirements and Scope' >>

Page 1: Enterprise Application Integration with Microsoft BizTakl Server 2006, Part 2
Page 2: Requirements and Scope
Page 3: Implementing the Design
Page 4: Wiring Up the SendPO Orchestration
Page 5: Deployment
Page 6: Verifying Bindings, Enlisting, and Starting the Orchestration

How would you rate the quality of this article?
1 2 3 4 5
Poor      Outstanding

Tell us why you rated the content this way. (optional)

Average rating:
4.1 out of 5

25 people have rated this article.

Instantly Search Terabytes Of Text
“Lightning Fast”
– Redmond Mag
“Covers all data
sources” – eWeek
25+ fielded & full-text search options
dtSearch’s own document filters highlight hits in popular file types
Web Spider supports static & dynamic data
APIs for .NET, Java, C++, SQL, etc.
Win / Linux (64-bit & 32-bit)
www.dtSearch.com
 

      AppsWorld Europe

 

SSWUG