Skip to content

ST: AI Tools for Software Development

Course Description

Students will learn how to use AI-based developer tools across the software development lifecycle, for example in coding, code reviewing, project management, automated testing, and security. The course will require significant software development practice, both with and without AI tools. Students will use their experiences to analyze the impact of AI tools on software productivity across individuals, teams, and organizations. Students will be expected to code in scripting languages (e.g., Python and JavaScript), set up development environments, read documentation, and learn new libraries and frameworks.

  • COMP 4991 Prerequisite: COMP 3081 - CS3 Introduction to Software Design
  • COMP 6991 Prerequisite: An undergraduate software engineering course (like COMP 4081 - Software Engineering) or COMP 7012 - Foundations of Software Engineering

Required Texts

No textbooks required. Students will read a selection of online sources that will be provided.

Required Laptop

Students will be required to bring a laptop computer to lecture and to have a computer to do the work required for the course.

Learning Goals

Requirements Engineering:

  • Learn how to do effective user discovery interviews to learn about the problems your users have, how they are willing to have you solve them, and what value they ascribe your solution
  • Learn how to get an LLM to create sound user stories that accurately reflect your planning goals

Development Specification:

  • Learn how to translate user stories into a structured development specification.
  • Learn how to guide an LLM to generate architecture diagrams, class diagrams, flow charts, and other technical artifacts.
  • Learn how to critically assess risks, interfaces, and technologies when planning software implementation.

Frontend Development:

  • Learn how to transform development specifications into a working user interface.
  • Learn how to use Figma's AI tools to create mockups.
  • Learn how to collaborate with LLMs to generate frontend code, while refining and debugging the output, with a mocked backend.

Backend Development:

  • Learn how to transform development specifications into a working backend.
  • Learn how to collaborate with LLMs to generate backend code, while refining and debugging the output, with a real or mocked frontend.

Software Testing:

  • Learn how to write effective automated software tests.
  • Learn how to collaborate with LLMs to generate unit, integration, and system tests.

Software Deployment:

  • Learn how to deploy web applications to the web.
  • Learn how to utilize LLMs to assist in the configuration, staging, and uploading of new versions of a web application to the web.

Course Structure

This class will consist of:

  • Mini-lectures. Lectures will cover technical content and be delivered by the professors or guest lecturers.
  • In-class programming activities. We will have pair programming activities and "mob" programming activities. These will be for learning techniques and tools that you will then use for your group project. Each student will lead at least one mob session.
  • Reflections. For homework, you will write 500-word essays answering a set of assigned questions about your experience using AI so far.
  • Readings. We may assign supplementary readings from online sources that are relevant to the activities or discussion.
  • In-class presentations and discussions. Based on the reflections, groups will create short presentations, present them to the class, and lead a short discussion.
  • Group project. During this course, you will build a web application using AI. The major milestones will be a vibe-coded MVP, requirements, backend implementation, frontend implementation, testing, and deployment.
  • Team meetings. We will provide time teams to meet about their project. Participation is mandatory.

The course calendar follows a two-week cycle:

  • Monday: Pair programming activity.
  • Wednesday: Team meeting, mini-lecture, and mob programming activity.
  • Homework: Reflection essay.
  • Monday: Team meeting, mini-lecture, and mob programming activity.
  • Wednesday: Presentations and discussions.
  • Project: Two-week sprint milestone.

There will be no exams. The final exam day will be used for final project presentations.

Grading

The final grade in the course will be based on the grades received for each of the following performance criteria.

For each criterion, a letter grade (A+, A, A-, etc.) will be assigned, and the final grade will be assigned as follows.

  • The final grade will be the lowest performance-criterion grade earned. The rationale for using the lowest performance-criterion grade as the basis for the final grade is that the final grade is understood to reflect performance across all criteria – for example, to earn a final grade of A indicates that A-level performance was achieved on all criteria. To put it another way, failure to achieve A-level performance on a criterion indicates that a student's overall performance was not at the A level.

  • If half or more (i.e., 2 or more) of the performance-criterion grades are higher than the lowest performance-criterion grade, then the final grade shall be increased by "half" a letter grade (A → A+, A- → A, B+ → A-, etc.). The rationale for this small increase is to account for the fact that overall performance tended to be above the minimum performance-criterion grade earned.

Attendance and Participation

Lecture attendance, engagement, and participation in the course are critical for learning and thus required.

  • Unexcused Absences: The number of unexcused absences from class a student has will be recorded. Arriving to class more than 20 minutes late will be counted as an absence.
  • Participation Demerits: Furthermore, a student will receive a participation demerit for each instance in which they fail to meet expectations for participation.

Excused Absences. To have an absence excused, two criteria must be met:

  • Allowable Reason: The reason for the absence must be an allowable extenuating circumstance. The instructor will determine if the reason is allowable. Things like an illness or the death of a close relative are typically allowable. Things like attending a wedding or taking a vacation are typically not allowable.
  • Documentation: Documented evidence confirming the reason for the absence must be provided. The instructor will determine what documentation will be acceptable. One common acceptable form of documentation for an illness is a doctor’s note – if you see a doctor, always ask for one!

Participation Demerits. Some common participation demerits include (but are not limited to) the following.

  • Tardiness: Each time a student arrives late to class, they will receive a demerit. Also, students are not allowed to enter the classroom beyond the first 20 minutes of class.
  • Activities: Following educational best practices, there will be numerous in-class activities for students complete. Failure to complete an activity by the appointed deadline will result in a participation demerit.
  • Laptop Requirement: Students are required to bring a laptop with a functioning development environment to each class, so they can fully participate and benefit from in-class activities. For each class that a student does not bring a functioning laptop, they will receive a participation demerit.
  • Special Days: Certain days will be designated as special—for example, days on which assessments are administered, or student presentations are given. An unexcused absence on such days will result in an additional participation demerit.

Attendance and Participation Letter Grade. The minimum requirements for each Attendance and Participation letter grade are as follows.

Grade Unexcused Absences Participation Demerits
A+ 0 0
A 3 3
A- 4 4
B+ 4 5
B 5 5
B- 6 6
C+ 6 7
C 7 7
C- 8 8
D+ 8 9
D 9 9

As shown in the above table, 3 unexcused absences are allowed without penalty (A+ and A both earn 4.0 quality points in the university’s GPA calculation). Having more than 3 unexcused absences may cause a student’s grade to suffer. Similarly, having more than 3 participation demerits may also hurt a student’s grade.

Homework

Students must complete a series of 6 homework assignments. Each homework assignment will be graded as High-Pass/Low-Pass/Fail.

Homework Letter Grade. The minimum requirements for each Homework letter grade are as follows. The numbers below indicate the min/max number of homework assignments for which the corresponding grade is earned.

Grade High-Pass (min) Fail (max)
A+ 6 0
A 4 0
A- 2 0
B+ 5 1
B 3 1
B- 1 1
C+ 4 2
C 2 2
C- 0 2
D+ 3 3
D 0 3

Project

Students must work in teams to complete a series of 6 project assignments. Each project assignment will be graded as High-Pass/Low-Pass/Fail.

Project Letter Grade. The minimum requirements for each Project letter grade are as follows. The numbers below indicate the min/max number of project assignments for which the corresponding grade is earned.

Grade High-Pass (min) Fail (max)
A+ 6 0
A 4 0
A- 2 0
B+ 5 1
B 3 1
B- 1 1
C+ 4 2
C 2 2
C- 0 2
D+ 3 3
D 0 3

Appendix: General Regulations and Resources for Students

The following are regulations and resources applicable to all students and courses at the university (as suggested by the Office of Student Accountability).

Academic Integrity

The University of Memphis expects all student to behave honestly. The Student Code of Rights and Responsibilities explains what constitutes a violation of our Academic Integrity policy. Please see the Office of Student Accountability's website for more information: https://www.memphis.edu/osa/. Plagiarism, cheating, and other forms of academic dishonesty are prohibited. Students who violate the academic misconduct policy, either directly or indirectly, through participation or assistance, are immediately responsible to the instructor of the class in addition to other possible disciplinary sanctions which may be imposed through the regular institutional disciplinary procedures.

Examples of academic dishonesty include, but are not limited to:

  • Cheating – A student uses a smart phone to access the internet while taking a quiz.
  • Copyright infringement – A student uses a photograph found on the internet in a presentation without obtaining permission from the photographer.
  • Deception – A student gives a dishonest excuse when asking for a deadline extension.
  • Denying access to information or material – A student makes library or shared resource material unavailable to others by deliberately misplacing those resources.
  • Fabrication – A student invents data in an academic work.
  • Facilitating academic misconduct – A student knowingly allows a portion of their work to be used by another student.
  • Plagiarism – A student represents the ideas of another in a paper without citing and referencing the work or a student turns in the same or nearly the same assignment for credit in more than one class.
  • Sabotage – A student prevents others from completing their work by opening a window to affect a temperature controlled experiment.
  • Unauthorized collaboration – A student works with other students on a paper without the specific permission of the instructor.

Classroom Behavior

Students should be aware of the Student Code of Rights and Responsibilities which describes examples of unacceptable classroom behavior. Disruptive classroom behavior will not be tolerated. Instructors are empowered to remove students from class and refer behaviors for sanctioning to the Office of Student Accountability.

Equity, Inclusion, and Accommodations

Our class respects all forms of diversity. The University of Memphis embraces the diversity of students, faculty, and staff, honors the inherent dignity of each individual, and welcomes their unique perspectives, behaviors, and worldviews. In this course, people of all races, religions, national origins, sexual orientations, ethnicities, genders and gender identities, cognitive, physical, and behavioral abilities, socioeconomic backgrounds, regions, immigrant statuses, military or veteran statuses, size and/or shapes are strongly encouraged to share their rich array of perspectives and experiences. Course content and campus discussions will heighten your awareness to each other's individual and intersecting identities. In accordance with UofM Policy GE2004, the University will ensure students receive consistent and fair treatment and affirmation of the University's commitment to diversity. The University prohibits discrimination and harassment based on protected characteristics as stated in UofM Policy GE2030.

Please see the instructor if you need accommodations for a disability, or to fulfill cultural or religious obligations. Students with requests for accommodations should contact Disability Resources for Students to register and learn about the services available to support their learning. Students with disabilities are encouraged to speak with us privately about academic and classroom accommodations. It is strongly encouraged that you register with Disability Resources for Students (DRS) to determine appropriate academic accommodations. Disability Resources for Students is located in 110 Wilder Tower, their phone number is (901) 678-2880 (V/TTY), their email is drs@memphis.edu, and their website is https://www.memphis.edu/drs/. Disability Resources for Students coordinates all accommodations for students with disabilities.

Qualified students with disabilities will be provided reasonable and necessary academic accommodations if determined eligible by the appropriate Disability Resources for Students staff at the University. Prior to granting disability accommodations in this course, the instructor must receive written verification of a student's eligibility for specific accommodations from the Disability Resources for Students staff at the University. It is the student's responsibility to initiate contact with University's Disability Resources for Students staff and to follow the established procedures for having the accommodation notice sent to the instructor.

Mental Health

As a student you can sometimes feel overwhelmed, lost, experience anxiety or depression, and struggle with relationship difficulties or diminished self-esteem. Mental health challenges can interfere with optimal academic performance. However, many of these issues can be effectively addressed with some help. If you find yourself struggling with your mental or physical health this semester, please feel free to approach me. I will try to be flexible and accommodating. As your instructor, I am not qualified to serve as a counselor, but UofM offers confidential counseling services on-campus and via telehealth that are available to students taking six or more credits at no cost. UofM Counseling Center is staffed by experienced, professional psychologists, clinical social workers, and counselors, who are attuned to the needs of college students. I strongly encourage you to take advantage of this valuable resource. To connect with Counseling Center services, please visit 211 & 214 Wilder Tower, or call 901.678.2068. To know more about their services, you can visit their website at https://www.memphis.edu/counseling/. For mental health crisis that occurs after-hours, please contact the Tiger Care Line at 901.678.2068 and dial 2 to speak to a crisis counselor. Remember, getting help is an intelligent and courageous thing to do — for yourself and for those who care about you.

Personal or academic challenges including food & housing insecurity

If you are experiencing personal or academic challenges including, but not limited to food or housing issues, family needs, or other stressors, please visit the Dean of Students Office to learn about resources that can help. Any student who faces personal challenges including, but not limited to securing their food or housing and believes this may affect their performance in the course is urged to contact the Dean of Students Office (deanofstudents@memphis.edu) at 901.678.2187 located in the University Center, Suite 359 for assistance. If you are comfortable doing so, please also let the instructor know you are experiencing challenges as they may be able to assist you in connecting with campus or community supports.

Personal Relationships

There are special problems in any personal relationship between individuals where one party possesses direct academic, administrative, supervisory, evaluative, counseling or extracurricular authority over the other party. Such positions include, but are not limited to, teacher and student or assistant, supervisor and employee, senior faculty and junior faculty, mentor and trainee, advisor and advisee, counselor and client, teaching assistant and student, coach and athlete, and the individuals who supervise the day-to-day student living environment and student residents.

In accordance with UofM Policy HR5050, no University employee shall enter into or maintain any personal relationships with students or with employees over whom they exercise or, reasonably can expect to exercise, direct or indirect control in areas such as academics, administration, supervision, evaluation, counseling or extracurricular authority or influence. No University employee shall exercise any direct or indirect control in the areas of academics, administration, supervision, evaluation, counseling or extracurricular authority over any student or employee with whom that employee had previously been involved in a personal relationship.

Any employee, including faculty, who is currently in a personal relationship or becomes involved in a personal relationship that might be covered by terms of this policy, must disclose the relationship immediately to Human Resources-Employee Relations and Engagement so that any and all steps are taken to comply with this policy.

Title IX

The University of Memphis prohibits and will not tolerate sexual misconduct or gender-based discrimination of any kind.

Sexual Misconduct & Gender-Based Discrimination. The University is obligated to investigate sexual misconduct (including, but not limited to sexual assault, sexual harassment, stalking, dating violence, and domestic violence). More information about Sexual Misconduct can be found in UofM Policy GE2031.

Disclosure & Mandatory Reporting. If you disclose an incident of sexual misconduct to a faculty member, they have an obligation to report it to the University's Title IX Coordinator. "Disclosure" may include communication in-person, via email/phone/text message, or through in/out of class assignments.

Confidential Resources. If you wish to speak confidentially about an incident of sexual misconduct, please contact the University of Memphis Counseling Center (901-678-2068), the University of Memphis Student Health Center (901-678-2287), in Memphis/Shelby County Shelby County Rape Crisis Center (901-222-3950), or in Jackson/Lambuth WRAP - Domestic Violence Shelter/Sexual Assault Resources (800-848-0299). If you would like to learn more about sexual misconduct or report an incident, please visit https://www.memphis.edu/ocrctix/.

Accommodations for Pregnant Students. Title IX prohibits the University from discriminating against a student based on pregnancy, childbirth, false pregnancy, termination of pregnancy, or recovery from any of these conditions. Title IX also prohibits a school from applying any rule related to a student's parental, family, or marital status that treats students differently based on their gender. Additional information can be found on the Office for Institutional Equity website: https://www.memphis.edu/ocrctix/resources/.