Two years ago we started the development of Xatkit, a (chat)bot development platform. That initial research prototype quickly evolved towards an open-source and low-code commercial chatbot platform that spans over 40 repositories and a couple of thousand commits.
Along the journey, we have learned many lessons regarding the technical aspects of building (chat)bots (NLP, conversation design, intent libraries...) but also realized that many challenges are similar to those in other software projects as the "software" part of a chatbot (the definition of the bot DSL, events management, the flexible architecture to connect to external services, the DevOps cycle for bots ...) is as important as the "bot" part.
In this talk, I'll share these hard-learned lessons, covering not only the technical challenges but also the business model, organizational and legal issues involved in the commercialization of Xatkit. I will illustrate these challenges with a number of bot examples, including one that will enable you to talk with your GitHub repositories!
About the speaker: Jordi Cabot is an ICREA Research Professor at Internet Interdisciplinary Institute, the Research center of the Open University of Catalonia (UOC) where he is leading the SOM Research Lab. Previously, he has been at Ecole des Mines de Nantes, Inria, University of Toronto, Politecnico di Milano and the Technical University of Catalonia.
His research falls into the broad area of systems and software engineering, especially promoting the rigorous use of software models in all software tasks while keeping an eye on the most unpredictable element in any project: the people involved in it.
Current research topics include pragmatic formal verification techniques, analysis of open source communities, open data exploitation, and the role AI can play in software development (and vice versa). Together with Gwendal Daniel, he is the co-founder of Xatkit, a generic and extensible platform for developing all kinds of bots and digital assistants.
Probot is an Open Source Node.js framework to create GitHub Apps. A GitHub app can be granted access to selected repositories which gives them transparent permissions for interacting with the repository. They can act on events, such as new commits, pull requests or releases, and they can mutate resources, such as creating comments or changing files.
In this talk I walk through a few apps that have been built with Probot as a means of introduction, so you can understand the underlying mechanisms and build your own.
About the speaker: Gregor is a Software Engineer with 20+ years of experience. He is the maintainer of several Open Source projects and is automating workflows on GitHub since close to 10 years.
Twitter: https://twitter.com/gr2m
Blog: https://dev.to/gr2m/
For authors and ICSE participants, please register through ICSE and for external and non-author's you can register through ICSE (25 USD) or Eventbrite (free).
Bots (short for software robots) are software applications that perform often repetitive or simple tasks. In particular, social and chat bots interacting with humans are a recent research topic. Similarly, bots can be used to automate many tasks that are performed by software practitioners and teams in their day-to-day work. Recent work argue that bots can save developers' time and significantly increase productivity. Therefore, the goal of this one-day workshop is to bring together software engineering researchers and practitioners to discuss the opportunities and challenges of bots in software engineering. We solicit 4 page, research, experience report and position papers. Research papers are expected to describe new research results and make contributions to the body knowledge in the area. Experience reports are expected to describe experiences with (amongst other things) the development, deployment, and maintenance of bot-based systems in the software engineering domain. Position papers are expected to discuss controversial issues in the field, or describe interesting or thought provoking ideas that are not yet fully developed. Papers will be reviewed by at least three program committee members. Accepted research and experience report papers will be invited to give a talk to present their findings. Authors of accepted position papers will be invited to give a short lightning talk. Papers may address issues along the general themes, including but not limited, to the following topics:
Submission must not exceed 4 pages, including all text, figures, tables, and appendices; one additional page containing only references is permitted. Submissions must conform to the ACM Conference Proceedings Formatting Guidelines,
LaTeX users must use \documentclass[sigconf,review]{acmart} without modifying the provided acmart.cls and ACM-Reference-Format.bst, and use the ACM reference format for the bibliography (i.e., \bibliographystyle{ACM-Reference-Format}).
The submission must also comply with the ACM plagiarism policy and procedures. In particular, submissions must not have been published elsewhere and must not be under review elsewhere. The submission must also comply with the IEEE Policy on Authorship.
Submissions to the workshop can be made via easychair by the submission deadline.
If a submission is accepted, at least one author of the paper is required to attend the workshop and present the paper in person. All accepted workshop papers will be published in the proceedings by ACM.