Presentation is loading. Please wait.

Presentation is loading. Please wait.

Survey On Concern Separation in Service Integration by Tomas Cerny* and Michal J. Donahoo # * Czech Technical University, Czech Rep. # Baylor University,

Similar presentations


Presentation on theme: "Survey On Concern Separation in Service Integration by Tomas Cerny* and Michal J. Donahoo # * Czech Technical University, Czech Rep. # Baylor University,"— Presentation transcript:

1 Survey On Concern Separation in Service Integration by Tomas Cerny* and Michal J. Donahoo # * Czech Technical University, Czech Rep. # Baylor University, TX, USA SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 1

2 Goal Survey on Service Integration Contemporary issues Web Services Distinct evolution boundaries and life-span Development and maintenance efforts Service Interaction perspective Separation of concerns Concern-separating design Impact on Service Integration SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 2

3 Code-centric design Background 3 layers 3 tiers Java Enterprise Edition SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 3 3 Correlation

4 Service Integration Background Large enterprise software applications Heterogeneous data sources Decentralized governance Reusable, independently replaceable, scalable microservices Composable functionality Platform independence Interoperable Well-defined interfaces Builds on standard machine-readable formats XML, JSON Location transparency SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 4

5 Correlation Service Integration Background Addresses disadvantages of code-centric monolithic design Independent components Service provider Integration component Service consumer SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 5 Correlation

6 Service Provider and Integration Component SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 6 Integration Component Service Provider >

7 Service Provider and Integration Component SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 7 Integration Component 1 Service Provider > Integration Component 2 > June, 2015 Version 1 Integration Component 1 Service Provider > Integration Component 2 > January, 2016 Version 2 Version 1 ?? Data Data structure Validation Business rules Context-awareness Data structure Validation Business rules Context-awareness

8 Service Provider and Integration Component SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 8 Service Provider Object-oriented programming (OOP) Industrial standards Persistence Object Relational Mapping Validation Security Business rules Object-based Domain Specific Languages REST/XML/JSON Context-awareness

9 SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 9 Independent application Coupling to provider Global weak type-safety Restatements Data structure Validation Business rules Context-awareness Security Location Time Service Provider and Integration Component Integration Component >

10 A Good Software Design 10 A single large procedure? 1000 Lines of code? Structural decomposition Separation of concerns Design principle Separating a computer program into distinct sections Each section addresses a separate concern A concern is a set of information affecting computer program Performance, Security, Logging, Transactional behavior, etc. What if we cannot effectively separate certain concerns? Results in tangled/spaghetti code, or in inefficient interaction Breaking a complex problem/system into parts easier to conceive, understand, program, and maintain. SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016

11 Concern separating approaches Aspect-Oriented Programming (AOP) Component code + Aspect code 11 Concern reuse Need to design Weaver Concerns captured by Aspects No concern Reuse SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016

12 Concern separating Service Design SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 12 Service Provider Code-inspection/Metaprogramming Deriving Join Point Representation Entities and constraints Java Persistence API Bean Validation Presentation Profiles Security annotations Domain Specific Languages Business rules Drools, MPS Validation/Security rules Context-awareness Runtime processing / weaving MetaWidget AspectFaces MetaWidget AspectFaces RuleGuvnor AspectFaces Concerns /Aspects Object/Co mponent AspectWeaver

13 Concern separating Integration Design SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 13 Integration Component Service Provider > Data structure Data values Validation Business rules Context-awareness Data structure Data values Validation Business rules Context-awareness > Provider Weaver Integration Weaver Runtime processing

14 Service Provider and Integration Component SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 14 Integration Component 1 Service Provider > Integration Component 2 > June, 2015 Version 1 Integration Component 1 Service Provider > Integration Component 2 > January, 2016 Version 2 Adapts Data values Data structure Validation Business rules Context-awareness Data values Data structure Validation Business rules Context-awareness

15 Performance MetaProgramming Slow Join point representation preloading/caching AspectWeaving Delegated to the integrating component Parallelization Caching aspects at the integrating component User Interface study Better responsiveness SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 15

16 Conclusion Concern separation itself improves service design Multiple existing concern separating approaches Not yet applied to interaction Multiple communication channels Concurrent processing Caching Sharing service meta-information Integrating components adapt to service changes Adaptation relative to explicit field references User Interface Design - render all fields – implicit references Impacts design of the integrating components Dedicated weaver producing proxy objects Limited compile-time decisions SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 16

17 Future work Extend Business Rule Distribution Compile-time property evaluation For integrating components type-safety ASM, Apache BCEL Enforce correlation across distributed environment AOP service backwards compatibility Service change == novel aspect for backwards compatibility Chain of Responsibility Mediation Internet of Things SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 17

18 @ inproceedings {cerny2016, Title = {Survey On Concern Separation in Service Integration}, Author = {Tomas Cerny, and Michael J. Donahoo}, Booktitle = {SOFSEM2016: Theory and Practice of Computer Science}, Isbn = {978-3-662-49191-1}, Month = {January}, Year = {2016}, Pages = {518-531}, Volume ={9587}, Series ={Lecture Notes in Computer Science}, Publisher ={Springer Berlin Heidelberg}, } SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 18 Questions/Answers

19 Invitation ICITCS Prague SofSem 2016, Harrachov, Czech Republic, Jan 23-28, 2016 19 Scopus ISI EI Scopus ISI EI http://icatse.org/icitcs/


Download ppt "Survey On Concern Separation in Service Integration by Tomas Cerny* and Michal J. Donahoo # * Czech Technical University, Czech Rep. # Baylor University,"

Similar presentations


Ads by Google