
home ::
syllabus ::
timetable ::
groups ::
moodle ::
video ::
© 2021
CSC 510-001 (1962)
TuTh 3:00PM - 4:15PM
01103 James B Hunt Jr Centenniel
This is an advanced graduate class. In this subject, students will be taught about etical SE the start of the art in how to:
- Write "good" software;
- Working in teams, deliver a systems of acceptable quality within eh available resources;
- That someone else would want to use;
- That is demonstrable good (compared to something else).
- Learn the state of thea rt in SE
- CSC 316 and CSC 226
- Optional, purchase not necessary
It is each student's responsibility to join the class Discord group:
- Students are strongly encouraged to contribute their questions and answers to that shared resource.
- Note that, for communication of a more private nature, contact the lecturer on the email shown below.
All class communication from staff to students will be via this Discord group.
Grades come from
- 6 homeworks
- Two of which are 2 "lab sessions" where students can use other students to test their software.
- 3 projects,
- 1 mid-session exam
- Final "exam" is a take home essay (on ethics). Details to be posted by end September. Feel free to submit early.
Exams and essays are done individually. Everything else is done in
groups of 4+.
- Homeworks are small tasks
- graded 0 (for no submission), 1 (for "please try again") and 2 for "good".
- may be submitted multiple times
- Projects comprise three large tasks (groups of 5 people, working in public Github repos-- not NCSU GH):
- Starting with 40 tasks in project1, we'll focus in on the best half, then the best quarter, for
project2 and project3
- Two bonus marks if other people jump to your task.i for their task.i+1 work
- Project1: you'll start some task
- Project2, Project2: you'll finish someone else's task (thereby learning the important of documentation, design purity, regression tests, etc).
- In the above you can get, at max 6 bonus marks:
- Proj1 is graded via the week6 deliverable list 1
- And if your project survives into Proj2, you get 2 bonus marks
- Proj2 is graded via the week12 deliverable list 2
- And if your project from proj2 survives into Proj3, you get 2 bonus marks
- Proj3 is graded via a report that your peers will review.
- And if the class votes your proj3 as "best", they get two bonus marks.
- Proj1 is graded via the week6 deliverable list 1
- Starting with 40 tasks in project1, we'll focus in on the best half, then the best quarter, for
project2 and project3
- To support the lab work
- Students get 10 marks for participating (*) in other project's labs
(*) And by "participate" we mean that students need to attend lab sessions organized by other groups. This means you will be collecting lab data from your peers. This also means you are now the guardians of that private data. You will lose marks if that data collection violates the following three rights:
Right | Notes |
---|---|
The right to privacy | No one should be able to identify individuals in your data. Don't store free text names in Github! |
The right to refuse | Any member of this class, when called to an lab session, has the right to decline to participate without having to explain why (in which case, they still get their chit). |
The right to be forgotten | Any one you collect data from has the right to require their data deleted from your study. So keep anonymous ids for everyone, keep a mapping table real name to anonymous (outside of Github). |
group | mark | notes |
---|---|---|
homework | 2 marks * 3 | hw1,2,3 : finding the state of the art |
2 marks | hw4: topic tbd | |
2 marks * 2 | hw5,6 : user studies | |
exam | 20 marks | mid-term |
20 marks | final | |
project | 16 marks * 3 | project1,2,3 |
2 marks * 3 | bonus marks for project 1,2,3 |
With the final grades, the following grade scale will be used:
A+ (97-100), A (93-96), A-(90-92)
B+ (87-89), B (83-86), B-(80-82)
C+ (77-79), C (73-76), C-(70-72)
D+ (67-69), D (63-66), D-(60-62)
F (below 60).
See "Timetable" on our home page.
- Github id: timm
- Discord name: timm
- Office Hours: Monday, 12:00-2:00 and by request
- E-Mail: timm@ieee.org
- Only use this email for private matters. A ll other class communication should be via the class news group, listed below.
- Phone: 304-376-2859 + Do not use this number, except in the most dire of circumstances (best way to contact me is via email).
Andre Lustosa
- Github id: andre-motta
- Discord name: SargeHawk#1591
- Office Hours: Wednesday, 13:30-15:00
- E-mail: alustos@ncsu.edu
Kewen Peng
- Github id: kpeng2019
- Discord name: Kewen#1729
- Office Hours: Thursday, 10:00-11:30
- Location: Zoom - https://ncsu.zoom.us/j/4801316040
- E-mail: kpeng@ncsu.edu
Xiao Ling
- Github id: XiaoLing941212
- Discord name: Xiao
- Office Hours: Tuesday, 13:00-14:30
- Location: Zoom - https://ncsu.zoom.us/j/93603223799
- E-mail: xling4@ncsu.edu
Weichen Shi
- Github id: shwch210d
- Discord name: Weichen#8407
- Office Hours: Friday, 10:30-12:00
- Location: Zoom - https://ncsu.zoom.us/j/8113021611
- E-mail: wshi6@ncsu.edu
- Lectures are twice a week.
- Tutorial sessions are optional, but please use our tutorial resources to help you along.
- Please make sure you experience the lectures (either live or watching the recoding).
- Aside from that, you have to service all your homework, and prokect
commitments. It is very bad to be absent from your project except
for anticipated abseonces condonned by the univerisity:
- Representing an official university function (e.g. athletics)
- Required court attendance as certified by the Clerk of Court.
- Students will be allowed a minimum of two excused absences per academic year for religious observances
- Required military duty as certified by the student's commanding officer.
- Unanticipated absences. Examples include:
- Short-term illness or injury
- Death or serious illnesses in the family when documented appropriately.
On top of that, Covid-related issues will, of course, also be excused.
(And no where on that list is "I have to go to a wedding in India".)
Students must be prepared to dedicate AT LEAST 5-8 working hours a week to this class (excluding the time spent in the lecture meeting). Laboratory instruction is not included in this subject.
Sometimes, the lecturer/tutor will require you to attend a review session, during their consultation time. There, students may be asked to review code, concepts, or comment on the structure of the course. Those sessions are mandatory and failure to attend will result in marks being deducted.
Cheating will be punished to the full extent permitted. Cheating includes plagerism of other people's work. All students will be working on public code repositories and informed reuse is encouraged where someone else's product is:
- Imported and clearly acknowledged (as to where it came from);
- The imported project is understood, and
- The imported project is significantly extended.
Students are encouraged to read each others code and report uninformed reuse to the lecturer. The issue will be explored and, if uncovered, cheating will be reported to the university and marks will be deducted if the person who is doing the reuse:
- Does not acknowledge the source of the product;
- Does not exhibit comprehension of the product when asked about it;
- Does not significantly extend the product.
All students are expected to maintain traditional standards of academic integrity by giving proper credit for all work. All suspected cases of academic dishonesty will be aggressively pursued. You should be aware of the University policy on academic integrity found in the Code of Student Conduct.
The exams will be done individually. Academic integrity is important. Do not work together on the exams: cheating on either will be punished to the full extent permitted.
Reasonable accommodations will be made for students with verifiable disabilities. In order to take advantage of available accommodations, students must register with the Disability Resource Office at Holmes Hall, Suite 304, Campus Box 7509, 919-515-7653. For more information on NC State’s policy on working with students with disabilities, please see the Academic Accommodations for Students with Disabilities Regulation (REG02.20.01) (https://policies.ncsu.edu/regulation/reg-02-20-01/).
Students are responsible for reviewing the PRRs which pertain to their course rights and responsibilities. These include: http://policies.ncsu.edu/policy/pol-04-25-05 (Equal Opportunity and Non-Discrimination Policy Statement), https://oied.ncsu.edu/home/ (Office for Institutional Equity and Diversity), http://policies.ncsu.edu/policy/pol-11-35-01 (Code of Student Conduct), and http://policies.ncsu.edu/regulation/reg-02-50-03 (Grades and Grade Point Average).
If an extended deadline is not authorized by the Graduate School, an unfinished incomplete grade will automatically change to an F after either (a) the end of the next regular semester in which the student is enrolled (not including summer sessions), or (b) by the end of 12 months if the student is not enrolled, whichever is shorter. Incompletes that change to F will count as an attempted course on transcripts. The burden of fulfilling an incomplete grade is the responsibility of the student. The university policy on incomplete grades is located at http://policies.ncsu.edu/regulation/reg-02-50-03. Additional information relative to incomplete grades for graduate students can be found in the Graduate Administrative Handbook in Section 3.18.F at http://www.ncsu.edu/grad/handbook/index.php
Homeworks become late 2 weeks after after the dates listed above. Late homeworks earn zero marks.
For project deliverables, students will lose 1 mark per day for late submissions (weekend = 1 day).
Instructors are not responsible for ensuring privacy or accessibility of electronic materials that are not required components of the course (e.g., links to supplemental information that is not part of the required reading list). However, instructors should judiciously consider the privacy, copyright, and accessibility of supplemental links provided to students and warn them of any known issues or concerns in this regard. See Online Course Material Host Requirements (NCSU REG 08.00.11).
NC State provides equal opportunity and affirmative action efforts, and prohibits all forms of unlawful discrimination, harassment, and retaliation ("Prohibited Conduct") that are based upon a person's race, color, religion, sex (including pregnancy), national origin, age (40 or older), disability, gender identity, genetic information, sexual orientation, or veteran status (individually and collectively, "Protected Status"). Additional information as to each Protected Status is included in NCSU REG 04.25.02 (Discrimination, Harassment and Retaliation Complaint Procedure). NC State's policies and regulations covering discrimination, harassment, and retaliation may be accessed at http://policies.ncsu.edu/policy/pol-04-25-05 or https://oied.ncsu.edu/divweb/. Any person who feels that he or she has been the subject of prohibited discrimination, harassment, or retaliation should contact the Office for Equal Opportunity (OEO) at 919-515-3148.
- Note that, as a lecturer, I am legally required to report all such acts to the campus policy1.
1Note that any remark you make in some on-line comment tracking system like Github is a public document. So take heed of the following cautionary tale. One year, a student was joking around with his buddy in a Github issue report. Then he was rude enough and stupid enough to add a remark about how the rest of the team was just so ■■■■ ■■■■■■■■. Needless to say, the rest of the team took great offense at this remark and invoked the University's non-discrimination policies. As a result, everyone lost much time that semester, as well as grades.
Retaliation against any person who complains about discrimination is also prohibited. NC State's policies and regulations covering discrimination, harassment, and retaliation may be accessed at http://policies.ncsu.edu/policy/pol-04-25-05 or http://www.ncsu.edu/equal_op/. Any person who feels that he or she has been the subject of prohibited discrimination, harassment, or retaliation should contact the Office for Equal Opportunity (OEO) at 919-515-3148.
(Included for completeness... but this is not text that is really relevant to this semester.)
Non-scheduled class time for field trips or out-of-class activities are NOT required for this class. No such trips are currently planned.
However, if they do happen then students are required to purchase liability insurance. For more information, see http://www2.acs.ncsu.edu/insurance/.
Due to the Coronavirus pandemic, public health measures have been implemented across campus. Students should stay current with these practices and expectations through the Protect the Pack website (https://www.ncsu.edu/coronavirus/). The sections below provide expectations and conduct related to COVID-19 issues.We are most concerned about your health and the health of your classmates and instructors/TAs.
- If you test positive for COVID-19, or are told by a healthcare provider that you are presumed positive for the virus, please work with your instructor on health accommodations and follow other university guidelines, including self-reporting. Self-reporting is not only to help provide support to you, but also to assist in contact tracing for containing the spread of the virus.
- If you feel unwell, even if you have not been knowingly exposed to COVID-19, please do not come to class.
- If you are in quarantine, have been notified that you may have been exposed to COVID-19, or have a personal or family situation related to COVID-19 that prevents you from attending this course in person (or synchronously), please connect with your instructor to discuss the situation and make alternative plans, as necessary.
- If you need to make a request for an academic consideration related to COVID-19, such as a discussion about possible options for remote learning, please talk with your instructor for the appropriate process to make a COVID-19 request.
These are difficult times, and academic and personal stress is a natural result. Everyone is encouraged to take care of themselves and their peers. If you need additional support, there are many resources on campus to help you:
- Counseling Center (https://counseling.dasa.ncsu.edu/)
- Health Center (https://healthypack.dasa.ncsu.edu/)
- If the personal behavior of a classmate concerns or worries you, either for the classmate’s well- being or yours, we encourage you to report this behavior to the NC State CARES team: (https://advising.dasa.ncsu.edu/resources-for-advisors/advisors-toolkit/cares/)
- If you or someone you know are experiencing food, housing or financial insecurity, please see the Pack Essentials Program (https://dasa.ncsu.edu/pack-essentials/).
We are all responsible for protecting ourselves and our community. Please see the community expectations and Rule 04.21.01 regarding Personal Safety Requirements Related to COVID-19 https://policies.ncsu.edu/rule/rul-04-21-01/
- Personal Protective Equipment: As a member of the NC State academic community you are
required to follow all university guidelines for personal safety with face coverings, physical
distancing, and sanitation. Face coverings are required in this class and in all NC State
buildings. Face coverings should be worn to cover the nose and mouth and be close fitting to the
face with minimal gaps on the sides. In addition, students are responsible for keeping their
course/work area clean.
- You are expected to wear masks in lectures.
- It is your choice to decide if you don't want to do that.
- If you do that, then my choice will be to
- Stop the lecture and wait till you out a mask on.
- Report you at the COVID-19 Community Standards Reporting Form "behavior they believe the University should take formal disciplinary action":