Search Results (2)

View
Selected filters:
  • University of Toronto
Empirical Research Methods in Software Engineering
Conditions of Use:
Remix and Share
Rating

This course will explore the role of empiricism in software engineering research, ...

This course will explore the role of empiricism in software engineering research, and will prepare students for advanced research in SE by examining how to plan, conduct and report on empirical investigations. The course will cover all of the principal methods applicable to SE: controlled experiment, case studies, surveys, archival analysis, action research and ethnographies, and will relate these methods to relevant metatheories in the philosophy and sociology of science. The course will critically review published examples of work that used each of the principle methods, both from within SE and from other disciplines. The course will cover techniques applicable to each of the steps of a research project, including formulating research questions, theory building, data analysis (using both qualitative and quantitative methods), building evidence, assessing validity, and publishing.Please note that this is an advanced software engineering course - students will be expected to already have a strong grasp of the key principles of software engineering and the common methods used in software practice.The course is aimed at students who plan to conduct software engineering research that demands some form of empirical validation, or who wish to establish an empirical basis for a research programme. In most cases, such empirical work focuses on people - examining the ways in which software developers work, and how new tools and techniques affect their ability to construct high quality software efficiently. For this reason we draw heavily on the behavioural sciences for suitable empirical methods, and we focus on both qualitative and quantitative data analysis. Beyond Software Engineering, the course may be of interest to students in HCI, and perhaps those interested in studies of human cognition. Note that we will *not* cover the kinds of experimental techniques used in systems areas.

Subject:
Computer Science
Material Type:
Case Study
Full Course
Syllabus
Provider:
University of Toronto
Author:
Steve Easterbrook
Engineering Large Software Systems
Conditions of Use:
Remix and Share
Rating

This is an introduction to the theory and practice of large-scale software ...

This is an introduction to the theory and practice of large-scale software system design, development, and deployment. Project management; advanced UML; reverse engineering; requirements inspection; verification and validation; software architecture; performance modeling and analysis.

Subject:
Computer Science
Material Type:
Assessment
Full Course
Lecture Notes
Reading
Syllabus
Provider:
University of Toronto
Author:
Steve Easterbrook