以服务为中心的软件开发设计与实现 --Service Oriented Software Design and Development Juanzi Li & Jie Tang Department of Computer Science & Technology Tsinghua University 2010 1 Lecturers • Juanzi Li, Professor. Research interests include semantic web, web services and knowledge engineering. • http://keg.cs.tsinghua.edu.cn/persons/ljz • Jie Tang, Associate Professor. Research interests include semantic web, social network mining and web services. • http://keg.cs.tsinghua.edu.cn/persons/tj 2 Teaching Assistance • TA: – Wenbin Tang – Room: FIT 1-308 – E-mail: tangwb06@gmail.com – Phone:62788788-20 • Website: – http://arnetminer.org/soa2010 3 Overview of Class Web Service SOA analysis modeling, develop Web 2.0&3.0 Web service composition SOA implementation, deploy and test Cloud computing Cloud services Enterprise application integration Service composition, reuse, distributed computing 4 Overview of Class (cont.) Standard & Spec: SOAP, WSDL, BPEL, UDDI, SOA: Service Oriented Archtecture Lectures on SOA Seminarstyle class Project Analysis & modeling (10%) Web Services Concept WS development BPEL Service composition Cloud services SOA system SOA modeling SOA implementation SOA & Web 2.0 SOA deployment Presentation Demonstration Web service Group project (60%) Output Contest Paper Fun! Correctness efficiency (20%) Web service composition (10%) SOA is a framework, instead of a programming language. In5 this course, we try to achieve something… Student Backgrounds • Technologies? – – – – – XML Schema, XSLT, DOM, SAX REST, JAX, Ajax object-oriented design, modeling distributed systems Map-reduce (e.g., hadoop) • Programming languages and tools? – – – – Java C++, C C#, .NET Perl, Python • Work Background? – Programmer, analyst, IT, architect 6 SOA? Cloud/distributed environment 7 Course Outline • • • • • • • • 8 SOA introduction •SOA introduction Web services & protocols •SO vs. OO Web services development, •SOA vs. DOAdeploy, and test SOA analysis, modeling, and case study Web services composition Enterprise SOA system Project presentation Project discussion & review Course Outline • • • • • • • • 9 SOA introduction Web services & protocols •Web services Web services development, deploy, and test •Core protocols •Services discovery SOA analysis, modeling, and•Experiments case study Web services composition - Service protocols parser Enterprise SOA system Project presentation Project discussion & review Course Outline • • • • • • • • 10 SOA introduction Web services & protocols framework Web services development,•Development deploy, and test •Service publish SOA analysis, modeling, and casedeploy study •Service Web services composition •Service test •Experiment Enterprise SOA system - WS impl. & deploy - WS test Project presentation Project discussion & review Course Outline • • • • • • • • 11 SOA introduction Web services & protocols Web services development, deploy, and test •SOA analysis principles SOA analysis, modeling, and case study •Case study Web services composition•Toolkit •Experiment Enterprise SOA system - WebSphere - Analysis Project presentation - Modeling Project discussion & review Course Outline • • • • • • • • 12 SOA introduction Web services & protocols Web services development, deploy, and test SOA analysis, modeling, and case study Web services composition •BPEL •WS composition Enterprise SOA system •Composition algorithm Project presentation •Experiment - WS composition challenges Project discussion & review Course Outline • • • • • • • • 13 SOA introduction Web services & protocols Web services development, deploy, and test SOA analysis, modeling, and case study •Enterprise service bus Web services composition•Semantic Web Service Enterprise SOA system •Service meets cloud computing Project presentation Project discussion & review Course Outline • • • • • • • • 14 SOA introduction Web services & protocols Web services development, deploy, and test SOA analysis, modeling, and case study Web services composition Enterprise SOA system •Project - group Project presentation - design document Project discussion & review - code Course Calendar Week Topic Homework 1st week SOA introduction 2nd week Web services & protocols Protocol parser 3rd week Web services development, deploy, and test WS development 4th week SOA analysis, modeling, and case study Analysis & modeling 5th week Web services composition 6th week Cloud Service/Web 2.0 WS composition challenge IBM invited talk 7th week Enterprise SOA system Course project 15th week Project presentation & review 15 Homework & Project • Homework • • • • WS protocol parser WS development WS Analysis document WS composition challenge • Course project – Presentation & discussion – Goal: SOA-based social network development – Demonstration 16 Evaluation 评分项目 分值 比重 评审标准 Basic requirement 40% 着重考察最后提交作业各方面的完成度及完整性,包括: 是否体现了SOA的特点; 提案的平台选择上的合理性; 提案的完整性和规范性,包括: - 方案描述,辅助图表是否准确清晰 - 技术用语和整体文字组织是否准确精炼; Novelty 30% 着重考察作业的创意以及具体实现过程中的创新性和一致性,包括: 总体创意和原创性; 实现过程中是否和设计方案总体构思一致,是否能够体现原有创意; 实现过程中是否能够根据实际条件和实际问题灵活调整设计方法和策略; Presentation 20% 着重考察在演示和技术报告中的表现,包括: 是否能够生动准确展示设计的主要功能,设计思路和关键技术; 技术报告的水平,是否生动,翔实,准确,简洁;报告材料的组织,幻灯片的设计, 演讲人的水平和现场问答技巧等; Completion 10% 着重考察在设计实现过程中的交付件,包括: 设计、开发文档是否详细、准确; 源代码质量; 易于安装; 运行无误 总计 100% 17 Final Score • Course Project:60% • (document and implementation) • Homework:40% • • • • 18 WS protocol parser 10% WS development 10% WS Analysis document 10% WS composition challenge 10% References • 毛新生. SOA原理、方法、实践. 2007 • Web Service: Concepts, Architectures and Applications. Gustavo Alonso, Fabio Casati, Harumi Kuno, and Vijay Machiraju. 2004. http://www.inf.ethz.ch/personal/alonso/WebServicesBook • Service-Oriented Computing, M. P. Singh and M. N. Huhns, John Wiley & Sons, 2005. • Service-Oriented Software System Engineering: Challenges and Practices, Zoran Stojanovic and Ajantha Dahanayake, Ideal Group Publishing, 2005. • Patterns: Implementing an SOA using an Enterprise Service Bus, • IBM RedBook, SG24-6346. • The Solution Designer's Guide to IBM On Demand Business Solutions, IBM RedBook, SG24-6248. 19 Thanks! HP: http://keg.cs.tsinghua.edu.cn/persons/tj 20