CSC 217 Software Development Fundamentals Lab - Syllabus
All CSC 217 Sections
Spring 2026
1 Credit Hour
Course Description
Laboratory course to accompany CSC 216 lecture course. Application of the software processes and practices to design, implement, and test the development of software solutions requiring composition; inheritance; finite state machines; and linear data structures, including recursive linked lists.
Learning Outcomes
Upon successful completion of this course, a student will be able to…
-
Design, implement, and test programs which use object-oriented language features of inheritance, abstract classes, interfaces, and polymorphism;
-
Employ the phases of the software development life cycle (requirements, design, implementation, and test) in developing software;
-
Use UML class diagrams to propose a design to satisfy requirements;
-
Use design patterns (e.g., model-view-controller and the state pattern) to solve development problems;
-
Design effective system and unit tests and implement automated unit test code;
-
Navigate and extract information from the Java API, and employ the Javadoc tool to construct internal documentation of source code;
-
Use software engineering best practices like pair programming, test-driven development, code coverage, static analysis, version control, continuous integration, and documentation with supporting tooling to design, implement, and test object-oriented systems.
-
Design, implement, and test a finite state machine;
-
Design, implement, and test simple recursive data structures;
-
Implement, test, and use a stack, queue, array-based list, and linked list.
Instructors
Instructor: Dr. Chandrika Satyavolu
Email: jsatyav@ncsu.edu
Web Page: https://csc.ncsu.edu/people/jsatyav/
Office Location: EB2 2272
Office Hours: (Posted on Course website)
Instructor: Dr. Sarah Heckman
Email: sarah_heckman@ncsu.edu
Web Page: https://sheckman.github.io/
Office Location: EB2 2299
Office Hours: (Posted on Course website)
Instructor: Mr. James Tetterton
Email: jctetter@ncsu.edu
Web Page:
Office Location: online
Office Hours: (Posted on Course website)
Lab Sections
| Lab Section | Meeting Times | Meeting Location | Lab Deadline | Jenkins |
|---|---|---|---|---|
| Section 201 | M 10:40a-12:30p | Engineering Building II, Room 1221 | M 10:30a | https://csc217-201-jenk.csc.ncsu.edu/ |
| Section 202 | M 12:50p-2:40p | Engineering Building II, Room 1221 | M 12:40p | https://csc217-202-jenk.csc.ncsu.edu/ |
| Section 210 | T 8:30a-10:20a | Engineering Building II, Room 1221 | T 8:20a | https://csc217-210-jenk.csc.ncsu.edu/ |
| Section 211 | T 10:40a-12:30a | Engineering Building II, Room 1221 | T 10:30p | https://csc217-211-jenk.csc.ncsu.edu/ |
| Section 213 | T 3:00p-4:50p | Engineering Building II, Room 1221 | T 2:50p | https://csc217-213-jenk.csc.ncsu.edu/ |
| Section 221 | W 10:40a-12:30a | Engineering Building II, Room 1221 | W 10:30p | https://csc217-221-jenk.csc.ncsu.edu/ |
| Section 222 | W 12:50p-2:40p | Engineering Building II, Room 1221 | W 12:40p | https://csc217-222-jenk.csc.ncsu.edu/ |
| Section 601 | Asynchronous | Online | T 11:45p | https://csc217-601-jenk.csc.ncsu.edu/ |
| Section 731 | Asynchronous | Online | T 11:45p | https://csc217-731-jenk.csc.ncsu.edu/ |
Meeting Notes
Students are required to attend one CSC 217 lab section if they have not already completed CSC 217. Each lab is 110 minutes.
Course Materials
Textbooks
You should have one of the two textbooks listed below.
CSC 217 Lab Manual - Sarah Heckman
Web Link: https://pages.github.ncsu.edu/engr-csc217/labs/
Cost: Free!
Requisites and Restrictions
Prerequisites
CSC116 with a C or better
Co-requisites
CSC 216
Restrictions
None.
Course Structure
The following section describe the structure and policies for CSC 217.
Lab Meetings
There are two types of labs:
- Synchronous Labs: a set meeting time where students are required to attend
- Asynchronous Labs: no set meeting time where attendance is required
Each lab section will have an assigned lab deadline, typically 10 minutes before the start of the next lab, when that week’s lab assignment is due.
Students in synchronous labs are expected to attend and contribute during their scheduled lab meeting. Missing a lab with an unexcused absence will result in a zero for that lab assignment. Students with documentation to excuse the absence will have the opportunity to earn credit for the lab by contributing to lab work completed outside of the lab or before the next lab. Please discuss absences with the instructor as per the attendance policy below.
Students in asynchronous labs are expected to work throughout the week on completing lab activities. This will include watching a short lab introduction video and working through the lab activities.
Lab Assignments
Over the course of the lab, you will complete a stand-alone course registration system in Java. The course registration system will have three user roles and functionality for students to enroll in classes. The lab assignments build over the course of the semester; success on an earlier assignment is needed for success in future assignments.
Teaming policy for labs is TBD.
Academic Integrity
All programs are to be your own work (for paired and team assignments, all work is to be you and your assigned partner’s or assigned team mates’ own work). See the “Academic Integrity” section of the syllabus for further details.
Course Policies
Pandemic Policies
Due to the COVID-19 pandemic, we will be following the new NC State calendar for the Fall 2020 semester. As such, we will be completing all required coursework during a 14-week semester with no breaks.
Participation Options
- Computer Programming Certificate Students (Distance Education)
-
Students in the Computer Programming Certificate (Section 601) are already participating asynchronously.
- Traditional “On-Campus” Students
-
All other students will have the option to attend lab in three models:
- Hybrid: attend lab physically every two to three weeks pending availability of lab instructors for in-person labs
- Online Synchronous: participate synchronously online during a set lab meeting time; attendance will be required and assessed
- Online Asynchronous: participate asynchronously with no set meetings
-
Please contact Dr. Heckman (sarah_heckman@ncsu.edu) to discuss movement between these options over the course of the semester.
-
Students preferring in-person attendance will be split into two or three attendance groups depending on interest and classroom capacity and configuration. Groups will rotate attendance. In the weeks that a student is not attending class in-person, the students should attend class in an online synchronous manner during their normal lab meeting time.
-
Students who attend class in-person during a week they should not be, without the instructor’s permission or through prior arrangements with the instructor may be subject to penalties or a student conduct report. The every other week in-person attendance is in place to allow for time between cohorts such that COVID-19 symptoms would show up before the next in-person exposure to the class.
-
Synchronous lab sections may contain a mix of students participating in hybrid and online synchronous modes.
In-Person Attendance and Masks
Students who attend lab in-person will be expected to wear masks (unless medical or DRO documentation is provided stating an exception) and follow social distancing guidelines defined by the university.
Penalties for Not Following Classroom Pandemic Policies
For students participating in-person hybrid.
A student not following university guidelines or class-specific policies will be warned on the first offense and will be asked to leave the in-person class section and attend class remotely (i.e., not wearing a mask or attending in an incorrect week).
Refusal to wear a mask will result in a referral to the Office of Student Conduct.
Grade penalties may also apply for not wearing masks.
Resources for Online Participation
Resources for Online Learning
When using an online course format, you may need to adapt your learning strategies and study skills. The NCSU Academic Counseling center offers resources on developing and adapting study skills. In addition, when completing coursework remotely (see Engineering Online Tips for Success):
- With online education, there is an even stronger need for self-discipline than when taking on-campus courses.
- The responsibility to “attend” class is completely up to you. While this time flexibility is one of the great features of online education, it is also one of the biggest opportunities to get behind in your studies.
- Without a regularly scheduled in-person class, it is easy to think you have all the time in the world. This can leave you with mountains of work to do as deadlines approach.
- You must be able to manage your time well.
NC State has provided several resources to help you move to online learning.
Continuity Plans
The plans for the Fall 2020 semester are intended to make it easy to transition to online instruction if in-person classes are canceled due to a spike in COVID-19 cases on campus or in the broader community. A more detailed Fall 2020 Continuity Plan is available and will be updated if needed and based on how the situation evolves over the course of the semester.
Student Illness
If you test positive for COVID-19, you will no longer be eligible to attend CSC 216/217 in-person. You may continue with the class in a(n) a/synchronous manner as appropriate for your situation. If you develop symptoms that interfere with the completion of CSC 217 coursework, please let Dr. Heckman (sarah_heckman@ncsu.edu) and CSC Advising Office know about your situation as quickly as possible. We will work with students on a case-by-case basis to identify the best course of action for individual health and future academic success. An incomplete or semester withdraw may be the best course of action. Where possible, we will try to resolve incompletes during the extended winter break; however, that will be handled on a case-by-case basis and depends on the health of the students, PTFs, and instructors to support incomplete work.
PTF Illness
If PTFs test positive for COVID-19, they will no longer participate in any in-person lab instruction. We have X PTFs, so duties will be distributed as appropriate based on the situation at the given time. We may end up moving lab sections that were originally scheduled for in-person meetings to online based on the situation and coverage. If all PTFs are unable to complete their responsibilities, the instructors will fill gaps as needed.
To minimize exposure, PTFs will NOT be holding in-person office hours or 1-on-1 meeting with students during the semester. All office hours and meetings will be held via Zoom.
Instructor Illness
The instructors are committed to minimize exposure to COVID-19 and other illnesses during the instructional semester so that we can best serve all students in meeting CSC 216/217 outcomes regardless of instructional modality. The instructional team will work together to ensure continuity of CSC 217.
To minimize exposure, instructors will NOT be holding in-person office hours or 1-on-1 meetings with students/PTFs, during the semester. Instead all office hours and meetings will be held via Zoom.
Computers and Electronic Devices
Students are encouraged to use computers and other electronic devices like tablets during class. The teaching staff asks that students respect their neighbors and keep their focus on course materials rather than games, social media, etc. Electronic devices are required for submission of exercises. If the class is utilizing computers in an inappropriate manner, the instructor reserves the right to require that electronic devices are closed or put away during instruction.
You may not record the lecture or lab without express written permission from the instructor.
The instructor will be recording videos for asynchronous students. All students will have access to the recordings once the recordings are processed and uploaded to Mediasite and open up for their lab section.
Professionalism
Students are expected to conduct themselves in a respectful and professional manner at all times. Students are expected to act professionally both in person and electronically with all members of the teaching staff and their classmates. Communication, both written and verbal, should be respectful and should never include derogatory comments about yourself or others. All criticism (of yourself, the course, instructor, PTFs, fellow students, resources, etc.) should be constructive and provide feedback for improvement. Guidelines for electronic communication are listed in the section below.
Professionalism also includes attendance and participation. If you are unable to participate, please notify the teaching staff and your team as soon as possible. If you have a missing teammate, please notify the teaching staff as soon as possible.
Report any unprofessional behavior by a class member (including the PTFs) to the instructor.
Unprofessional electronic communication on course forums may result in suspension from the course forum and possible grade penalties. Unprofessional in-person behavior, including a lack of participation, will result in a conference with the instructor and possible grade adjustments for all involved parties.
Electronic Communication
The teaching staff looks forward to receiving emails and message board posts about any questions you have about the class, materials, exams, and assignments. Below are several rules for electronic communication.
Higher education provides you with a training ground prior to entry into the work environment for your chosen career. You will use many of the following rules electronic communication when you are communicating with colleagues, your supervisor, or clients once you are in the work world. Although many of the rules of etiquette for electronic communication will be similar in the work environment, we have some specific to this course.
Please observe the following etiquette when communicating with the teaching staff and your peers. The teaching staff receives many emails on a daily basis and the instructor teaches several courses. Please note that a member of the teaching staff will respond to an email or message board within 24 hours on a business day and within 48 hours on a weekend or holiday. Most of the time, we will respond more quickly, but it is not guaranteed.
Also, before sending an email, try to find the answer to the question by using various references already available to you:
- If the question is related to class administration, check the syllabus.
- If the question is related to recent information, check previous emails or Piazza posts from the teaching staff.
- If the question is homework or exam related, check the message board to see if it has already been answered. Also, read your textbook.
For emails, please identify your course, lecture and/or lab section, and your name in the subject line (first and last name) along with the subject of the message. For example: “CSC216-002 Jenny Howard - Question about Project 1 Part 1”.
Email should include a salutation to identify the recipients of the email. For example, begin an email to your instructor with a salutation such as “Hi Dr. Heckman,” or “Dr. Heckman”. For emails to the sup list, consider a salutation like “Greetings Teaching Staff,”. You now have the attention of the email recipients.
The tone of the email message should be professional. Re-read your email before you press Send and make a judgment as to how you would respond if you were a recipient of the email you are planning to send.
If you have a question that is beyond the scope of an email, consider coming to office hours or scheduling an appointment with a member of the teaching staff.
If you have several questions or items, please number them for ease of reading. The response will also be easier to understand.
Please spell check and correct mechanical/grammar errors. Avoid emails written only in lowercase and lacking punctuation.
Close your email with your name.
Please use Reply All when responding to an email that includes the teaching staff or the teaching staff mailing list.
If you have a general question about a homework, post your question to Piazza. If you have a question that is more specific or that involves snippets of code, email it to the sup list for your section. The sup list may be found on the Moodle website.
Grade Appeals
If at any time you feel an assignment was graded improperly, fill out the Regrade Request Form, which is located in the General Course Resources topic on Moodle. The form will email the PTF and the instructors with your regrade request, which will be followed up via email. All regrade requests must be submitted to the form no later than 1 week after the assignment was returned to you. If the grade was returned during the final exam period, then you must submit your regrade request before the deadline set by the instructor.
Grading
Grade Components
| Component | Weight | Details |
|---|---|---|
| Labs | 100 | All labs will be averaged. |
The lowest lab grade may be dropped except for the last lab of the semester!
If you are working on a team, your grade will consider contribution of students on the team. Poor contribution on lab deliverables OR dominating work may lead to a zero on the lab. Receiving a zero on four labs for poor contribution will lead to an F or U in the course.
Letter Grades
This Course uses Standard NCSU Letter Grading:
| 97 | ≤ | A+ | ≤ | 100 |
| 93 | ≤ | A | < | 97 |
| 90 | ≤ | A- | < | 93 |
| 87 | ≤ | B+ | < | 90 |
| 83 | ≤ | B | < | 87 |
| 80 | ≤ | B- | < | 83 |
| 77 | ≤ | C+ | < | 80 |
| 73 | ≤ | C | < | 77 |
| 70 | ≤ | C- | < | 73 |
| 67 | ≤ | D+ | < | 70 |
| 63 | ≤ | D | < | 67 |
| 60 | ≤ | D- | < | 63 |
| 0 | ≤ | F | < | 60 |
Requirements for Credit-Only (S/U) Grading
In order to receive a grade of S, students are required to complete all assignments and earn a grade of C- or better. Conversion from letter grading to credit only (S/U) grading is subject to university deadlines. Refer to the Registration and Records calendar for deadlines related to grading. For more details refer to http://policies.ncsu.edu/regulation/reg-02-20-15.
For students taking CSC 217 Credit-Only, a grade of S will only be recorded if a grade of 70 or higher is earned and the student has appropriate contribution to the lab activities.
Requirements for Auditors (AU)
Information about and requirements for auditing a course can be found at http://policies.ncsu.edu/regulation/reg-02-20-04.
The grade of “AU” will be awarded to students who take all exams and earn a 60% or higher average on all of the exams. Auditors are required to meet with the instructor during the first two weeks of the course.
Policies on Incomplete Grades
If an extended deadline is not authorized by the instructor or department, 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) 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-3.
Students requesting an incomplete will discuss the incomplete timeline with the instructor and agree to an incomplete contract that outlines expectations for finishing incomplete coursework within the next semester. Incompletes are for students who run into significant hardship during the course of the semester and may not be used to retake or redo assignments that were already submitted.
Late Assignments
The labs build on each other over the course of the semester. When the semester is complete, students will have created a stand-alone course registration system approaching 10,000 lines of source and test code.
Labs are not accepted late.
We will grade the last commit to GitHub before the lab deadline. If you do not complete a lab before the deadline, you (and your team) will need to complete the previous lab before moving on to the next lab.
We may require some labs to be completed individually and some to be completed in teams for students in synchronous sections. Lab teams will rotate during the semester.
Attendance Policy
For complete attendance and excused absence policies, please see http://policies.ncsu.edu/regulation/reg-02-20-03
Attendance Policy
Attendance to synchronous lab sections is mandatory during the assigned lab section. Students are expected be working on CSC 217 work and with their lab teams if appropriate.
Students in asynchronous lab sections do not have an attendance requirement, but they are expected to keep up with the work.
Absences Policy
For synchronous labs, the assignments are typically completed on teams. The most effective teams are those who can work together at the same time. Students in asynchronous labs will have the option to work on a team.
Students who miss a lab with a documented excused absence will have the in-lab participation portion of their lab grade waived. Students will be expected to participate in finishing any lab deliverables outside of lab before the next lab’s deadline. Failure to participate to complete lab deliverables will result in a 0 for the lab.
All anticipated absences must be presented to the instructor no later than one week before the absence. All emergency absences must be turned in no later than one week after the student’s return date. All other absences will be unexcused.
Students who miss a lab with an unexcused absence will receive a 0 for the lab, even if they complete work outside of the lab.
Missing four or more labs with an unexcused absence will result in a grade of F for the course.
Excessive excused absences will require consultation with the instructor.
Makeup Work Policy
In-lab activities cannot be made up. Students with excused absences will complete the lab activities remotely with their team.
Additional Excuses Policy
None.
Academic Integrity
Academic Integrity
Students are required to comply with the university policy on academic integrity found in the Code of Student Conduct found at http://policies.ncsu.edu/policy/pol-11-35-01
All members of the University community, students, faculty and other employees, have the responsibility to report academic misconduct to the appropriate authority.
The Computer Science department uses software that detects cheating violations for programming projects. Do not use other student’s code, do not share your code, do not copy or use code from someone who took the class X semesters ago, do not use code from online. Start on assignments early so that you do not feel tempted to cheat!
All work that you turn in for grading must be your own! This means that all work must be an independent and individual creation by you or in the case of paired/team assignments; all work must be an independent and individual creation by you and your assigned partner or assigned teammates. Any attempt to gain an unfair advantage in grading, whether for yourself or another, is a violation of academic integrity. You may only work on an assignment with another student(s) in the class if explicitly stated in the assignment.
Why is Academic Integrity Important?
(Adapted from Matt Stallmann and Mitchell Wand)
Would you want to fly in a plane whose controller software was designed and implemented by a group of people who had never demonstrated the persistence, attention to detail, and ability to deal with negative feedback from compilers, linkers, etc., that it takes to design, implement, and debug a program on their own?
Academic misconduct affects you, your peers, the CSC department, the university, all students who have ever graduated from NCSU with a CSC degree, and all users of software products to which you contribute. When you receive a degree from NCSU:
- The degree represents the university’s certification that you have demonstrated certain skills and knowledge in your degree program.
- Your grade in a course represents the instructor’s certification that you have demonstrated certain skills and knowledge in the specific course.
When an employer sees your degree from NCSU, they expect you to be able to demonstrate certain skills and knowledge. If a student graduates with a CSC degree and performs poorly, the value and reputation of a CSC degree from NCSU is negatively affected.
In industry, intellectual property rights are crucial in software and product development. Rules regarding intellectual property are similar to rules outlining academic integrity. Employees who “cheat” or violate copyrights or other intellectual property rights can cost the employer large sums of money. In addition, even though you will likely work on a team in industry, completion of the CSC degree program includes demonstrating skills to work effectively on teams. For example, students should demonstrate well-developed individual skills, integrity to take responsibility for one’s own work, and the ability to recognize clear boundaries between one’s own contributions and those of others.
Ethics and professionalism are important to the community. The Association for Computing Machinery (ACM), a professional organization for computing professionals, has the ACM Code of Ethics and Professionalism that outlines the ethical principals of the computing community.
What are the Consequences of Academic Misconduct?
Students who commit an academic integrity violation on any course deliverable will receive up to a -100 for the assignment! Violating the Academic Integrity Policy is worse than not turning in the item.
All cases of academic misconduct will be reported to the Office of Student Conduct. A first offense will place the student on Academic Probation for the remainder of their academic career. Academic Probation is not visible on a student’s transcript or other educational record, but the Office of Student Conduct does supply this information for various campus agencies running checks for disciplinary standings. If the student is suspended, the Office of Student Conduct may notify many other departments on campus, such as Registration & Records, Housing, Campus Health, Counseling, and Financial Aid. In addition, administrators of some scholarships routinely ask the Office of Student Conduct to confirm whether the student is in good standing.
Resources you ARE Allowed to Use
You must cite your use of the approved resources in your assignment submissions. If you do not cite your use of the approved resources, you may be committing plagiarism.
The only people that you MAY receive help from:
- your instructor,
- the PTFs for CSC216,
- for paired/team assignments, you may receive help from your assigned partner or your assigned teammates, and
- for exercises, you may work with any of your neighbors that are physically present in class.
The only external resources that you MAY also reference:
- your textbook,
- the textbook website,
- the JAVA API HTML pages, and
- other third-party API HTML pages as appropriate for an assignment (for example, you may use the JUnit API HTML pages to help you with writing JUnit tests).
Resources you ARE NOT Allowed to Use
- You MAY NOT receive help from anyone or anything else that is not in the list of approved resources (above).
- If you think a resource should be added to the list of approved resources (above), you must first receive written permission from the instructor so that the instructor can share the resource with all students.
Examples of Academic Misconduct
Note: this list is not exhaustive.
- It is aiding & abetting and cheating to give any student access to any of your work which you have completed for individual class assignments.
- It is cheating and plagiarism to use another person’s work and claim it as your own. You are expected to complete all assignments on your own, unless otherwise specified in the assignment.
- It is cheating to interfere with another student’s use of computing resources or to circumvent system security.
- It is aiding & abetting and cheating to email, ftp, post on the Internet, bulletin boards, message boards, etc. your work for others to obtain. Do NOT use sites that allow you to “anonymously” post code. Those sites are searchable, and others may find your code (like the teaching staff).
- It is cheating to ask or pay another person or persons to complete an assignment for you.
- It is cheating and plagiarism to decompile any compiled code and use the decompiled source code as your own. You may also break the law by decompiling code.
- It is cheating and plagiarism to use code that you find online, including code behind the Java API webpages.
- It is aiding & abetting and cheating to give another student access to your account (NC State account or others that you use for university work) or to give them your account password.
- It is aiding & abetting and cheating for you and another student to work collaboratively on an assignment, unless otherwise specified by the assignment.
- It is cheating to circumvent the intention of the assignment and/or the automated grading system (e.g., by hardcoding test case solutions, by copying/pasting code provided in the Java libraries to fulfill an assignment objective, to implement extra lines of code to achieve higher statement coverage, etc.).
- It is aiding & abetting to allow another student to copy from your written or electronic assignment submissions (e.g., it is the student’s responsibility to cover his or her exam answers to help prevent others from copying answers)
- It is cheating and plagiarism to copy from another student’s written assignment (e.g., exams or homeworks).
- It is cheating to submit identical or similar assignment submissions from an assignment submitted in a previous course, or a previous attempt of the current course.
- It is cheating to reuse your code from previous semesters if retaking the course. Start over to focus your learning this semester.
- It is aiding & abetting to leave your computer unlocked and/or unattended (whether intentional or accidental) such that others could access your assignments.
Examples of NOT Cheating (this list is NOT exhaustive):
- Using the code from the class website (with citations in the comments).
- Using code from other programs YOU wrote in this course during this semester (with citations in the comments).
- Using code from other programs that YOU and a partner wrote as part of assigned exercises in this course during this semester (with citations in the comments).
- Help from TAs or instructor (with citations in the comments).
- Using code from the textbook or textbook website (with citations in the comments).
Example Citations
1
2
3
4
5
6
7
8
9
10
11
12
/* Citing Help from another Person: (In method or class level comments)
* I received help from Dr. Heckman on DATE during her office hours. We discussed X.
*/
/* Citing Help from other Assignments
* The code for this method is based on Exercise Y that I completed with Z on date.
*/
/* Citing Help from the Textbooks
* The code for this method is based on the ArrayList.add() method of the course textbook "Building Java
* Programs" by Reges and Step on page 467.
*/
Protecting Yourself
- Do not leave papers lying around your workstation.
- Cover your written exam responses with a cover sheet to prevent others from copying your responses.
- Do not dispose of important papers in the lab recycling bins and trash cans until after the assignment is graded.
- Do not give out your password.
- Do not leave your workstation unattended or forget to log yourself out.
- Do not leave your laptop unattended.
- Do not give other students access to any of your workspace or email them any code.
- Do not give other students access to your course materials or your personal computer.
- Do not email, ftp, or post your code on the Internet, message boards, etc.
- Keep all copies of final an intermediate work until after the assignment is graded.
- Keep all graded assignments until after you receive the final semester grade for the course.
- Do not discuss implementation details of the assignment with your peers.
- Do not discuss the contents of a course exam with other students, especially those students who have not taken the exam yet.
- Ask the instructor for clarification of any questions or concerns about academic integrity policies before submitting an assignment.
Forum Use
The forum is available to ask questions about assignments and tests. Do NOT post any code to the forum unless the post is private! The teaching staff reserves the right to edit any student’s forum post for inappropriate content. Additionally, use of the forum is a privilege. Improper use for the forum may result in a ban from posting or reading.
Posting Assignment Artifacts Online
While your deliverable is your work, the assignment artifacts (guided projects, project requirements, project design, provided code, quiz questions, etc.) are the intellectual property of the instructors and the university. You may not post any assignment artifacts (including assignment descriptions) or solutions to a publicly accessible website, public code repository, or assignment repository (e.g., Chegg, etc.) during or after the semester. Teaching staff will request removal of unauthorized materials; failure to remove materials in a timely manner will result in an academic integrity violation.
Some companies like to review student code artifacts as part of a hiring process. You may use CSC 216 materials for this code porfolio using the following guidelines: 1) the code must be posted in a private repository or online resource and only shared with the hiring manager or reviewer and 2) you must add a README or additional documentation clarifying the parts of the code you implemented and differentiating what was provided for you (GUI, design, tests, etc.). After the review is complete (about 2 weeks), remove permissions from the reviewer.
Academic Honesty
See http://policies.ncsu.edu/policy/pol-11-35-01 for a detailed explanation of academic honesty.
None.
Honor Pledge
Your name on any test or assignment or the electronic submission of an assignment through Moodle or other class courseware system indicates, “I have neither given nor received unauthorized aid on this test or assignment.”
Electronically-Hosted Course Components
Students may be required to disclose personally identifiable information to other students in the course, via electronic tools like email or web-postings, where relevant to the course. Examples include online discussions of class topics, and posting of student coursework. All students are expected to respect the privacy of each other by not sharing or using such information outside the course.
Electronically-hosted Components: The following materials are electronically-hosted for use by students and teaching staff through a combination of Moodle, Wolfware, Google Docs (through NC State), GitHub, Jenkins, Piazza, Gradescope, Zybooks, Zoom, MyDigitalHand, and Typos: lecture notes, message boards, electronic submission of assignments, electronic submission of exercises, electronic evaluation of exams, questions about course materials, and study resources and exercises.
Accommodations for Disabilities
Reasonable accommodations will be made for students with verifiable disabilities. In order to take advantage of available accommodations, student must register with the Disability Recourse Office Office (https://dro.dasa.ncsu.edu/), 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 at http://policies.ncsu.edu/regulation/reg-02-20-01.
Non-Discrimination Policy
NC State University provides equality of opportunity in education and employment for all students and employees. Accordingly, NC State affirms its commitment to maintain a work environment for all employees and an academic environment for all students that is free from all forms of discrimination. Discrimination based on race, color, religion, creed, sex, national origin, age, disability, veteran status, or sexual orientation is a violation of state and federal law and/or NC State University policy and will not be tolerated. Harassment of any person (either in the form of quid pro quo or creation of a hostile environment) based on race, color, religion, creed, sex, national origin, age, disability, veteran status, or sexual orientation also is a violation of state and federal law and/or NC State University policy and will not be tolerated. 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.
Trans-Inclusive Statement
In an effort to affirm and respect the identities of transgender students in the classroom and beyond, please contact me if you wish to be referred to using a name and/or pronouns other than what is listed in the student directory.
Supporting Fellow Students in Distress
As members of the NC State Wolfpack community, we each share a personal responsibility to express concern for one another and to ensure that this classroom and the campus as a whole remains a safe environment for learning. Occasionally, you may come across a fellow classmate whose personal behavior concerns or worries you. When this is the case, you are encouraged to report this behavior to the NC State Students of Concern website. Although you can report anonymously, it is preferred that you share your contact information so they can follow-up with you personally.
Basic Needs Security
Any student who faces challenges securing their food or housing or has other severe adverse experiences and believes this may affect their performance in the course is encouraged to notify the professor if you are comfortable in doing so. Alternatively, you can contact the Division of Academic and Student Affairs to learn more about the Pack Essentials program https://dasa.ncsu.edu/pack-essentials/
Course Schedule
NOTE: The course schedule is listed on Moodle and GitHub pages is subject to change.
