Presentation is loading. Please wait.

Presentation is loading. Please wait.

Collaborative Research: Developing Course Modules to Teach Service-Oriented Programming through Exemplification and Visualization Xumin Liu, Rajendra K.

Similar presentations


Presentation on theme: "Collaborative Research: Developing Course Modules to Teach Service-Oriented Programming through Exemplification and Visualization Xumin Liu, Rajendra K."— Presentation transcript:

1 Collaborative Research: Developing Course Modules to Teach Service-Oriented Programming through Exemplification and Visualization Xumin Liu, Rajendra K. Raj, Tom Reichlmayr (RIT) Chunmei Liu (Howard University) Alex Pantaleev (SUNY at Oswego)

2 Acknowledgments This material is based upon work supported by the United States National Science Foundation under Awards No. DUE , DUE , and DUE Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.

3 Overview Motivation Course Module Approach Course Modules 1 (Consuming a Web Service) 2 (Building and Deploying a Web Service) 3 (Web Service Applications) Conclusion

4 Motivation Global service-oriented middleware market will grow to at least $8.2 billion by 2016, according to a WinterGreen Report1 Crucial for undergraduate CS/SE students to learn about web services and service-oriented computing Students need repeated exposure to SOP concepts at different degrees of depth 1 pdf

5 Student Goals Explain the motivation for learning about service- oriented programming (SOP) Describe the issues and concepts underlying SOP Solve problems using SOP techniques Gain hands-on experience with SOP

6 Abstractions: Evolution Figure is from Introduction to Web Services by Dr. Marcello La Rosa, QUT

7 Object- and Service-Orientation Steps in solving a complex problem Abstraction Decomposes problem into sub-problems Solves each sub-problem and composes overall solution Object-orientation Describes an abstraction using objects Objects help to model problem and develop the solution Service-orientation Describes an abstraction using services Services help to model problem and develop the solution Developed service can be used to develop new services

8 Service Oriented Programming Basic idea Wrap up a software system as a set of services, accessible via the Internet Use services as the building blocks to develop applications Standardize the way of describing, querying, and calling a service to deal with interoperability issues

9 Service Oriented Architecture A meta-architectural style that supports loosely coupled services to enable business flexibility in an interoperable manner SOA requires the following All functions are defined as services All services are independent of each other Service interfaces are invocable

10 Teaching SOP via Course Modules Important to incorporate SOP into the curriculum early Make SOP materials to instructors as course modules A course module is a well-defined, self-contained unit of instruction that may be incorporated, either as-is or with minor modifications, within one or more courses offered in diverse disciplines Course modules have become an excellent vehicle for handling curricular changes quickly Vertical integration into the curriculum via repeated exposure to SOP at different depths Three course modules

11 Course Module Template ComponentBrief Description OverviewDescription, prerequisite knowledge, and learning outcomes RationaleMotivation for the module Recommended useRecommendations for typical usage SlidesModule content for lectures or independent learning activities Sample questionsFor use in low-stake quizzes Labs/assignmentsFor hands-on experiences in solution design, implementation, and verification FAQAnswers to students frequently asked questions ReadingsIntroductory or supplementary materials referenced in module LinksPointers to online and other materials used in the module Module evaluationAssessment tools to measure learning and module effectiveness

12 Three Course Modules Course module 1 Introduces SOP into a standard second programming course, e.g., CS2 Course module 2 Presents SOP as a programming paradigm in a mid-level course, e.g., Concepts of Programming Languages Course module 3 Applies SOP to software design and development in a senior-level course, e.g., Distributed and Concurrent Software Systems

13 Course Module 1 Targets freshmen computing students Lecture slides provide a brief overview of service- oriented architecture, web service standards, and fundamental principles of SOP methodology Sample questions test materials covered by slides Demo showcases development of an application using web services Lab provides step-by-step instructions for calling a web service

14 Course Module 2 Targets mid-level students (sophomores or juniors) Lecture slides cover topics including service-orientation, service-oriented architecture, service description, discovery, invocation, and composition Sample questions test the material covered by slides Demo showcases the development of a web service and an application using web services Lab provides step-by-step instructions for developing a web service and an application by calling a web service

15 Course Module 3 Targets senior students Lecture slides focus on the architecture, design, and implementation of enterprise-critical software systems Sample questions test the materials covered by slides Project asks students to develop an SOP application reflecting a real-world scenario

16 Concluding Remarks Current StatusLast Words All modules have been developed and tested All modules at RIT Module 1 at Howard Module 1 and 3 at SUNY Oswego Initial assessment and revision Modules and assessment at all three institutions in Improvements being pursued In modules and in assignments Contact Xumin Liu or any of us if you want to try out the developed materials All you have to do is to provide us with feedback using our standard surveys Languages/platforms Java NET and C#


Download ppt "Collaborative Research: Developing Course Modules to Teach Service-Oriented Programming through Exemplification and Visualization Xumin Liu, Rajendra K."

Similar presentations


Ads by Google