CS 390: Research and Project Design Principles in Computing
(Fall 2024)
COURSE DESCRIPTION
CS 390 provides students with an introduction to the research and project design process as applied within the computing field. Students will learn about the tools of the trade and work through design principles starting with the articulation of a question, reviewing methods of exploration, gathering evidence, communicating results, and assessing/evaluating research or project outcomes.
For more information, see my CS390 page.
PREREQUISITES
CS262: Low level Programming (required)
CS310: Data Structures (recommended), CS321: Software Engineering (recommended for groups)
CONTACT INFORMATION
Instructor: |
Katherine (Raven) Russell |
Instructor Email: |
krusselc (subject: "CS390") |
Office: |
Buchanan Hall D217B (enter through Buchanan D215) |
Open Office Hours |
Tuesdays 10:15-12:15 (no appointment needed)
or by appointment
|
COURSE REQUIREMENTS & GRADING
CS 390 is an activity-based course. This means that students must attend all classes and contribute to on-going discussions. There are no exams, but the course grade will be based on class participation and completion of a semester project or research paper:
- Participation: readings critiques, in-class progress reports, and presentations: 40%
-
Semester project: 60%
- 30% - project design/research plan documents, including regular written progress reports and revisions
- 30% - final project (documented software and/or project artifacts) or final document (show evidence of an original research contribution)
COURSE OUTCOMES
By the end of the semester, students will be able to:
- Articulate and refine a question while following ethical principles.
- Engage in the key elements of the scholarly process by:
- selecting an appropriate discovery process for scholarly inquiry,
- gathering evidence appropriate to the question, and
- applying appropriate scholarly conventions during scholarly inquiry and when reporting
- Assess the validity of key assumptions and evidence, and situate the scholarly inquiry within a broader context.
This course was developed with the support of OSCAR @ GMU and is identified as an Inquiry level course.
ACADEMIC HONESTY
PRIME DIRECTIVE: Be able to explain your own work. The work you submit should be the product of your own effort and reflect your personal understanding. Students may be asked at any time to explain their contributions. Inability to do so will be construed as evidence of misconduct.
Both the University and the Computer Science Department have honor codes you are expected to adhere to. We will be reviewing these in class, but more information about the university honor code can be found here: Academic Standards Code and the deparment's honor code can be found here: CS Honor Code. You are bound by these honor codes.
Any submitted work which shows too much commonality with others' work to be completely original, any plagiarized work, or any work generated by AI, will result in a case for the Honors Committee.
SPECIAL POLICIES
- Laptops and Other Electronic Devices – will be allowed in class only at certain times.
- Late Assignments – will not be accepted without prior approval.
CAMPUS RESOURCES
-
Student Support and Advocacy Center (SSAC)
- offers one-on-one consultations and resources in
the areas of interpersonal violence,
personal wellness, and alcohol/drug abuse
-
Counseling and Support Services (CAPS)
- offers individual and/or group counseling, workshops
and community education programs
-
The Office of Disability
Services - handles short and long term disability
accommodations.
-
Learning Services
- offers a lot of support options for things like time management,
test taking skills, college reading skills, etc.
-
The Writing Center
- offers support for writing improvement, including specific
support for
English for Speakers of Other Languages (ESOL)
-
Open Computer Labs - free-to-use computers on campus
-
Software and IT Services for Students - everything
from video recording software (such as Kaltura), to
cloud storage (such as OneDrive), to development software
(such as jGrasp, Notepad++, PuTTy, Python, etc.).