csc 510-001, (1877)
fall 2024, software engineering
Tim Menzies, timm@ieee.org, com sci, nc state


home :: syllabus :: corpus :: groups :: moodle :: license

Syllabus


Details Notes
When TuTh 11:45AM - 1:00PM
Where 01103 James B Hunt Jr Centennial
Who Tim Menzies, timm@ieee.org
Office hours 2pm to 4pm Wedneday, in my office (by appointment
Room: 3304:EB2
Phone: 304 376 2859 (*)
(*) Use only for dire circumstances (e.g. car crash on way to exam).

Details

What Notes
Course Credit Hours 3
Course website https://txt.github.io/se24fall/
Textbook none
Structure The majority of this course is synchronous, delivered through real-time, face-to-face class sessions.
Instructions Learning activities in this course will include five homeworks, 2 exams, three projects.
Tool used All grades will be recorded in Moodle.
All student work will be in Github (public GH, not the NCSU version).
Auditing not permitted
Attendance not mandatory
Technical requirements A laptop computer is required for students taking this course. NC State’s Online and Distance Education provides technology requirements and recommendations for computer hardware, and NC State’s Office of Information Technology provides recommendations for your computer . But as a rule-of-thumb, your computer is adequate if you can edit and run code using the Github codespaces environment.

Description

An introduction to software life cycle models; size estimation; cost and schedule estimation; project management; risk management; formal technical reviews; analysis, design, coding and testing methods; configuration management and change control; and software reliability estimation. Emphasis on large development projects. An individual project required following good software engineering practices throughout the semester.

Prerequisites

CSC 316 and CSC 226 (or equivalent)

Textbook

Learning Outcomes

Class Discord Group

It is each student’s responsibility to join the class Discord group “se24fall”. 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.

Assessment

Grades come from

Projects comprise large maintenance tasks where you have to extend someone else’e code (groups of 3 people, working in public Github repos– not NCSU GH):

Each project will generate “brag” documents that sell the project work in version i for those who want to work in i+1.

Grades

group mark notes
essay (solo) 20 3 bonus for ethical brilliance
homework (5*3) 15
mid-term exam (solo) 20
project (group) 10+15+20 project1,2,3

Students are marked 0,1,2,3 for homeworks. If you get anything less than 3, you can resubmit (within 1 week) and the new submission’s mark will cancel out the first version).

Also, there is an optional final exam which students can attend if they want to replace their mid-term mark. Please note that if you get a lower mark on this final then your lowest mid-term mark will then decrease. Caveat Emptor.

With the final grades, the following grade scale will be used:

 A+ (97-100),  A (93-97),   A-(90-92)
 B+ (87-89),   B (83-87),   B-(80-82)
 C+ (77-79),   C (73-77),   C-(70-72)
 D+ (67-69),   D (63-67),   D-(60-62)
 F (below 60).

Late Marks

For the report, students will lose 2 marks per day for late submissions (weekend = 2 day).

For the homeworks, students will lose 1 marks per day for late submissions (weekend = 1 day).

Groups must post the homeworks each week, even if it is incomplete, OR THEY WILL LOSE ONE MARK. Those lost marks are never returned.

Policies

Preferred Method of Communication & Response Time

Nearly all the class communication from staff to students will be via this Discord group.

You should expect to receive a response within two business days (i.e. not over the weekend). - If I email/message you directly, please strive to respond within two business days. - It is recommended that you check your NC State email at least once a day to stay on top of course communications.

If you have a question about the course or its content, you can email me or post your question on our discord group. You can expect to receive a response within two business days (i.e. not over the weekend)

If you need to contact me directly, my preferred method of communication is the discord group. However, for private matters, feel free to contact me via email.
If emailing then: - Always include a descriptive, specific but concise subject. - Include your course number your email, and provide adequate context for your question in order to ensure full understanding of your email. - Be sure to use your NC State email account, and sign in with your name and Student ID number.

Expectations for learner participation and interaction

Course activities will require you to interact with other students in the course. For masters students, some evidence must be generated that you are actively engaged with your class peers. Specifically:

Attendance

Lectures are twice a week. Lectures will be recorded.

Attendance is not mandatory, but highly recommended.

If, for a quiz, you must be absence for a reason sanction by the university, contact the lecturer before time and other arrangements will be made. Those sanctioned events are:

Sometimes, the lecturer/tutor will require you to attend mandatory office hours session. 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.

Disabilities

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 (DRO) For more information on NC State’s policy on working with students with disabilities, please see the Policies, Rules and Regulations page maintained by the DRO and REG 02.20.01 Academic Accommodations for Students with Disabilities.

Non-Discrimination Policy

North Carolina State University (NC State) is a diverse community committed to being welcoming, inclusive and supportive for all people.

NC State provides equal opportunity and affirmative action efforts, and prohibits Discrimination and Harassment based upon the following, which is considered by NC State to be a “Protected Status”:

NC State’s policies and regulations covering discrimination, harassment, and retaliation may be accessed at https://policies.ncsu.edu/policy/pol-04-25-05/. Any person who feels that he or she has been the subject of prohibited discrimination, harassment, or retaliation should follow the procedures at https://policies.ncsu.edu/regulation/reg-04-25-02/.

Respecting our learning community

The NC State Code of Student Conduct outlines expectations for behavior in the classroom (whether virtual or physical) and the consequences for students who violate these expectations. Any behavior that impacts other students’ ability to learn and succeed will be addressed, but expressing diverse viewpoints and interpretations of course content is welcome. Community guidelines for this course include: - Use a respectful tone in all forms of communication (email, messages, written, oral, visual) - Maintain professionalism (avoid slang, poor grammar, etc.) in your written communication. - Respect regional dialects and culturally embedded ways of oral communication. - Stay home or in your dorm room if you are exhibiting symptoms of a contagious illness (fever, chills, etc.). - Enter our virtual and/or physical classroom community respectfully by refraining from lewd or indecent speech or behavior, helping to maintain a safe physical environment, not using your cell phone for voice or text communication except when explicitly given leave to do so, and not attending class under the influence of any substance. - Treat each community member with respect by not recording others without their consent or engaging in any form of hazing, harassment, intimidation, or abuse. - Respect cultural differences that may influence communication styles and needs.]

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.

Expected Workload

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.

Academic Integrity

Students are required to comply with the university policy on academic integrity found in the i Code of Student Conduct 11.35.01 sections 8 and 9. Therefore, students are required to uphold the Pack Pledge: “I have neither given nor received unauthorized aid on this test or assignment.” i Violations of academic integrity will be handled in accordance with the Student Discipline Procedures.

Please refer to the Academic Integrity web page for a detailed explanation of the University’s policies on academic integrity and some of the common understandings related to those policies.

Cheating will be punished to the full extent permitted. Cheating includes plagiarism 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:

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:

Privacy

Student Privacy

Class Privacy

Student information in this course may be accessible to persons beyond the instructor and students in the course. This course may involve electronic sharing or posting of personally identifiable student work or other information with persons not taking or administering the course.

Policy on Incomplete Grades

Information on incomplete grades can be found at REG 02.50.03 – Grades and Grade Point Average. If you encounter a serious disruption to your work not caused by you and you would have otherwise successfully completed the course, contact your instructor as soon as you can to discuss the possibility of earning an incomplete in the course for the semester, including an agreement on when the remaining work must be done in order to change the grade to the appropriate letter grade.

If your must withdraw from a course or from the University due to hardship beyond your control, see Withdrawal Process and Timeline | Student Services Center for information and instructions.

Syllabus Modification Statement

Our syllabus represents a flexible agreement. It outlines the topics we will cover and the order in which we will cover them. Dates for assignments represent the earliest possible time they would be due. The pace of the class depends on student mastery and interests. Thus minor changes in the syllabus can occur if we need to slow down or speed up the pace of instruction.