Jump to content

Software bot: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Bestchai (talk | contribs)
added usage, merged in application areas
Line 5: Line 5:


Bot is derived from [[robot]]. Although the term bot derives from robots, robots act in the physical world and software bots purely act in the digital world <ref name="LebeufZagalsky2019"/>. Some software bots are designed and behave as [[chatbot|chatbots]], but not all chatbots are software bots.
Bot is derived from [[robot]]. Although the term bot derives from robots, robots act in the physical world and software bots purely act in the digital world <ref name="LebeufZagalsky2019"/>. Some software bots are designed and behave as [[chatbot|chatbots]], but not all chatbots are software bots.



== Usage ==
== Usage ==


Software bots are used to support development activities, such as communication among software developers and automation of repetitive tasks. Software bots have been adopted by several communities related to software development, such as [[GitHub]] and [[Stack Overflow]].
A software bot usually, but not always, executes continuously. Some software bots are more interactive than others. Interactivity is not a requirement, but more interactivity further distinguishes a bot from a software agent. At one extreme is a type of bot that interacts continuously with a human and also personifies a human. Such a highly interactive software bot is also referred to as a [[chatbot]].


GitHub bots have user accounts and can open, close, or comment on [[Distributed_version_control#Pull_requests|pull requests]] and [[Software_project_management#Issue|issues]]. GitHub bots have been used to assign reviewers, ask contributors to sign the [[Contributor License Agreement]], report continuous integration failures, review code and pull requests, welcome newcomers, run automated tests, merge pull requests, etc.
== Application areas ==


Wikipedia content can be considered as a type of software, which is interpreted to output formatted text. In this context, [wikipedia bots] can be considered to be software bots that automate a variety of tasks, such as creating stub articles, consistently updating the format of multiple articles, and so on.
Software bots are used to support development activities and communication, automating repetitive tasks. In particular, [GitHub] bots have user accounts and can open, close, or comment on [pull requests] and issues. They are used to assign reviewers, ask contributors to sign the [[CLA]], report continuous integration failures, review code and pull requests, welcome newcomers, run automated tests, merge pull requests, etc.


== Issues and threats ==
== Issues and threats ==

Revision as of 10:10, 22 November 2019

A software bot is a type of software agent that is often treated as embodied software in the service of software project management and software engineering. A software bot has an identity and potentially personified aspects in order to serve their stakeholders[1] . Software bots often compose software services and provide an alternative user interface, which is sometimes but not necessary conversational.

Software bots are typically used to execute tasks, suggest actions, engage in dialogue, and promote social and cultural aspects of a software project.[2]

Bot is derived from robot. Although the term bot derives from robots, robots act in the physical world and software bots purely act in the digital world [1]. Some software bots are designed and behave as chatbots, but not all chatbots are software bots.

Usage

Software bots are used to support development activities, such as communication among software developers and automation of repetitive tasks. Software bots have been adopted by several communities related to software development, such as GitHub and Stack Overflow.

GitHub bots have user accounts and can open, close, or comment on pull requests and issues. GitHub bots have been used to assign reviewers, ask contributors to sign the Contributor License Agreement, report continuous integration failures, review code and pull requests, welcome newcomers, run automated tests, merge pull requests, etc.

Wikipedia content can be considered as a type of software, which is interpreted to output formatted text. In this context, [wikipedia bots] can be considered to be software bots that automate a variety of tasks, such as creating stub articles, consistently updating the format of multiple articles, and so on.

Issues and threats

Software bots may not be well accepted by humans. A study from the University of Antwerp[3] has compared how developers active on Stack Overflow perceive answers generated by software bots. They find that developers perceive the quality of software bot-generated answers to be significantly worse if the identity of the software bot is made apparent. By contrast, answers from software bots with human-like identity were better received. In practice, when software bots are used on platforms like GitHub or Wikipedia, their username makes it clear that they are bots, e.g., DependaBot, RenovateBot, User:DatBot, User:SineBot.

Bots may be subject to special rules. For instance, the Github terms of service[4] does not allow `bot` but accepts `machine account`, where a `machine account` has two properties: 1) a human takes full responsibility of the bot's actions 2) it cannot create other accounts.

See also

References

  1. ^ a b Lebeuf, Carlene; Zagalsky, Alexey; Foucault, Matthieu; Storey, Margaret-Anne (2019). "Defining and Classifying Software Bots: A Faceted Taxonomy". Proceedings of Bots in Software Engineering: 1–6. doi:10.1109/BotSE.2019.00008.
  2. ^ Team, The SOBotics (2019-09-17). "Meet the Bots that Help Moderate Stack Overflow". Stack Overflow Blog. Retrieved 2019-11-22.
  3. ^ Murgia, Alessandro; Janssens, Daan; Demeyer, Serge; Vasilescu, Bogdan (2016). "Among the Machines". Proceedings of CHI: 1272–1279. doi:10.1145/2851581.2892311.
  4. ^ "GitHub Terms of Service - GitHub Help". help.github.com. Retrieved 2019-11-22.