Tag-based filter

  1. Selecting common used software development frameworks/methods and practices from paper: System and Software Processes in Practice: Insights from Chinese Industry.
  2. Adding their common alias and abbreviation (from wikipedia and other website).
  3. Converting words to lower case, and add hyphen in the name of frameworks and practices.
  4. Searching tags (which at least include one question) that match these terms from stackoverflow and software engineering. (color orange represent SO tags and purple represent SE tags, color pink represent both SO tags and SE tags)
  5. Reading description of each tag, and exclude these tags which the meaning not expected.
  6. Then we manually add "agile" and "development-process" to the terms.
  7. We found 25 (24 + "agile") and 26 (25 + "agile" + "development-process") software-development-process-related tags on SO and SE, which contains 15 (14 + "agile") tags both on SO and SE.
  8. Up to 2021.10.15, we collected 19,904 and 6,272 posts from SO and SE respectively.

Software development frameworks and methods

Software development practices

StackExchange SQL

// SO
select * from Posts
		where Tags like '%<kanban>%'
		or Tags like '%<devops>%'
		or Tags like '%<waterfall>%'
		or Tags like '%<scrum>%'
		or Tags like '%<domain-driven-design>%'
		or Tags like '%<rational-unified-process>%'
		or Tags like '%<personal-software-process>%'
		or Tags like '%<extreme-programming>%'
		or Tags like '%<continuous-integration>%'
		or Tags like '%<refactoring>%'
		or Tags like '%<use-case>%'
		or Tags like '%<tdd>%'
		or Tags like '%<prototyping>%'
		or Tags like '%<pair-programming>%'
		or Tags like '%<agile>%'
		or Tags like '%<mda>%'
		or Tags like '%<rup>%'
		or Tags like '%<dsdm-atern>%'
		or Tags like '%<e2e-testing>%'
		or Tags like '%<continuous-deployment>%'
		or Tags like '%<security-testing>%'
		or Tags like '%<use-case-diagram>%'
		or Tags like '%<user-stories>%'
		or Tags like '%<burndowncharts>%'
		or Tags like '%<model-checking>%'

// SE
select * from Posts
		where Tags like '%<kanban>%'
		or Tags like '%<devops>%'
		or Tags like '%<waterfall>%'
		or Tags like '%<scrum>%'
		or Tags like '%<domain-driven-design>%'
		or Tags like '%<rational-unified-process>%'
		or Tags like '%<personal-software-process>%'
		or Tags like '%<extreme-programming>%'
		or Tags like '%<continuous-integration>%'
		or Tags like '%<refactoring>%'
		or Tags like '%<use-case>%'
		or Tags like '%<tdd>%'
		or Tags like '%<prototyping>%'
		or Tags like '%<pair-programming>%'
		or Tags like '%<agile>%'
		or Tags like '%<iterative-development>%'
		or Tags like '%<prince2>%'
		or Tags like '%<large­-scale-scrum>%'
		or Tags like '%<lean>%'
		or Tags like '%<scaled-agile-framework>%'
		or Tags like '%<code-reviews>%'
		or Tags like '%<coding-standards>%'
		or Tags like '%<sprint>%'
		or Tags like '%<user-story>%'
		or Tags like '%<automatic-programming>%'
		or Tags like '%<development-process>%'

Content-based filtering

Software development keywords

select t1.Id, t1.AcceptedAnswerId, t2.CreationDate as acceptedAnswerDate, t1.CreationDate, t1.Score, t1.ViewCount, t1.Body, t1.Title, t1.Tags, t1.AnswerCount, t1.CommentCount, t1.FavoriteCount from Posts t1 left join Posts t2 on t1.AcceptedAnswerId = t2.Id 
  where t1.PostTypeId = 1 and lower(t1.Title) like '%[^a-z]team software process[^a-z]%'

Filtering SPRPs from other posts

We performed context analysis and applied our defined inclusion and exclusion criteria to accurately filter and separate software development processes related posts from other types of posts mentioned above.

Inclusion criteria