I finished reading Enterprise SOA - Service-Oriented Architecture Best Practices (Dirk Krafzig, Karl Banke, Dirk Slama).
It seems to be one of the higher rated SOA books on Amazon. That is why I also read Thomas Erl's SOA (Concepts, Technology, and Design) book.
This book seems to show a little more hands on knowledge and things to watch out for rather than web service specifications. Although SOA is most commonly thought of along with WS-* specifications, SOA can be implemented without web services.
The big benefits I see are reusability and interoperability. Reusability in exposing small functional pieces that can be put together for strategic reasons through an orchestration. Interoperability in exposing siloed pieces of functionality of an organization to allow all the information to work together. By exposing different platforms(Java, .NET, mainframe,...), the organization can more easily build enterprise applications to meet short and long term goals.
Definitions of SOA:
A Service-Oriented Architecture(SOA) is a software architecture that is based on the key concepts of an application frontend, service, service repository, and service bus. A service consistes of a contract, one or more interfaces, and an implementation. (Krafzig, p. 57)
SOA is a form of technology architecture that adheres to the principles of service-orientation. When realized through the Web services technology platform, SOA establishes the potential to support and promote these principles throughout the business process and automation domains of an enterprise. (Erl, p.54)
Some videos:
Sunday, April 8, 2007
Thursday, April 5, 2007
Missing the coolest job ever!
I joined the French Foreign Legion in 1994 and served 5 years there.
Legionnaire number 185565!
C'est la vie!
I miss those days. The spartan lifestyle, physical activity, living a dream!
Thanks to youtube I can get all pumped up and relive it!
Incredible!
I am so glad I went and did it.
Legionnaire number 185565!
C'est la vie!
I miss those days. The spartan lifestyle, physical activity, living a dream!
Thanks to youtube I can get all pumped up and relive it!
Incredible!
I am so glad I went and did it.
ActiveBPEL Vendor Selector Visio Diagram
They say a picture is worth a thousand words, I thought I would publish a diagram of the Vendor Selector Application that I build using the ActiveBPEL Designer 3.0.
The code can be downloaded from last month.
The cool visio symbols for the web services were taken from Mai-lan's Visio Blog. They look cool and provide a different symbol to signify web services.
The code can be downloaded from last month.
The cool visio symbols for the web services were taken from Mai-lan's Visio Blog. They look cool and provide a different symbol to signify web services.

Wednesday, April 4, 2007
Scrum has started
Well, I finished writing the final exam for COMP 689 - "Advanced Distributed Systems" last Friday. It was an interesting exam and I will find out in a couple of weeks how it went.
Also had some good news, I won a scholarship for last years marks in my Masters program.
I won a Queen Elizabeth II Scholarship Awards
http://www.athabascau.ca/registrar/studawrds/winners.php
It was nice but there is much still to be done, I have one more course then I am to start my Thesis Essay in the fall.
Back to work topics, we have started to follow a Scrum process. It basically is the Scrum 15 minute daily meeting along with charting progress in the Scrum Backlog.
The backlog is powerful in providing an instance picture of progress in the project. We kept the estimates of individual task items to 2 days most. I am one of the four developers in the project. We are currently above the burn down chart. This is okay as scrum is a learning process.
Today I did not get what I wanted finished but 2 other developers finished 2 days work each that day. So that means that it was a great day for the team. The feedback and tracking is pretty instantaneous and I can see how greater visibility into team progress is given using the burndown chart.
Also had some good news, I won a scholarship for last years marks in my Masters program.
I won a Queen Elizabeth II Scholarship Awards
http://www.athabascau.ca/registrar/studawrds/winners.php
It was nice but there is much still to be done, I have one more course then I am to start my Thesis Essay in the fall.
Back to work topics, we have started to follow a Scrum process. It basically is the Scrum 15 minute daily meeting along with charting progress in the Scrum Backlog.
The backlog is powerful in providing an instance picture of progress in the project. We kept the estimates of individual task items to 2 days most. I am one of the four developers in the project. We are currently above the burn down chart. This is okay as scrum is a learning process.
Today I did not get what I wanted finished but 2 other developers finished 2 days work each that day. So that means that it was a great day for the team. The feedback and tracking is pretty instantaneous and I can see how greater visibility into team progress is given using the burndown chart.
Tuesday, March 13, 2007
ActiveBPEL the "Easy Way"
Well, if I wanted to get people to use ActiveBPEL and get up to speed quickly. I think I should document what I did to get the application up and running.
If I can only make a couple people have an easier time getting a BPEL process going quickly, my task will be done.
I have documented how one can get ActiveBPEL installed and deploy the Vendor Selection application. I would think that it could be done relatively quickly.
The Vendor Selector BPEL process can be found at http://techinitiatives.blogspot.com/2007/03/vendor-selector-activebpel-bpel-process.html
You can download the Vendor Selector User Manual
Please let me know if you have any comments on the "Vendor Selector User Manual"
If I can only make a couple people have an easier time getting a BPEL process going quickly, my task will be done.
I have documented how one can get ActiveBPEL installed and deploy the Vendor Selection application. I would think that it could be done relatively quickly.
The Vendor Selector BPEL process can be found at http://techinitiatives.blogspot.com/2007/03/vendor-selector-activebpel-bpel-process.html
You can download the Vendor Selector User Manual
Please let me know if you have any comments on the "Vendor Selector User Manual"
Monday, March 12, 2007
The Vendor Selector ActiveBPEL BPEL process

Vendor Selector BPEL process
I finished the ActiveBPEL process I was working on from the ground up. This was part of a project I am working on for COMP 689(Advanced Distributed Systems) at the University of Athabasca. I have one course this summer and then a Thesis to write in the fall to graduate from the Masters of Information Systems program. I would like to do research in the area of SOA. That is why I proposed this idea for this course's project.
It always seems like a fair bit of work to get that first application working in the new environment. It always seems very simple after the fact :-).
My advice is go all the way with the ActiveBPEL Designer. Work through the from the ground up tutorial to build the loan approval example.
Vendor Selector BPEL process:
1 BPEL process (Coordinate the workflow)
2 Vendor Web Services (Provide quotes and allow purchasing of products)
This BPEL process helps facilitate the purchase of up to 3 products and 3 quantities. There are 2 vendors each with 2 methods, one to provide a bid price on the tender and another to actually make the purchase. The BPEL process will query both vendors then select the vendor with the lowest price and then call that vendor to actually make the purchase.
The BPEL and Web Service Clients are included in the Java source under the package
com.smith.client
I will provide 2 versions of the application.
1. With a MySQL 5.0 backend database (Available here)
2. Another which does not require a database (random bid quotes produced along with hard coded security authentication) (Available here)
My preferred setup:
Install ActiveBPEL Designer
Install Ant
Get a Java 1.5 jdk
If installing the database version of the Vendor Selector:
Install MySQL 5.0 (if using the database version)
and the MySQL java db driver
Scrum Presentation and Sample Scrum Backlog
I recently read "Agile Software Development with Scrum" by Schwaber and Beedle. It is an interesting agile methodology. The key to monitoring
progress is through a document called a Sprint backlog.
If you don't have the time to read a book on scrum, I did distill what I thought were the important ideas in a power point presentation.
The Sprint backlog tracks the status of project tasks over the duration of the Sprint (usually 30 days). Progress is shown visually with a "burndown chart" with hours of estimated work along the y axis and work time along the x axis.
Doug Tillman (http://www.dugthawts.com/) has had some interesting experiences implementing scrum.
I was determined to find a sample backlog and figure out how it worked. It is pretty much based on formulas summing columns. The sample can be found here . This is based on a sample I found on the web.
I used it to show how hypothetically I should work to finish a "Distributed Systems" course I am currently taking.
The LOADING tab shows all available resources and time available.
The SPRINT BACKLOG tab shows the work(assignments)
The BURNDOWN chart section shows the current progress
- if you are above the line you are currently behind schedule
- if you are below the line you are ahead of schedule
Also, interestingly, the rate of falling behind or catching up is shown by the burndown graph.
A nice visual tool indeed.
What I find interesting about the burndown chart is that it is a very visual way of seeing how the project is going and what steps might need to be taken.
progress is through a document called a Sprint backlog.
If you don't have the time to read a book on scrum, I did distill what I thought were the important ideas in a power point presentation.
The Sprint backlog tracks the status of project tasks over the duration of the Sprint (usually 30 days). Progress is shown visually with a "burndown chart" with hours of estimated work along the y axis and work time along the x axis.
Doug Tillman (http://www.dugthawts.com/) has had some interesting experiences implementing scrum.
I was determined to find a sample backlog and figure out how it worked. It is pretty much based on formulas summing columns. The sample can be found here . This is based on a sample I found on the web.
I used it to show how hypothetically I should work to finish a "Distributed Systems" course I am currently taking.
The LOADING tab shows all available resources and time available.
The SPRINT BACKLOG tab shows the work(assignments)
The BURNDOWN chart section shows the current progress
- if you are above the line you are currently behind schedule
- if you are below the line you are ahead of schedule
Also, interestingly, the rate of falling behind or catching up is shown by the burndown graph.
A nice visual tool indeed.
What I find interesting about the burndown chart is that it is a very visual way of seeing how the project is going and what steps might need to be taken.
Subscribe to:
Posts (Atom)