Office
Hours
Tue 4:00 pm - 5:00 pm or by appointment
Teaching
Assistant: Fatemeh Alavi
Office
Hours
Mon/ Wed 2:00 pm - 3:00 pm
Email: f.alavi@mail.utexas.edu
Monday
and Wednesday: 3:30 PM to 5 PM, ENS 116
Quick Links
General Description
Software
evolution plays an ever-increasing role in software development.
Programmers rarely build software from scratch but often spend more
time in modifying existing software to provide new features to
customers and fix defects in existing software. Evolving software
systems is often a time-consuming and error-prone process. This course
focuses on state-of-the art methods, tools, and techniques for evolving
software.
I
will begin by addressing software design principles for ease of change
and reviewing empirical studies on software evolution. Subsequently, I
will cover program differencing techniques and source transformation
languages and tools. Next, I will cover analysis, testing, debugging
and visualization methods for evolving software. This course also
presents the-state-of-the-art research in analyzing software evolution
by mining software repositories such as CVS, Subversion, and Bugzilla.
Audience and Prerequisites
This
class is intended to students to introduce current research topics in
software
engineering with focus on software evolution.
Undergraduate
level knowledge of data structures and object-oriented program
languages is required. Knowledge of compilers, program analysis
and program representations is encouraged. If you are unsure
of your qualifications, please contact the instructor, who will be
happy to help you decide if this course is right for you. You are
welcome to just sit in for a few days and see how this class feels.
Readings
Relevant
papers will be drawn from the leading software engineering journals and
conference proceedings such as: TOSEM, TSE, ICSE, FSE, ASE, OOPSLA, and
ICSM
Optional
Textbooks
* Software Fundamentals, edited by Daniel M. Hoffman and
David M. Weiss, Addison Wesley, 2001
* Design Patterns: Elements of Reusable Object-Oriented
Software, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides,
Addison-Wesley Professional,1994
* Refactoring: Improving the Design of Existing Code,
Addison-Wesley Professional, 1999
Grading
* Reading Assignments: 20%
* Problem sets and any other non-project assigned tasks: 15%
* Option (A) Project: 55%
o proposal
o midpoint review
o presentation
o final report
* Option (B) Literature Survey + Tool Evaluation: 55%
o literature survey: 35%
+ proposal
+ presentation
+ final report
o tool evaluation: 20%
+ final report
* Class participation: 10%
For
the project, students may choose to do (A) a research project or (B)
both a literature survey paper and a tool evaluation.
Oral
discussion of homework problems is encouraged. However, be sure to
submit your own independent solution. Copying of any part of a solution
without explicit reference to its source is plagiarism and considered
cheating.
Email Response Hours
Tue
and Fri, 3:30-4:30 pm
When
you send me an email
about this class, please
put a header [EE 382V] in the subject line.
This will tag your
email
as a course-related email. I will respond to you as soon as I
can
or during my
email office hours, Tue and Fri, 3:30-4:30 pm.
Please be brief and
explicit about where you were stuck and what you need from me. I will
try to answer them the best I can either by email, during the class, or
using the blackboard discussion board. If you need immediate or
interactive response, please try to talk to me after class or make an
appointment to see me.
Student with Disabilities
The
University of Texas at Austin provides upon request appropriate
academic accommodations for qualified students with disabilities. For
more information, contact the Office of the Dean of Students at
471-6259, 471-4641 TTY or the College of Engineering Director of
Students with Disabilities at 471-4382.