Introduction Lecture


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Introduction Lecture

  1. 1. CS189A/172 Capstone Winter 2010 Lecture 1: Introduction
  2. 2. CMPSC 189A/172 <ul><li>Lectures: Monday/Wednesday/Friday 1:00-1:50PM, 387 103 </li></ul><ul><li>Discussions: Friday 10:00-10:50, PHELP 1508 </li></ul><ul><li>Instructor : Tevfik Bultan </li></ul><ul><li>[email_address] </li></ul><ul><li>Office Hours: TBA, HFH 2123 </li></ul><ul><li>Teaching Assistant : Michael Rosengarten </li></ul><ul><li>[email_address] </li></ul><ul><li>Office Hours: TBA </li></ul><ul><li>Google Group: ucsb-cs-capstone </li></ul><ul><ul><li> </li></ul></ul>
  3. 3. 189 Website <ul><li>Class website: </li></ul><ul><li>We will provide some functionality on this website to help you </li></ul><ul><ul><li>Access presentations and materials provided by industry partners </li></ul></ul><ul><ul><li>Access deliverables from projects from prior years </li></ul></ul><ul><ul><li>Submit your project deliverables </li></ul></ul><ul><ul><li>Interface with Google services such as Google groups, Google docs, Blogger </li></ul></ul>
  4. 4. Capstone Project Class <ul><li>Two quarter project class in which students put their education into practice by building a significant system as a team </li></ul><ul><ul><li>Learn by doing </li></ul></ul><ul><ul><li>Chance to explore the latest technologies </li></ul></ul><ul><ul><li>Provide practical experience as a form of career building </li></ul></ul><ul><li>Two flavors of Capstone are available </li></ul><ul><ul><li>ECE 189 A/B </li></ul></ul><ul><ul><ul><li>Focuses on development of a hardware prototype </li></ul></ul></ul><ul><ul><ul><li>Runs Fall/Spring every year so chips can be fabricated during the Winter </li></ul></ul></ul><ul><ul><li>CS 189 A/B </li></ul></ul><ul><ul><ul><li>Software systems engineering oriented </li></ul></ul></ul><ul><ul><ul><li>Runs Winter/Spring to allow continuity </li></ul></ul></ul>
  5. 5. CS 189 A/B <ul><li>Learn by putting education into practice </li></ul><ul><ul><li>Explore cutting-edge software technologies and architectures for the next breakthrough in computing </li></ul></ul><ul><ul><li>Work as teams </li></ul></ul><ul><ul><li>Build something significant </li></ul></ul><ul><li>Work on exciting projects: </li></ul><ul><ul><li>social networking, cloud computing, in-car assistance system, movie recommendation, voicemail transcription, automated security assessment, video conferencing, virtual clusters, visual voicemail, peer-to-peer file sharing, online slide sharing, contact synchronization </li></ul></ul><ul><li>Using cutting edge technology: </li></ul><ul><ul><li>Android, Hadoop, virtualization, XEN, MapReduce, cloud computing, Ruby-on-Rails, peer-to-peer networking, . . . </li></ul></ul>
  6. 6. How Does It Work? <ul><li>Industry Driven </li></ul><ul><ul><li>Top-end companies “donate” challenge problems that they wish to explore as R & D. </li></ul></ul><ul><ul><li>Student teams develop prototypes in conjunction with industrial mentors </li></ul></ul><ul><ul><li>Goal : develop and understand the next industry-leading technology, drive an idea from design to working prototype </li></ul></ul><ul><li>Other options </li></ul><ul><ul><li>Student Driven </li></ul></ul><ul><ul><ul><li>Student teams propose a significant system of their own design </li></ul></ul></ul><ul><ul><li>Faculty Driven </li></ul></ul><ul><ul><ul><li>Faculty propose research problems </li></ul></ul></ul><ul><li>Awards given for best projects! </li></ul>
  7. 7. What Happens in 189A? <ul><li>189A first week (Jan. 4-8) </li></ul><ul><ul><li>Company representatives present the challenge problems </li></ul></ul><ul><ul><li>Students form teams (~5 members each) and pick projects </li></ul></ul><ul><li>189A goals </li></ul><ul><ul><li>Specify what the product will do </li></ul></ul><ul><ul><li>Design the product </li></ul></ul><ul><ul><li>Build a prototype </li></ul></ul><ul><ul><ul><li>Typically teams iterate on these three activities until they converge to a working prototype! </li></ul></ul></ul><ul><li>189A (March 18, 4-7pm) </li></ul><ul><ul><li>Prototype demonstration </li></ul></ul>
  8. 8. What Happens in 189B? <ul><li>189B (beginning of April) </li></ul><ul><ul><li>Prototype demonstration to Giovanni to get feedback </li></ul></ul><ul><li>189B goals </li></ul><ul><ul><li>Build a full product </li></ul></ul><ul><ul><ul><li>Implement all the parts that were omitted in the prototype for 189A </li></ul></ul></ul><ul><ul><li>Test the product </li></ul></ul><ul><ul><li>Prepare a presentation! </li></ul></ul><ul><li>189B final (June 3) </li></ul><ul><ul><li>Project presentation day </li></ul></ul><ul><ul><ul><li>This is the big event where the teams present their projects to a lot of people! </li></ul></ul></ul>
  9. 9. Two Course Sequence <ul><li>This is a two course sequence: CS189A/172 and CS189B </li></ul><ul><ul><li>In order to develop a full product your team has to participate to both courses </li></ul></ul><ul><li>CE students are required to take both courses </li></ul><ul><li>For CS students CS189A/172 and CS189B are electives but we strongly encourage CS students to take both courses </li></ul><ul><ul><li>The students who participated in both 189A/B courses were very proud of the outcome and their projects became the most important item in their CVs </li></ul></ul><ul><ul><li>If you take both CS189A and CS189B you get to participate to the presentation day showing your project to your peers, faculty, company representatives, and your family! </li></ul></ul>
  10. 10. Student Feedback <ul><li>“ I enjoyed the structure of this class & I think applying our efforts to “real world” problems given by companies is extremely effective.” </li></ul><ul><li>“ The pairing with industry is great.” </li></ul><ul><li>“ I found this course to be very interesting and helpful to my pursuit of a Computer Science degree and Software Engineering job.” </li></ul><ul><li>“ Working with companies was motivational and fun.” </li></ul><ul><li>“ It is very helpful that this year we actually do some real industry project instead of something we created.” </li></ul>
  11. 11. Student Feedback <ul><li>“ CS189 not only helped me during job interviews but also the project I am working on with PowerPoint is very similar to the project that my group worked on (the online slide sharing app)” </li></ul><ul><li>Melissa Hunter, Software Design Engineer, Microsoft </li></ul><ul><li>``As far as getting a job goes, CMPSC 189 is probably one of the most useful things you can do as an undergrad.'' </li></ul><ul><li>Brendan Blackwood, iContact. </li></ul><ul><li>``Many projects I am working on now I find myself going through the same steps I did in CMPSC 189 class. From gathering requirements, producing design specs, and ultimately presenting my work.'' </li></ul><ul><li>Chris Fattarsi, Web Developer, NASA Ames Research Center </li></ul>
  12. 12. This Year’s (Mostly) Industry Partners <ul><li>Eron Howard Novacoast </li></ul><ul><li>Samuel Gasster The Aerospace Corporation </li></ul><ul><li>Steve Zahm Procore </li></ul><ul><li>Ron Kuper Sonos </li></ul><ul><li>Colin Kelley Ringrevenue </li></ul><ul><li>David Bothman UCSB COE </li></ul><ul><li>Jack Greenbaum Green Hills Software </li></ul><ul><li>Ashkar Kharebov UCSB ECE Capstone </li></ul><ul><li>Dave Gianini </li></ul>
  13. 13. How to Claim a Project? <ul><li>To claim a project you have to form a team of </li></ul><ul><ul><li>at least 3 , and </li></ul></ul><ul><ul><li>at most 5 members. </li></ul></ul><ul><li>Each team member has to e-mail the instructor the following: </li></ul><ul><ul><li>The name of the team </li></ul></ul><ul><ul><li>The project they wish to work on </li></ul></ul><ul><ul><li>Names of all team members </li></ul></ul><ul><li>The project is claimed by a team when: </li></ul><ul><ul><li>the instructor receives an e-mail from each team member with the above information (the information in each e-mail has to match) and </li></ul></ul><ul><ul><li>if no other team has claimed the project earlier </li></ul></ul><ul><li>One team per project! </li></ul><ul><ul><li>The team that gets organized first and sends the e-mails gets the project </li></ul></ul>
  14. 14. First Three Assignments <ul><li>All the teams must be formed by the beginning of 2 nd week of classes, Monday, January 11 </li></ul><ul><ul><li>You have to form your teams in the first week and pick a project </li></ul></ul><ul><li>Each team must prepare a 2 page vision statement about the project describing, due Friday, January 15th </li></ul><ul><ul><li>what the project is about </li></ul></ul><ul><ul><li>what will be the outcome of the project </li></ul></ul><ul><ul><li>what will be the implementation platform </li></ul></ul><ul><li>A team member from each team is going to present this vision statement to the class on Friday, January 15th </li></ul>
  15. 15. The Structure of the Class <ul><li>The class will be organized as follows </li></ul><ul><ul><li>Monday lectures: Tevfik discusses a general software engineering topic </li></ul></ul><ul><ul><li>Wednesday lectures: Tevfik, Mike, or a guest lecturer presents a tool or a technology related to some or all of the projects </li></ul></ul><ul><ul><li>Friday lectures: Teams present what they have done and we discuss the progress of each team </li></ul></ul><ul><ul><li>Friday discussions: Project workshop conducted by Mike </li></ul></ul>
  16. 16. Future Course Work <ul><li>In 189A, in addition to building a prototype for the project you will also prepare the requirements and design specifications for the project </li></ul><ul><ul><li>Please turn in everything either in pdf or html </li></ul></ul><ul><ul><li>All project artifacts by all teams will be accessible by the class </li></ul></ul><ul><li>There will be no homeworks, midterm or final </li></ul><ul><ul><li>So that you can devote a lot of time and energy to the project! </li></ul></ul><ul><li>However there will be some reading assignments and quizzes </li></ul><ul><li>You will be graded on the project deliverables, quizzes, your performance in presentations and discussions and </li></ul><ul><ul><li>you will also receive a peer grade: </li></ul></ul><ul><ul><ul><li>I will ask you to grade each other’s performance during the project since you know what your team members are doing much better than I </li></ul></ul></ul>
  17. 17. Course Goals <ul><li>To learn the issues and problems involved in large software projects </li></ul><ul><li>To learn phases of software development and evolution: requirements analysis and specification, software design and specification, implementation, testing, and maintenance </li></ul><ul><li>To learn basic software engineering techniques and principles </li></ul><ul><li>To gain experience in large scale software development by working on a team project </li></ul>