ICS 121: Course information
Overview
- Course information
- What is ICS 121 about?
- Goals for the course
- About your instructor
- Course mechanics
- Class meetings
- Facilities
- Syllabus and assignments
- Proceedures
- Expectations
Info > What is ICS 121 about?
- ICS 121 teaches you the tools and methods of software engineering
- You've learned some computer science theory, now it is time to
practice the trade of software constuction
- You'll read about methods and models
- You'll learn and use popular tools
- With confidence, you will be a better team member
- With confidence, you can focus on the real problems at hand
- With experience, you will know what to expect and what to request
Info > Goals for the course
- Learn software development tools and methods
- Gain first-hand experience using those tools and methods
- Gain an understanding of the "larger product" and the "larger team"
- Experience a range of development activities
- Focus on realistic project communications
- Focus on practical, portable tool usage
- By the end, you should feel ready to take on a challenging
student project in 102, 122, 123, and/or 125
- Prerequisites: 6A, 6B, 21, 22, 52
Info > About your instructor
- Lecturer: Jason Robbins, Ph.D.
- I earned my Ph.D. in Software Engineering from UCI in 1999
- http://www.ics.uci.edu/~jrobbins/
- Built GEF library and ArgoUML design tool
- Published about 20 papers
- Emphasis on making research results have practical usage
- Industry experience: Rockwell, CollabNet, Consulting, Open Source
- TA: Leila Naslavsky
Mechanics > Class meetings
- Lecture: T Th 3:30-4:50pm ELH 100
- Lectures cover conceptual topics and course requirements
- Lecture material will be on final exam
- Every scheduled meeting will take place
- Attendance: mandatory
- Discussion: 3 sections T&Th or W&F
- Will meet only at the second time-slot for that week: Thursday or Friday
- Spend Tuesday and Wednesday time on homeworks and mailing list discussions
- Will meet on Tuesday and Wednesday only if needed
- Discussions will mainly go over assignments and practical details
- Email us questions any time
- Try to find the answer yourself first: e.g., the textbook,
on-line documentation, google, or try some experiments
- Course mailing list is 36380-F03@classes.uci.edu
- It is a general discussion list that everyone in the class is
subscribed to
- You must post messages from your @uci.edu account or other
UCINetID point of delivery
Mechanics > Facilities
- Machines in ICS 3rd floor labs
- Any Windows, Mac, or Linux machines you have access to
- You should be able to download and install any software that we
use
- Rational Rose is only available in the labs
Mechanics > Syllabus and assignments
- Syllabus is here
- Required reading every week
- Assignments listed on same page
- Assignments each week, except weeks 6 and 10
- Assignments will be available each Tuesday
- Download the assignment
- Type in your answers and include any requested diagrams,
screenshots, or source code listings
- Print a copy, and staple pages together.
- Hand it into the distribution
center any time Monday. Current hours are 11-3pm on Mondays.
Check for any changes distribution center hours. Don't try to do
it at the very last minute.
- Optional mini-project for extra credit
- Mini-project helps practice requirements and some tools
- About the same amount of work as one or two extra homework
questions each week
- Mini-project topic is your choice. Good projects may become
ics125 projects with me as customer.
- Work in pairs, each student will get the same amount of
credit
- Deliverables:
- Project proposal, must be approved before continuing
- Status report
- Requirements document includes indentification of user needs,
market opportunity, glossary, domain model, use case diagram,
3-6 use cases, 3-6 feature specs, UI mockup, and implementation
notes.
- Make requested revisions to requirements document and produce
final status report.
- Students who do mini-project will have one or two extra
questions on the final about their project.
- This is not a programming course. There is only a small amount
of programming to do as part of practicing the use of some
tools. Mini-project does not require programming.
Mechanics > Proceedures
- No Add or Drop cards. Use TELE to add or drop only.
- Assignment grading
- Late hand-ins lose 20% per day (or part of day) late
- Regrade requests done in writing only
- Assignments, midterm, and final are individual work
- Participate in course mailing list discussions with your
UCINetID @uci.edu account. Get one if you do not have one
already.
Mechanics > Exams
- Midterm Nov. 6th in class. 25% of overall grade.
- Final exam, Tuesday Dec 9, 4pm in ELH 100. 35% of overall grade.
- Format: Short answer, essay, and problem solving.
- Makeup exams only for documented medical reasons.
- No quizes
Mechanics > Expectations
- Work individually (except on mini-project)
- About 8-10 hours per week per person, including lecture and discussion
- Take primary responsibility for your own learning and success
- Follow the Academic
Honesty Policy
- Getting information from web pages and other sources is fine,
but you must cite your sources.
example use case templatesample test plan templateProject plan template