A Cognitive and Machine Learning-Based Software Development Paradigm Supported by Context

by   Glaucia Melo, et al.

Advances in the use of cognitive and machine learning (ML) enabled systems fuel the quest for novel approaches and tools to support software developers in executing their tasks. First, as software development is a complex and dynamic activity, these tasks are highly dependent on the characteristics of the software project and its context, and developers need comprehensive support in terms of information and guidance based on the task context. Second, there is a lack of methods based on conversational-guided agents that consider cognitive aspects such as paying attention and remembering. Third, there is also a lack of techniques that make use of historical implicit or tacit data to infer new knowledge about the project tasks such as related tasks, task experts, relevant information needed for task completion and warnings, and navigation aspects of the process such as what tasks to perform next and optimal task sequencing. Based on these challenges, this paper introduces a novel paradigm for human-machine software support based on context, cognitive assistance, and machine learning, and briefly describes ongoing research activities to realize this paradigm. The research takes advantage of the synergy among emergent methods provided in context-aware software processes, cognitive computing such as chatbots, and machine learning such as recommendation systems. These novel paradigms have the potential to transform the way software development currently occurs by allowing developers to receive valuable information and guidance in real-time while they are participating in projects.


page 1

page 2


Supporting Contextual Conversational Agent-Based Software Development

Software Development (SD) is remarkably dynamic and is critically depend...

Context-Augmented Software Development Projects: Literature Review and Preliminary Framework

Software development is a complex activity which depends on diverse tech...

Ajalon: Simplifying the Authoring of Wearable Cognitive Assistants

Wearable Cognitive Assistance (WCA) amplifies human cognition in real ti...

Task Interruption in Software Development Projects: What Makes some Interruptions More Disruptive than Others?

Multitasking has always been an inherent part of software development an...

Advances in Computational Biology: A Real Boost or a Wishful Thinking

Computational biology is on the verge of a paradigm shift in its researc...

Context Capture in Software Development

The context of a software developer is something hard to define and capt...

Two Sides of the Same Coin: Software Developers' Perceptions of Task Switching and Task Interruption

In the constantly evolving world of software development, switching back...

Please sign up or login with your details

Forgot password? Click here to reset