Detection of antipatterns in service-based systems

The issue of necessity of monitoring circumstance of software systems implemented through service-based principle in conditions of continuous development and enhancement. Pattern and antipattern detection. Metric calculation algorithms. Response time.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык английский
Дата добавления 31.10.2016
Размер файла 873,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

In the result it can be observed that the anti_pattern was detected and highlighted in general software system work scheme.

3.2 Chatty Service

Chatty Service corresponds to a set of services that exchange a lot of small data of primitive types, usually with a Data Service antipattern. The Chatty Service is also characterized by a high number of method invocations. Chatty Service chats a lot with each other.

RULE CARD: ChattyService {

RULE: ChattyService { INTER TotalInvocation DSRuleCard };

RULE: DSRuleCard { RULE CARD: DataService };

RULE: TotalInvocation { NMI VERY HIGH };

Here the NMI is “number of method invocations” metric.

The execution trace containing interconnection chain that represents “Chatty Service” anti_pattern is presented in table 4.

Sample event log for “Chatty Service” anti_pattern.

TraceId

ServiceName

FunctionName

OccurenceTime

1

Srv1

A

03.06.2016 22:46

1

Srv2

C

03.06.2016 22:47

2

Srv3

F

03.06.2016 22:48

3

Srv2

A

03.06.2016 22:49

2

Srv2

C

03.06.2016 22:50

1

Srv1

B

03.06.2016 22:51

1

Srv3

E

03.06.2016 22:52

3

Srv3

F

03.06.2016 22:53

4

Srv2

D

03.06.2016 22:54

4

Srv1

B

03.06.2016 22:55

2

Srv1

A

03.06.2016 22:56

3

Srv1

B

03.06.2016 22:57

4

Srv2

C

03.06.2016 22:58

2

Srv2

C

03.06.2016 22:59

3

Srv2

D

03.06.2016 23:00

5

Srv1

A

03.06.2016 23:01

3

Srv1

B

03.06.2016 23:02

4

Srv3

E

03.06.2016 23:03

5

Srv2

C

03.06.2016 23:04

As it can be observed from the event log, two of three services communicate a lot with each other. They are Srv1 and Srv2. As we do not have enough information to estimate amount of transferred data during calls, we rely only on behavioral part of the rule, i.e. communicating part.

The result of work of anti_pattern detection algorithm is presented on fig. 3.2.

Figure 1.12. Result demonstration of detection of “Chatty Service” anti_pattern.

In the result it can be observed that the anti_pattern was detected and highlighted in general software system work scheme.

Conclusion

This work addresses the issue of necessity of monitoring circumstance of software systems implemented through service-based principle in conditions of continuous development and enhancement when number and complexity of systems is expanding faster than a human being can handle.

In the context of this work classification of antipatterns was provided and overview of methods to detect these antipatterns were observed. Methods to detect attribute specific and relational specific antipatterns already exist. And class of metric specific antipatterns was chosen for further detailed investigation.

During the exploration of process mining and data mining domains the general service-specific antipattern detection rules were invented. All rules consist of several metrics and its specific values, describing symptoms of antipatterns. At the time, five metrics are available for usage in detection rules: incoming call rate, outcoming call rate, response time, cohesion with other services, and number of service connections. With applying these metrics several antipatterns was specified and algorithms for it detection were introduced.

Algorithms of antipattern detection based on metric calculation were implemented as a software tool (research prototype), which allows by specifying rule cards in XML format and log in SQL Server database to detect antipatterns. The software tool is developed with usage of ASP.NET MVC framework.

Evaluation was conducted on logs from real service-based software system. In the process of evaluation several anti_patterns were found and it was confirmed by developer team that almost 80% of them were really presented.

The necessity of dynamic analysis was one of results of research work. And in accordance to that new functionality on dynamic data analysis was added to the developed research prototype. For now a few metrics can be calculated taking into time changes and it is planned to support all calculating now metrics from the dynamic point of view. It is planned that in future the work on refinement of the information system will be continued according to analysis of real life logs and number of available metrics and possible to detect antipatterns will be significantly greater. Furthermore, some fuzziness can be introduced for the evaluation of the threshold values thus to make anti_pattern detection rules more flexible.

References

1. D. Arcelli, V. Cortellessa, C. Trubiani. Experimenting the Influence of Numerical Thresholds on Model-based Detection and Refactoring of Performance Antipatterns. ECEASST 59 (2013)

2. M. J. Asbagh and H. Abolhassani, “Web service usage mining: mining for executable sequences,” in Proceedings of WSEAS ICACSE - Volume 7, ser. ACS'07. Stevens Point, Wisconsin, USA: WSEAS, 2007, pp. 266-271.

3. L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice. Boston, MA: Addison-Wesley, 2003.

4. M. Bell. SOA Modeling Patterns for Service Oriented Discovery and Analysis. Hoboken, John Wiley & Sons, Inc., 2010.

5. J.M. Bieman and B.K. Kang. Cohesion and Reuse in an Object-Oriented System. Proc. ACM Symposium on Software Reusability, apr 1995.

6. D. Card, R. Glass. Measure Software Quality. Prentice-Hall, NJ, 1990.

7. S. R. Chidamber and C. F. Kemerer. A Metric Suite for Object-Oriented Design. IEEE Transactions on Software Engineering, 20(6):476-493, June 1994.

8. T. DeMarco. Controlling Software Projects: Management, Measurement and Estimation. Yourdan Press, New Jersey, 1982.

9. L. Cherbakov, M. Ibrahim, and J. Ang, “Soa antipatterns: the obstacles to the adoption and successful realization of service-oriented architecture”.

10. B. Dudney, J. Krozak, K. Wittkopf, S. Asbury, and D. Osborne, J2EE Antipatterns, 1st ed. New York, NY, USA: John Wiley & Sons, Inc., 2002

11. S. Dustdar and R. Gombotz, “Discovering web service workflows using web services interaction mining,” IJBPIM, vol. 1, pp. 256-266(11), 27 February 2007.

12. T. Erl, Service-Oriented Architecture: Concepts, Technology, and Design. Prentice Hall PTR, August 2005.

13. G. Farrow. SOA antipatterns: When the SOA paradigm breaks // IBM Developer Works [Online]. Available: http://www.ibm.com/developerworks/library/wa-soa_antipattern/

14. N. Fenton and S.L. Pfleeger. Software Metrics: A Rigorous and Practical Approach. International Thomson Computer Press, London, UK, second edition, 1997.

15. M. Fowler, K. Beck, J. Brant, W. Opdyke, D. Roberts. Refactoring: Improving the Design of Existing Code. Boston, MA: Addison-Wesley, 1999.

16. P.G. Hoel. Introduction to Mathematical Statistics. Wiley, 1954.

17. L. Hu and K. Sartipi, “Dynamic analysis and design pattern detection in java programs,” in Proceedings of SEKE'2008, 2008, pp. 842-846.

18. M. Kessentini, S. Vaucher, and H. Sahraoui. “Deviance From Perfection is a Better Criterion Than Closeness To Evil When Identifying Risky Code” in Proceedings of the IEEE/ACM ASE. ACM, 2010, pp. 113-122.

19. A. Khan, A. Lodhi, V. Kцppen, G. Kassem, and G. Saake, “Applying process mining in soa environments,” in Proceedings of the 2009 ICSOC. Springer-Verlag, 2009, pp. 293-302.

20. F. Khomh, M. D. Penta, Y.-G. Guмehмeneuc, G. Antoniol. An exploratory study of the impact of antipatterns on class change- and fault-proneness. Empirical Software Engineering 17(3):243-275, 2012.

21. J. Krґal and M. Zemlicka, “The most important service-oriented antipatterns,” in ICSEA, 2007, p. 29.

22. M. Lanza and R. Marinescu, Object-Oriented Metrics in Practice. Springer-Verlag, 2006.

23. M. Lorenz, J. Kidd. Object-Oriented Software Metrics. Prentice-Hall Object-Oriented Series, Englewood Cliffs, NY, 1994

24. R. Marinescu. Detecting Design Flaws via Metrics in Object-Oriented Systems. In Proceedings of TOOLS USA 2001, pages 103-116. IEEE Computer Society, 2001.

25. R. Marinescu, “Detection strategies: Metrics-based rules for detecting design flaws,” in Proceedings of the 20th IEEE International Conference on Software Maintenance (ICSM'04). Los Alamitos CA: IEEE Computer Society Press, 2004, pp. 350-359.

26. T.J. McCabe. A Complexity Measure. IEEE Transactions on Software Engineering, 2(4):308-320, dec 1976.

27. N. Moha, Y.-G. Guмehмeneuc, L. Duchien, A.-F. L. Meur. DECOR: A Method for the Specification and Detection of Code and Design Smells. IEEE Trans. Software Eng. 36(1):20-36, 2010.

28. N. Moha, F. Palma, M. Nayrolles, B. J. Conseil, Y.-G. Guмehмeneuc, B. Baudry, J.-M. Jмezмequel. Specification and Detection of SOA Antipatterns. In International Conference on Service-Oriented Computing (ICSOC). Pp. 1-16. 2012

29. M. Nayrolles; N. Moha; P. Valtchev. Improving SOA Antipatterns Detection in Service Based Systems by Mining Execution Traces in Proceedings of the 20th Working Conference on Reverse Engineering (WCRE'13), pp. 321-330, IEEE, 2013.

30. M. Nayrolles, F. Palma, N. Moha, Y.-G. Guйhйneuc, SODA: A Tool Support for the Detection of SOA Antipatterns, ICSOC Demonstration Track (Shanghai, China), in conjunction with ICSOC 2012, (10th International Conference on Service Oriented Computing), November 12-16, Shanghai, China, 2012.

31. J. K.-Y. Ng, Y.-G. Guйhйneuc, and G. Antoniol, “Identification of behavioural and creational design motifs through dynamic analysis,” JSMRP, vol. 22, no. 8, pp. 597-627, 2010.

32. F. Palma, M. Nayrolles, N. Moha, Y.-G. Guйhйneuc, B. Baudry, J.-M. Jйzйquel. SOA Antipatterns: an Approach for their Specification and Detection (Article) International Journal of Cooperative Information Systems, 22 (04), 2013.

33. T. Parsons, J. Murphy, “Detecting performance antipatterns in component based enterprise systems,” JOT, vol. 7, no. 3, pp. 55-90, April 2008.

34. A.J. Riel. Object-Oriented Design Heuristics. Addison-Wesley, 1996.

35. A. Rotem-Gal-Oz, SOA Patterns, 1st ed. Manning Pubblications, 2012.

36. A. Rozinat, W. van der Aalst. “Conformance Testing: Measuring the Fit and Appropriateness of Event Logs and Process Models”. In BPM 2005 Workshops (Workshop on Business Process Intelligence), C. Bussler et al., Ed. Lecture Notes in Computer Science, vol. 3812. Springer-Verlag, Berlin, 163-176, 2006.

37. H. Safyallah and K. Sartipi, “Dynamic analysis of software systems using execution pattern mining,” ICPC, vol. 0, pp. 84-88, 2006.

38. D. L. Settas, G. Meditskos, I. G. Stamelos, and N. Bassiliades. “SPARSE: A symptom-based antipattern retrieval knowledge-based system using Semantic Web technologies”, ESA, vol. 38, no. 6, pp. 7633-7646, June 2011.

39. SOA Antipatterns // SOFA: Service Oriented Framework for Analysis [online] [available: http://sofa.uqam.ca/resources/antipatterns.php #Breaking%20Self-descriptiveness]

40. P. Tonella and M. Ceccato. “Aspect mining through the formal concept analysis of execution traces,” in Proceedings of the 11th WCRE 2004. IEEE Computer Society, 2004, pp. 112-121.

41. A. Trifu. Using Cluster Analysis in the Architecture Recovery of OO Legacy Systems. Diploma Thesis, Karlsruhe and the ”Politehnica” University Timisoara, 2001.

42. B. Upadhyaya, R. Tang, and Y. Zou, “An approach for mining service composition patterns from execution logs.” Journal of Software : Evolution and Process, 2012.

43. W.M.P. van der Aalst, M. Dumas, C. Ouyang, A. Rozinat, H.M.W. Verbeek: Conformance Checking of Service Behavior. ACM Transactions on Internet Technology, 8(3):29-59 (2008)

44. W.M.P. van der Aalst. Process Mining: Discovery, Conformance and Enhancement of Business Processes. Berlin, Germany: Springer Verlag, Berlin-Heidelberg, 2011.

45. W.M.P. van der Aalst, M. Dumas, C. Ouyang, A. Rozinat, H.M.W. Verbeek. “Conformance checking of service behavior”, ACM Transactions on Internet Technology, Vol. 8(2008), No. 3, p. 13-1/30

46. S. Wong, M. Aaron, J. Segall, K. Lynch, and S. Mancoridis, “Reverse Engineering Utility Functions Using Genetic Programming to Detect Anomalous Behavior in Software,” in Proceedings of WCRE. IEEE Computer Society, 2010, pp. 141-149.

47. A. Yousefi and K. Sartipi, “Identifying distributed features in soa by mining dynamic call trees.” in ICSM. IEEE, 2011, pp. 73-82.

Размещено на Allbest.ru

...

Подобные документы

  • Lines of communication and the properties of the fiber optic link. Selection of the type of optical cable. The choice of construction method, the route for laying fiber-optic. Calculation of the required number of channels. Digital transmission systems.

    дипломная работа [1,8 M], добавлен 09.08.2016

  • Сутність, типи, архітектура, управління, швидкість реакції та інформаційні джерела СВВ. Особливості документування існуючих загроз для мережі і систем. Контроль якості розробки та адміністрування безпеки. Спільне розташування та поділ Host і Target.

    реферат [28,0 K], добавлен 12.03.2010

  • The material and technological basis of the information society are all sorts of systems based on computers and computer networks, information technology, telecommunication. The task of Ukraine in area of information and communication technologies.

    реферат [29,5 K], добавлен 10.05.2011

  • Опис специфічних просторів імен, класів, функцій, використаних при роботі з системними процесами. Створення Windows service та клієнта-програми до неї, що виводить діючі курси валют (купівлі\продажу долара, євро та рубля) деяких банків в режимі онлайн.

    курсовая работа [659,1 K], добавлен 21.04.2015

  • Необходимость программы "Мониторинг" для службы Service Desk в АО "Алюминий Казахстана". Обработка заявок в службе Service Desk по установке программного обеспечения, покупке и замене офисной техники и расходных материалов. Управление уровнем сервиса.

    курсовая работа [3,4 M], добавлен 23.02.2015

  • Значение Информационных технологий. Традиционные проблемы взаимодействия. Принципы организации и возможности автоматизированной Диспетчерской службы. Основные преимущества компьютеризированной реализации службы Service Desk. Классификация, учет обращений.

    лекция [2,0 M], добавлен 04.12.2014

  • Спецификация организации службы Short Message Service. Алгоритм работы сервера и возможность расширения функциональных возможностей. Реализация проекта на языке высокого уровня С++ на платформе Linux. Расчет себестоимости и цены программного продукта.

    дипломная работа [168,6 K], добавлен 19.01.2014

  • Сравнение эталонных моделей OSI, TCP. Концепции OSI: службы; интерфейсы; протоколы. Критика модели, протоколов OSI. Теория стандартов Дэвида Кларка (апокалипсис двух слонов). Плохая технология как одна из причин, по которой модель OSI не была реализована.

    реферат [493,1 K], добавлен 23.12.2010

  • Overview history of company and structure of organization. Characterization of complex tasks and necessity of automation. Database specifications and system security. The calculation of economic efficiency of the project. Safety measures during work.

    дипломная работа [1009,6 K], добавлен 09.03.2015

  • Простые системы для отслеживания заявок. Информационные потоки, возникающие на этапе поступления запроса для решения инцидента. Концептуальная и логическая модель данных. Разработка программного обеспечения по автоматизации процесса Службы Service Desk.

    дипломная работа [2,6 M], добавлен 11.06.2017

  • History of development. Building Automation System (BMS) and "smart house" systems. Multiroom: how it works and ways to establish. The price of smart house. Excursion to the most expensive smart house in the world. Smart House - friend of elders.

    контрольная работа [26,8 K], добавлен 18.10.2011

  • Review of development of cloud computing. Service models of cloud computing. Deployment models of cloud computing. Technology of virtualization. Algorithm of "Cloudy". Safety and labor protection. Justification of the cost-effectiveness of the project.

    дипломная работа [2,3 M], добавлен 13.05.2015

  • Data mining, developmental history of data mining and knowledge discovery. Technological elements and methods of data mining. Steps in knowledge discovery. Change and deviation detection. Related disciplines, information retrieval and text extraction.

    доклад [25,3 K], добавлен 16.06.2012

  • Понятие компонентов как определенного типа объектов, их свойства и функции. Режимы создания: Design-time и Run-time, их сравнительная характеристика, условия и возможности использования, преимущества и недостатки. Контролеры за объектами, их значение.

    презентация [1,3 M], добавлен 27.10.2013

  • Многоуровневая разветвлённая система сертификации инженеров по компьютерным сетям. Устройства сетевой безопасности. Крупные системы видеоконференций TelePresence. Программное обеспечение управления сетью. Универсальные шлюзы и шлюзы удалённого доступа.

    презентация [212,2 K], добавлен 26.11.2014

  • Анализ числа отремонтированных предприятием скважин и фонда заработной платы, функций служб и отделов. Методология сервисного обслуживания. Разработка отчетов по ключевым показателям эффективности. Типовая модель SLA. Структура HP OpenView Service Desk.

    отчет по практике [426,1 K], добавлен 09.11.2014

  • Модель взаимодействия открытых систем Open Systems Interconnection Reference Model. Основные особенности модели ISO/OSI. Характеристики физических сигналов, метод кодирования, способ подключения. Канальный уровень модели ISO/OSI. Передача и прием кадров.

    презентация [52,7 K], добавлен 25.10.2013

  • Экономическая характеристика организации, структура и анализ современной деятельности. Оценка рынка информационных систем и выбор лучшей. Обоснование проектного решения по информационному и программному обеспечению. Технологическое обеспечение проекта.

    дипломная работа [4,7 M], добавлен 21.05.2013

  • Программа обмена сообщениями через Интернет в реальном времени через службы мгновенных сообщений (Instant Messaging Service, IMS). Приемы и навыки объектно-ориентированного программирования с использованием языка программирования высокого уровня C#.

    курсовая работа [1,4 M], добавлен 07.07.2013

  • Использование UDP для экспорта данных в MS Project. Документирование моделей, формирование HTML-отчета. Технология создания SADT модели. Стоимостной анализ (Activity Based Costing). Способы создания диаграммы Ганта с помощью программы Microsoft Project.

    курсовая работа [6,2 M], добавлен 24.09.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.