2018 · 15 citations · 17 references
ComputingComputer ScienceNatural Language ProcessingProgramming LanguagesSoftware EngineeringCollaborative WritingEnd-user ProgrammingSoftware ConstructionSoftware DesignSoftware DocumentationCode ComprehensionCode LiteracyCollaborative Software DesignDesign RationalesLinkingProgram ComprehensionProgramming LiteracySource Code As Text
The literate programming paradigm presents a program interleaved with natural language text explaining the code's rationale and logic. While this is great for program readers, the labor of creating literate programs deters most program authors from providing this text at authoring time. Instead, as we determine through interviews, developers provide their design rationales after the fact, in discussions with collaborators. We propose to capture these discussions and incorporate them into the code. We have prototyped a tool to link online discussion of code directly to the code it discusses. Incorporating these discussions incrementally creates post-literate programs that convey information to future developers.
17
Laura Dabbish, Colleen Stuart, Jason Tsay et al. · 2012 · 982 citations
Knowledge management in software engineering
Ioana Rus, Mikael Lindvall · IEEE Software · 2002 · 734 citations
Towards automatically generating summary comments for Java methods
Giriprasad Sridhara, Emily Hill, Divya Muppaneni et al. · 2010 · 517 citations
Information Needs in Collocated Software Development Teams
Amy J. Ko, Robert DeLine, Gina Venolia · 2007 · 483 citations
Steven P. Reiss · 2009 · 306 citations