- The first day of the 2013 RAISE workshop took a dive "over the horizon," discussing future synergies between artificial intelligence and software engineering. Seven short vision statements were presented on potentially fruitful research directions, along with a perspective session and a keynote from John Clark.Like the first day, side-discussion on Twitter was encouraged under the hashtag #icse13raise. Some of the tweets are collected here:
- Following the vision statements (and lunch), the workshop participants broke into two groups to brainstorm and debate the following topics:1: SWOT (strengths, weaknesses, opportunities, and threats) of the synergy of AI and SE2: How people should be considered in both topics3: A call for research proposals on RAISE
- Group 1 returned the following thoughts:1. SWOT analysis of AI and SE
Deep knowledge of SE from experts
AI quite good at analysing natural language; SE often deals with human
written documents - potential synergy
AI can offer guidance on demand, very quickly
Communities are talking to each other (AI and SE)
More data coming online
Weak AI knowledge from software engineers
Data not being shared
Obsession with manual software engineering methods (which is slow)
Many systems to evaluate, a large volume of data to be collected
Cognitive burdens to be taken off human software engineers
Will be great if people can share their data
Deeper analysis still possible (in the similar fashion to text mining)
Social networks like stack-overflow may be a source of (SE) domain knowledge
More data coming online
Not enough accuracy to be useful: issue of trust and/or worry of
creating even more manual work
Not understanding each other community, not speaking the same language
Better learners are not doing better than dumb learners: unexplained
variations in results, lack of data analysis patterns
We should be learning more from people
Venues: NLP, AI/SE, text mining, traceability analysis - very diverse
research interests. Do we need more specialised workshops?
Present SE problems to AI researchers as a productive, impactful, and
meaningful intellectual challenge
Educational opportunities for AI people to transfer skills to software engineers
Expert systems, including agents
They do Turing test for generic conversation: why not SE?
Present things in a cooler light (Pex4Fun)
Success of simple/stupid text mining techniques: why?
What is the best way for an academic to transfer technology? Students
are not enough.
What is the longest term goal that we can set?
Obsession about correctness in software engineering
We need more software to improve the general quality of life.
More data: learn from the history.
More precision in the information we see.
Provide software in a way people can use, understand, change/personalise
We need to understand and learn from history.
Software engineering for under-developed countries: what unique
challenges and requirements?
Computation as self-organising "thing" (not unlike biology)Group 2 added:
AI produces prototypes and tools (much more than SE)
many public open source AI tools (e.g. data miners)
Availability of SE data
Recent development of big data and cloud technologies
Strongs advances in automated SE (e.g. source code feature extraction)
SE produces fewer prototypes and tools
Not much involvement by traditional AI researchers
Lack of precise definitions of goals
AI are technologies for solving a range of problems
SE is methods for build specific products
We often speak in generalities while only offering very specific results.
Absence of a culture of challenge problems and challenge systems
A lack of system models and methods to build the
Extraordinary computational power and memory can now be applied to problems
Creative dialogs between AI and humans, rather than merely between humans
Theory of testing of complex systems
Better understanding of the types of determinism needed for classes of systems
Human centric synergy for making systems and tools more usable by people
Involvement of cognitive science
If we restrict our domains, many specific tools and techniques often succeed
New HCU interaction technologies (e.g. NLP) may create opportunties for ASE
Strong awareness of the centrality of human’s role
AI and SE use different ways to build systems
Distance between communities, no common language
SE research not dealing with real systems
AI may help in traditional lifecycles but not useful for agile (not enough data)
Complexity of upcoming systems
Overconfidence in our knowledge and ability about assumptions
The lack of a big pictureObstruction from individual communities