210 likes | 362 Views
CS428/9: Software Engineering II. Darko Marinov (slides from Ralph Johnson). Personnel. Instructor Darko Marinov TAs Atul Dixit (still to be confirmed) Ganesh Agarwal Jeff Overbey Grader for Advanced Composition (CS429) Jenica Roberts-Stanley (still to be confirmed). Reading.
E N D
CS428/9: Software Engineering II Darko Marinov (slides from Ralph Johnson)
Personnel • Instructor • Darko Marinov • TAs • Atul Dixit (still to be confirmed) • Ganesh Agarwal • Jeff Overbey • Grader for Advanced Composition (CS429) • Jenica Roberts-Stanley (still to be confirmed) 428-1
Reading • Hamlet and Maybee, The Engineering of Software: A Technical Guide for the Individual • Finish from last semester • Lots of papers • Not as many as last year 428-1
What is S.E.? • Bauer: “The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.” • IEEE 610.12: “(1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. (2) Study of (1).” 428-1
What is (not) S.E.? • Not just software programming • Individual vs. team • Not just a process • Field that studies several different processes 428-1
Software development process • Pressman: “A framework for the tasks that are required to build high-quality software” • Johnson: “The steps a particular group follows to develop software” • A particular approach to the development, operation, and maintenance of software 428-1
Some defined processes • Rational Unified Process (RUP) • eXtreme Programming (XP) • Bazaar Style • Crystal Clear 428-1
Process components • Requirements gathering and analysis • Specification • Design • Implementation • Testing • Management: people, planning and scheduling, measuring and tracking 428-1
Other process components • Life-cycle model • Notations • Software tools • Activities • Roles 428-1
CS428 topics • Software Configuration Management • Refactoring • Testing and debugging • Metrics • Maintenance and reengineering • More processes and components • Component based, web engineering, client/server • Clean-room, model driven (code generation) 428-1
CS429 = CS428 + ACP • Advanced Composition (former Comp II) • Advanced writing requirement • Requires multiple revision of documents • Text that will be used: Joseph Williams, Style: Toward Clarity and Grace 428-1
Advanced composition • Start with 5 pages of your own writing • 5 pages of process description • Each session, mark up the paper following the rules of the chapter • After you get the paper back, enter changes, print it off, and start next session • Comments on writing handled by Jenica,a grader from the English department 428-1
First version • First version (no reading required) due January 23 (next Tuesday) • Describe the process you used last semester • How is it different from the “official” process? • What was wrong with it, and what do you think you should do about it? • More info will be on Wikihttps://agora.cs.uiuc.edu/display/cs428/ACP+Component 428-1
Writers’ Workshop • A free service for all students • Practical advice on composing and revising documents • You can go there with your draft of the document or empty-handed • Ask for an appointment with an expert in science writing • More info: http://www.english.uiuc.edu/cws/wworkshop 428-1
New Wiki • Class info on the departmental Wiki serverhttps://agora.cs.uiuc.edu/display/cs428/Home • Should be much more reliable • Requires login (AD password) for access • Homework 0: Sign up on the list of people in the course • Last slide will have a list of things to do 428-1
Projects • If you want to continue your project, make an entry for your project on https://agora.cs.uiuc.edu/display/cs428/Projects • You can either just link to the old Wiki and keep using it or you can move the content • We will not be updating the old Wiki • Cancel project if • It is likely going to fail • It has few people returning 428-1
Initial project presentations • Sign up for a presentation on Wiki • 10-minute presentations during lecture time next week (Tue, Jan 23, and Thu, Jan 25) • Goals of presentations • Demonstrate your work (part of your grade is based on project “delta” between start and end) • Reshuffle groups (deadline is Tue, Jan 30) 428-1
More project presentations • Three more presentations/demos, around • Feb 21 • Mar 28 • Apr 25 (final presentation) • A major problem in 427 was non-iterative development (cramming it all in the last week) • More iterative demos hopefully results in a more iterative development 428-1
Grading • Homework assignments: 15% • Midterm (Mar 6): 15% • Final (May 10): 35% • Project: 35% • ACP for CS429: pass/fail • Fail would affect the letter grade • 4 hours of credit: above 75%, book report 25% 428-1
Schedule • Entire (tentative) schedule available on Wiki:https://agora.cs.uiuc.edu/display/cs428/Schedule • Jan 16: Introduction • Jan 18: Software Configuration Management • Jan 23: Project Presentations (1) • Jan 25: Project Presentations (2) • Jan 30: Refactoring (Jeff Overbey) • Feb 1: Refactoring-aware SCM (Danny Dig) 428-1
To-do list • Add yourself to the course listhttps://agora.cs.uiuc.edu/display/cs428/People+in+the+course • For continuing projects, add project info and sign up for a presentationhttps://agora.cs.uiuc.edu/display/cs428/Projects • For CS429, see the first assignmenthttps://agora.cs.uiuc.edu/display/cs428/ACP+Component • Reading (not in advance): first set for SCMhttp://uweb.txstate.edu/~mg43/CS5391/Papers/ConfigManagement/conceptsCM.pdfhttp://www.scmpatterns.com/pubs/hass_sidebar.html 428-1