Inf 111 / CSE 121: Software Tools and Methods

Winter Quarter 2011
 
Lecture Discussion 1 Discussion 2 Lab 1 Lab 2
DBH 1500
MWF, 10:00 - 10:50 am
DBH1300
M 8:00 - 8:50 am
DBH1300
M 9:00 - 9:50 am
ICS 192
M 11:00 - 11:50 am
ICS 192
M 12:00 - 12:50 pm

Instructor:

Susan Elliott Sim

Email:

Image of Susan's email
To ensure a response to your email, please include "Inf111" or "CSE121" in the subject line and send your email from a UCI account.

IM:

benevolentprof on YIM and gtalk

Office hours:

W 11:00am - 12:00pm
Other times by appointment

Teaching Assistant:

Colin Wheelock (satchamobob [at] gmail)
Office Hour: Wednesdays 1:30-2:30pm in DBH5013

Web site: http://www.ics.uci.edu/~ses/teaching/inf111/
EEE MessageBoard:

https://eee.uci.edu/boards/w11/37030/
You can post questions and comments about this class to the EEE MessageBoard.

Description - Textbooks - Topic List - Grading - Policies


Description

Catalog description:
Concepts and techniques of constructing software in a systematic fashion,including detailed design techniques, specifications, programming methods, quality-inducing procedures, development tools, team techniques, testing, estimation, and performance improvement. Laboratory work involves exercises to illustrate important concepts, methods, and tools. Prerequisites: Informatics 43 or ICS 52 or CSE90 with a grade of C or better.

Description of this installment of 111:
This course will cover a variety of software tools and methods that are widely used in industry with the aim of increasing students' skills and flexibility as software engineers. There will be an emphasis on iterative and incremental software process models such as Agile. Students will gain experience with techniques and practices including testing, version control, UML modeling, and design patterns.


Textbooks

Required Textbooks:
1. van Vliet, Hans. Software Engineering: Principles and Practice. 2nd edition. Addison-Wesley, 2000.
2. Larman, Craig. Applying UML and Patterns, Third Edition. Prentice Hall PTR, 2005.
3. Brooks, Frederick P. The Mythical Man-Month. Anniversary edition. Addison-Wesley, 1995.


Topic List

B = Brooks, L = Larman, V = van Vliet. Schedule is subject to change.

  Topic Readings Evaluations
Week 1 Course Overview
- Introduction - Software Technology - Orders of Ignorance - Nature of Software Development - "No Silver Bullet"
B16 or from IEEE (download only works on campus or through VPN)
V15
Microsoft
 
Week 2 Unified Modeling Language (UML)
- Modeling - Perspectives in Modeling - Domain Models - Class Diagrams
- Tools: Rational Software Developers Workbench
L1.9, 10, 13, 14, 15, 16, 26
Homework 1 during Laboratory session
Week 3
No class on Monday - Martin Luther King Jr. Day

Design Patterns
- Singleton - Observer - Visitor - Façade - Factory
L26, V3
See EEE for readings on Singleton, Façade, Observer, and Strategy
Homework 1 due
No lab- Homework 2 has take-home portion only
Week 4 Programming Practices
- Coding Conventions - Code Reading - Reverse Engineering
Java Code Conventions

Homework 2 due
Homework 3 during Laboratory session
Week 5 UML (continued)
- Use Cases - Use Case Diagrams - Sequence Diagrams

L6, 28, 29
Homework 3 due
Homework 4 during Laboratory session
Week 6 Software Development Process Models
- Process models - Plan-based models - Iterative models
- Agile Software Process
V3, 14.3

L3
The Rules and Practices of Extreme Programming
What is Scrum?
Midterm test
No lab
Week 7
Configuration Management
V4 Coding Randori 8:00-10:50am
Homework 4 due
Homework 5 during Laboratory session
Week 8 No class on Monday - President's Day
Testing
- Types of testing - Acceptance testing - Unit testing
Tools: JUnit
V13 No lab
No discussion
Week 9 Testing (continued)
Homework 5 due
Homework 6 in Laboratory session
Week 10 Software Design
Software Industry
  Homework 6 due
Practical Final Exam

Slides.
Complete Set of Course Slides
No Silver Bullet Slides


Grading and Evaluations

Grading.
Assignments 60% (6 equally weighted, best 6/7)
Midterm Test 15%
Final Examination 25%

Assignments.
There will be seven graded assignments, worth a total of 60% of your grade. You will receive credit for the best six out of seven, so you may miss one lab without penalty. Each assignment will have an in-class portion and a take-home portion. The in-class portion will be graded during the laboratory session on Mondays. To receive credit, you must attend the section in which you are enrolled. The take-home portion is due electronically the following Thursday.
 
Homework 1, week of January 10  Class_DVDStore.emx   SelfCheckOut.zip
Homework 2, week of January 17
Homework 3, week of January 24
Homework 4, week of January 31  LunarLander.zip
Homework 5, week of February 14
Homework 6, week of February 28  LunarLanderHW6.zip   testing.zip
Alternative take-home for HW6  ApprovalTests.008.zip   triangle.zip

Policies Concerning Assignments. Assignments must be turned in electronically using Checkmate. Assignments are due at the at the time and date on stated on the assignment handout. No late assignments are accepted. Assignments will require use of software tools, some of which are available only in the ICS labs.

Midterm Test.
There will be one term test worth 15% of your final grade. The test will be held on Wednesday, February 11 during the regular lecture period.  

Final Examination.
The final examination worth 25% of your final grade and is scheduled for Monday, March 14, 10:30 am-12:30pm.

Policies Concerning Exams. The final exam will be cumulative. Exams will include all kinds of questions, including multiple choice, essay, and drawing diagrams. Bring your UCI student ID card (for Access students: other government-issued photo ID) to the exam. Do not bring electronic devices, such as laptops or cell phones. Make-up exams will be offered only for documented medical reasons.


General Policies

Adding and Dropping. Last day to add, drop, or change sections: January 15, 2010. New students will not be accepted after this date.

Cheating. The UCI academic honesty policy applies. Consequences of cheating in this class: A letter in your UCI file, and the course grade is lowered, possibly to F. Material that is copied from books or Web pages needs to be quoted and the source must be given.

Disabilities. If you need an accommodation because of a disability, please contact the instructor and the Disability Services Center as soon as possible.



(C) 2003-2010.