95-843 Service Oriented Architecture Homework 1 Assigned: Tuesday, March 19, 2013 Due: Tuesday, March 26, 2013 Ten Questions in preparation for the first exam. These will be marked and returned but not graded. Fundamental Issues ================== Read the chapter on Petri nets from the Johnsonbaugh text (PetriNetIntro.pdf) and read the article by Hamadi on web service composition using Petri nets. Read the BPMN slides from IBM. Watch the four short videos on BPMN. All of these are provided on the course schedule. Paper submission: Submit a Word document or drawings containing your answers on paper during class on Tuesday. Model the following algorithms with a Petri net. Provide a marking that represents the situation prior to execution of the algorithm. 1. A = 1 B = 2 C = A + B C = C + 1 2. A = 2 B = A + A C = 3 D = A + A C = A + B + C 3. A = 1 S = 0 10 S = S + A A = A + 1 GOTO 10 4. Wash a lion: 1. Get lion. 2. Get soap. (real soap not SOAP) 3. Get tub. 4. Put water in tub. 5. Put lion in tub. 6. Wash lion with soap. 7. Rinse lion. 8. Remove lion from tub. 9. Dry lion. 5. In class we described a set theoretic description of Petri nets. Represent the Petri net you drew in question 4 (Washing the lion) using sets. Show the sets P, T and E as on slide 24 of the Introductory slides. 6. Describe the following web service in words: Ref(S1, assess_claim, [A1:An]) 7. Prove statement (20) of the Service Algebra studied in class. 8. Prove statement (21) of the Service Algebra studied in class. 9. Wash the lion again. This time use the Business Process Modeling Notation as described on the slides from IBM. Be sure to exploit parallel execution where possible. 10. a. Consider the Expense Reimbursement Process on slide 76 of IBM's BPMN slides. Briefly describe where the diagram uses parallelism. b. In the video BPMN Tutorial - Part 2 - Collaborations, two pools are used. What is each pool used to represent. c. In the video BPMN Tutorial - Part 2 - Collaborations, several different types of BPMN "events" are used. List each event type. d. Describe the use of BPMN gateways in the video BPMN Tutorial - Part 2 - Collaborations.