home | syllabus | groups | moodle | video | review | © 2022
CSC 510-001 (1947)
MonWed 10:15PM - 11:30PM
01103 James B Hunt Jr Centenniel
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 the available resources;
- That someone else would want to use;
- That is demonstrable good (compared to something else).
- Learn the state of the art in SE
- CSC 316 and CSC 226 (or equivalent)
- Optional, purchase not necessary
It is each student's responsibility to join the class Discord group "cs510, fall 2022". Till Friday week1, the link to join there is here.
All class communication from staff to students will be via this 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.
Grades come from
- 5 homeworks
- 2 projects
- 1 pitch session (where you try to "sell" your project1 to other groups)
- 1 mid-session exam
- 1 final exam
- 1 essay (due Dec4, but details already posted). Feel free to submit early.
- Participating in trials of other people's software.
- Bonus marks (from essay; from project2).
Exams and essays are done individually. Everything else is done in
groups of 5.
- 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 two large tasks (groups of 5 people, working in public Github repos-- not NCSU GH):
- Starting with 50 tasks in project1, we'll focus in on the best half, for
project2
- Bonus marks if other people jump to your task.i for their task.i+1 work
- Project1: you'll start some task
- Project2: you'll significantly extend someone else's task (thereby learning the important of documentation, design purity, regression tests, etc).
- Starting with 50 tasks in project1, we'll focus in on the best half, for
project2
- 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 (group) | 5 * 2 | setting up your repo/software/team |
essay (solo) | 20 | |
1 bonus | for ethical brilliance | |
exam (solo) | 10 | mid-term |
16 | final | |
project (group) | 15 * 2 | project1,2 |
5 | pitch meeting | |
3 bonus | if others pick your work for their project2 | |
4 bonus | (project2 only) for demonstraining scalability to *100 (+2), *1000 (+2) | |
participation (solo) | 10 | "lab rats" for other projects |
total | 100 | +9 (maybe) in bonus |
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).
During the homework periods, groups must post each week, even if it is incomplete, OR THEY WILL LOSE ONE MARK. That said, until the end of September, homeworks can be submitted multiple times for regrading.
For project deliverables, students will lose 1 mark per day for late submissions (weekend = 1 day).
Consultation times between lecturer and staff are available via calendy. Bookings must arrive the day before the consultation sesssion. If there are no bookings, consultation time will be cancelled.
Consultation times are Mon,Tue,Wed,Thurs,Frid at 2pm to 4pm.
Consultations will be conducted via ZOOMs (why? cause we polled students prior to class starting and that was the majority preference).
- please ensure all relevant materials are acessible and on-line prior to the consultation. DO NOT waste your time and ours during consultation finding the relevant links or enabling passwork access.
Tim Menzies (Prof. Monday)
- Github id: timm
- Discord name: timm
- E-Mail: timm@ieee.org: Only use this email for private matters. All 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).
- Office Hours: Monday, 2:00-4:00 and by request.
Andre Lustosa (Mr. Wednesday)
- Github id: andre-motta
- Discord name: SargeHawk#1591
- Office Hours: Wednesday, 2:00-4:00
- E-mail: alustos@ncsu.edu
Weichen Shi (Mr. Friday)
- Github id: shwch210d
- Discord name: Weichen#8407
- Office Hours: Friday, 2:00-4:00
- E-mail: wshi6@ncsu.edu
Leonardo Villalobos-Arias (Mr. Tuesday)
- Github id: lyonva
- Discord name: Leonardo Villalobos#5591
- Office Hours: Tuesday, 2:00-4:00
- E-mail: Leonardo Villalobos-Arias lvillal@ncsu.edu
Xiao Ling (Mr. Thursday)
- Github id: XiaoLing941212
- Discord name: Xiao#8138
- Office Hours: Thursday, 2:00-4:00
- E-mail: xling4@ncsu.edu
Rahul Yedida (Mr. Monday)
- Github id: yrahul3910
- Discord name: Rahul Yedida#1323
- Office Hours: Monday, 2:00-4:00
- E-mail: yrahul3910@gmail.com
- 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 project
commitments. It is very bad to be absent from your project except
for anticipated absences 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".)
This is an advanced graduate class at R1 institution (an R1 institution is classified as a doctoral university with very high research activity).
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
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/.
This subject will follow the COVID guidelines of NC State.
- Vaccines remain the best way to protect yourself and our community against COVID-19 and its most severe symptoms. If you haven’t yet done so, please consider making an appointment to get your vaccine on campus or, if you’re eligible, to get your booster shot. Personal Responsibility
- Face coverings are not required on campus, but are encouraged.