SENG 540 Software Evolution
WEST VIRGINIA UNIVERSITY
College of Engineering and Mineral Resources
Lane Department of Computer Science and Electrical Engineering
SENG-540 Software Evolution
3 credit hours
Class time: Once a week 6:00 pm – 8:20 pm Location: WVU eCampus, https://ecampus.wvu.edu/
Instructor: Prof. Hany Ammar
Office: 246 Advanced Engineering Research Building
Office phone: 304-293-9682, cell: 304-282-4213
E-mail: hany.ammar@mail.wvu.edu,
URL: http://hanyammar.faculty.wvu.edu/~hhammar//
Office hours: By appointment.
Prerequisites: SENG 550 or knowledge of Object-Oriented Programming and Design, and an undergraduate level knowledge of software engineering.
|
Required Textbook: Software Evolution and Maintenance: A Practitioner’s Approach, Priyadarshi Tripathy, Kshirasagar Naik, Publisher: Wiley, ISBN: 978-0-470-60341-3, 416 pages, November 2014.
Method of instruction: Lecture. Offered online.
Course Description: This course investigates Software Maintenance and Evolution concepts and technologies. Students will be exposed to the basic concepts and current practices of Software Maintenance and Evolution. Topics include Software Evolution Models and Processes, Reengineering, Legacy Systems, Impact Analysis, Refactoring, Program Comprehension, and Software Reuse. Course work will include student presentations, and a term project that will provide exposure to advanced topics in Software Maintenance and Evolution.
Course Modules:
1. Introduction to Software Evolution and Maintenance - Basic Concepts and Preliminaries
2. Taxonomy of Software Maintenance and Evolution
3. Software Evolution Models and Processes
4. Reengineering
5. Legacy Systems
6. Impact Analysis
7. Refactoring
8. Program Comprehension
9. Software Reuse
Course Learning Outcomes: Upon successful completion of SENG 540, students will be able to
1. Demonstrate knowledge of the basic concepts and technologies of Software Maintenance and Evolution
2. Analyze and compare techniques and tools of Software Maintenance and Evolution
3. Conduct studies on the use of Software Maintenance and Evolution technologies in certain application domains.
RULES OF OPERATION
Attendance: Students are expected to regularly follow the lectures. Students are responsible for all material covered in the course, keeping track of assignments’ due dates and examination date. Students are required to attend the in-class discussions of assignments. If a student cannot attend an in-class discussion due to an excused absence she/he will be required to submit a recorded briefing. Each unexcused absence from these classes will result in a penalty of 30% of assignment grade.
Communication: All course material, important announcements, assignments, etc. will be provided using the eCampus features. Please use the eCampus Course Messages feature to communicate with the Instructor and other students in the class. The instructor will make the best effort to respond within 24 hours. Paper: will be required to submit project briefing presentations, final project presentation, and project final report using eCampus.
Exams: There will be a term exam which will cover class material and will be administered in the last week of classes.
Term project: Each student will conduct a multi-stage term project which will be based on the methods discussed in class. The project will have the following four stages: (1) Choosing a topic from the provided list and compiling the related work section and bibliography, (2) Project Plan describing the tasks and timelines, (3) Project Briefings presentations in class, (4) Final project presentation, and (5) Final report.
Grading: Semester grades will be computed as follows Assignment/exam |
Points % |
|
|
Term exam |
25% |
Assignments & Project Assignment 1: Project Proposal (10%) Assignment 2: Project Plan (5%) Assignment 3: Extract Metrics (8%) Assignment 4: 1st Project briefing, (5%) Assignment 5: Reengineering (8%) Assignment 6: 2nd Project briefing, (5%) Assignment 7: UML Visualization (8%) Assignment 8: 3rd Project briefing. (5%) Final Project Presentation& Final Report (21%) |
75% |
Class total |
100% |
Grading scale: Grades will generally be A = 90 – 100%, B = 80 - 89%, C = 70 - 79%, D = 60 - 69%, and F = 0 – 59%. ‘+’ and ‘-‘ grade may be reported if the score is near boundary.
Week/Module |
Topics |
Reading and Assignments |
Assignment Due |
Week 1 May 15 |
Module 1 – Introduction to Software Evolution and Maintenance |
Read Text: Chapter 1 Assignment 1: Project proposal |
May 29 |
Week 2 May 22 |
Module 2 –Taxonomy of Software Maintenance and Evolution |
Read Text: Chapter 2 |
|
Week 3 May 29 |
Module 3 – Evolution and Maintenance Models |
Read Text: Chapter 3 Assignment 2: Project Plan |
June 5th |
Week 4 June 5 |
Module 4 – Reengineering |
Assignment 3: Extract Metrics |
June 19th |
Week 5 June 12 |
Module 5 – Legacy Information Systems |
Assignment 4: Project briefing #1 |
June 20th |
Week 6 June 19 |
Module 6 – Impact Analysis |
Assignment 5: Reengineering |
3rd July |
Week 7 June 26 |
Module 7 – Refactoring |
Assignment 6: Project briefing # 2 |
July 11th |
Week 8 July 3 |
4th of July Break |
|
|
Week 9 July 10 |
Module 8 – Program Comprehension |
Assignment 7: UML Visualization |
July 20th |
Week 10 July 17 |
Module 9 – Reuse |
Assignment 8: Project briefing #3 |
July 25th |
Week 11 July 24 |
Final review |
Final Exam |
August 4th |
Week 12 July 31 |
|
Project Final Presentation&Report |
August 7th |
Term Examination: The examination is designed to gauge the student’s understanding of topics covered in assigned readings, lectures, and project assignments. The final will be comprehensive. The primary focus will be on all the course material. The ‘take home’ exam will partly have questions based on the text topics and partly in essay format. Students will be given one week to complete the final examination. The Final Exam Rubric will be provided on the exam and discussed in class during the review.
Academic Integrity: Students who practice academic dishonesty, such as cheating or plagiarism, will be penalized. Severe penalties will follow from the discovery of any representation of another individual’s work (in any form) as your own (i.e., copying any portion of written assignments or exams). Check the MLA Handbook for Writers of Research Papers Seventh Edition (ISBN: 9781603290241) for proper citation of others’ work to avoid plagiarism in written assignments. Penalties range from a grade of “zero” on the assignment in question to an “unforgivable F” in the course.
If you have not already done so please go to the website http://www.libraries.wvu.edu/instruction/plagiarism and sign-in as WVU Students-First Time. Use your MyID username and password and complete the Tutorial & Take the Test. Please e-mail your certificate for the test to the Software Engineering Program Coordinator, Dale.Dzielski@mail.wvu.edu. Please refer to the New Student Orientation Manual for Online Courses at http://elearn.wvu.edu/students/images/NewStudentOrientationManual_101910.pdf.
The document provides information on eCampus, Mix, STAR, Help Desk, refund policy, WVU Bookstore and important phone numbers.
Attendance Policy: Students are expected to attend every class. Archives are made available to review if missed due to personal or work related absence that should be communicated with instructor when possible. Missing in class assignments discussions or project briefings without a valid excused reason will result in a penalty of 10% of the grade of the respective assignment or project briefing. Consistent with WVU guidelines, students absent from regularly scheduled examinations because of authorized University activities will have the opportunity to take them at an alternate time. Make-up exams for absences due to any other reason will be at the discretion of the instructor.
Inclusivity Statement: The West Virginia University community is committed to creating and fostering a positive learning and working environment based on open communication, mutual respect, and inclusion. If you are a person with a disability and anticipate needing any type of accommodation in order to participate in this class, please advise me and make appropriate arrangements with the Office of Accessibility Services (URL http://accessibilityservices.wvu.edu/home; Phone 304 293-6700). For more information on West Virginia University's Diversity, Equity, and Inclusion initiatives, please see http://diversity.wvu.edu.