This document outlines an assignment for a research methods course. It includes two parts:
1) Read a paper by Tichy on experimentation in computer science and answer questions about benchmarks, demos, comparisons, expert judgement, and case studies.
2) Read a paper by Brooks on essential and accidental difficulties in software engineering. Answer questions about the differences, essential difficulties, and why high-level languages, OOP, and AI only addressed accidental issues.
This document outlines an assignment for a research methods course. It includes two parts:
1) Read a paper by Tichy on experimentation in computer science and answer questions about benchmarks, demos, comparisons, expert judgement, and case studies.
2) Read a paper by Brooks on essential and accidental difficulties in software engineering. Answer questions about the differences, essential difficulties, and why high-level languages, OOP, and AI only addressed accidental issues.
This document outlines an assignment for a research methods course. It includes two parts:
1) Read a paper by Tichy on experimentation in computer science and answer questions about benchmarks, demos, comparisons, expert judgement, and case studies.
2) Read a paper by Brooks on essential and accidental difficulties in software engineering. Answer questions about the differences, essential difficulties, and why high-level languages, OOP, and AI only addressed accidental issues.
Due: April 8, 2023 (Reply on Ritaj, before the beginning of class.) This assignment will be discussed in class on April 8, 2023. Therefore, no late assignments are allowed.
Part I: Read the following paper:
Tichy, Walter F. "Should computer scientists experiment more?" Computer 31.5
(1998): 32-40.
Then, answer the following:
1. The argument for/against using benchmarks. 2. The argument for/against using demos. 3. The argument for/against using feature comparisons. 4. The argument for/against relying on expert judgement. 5. The argument for/against using case studies. 6. One thing that you found most interesting. 7. One thing where you disagree with the author.
Part II: Read the following paper:
Brooks, Frederik P. “No Silver Bullet –Essence and accidents in software
engineering." IEEE computer 20.4 (1987): 10-19.
Then, answer the following:
1. What does the author mean by the “essential tasks” and the “accidental tasks” of software engineering? 2. What are the essential difficulties in software engineering? 3. Why does the author claim that high-level languages only solved accidental difficulties? 4. Why does the author claim that object-oriented programming only solved accidental difficulties? 5. Why does the author claim that artificial intelligence only solved accidental difficulties? 6. Do you agree with the author?