End Note Posted: Dec 19
Remember that all previous posts are in the Archive.
Finals Week Posted: Dec 08
Research Paper Due Date: Noon, Friday, Dec 15
Upload via Brightspace.
Special Note: I will accept the Research Paper through Monday, Dec 18 by 8 am. To do so, email me by Noon on Friday, Dec 15 if you want this extension.
Week 14 Class 26 Thu Dec 07 Posted: Dec 07
Announcements
Agenda
Project: Project Presentation
In the Class Meeting on Dec 7, you will present an overview of your project in a 4-minute presentation. Include:
This should be about 4 - 6 slides. A link to the slideshow that you add your slides to is in Brightspace.
Note that this is not the due date for the project.
Week 14 Class 25 Tue Dec 05 Posted: Dec 05
Announcements
Project: Project Presentation
In the Class Meeting on Dec 7, you will present an overview of your project in a 4-minute presentation. Include:
This should be about 4 - 6 slides. A link to the slideshow that you add your slides to is in Brightspace.
Note that this is not the due date for the project.
Agenda
The Final Exam will be on Dec 12, 5:15 - 7:15 pm in our regular classroom.
The course will cover the material since the Midterm Exam:
Optional:
Focus on breadth, not depth.
The exam will have a variety of problem types including short answer, definition, comparison, and application to a problem/scenario. If I did not cover it in class, it will not be on the exam.
Week 13 Class 24 Thu Nov 30 Posted: Nov 30
Announcements
Project: Project Presentation
In the Class Meeting on Dec 7, you will present an overview of your project in a 4-minute presentation. Include:
This should be about 4 - 6 slides. A link to the slideshow that you add your slides to is in Brightspace.
Note that this is not the due date for the project.
Agenda
Week 12 Class 22 Tue Nov 21 Posted: Nov 21
After Class
Project: Project Presentation
In the Class Meeting on Dec 7, you will present an overview of your project in a 4-minute presentation. Include:
This should be about 4 - 6 slides. I will post a slideshow that you can add to.
Note that this is not the due date for the project.
Announcements
Project: Code Smells
Answer one of the following:
Due date: Noon on Tue, Nov 28
Agenda
Week 12 Class 22 Tue Nov 21 Posted: Nov 21
Announcements
Project: Project Presentation
In the Class Meeting on Dec 7, you will present an overview of your project in a 4-minute presentation. Include:
This should be about 4 - 6 slides. A link to the slideshow that you add your slides to is in Brightspace.
Note that this is not the due date for the project.
Agenda
Week 11 Class 21 Thu Nov 16 Posted: Nov 16
After Class
Project: Code Smells
Answer one of the following:
Due date: Noon on Tue, Nov 28
Announcements
Agenda
Week 11 Class 20 Tue Nov 14 Posted: Nov 14
Announcements
Exercise 9: Research Topic Papers
Feedback in Brightspace
Agenda
Week 10 Class 19 Thu Nov 09 Posted: Nov 09
Announcements
Midterm I posted scores and feedback in Brightspace. Two documents are in Brightspace Assignments:
If you have any inquiries, feel free to email or visit during my office hours. I do not respond to exam-related queries in the classroom right before or after class.
Note: In the upcoming exams, failure to enter your name and id in the designated place will result in a score of 0 for that question.
Exercise 9: Research Topic Papers
Pick one of your potential topics. The one that seems the best idea so far.
Come up with a list of 8 references. That is, 8 research papers in the area of your topic. Remember, this is one topic.
You already came up with at least one paper. Now need to find 7 others. Some suggestions:
For each paper, list the paper, provide a link (directly in the document), and briefly describe how the paper relates to your topic.
Submit via Brightspace.
This is due by Noon on Friday, Nov 10.
CPSC 589-010 T: DevOps Spring 2024 No need to get permission to registr
Agenda
Week 11 Class 20 Tue Nov 07 Posted: Nov 03
Announcements
Agenda
Exercise 9: Research Topic Papers
Pick one of your potential topics. The one that seems the best idea so far.
Come up with a list of 8 references. That is, 8 research papers in the area of your topic. Remember, this is one topic.
You already came up with at least one paper. Now need to find 7 others. Some suggestions:
For each paper, list the paper, provide a link (directly in the document), and briefly describe how the paper relates to your topic.
Submit via Brightspace.
This is due by Noon on Friday, Nov 10.
Week 9 Class 17 Thu Nov 02 Posted: Nov 02
Announcements
CPSC 589-010 T: DevOps Spring 2024
I will be offering a Special Topic course on DevOps in Spring 2024. The prerequisite for the course is "Permission of Instructor". I will grant permission to any graduate student. The course description:
A comprehensive overview of the culture and practice of DevOps, the automated, continuous, and secure integration of version control, testing, packaging, configuration management, and containers.
"DevOps", a compound of "development" and "operations", is an approach to build and deploy software. Leveraging automation, it ties together version control, software testing, packaging, configuration management, and containers for continuous integration to distribute software updates frequently and with high quality. DevOps combines version control (e.g., git), containers (e.g., Docker), continuous integration tools, system administration, SSH and SSH keys, program build tools, and installer packages (e.g., deb and rpm), combined with software validation and testing.
Class Meeting on Tuesday, Nov 7
I will be in Salt Lake City on Monday, Nov 6, and Tuesday, Nov 7, for the 2023 NSF CIRC PI meeting where the srcML grant, "Enabling Automated Language Support for the srcML Infrastructure" [2016465], is a highlighted project. As a PI on an NSF grant, I am required to attend this meeting.
There is no class meeting. I will post an exercise that has to do with your research project.
Agenda
Week 9 Class 16 Tue Oct 31 Posted: Oct 31
Announcements
Agenda
Exercise: Research Paper Papers
For each of your research paper topics, find at least one source paper for each of your topics.
Upload to Brightspace a PDF listing your potential topics and the corresponding papers. Use links to the paper whenever possible.
Due by Noon on Thursday.
Week 8 Class 15 Thu Oct 26 Posted: Oct 26
Announcements
Agenda
We need to decide what your Research Paper is about. There are multiple types:
Each of these leads to a 10 page research paper in IEEE Conference Format. Ten pages means almost full papers with the last page mostly filled.
The results of the research paper are presented at the end of the semester.
Before Noon on Tuesday, Oct 31, send me your topic ideas. Include at least 4.
Week 7 Class 13 Thu Oct 19 Posted: Oct 19
Announcements
Agenda
Week 7 Class 13 Tue Oct 17 Posted: Oct 17
Announcements
Agenda
The Midterm Exam is on Tuesday, Oct 24. If I did not discuss it in class, then it is not on the Midterm. Specifically, the test will cover:
Overall Guidelines
Week 6 Class 12 Thu Oct 12 Posted: Oct 12
Announcements
Project: Metrics
Find code and calculate metrics on them. Both code-level and OOP metrics. The code can be different for each.
Explain and compare the results.
Upload as a single PDF to Brightspace.
Due Friday, Oct 13 by 11:59:59 pm.
Agenda
Week 6 Class 11 Tue Oct 10 Posted: Oct 10
Announcements
Project: Metrics
Find code and calculate metrics on them. Both code-level and OOP metrics. The code can be different for each.
Explain and compare the results.
Upload as a single PDF to Brightspace.
Due Friday, Oct 13 by 11:59:59 pm.
Agenda
Week 5 Class 10 Thu Oct 05 Posted: Oct 05
After Class
Project: Metrics
Find code and calculate metrics on them. Both code-level and OOP metrics. The code can be different for each.
Explain and compare the results.
Upload as a single PDF to Brightspace.
Due Friday, Oct 13 by 11:59:59 pm.
Announcements
Agenda
Week 5 Class 9 Tue Oct 03 Posted: Oct 03
Agenda
Week 4 Class 7 Tue Sep 26 Posted: Sep 26
Agenda
Week 4 Class 7 Tue Sep 26 Posted: Sep 26
Agenda
Exercise 6: Call Graph
Select some code and create a Call Graph for the code. Use the GitHub Classroom Invitation Link in Brightspace to create your repository. The files are already created, you just need to update their contents:
About the code:
Due Monday, Oct 2 3:30 pm.
Week 3 Class 6 Thu Sep 21 Posted: Sep 21
Agenda
Exercise 5: Coupling & Cohesion
Write at least a two-page document that discusses for each main categories of Coupling & Cohesion which code-analysis approaches could be used to automatically find these in a codebase. If the current approaches are insufficient, discuss what else would be needed.
Upload to Brightspace as a PDF.
The exercise is due at 3:30 pm on Monday, Sep 25
Week 3 Class 5 Tue Sep 19 Posted: Sep 19
Agenda
Week 2 Class 4 Thu Sep 14 Posted: Sep 14
Agenda
Exercise 4: Disruption & Lifestages
Write at least a one-page document that discusses the interplay between disruption as defined by Clay Christensen, and the software lifespan, as defined by Václav Rajlich, by considering the following:
The exercise is due at 3:30 pm on Monday, Sep 18
Week 2 Class 3 Tue Sep 12 Posted: Sep 12
Agenda
Week 1 Class 2 Thu Sep 07 Posted: Sep 07
Agenda
Exercise 3: Lehman's Laws
Write at least a one-page document answering the following questions about Lehman's Laws. You can refer to my notes, and the original Lehman's papers.
The Essence of Evolution Discuss the significance of Lehman's first law, "Continuing Change." How does the assertion that a system must continuously evolve to maintain its usefulness relate to the dynamic environment in which modern software operates? Provide any real-world examples that you can to support your argument.
Complexity and Decline Lehman's second law, "Increasing Complexity," suggests that as software evolves, its complexity increases unless work is done to maintain or reduce it. Evaluate the long-term implications of this law on the maintenance and sustainability of large software systems. How does this law correlate with the principle of technical debt in software development?
The Inherent Limitations of Software Evolution Expound on Lehman's "Law of Declining Quality" which asserts that the quality of a system will appear to be declining unless it is rigorously maintained or adapted. How can organizations preemptively address the issues underscored by this law? Discuss with the help of real-life case studies that you can where ignoring this law led to significant setbacks.
Feedback and Adaptation Reflect on the "Feedback System" law, which posits that software evolution processes are multi-level, multi-loop, multi-agent feedback systems. How does this law underline the importance of feedback in agile methodologies and DevOps practices? Analyze its implications for modern software development teams that prioritize continuous integration and continuous delivery.
The exercise is due at 3:30 pm on Monday, Sep 11
Week 1 Class 1 Tue Sep 05 Posted: Sep 05
Special Announcement
We meet in our regular classroom.
Announcements
Agenda
Week 0 Class 0 Thu Aug 31 Posted: Aug 31
Special Announcement
Our Second Class Meeting on Thursday, Aug 31 will also be online through Microsoft Teams.
We will return to the classroom starting next week.
Announcements
Agenda
Exercise 2: Write a 1-page paper discussing which definition of software engineering that appears on the Wikipedia page is the most appropriate and why. You may also discuss the other definitions, and how similar they are to your preferred one.
Update to Brightspaces as a 1-page PDF
This exercise is due by 3 pm on Mon, Sep 4.
Week 0 Class -1 Tue Aug 29 Posted: Aug 29
After Class
Our Second Class Meeting on Thursday, Aug 31 will also be online through Microsoft Teams.
We will return to the classroom starting next week.
Special Announcement
Our First Class Meeting on Tuesday, Aug 29 will be online through Microsoft Teams.
I am in Isolation for COVID and cannot come onto campus.
You can participate from anywhere, or even from the classroom.
Announcements
O'Reilly Online Learning The course textbooks are available in O'Reilly Online Learning.
You do not have to be on the campus network (e.g., via VPN) to access O'Reilly Online Learning.
To access content, click the "Institution not listed?" link below the dropdown and enter your UA email. You will then create an account and use that account from now on.
For more information: Library LibGuide
Exercises
Exercise 1: Write up to a one-page paper introducting yourself to me and the rest of the students:
Submit a PDF through Brightspace.
Notes: Introduction
Notes: Process
For next class: Read the article "Changing the Paradigm of Software Engineering" by Václav Rajlich
All exercises are due by 3 pm on Wed Aug 30
Our First Class Meeting on Tuesday, Aug 29 will be online through Microsoft Teams.
I am in Isolation for COVID and cannot come onto campus.
You can participate from anywhere, or even from the classroom.
Greetings and welcome to CPSC 680 Software Engineering Methodologies (SEM) for Fall 2023.
See you on Tuesday, Aug 29 at 3:30 - 4:45 pm in Arts & Sciences (CAS) room 136