CSC 436 Software Engineering
Fall 2017
Professor: |
Ravi Sethi
Gould-Simpson 720 rsethi@email.arizona.edu Office Hours: Tuesdays & Thursdays 10:00-11:00, or by appointment |
Introduction
The Syllabus for this course includes the course description and objectives and the policies for grading, late work, attendance, classroom electronics, accessibility, academic integrity, confidentiality of student records, and the code of conduct. Information contained in the course syllabus, other than the grade and absence policy, is subject to change with advance notice, as deemed appropriate by the instructor.
Software engineering is the art and science of developing reliable software systems that address customer needs, subject to resource, business, and societal constraints.
The course will emphasize principles and practices, illustrated by real-world examples. The course includes a team project that is central to the learning experience.
The course may include guest lectures on topics related to the course content.
Topics
This course is an introduction to the following topics in Software Engineering:- Software Development Processes: Agile, Iterative, Plan-Driven
- Working with Customers
- Goals and Metrics
- Design and Architecture
- Architecture and Code Reviews
- Verification and Validation
- Quality: Code Quality, Customer Quality
- Project Management
- Additional Topics (as time permits)
The ordering of the topics is subject to change.
Course Format and Teaching Methods
The course includes lectures, a team project, and team presentations.
For the project, students will form their own teams of 4, identify customer needs, prepare a written team proposal, design and implement a system, reflect on their experience, and complete a comprehensive final written report. Software and documentation produced by students will be provided as is, under the MIT open source license.
Course Materials
Edited versions of the slides from the lectures will be posted to the Course Materials page.
Students will be assigned readings from articles that will be available on-line either through the University of Arizona Library or through the class web site.
Code of Conduct
The following is a short version of the UA Department of Computer Science Code of Conduct:We, the students and professionals of the UA Department of Computer Science, are committed to providing and maintaining a supportive community and a thriving educational environment.
We strive to:
- Be Welcoming and Inclusive
- Honor Privacy and Confidentiality
- Continue to Improve Our Learning Environments
- Behave Respectfully and Courteously
- Demonstrate Intellectual Honesty
Thank you for your contributions in support of these goals. Disruptive behaviors such as physical or emotional harassment, dismissive attitudes, and misuse of department resources are contrary to this code. If you have questions, want to make us aware of a problem, or wish to see someone recognized for their positive actions, please email: depthead@cs.arizona.edu
ACM, the world's largest educational and scientific society, has a Code of Ethics and Professional Conduct, which includes
- Contribute to society and human well-being.
- Avoid harm to others.
- Be honest and trustworthy.
- Be fair and take action not to discriminate.
- Honor property rights including copyrights and patent.
- Give proper credit for intellectual property.
- Respect the privacy of others.
- Honor confidentiality.