Communication and Collaboration Tools

Because of the highly collaborative nature of the course, we’ll be using a variety of online tools that support collaboration, sharing, and openness.

  • Zoom sessions for the scheduled class meetings, when needed.
  • Canvas site has
    • course syllabus
    • learning modules and assignments
    • announcements and links to the Discord server, course public web site, and GitHub org with project repos;
    • Zoom meetings, gradebook, and classmates list.
  • Discord server used for messaging in and outside class with channels on various subjects.
  • GitHub oranization associated with this course has student project repositories
  • Public web site at
  • Overleaf platform hosts your project written artifacts.

Center for Academic Enrichment

Tutors in the Center for Academic Enrichment (CAE) are well-prepared to assist with drafting and writing your project paper or thesis manuscript. Please make use of one-on-one tutoring sessions. Contact Emily Kerr at for more information.

Library Services

The UNH Manchester librarians are available to assist you with your research. You can contact a librarian by calling 603-641-4173 or by emailing The following online resources provide information about library resources and services:

Student Tech Assistants

The Computing Program in the Department of Applied Engineering and Sciences has student tech assistants who are available to help with software configuration and other technical questions you might have.

Development Tools

Your personal laptop (or the laptop loaned from the department) is the development platform for all the learning activities in this class. Development tools you need to have on your machine installed at the global/system level are:

  • bash shell: terminal on MacOS or Ubuntu, or Linux Subsytem on Windows 10
  • git version control
  • IDE (e.g PyCharm, Visual Studio Code) or programming text editor (e.g. Atom, Notepad++) or
  • debugger (integrated with the editor or IDE)
  • unit testing (integrated with the IDE or text editor)
  • static code analysis tools (e.g. pylint and pycodestyle for Python)

If you code in Python, use

  • pyenv utility to manage your Python installations
  • pipenv or conda for package and environment management
  • PyCharm Professional IDE - free license for all enrolled students.

Useful Readings

Serge Demeyer. 2011. Research methods in Computer Science tutorial. IEEE International Conference on Software Maintenance.

Serge Demeyer. 2011. Research methods in CS Slides Presentation. IEEE International Conference on Software Maintenance.

Google Developers. 2020. Overview of Technical Writing for Students.

Philp Koopman. 1997. How to Write an Abstract. Carnegie Mellon University. Carnegie Mellon University.

Tomi Männistö. 2016. Instructions for Master’s Thesis in Software Engineering. Department of Computer Science, University of Helsinki.