30 august 2010. introductions logistics web site: office
Post on 19-Dec-2015
215 views
TRANSCRIPT
COMP 52330 August 2010
The Course
Introductions
Logistics Web Site:
http://www.cs.unc.edu/Courses/comp523-f10/ Office Hours: Open office policy This course is
4 credits EE APPLES
CI (Implication: document iterations)
Programming Languages distribution group Class attendance is expected
Exams will cover class material NO INCOMPLETES
Course Objectives Overview of the practice of software
engineeringAwareness of software engineering (and
failures) in the real world why software development is more than
coding Hands on experience of the full process Working on a team Awareness of new technologies
Team Meetings
Beyond the Project Content
Quick pass for projectMore in depth of how it is done in the larger world
Exams2 essays in lieu of midtermsFinal is project presentations TUESDAY DEC 14
ReadingsKey papers tied to lectures
Guest speakers Hot Topics
Readings
Goal is for you to read the classical papers
Scheduled relative to content Each paper will be accompanied by 2 or
3 questions for you to be ready to answer
If discussions lag, I will call on people
Guest Speakers
Fred Brooks, Design of Design Gary Bishop, Writing accessible code Mike Reiter, Writing secure code Dave Ogle (IBM), Testing John Reuning (ibiblio), SCRUM
Hot Topics
Observation: not many COMP courses teach what’s new and hot
Assignment:Identify a topic that you want to learn aboutTeam paper and presentation (15 min)
○ Based on choices, not projects○ 5 days allocated beginning in October
Presentation must be reviewed with me before class
Topics due September 8
Grading 75% project
individual contribution multiplier (.8 – 1.1)30% code30% documentation5% on time delivery5% professionalism5% presentations
10% hot topics (paper and presentation) 15% essays (6%, 9%)
Individual Contribution Rare that it will go over 1.0
Basically, you can’t do better than the projectBut there are always exceptional circumstances
InputsPeer evaluationsMy evaluationClient evaluationConsultant evaluations
About the Projects
Professionalism You are representing the university, the
department, this class and yourself Your web site is publicly available and may
be accessed by outside people You are expected to
show common courtesymake it to meetings promptly or notify peoplemeet your commitments
It is part of your grade
Team Rules Establish them now … before problems arise Team behavior
Notifying team members if you’re going to be late – meetings AND assignments
Ways to contact and communicate Responses to emails
○ Expected times○ Meaning of no response
Recovering from slippages Coding practices
Style Prologue How to maintain current state
Project Resources Talk to me about what you need
I can provide server and repository space, but NOT maintenance support
Recommend freely available software, not software that is a limited free trial period
Focus on simple solutions Feel free to use existing solutions If you are having team or client
problems, contact me early: don’t let it fester!
Web Site Each project is required to have one
Will be linked from course pageShould be repository of all material: a
WORKING site○ Capture decisions (including rationale)
team assignmentsPublic siteCan be pointer to any space you want
○ Recommend using a public resource○ Will give you CS space if you want
Code Management
You MUST use a form or version controlHomegrown is possible but too unreliable
Primary choicesCVSSVMBazzar (Russel team apt to use)
You can install your own or use a publicly available version
Web Site Options Build Your Own Web Site Google code, doc, calendar, …
Caveat: Google doc good for working documents…not for final formatting
Assembla Sourceforge Wiki Combinations thereof… Check with your client about preferences
Web Site Content Contact information Overview of project Related links Repository for key deliverables functional spec design document user manuals AND all other documents
Team rules Contract Schedule Code Journal or log of decisions made and reasoning … or you’ll keep revisiting
the same decisions
Templates and descriptions will be available on web site by end of weekhttp://www.cs.unc.edu/Courses/comp523-f10/
Deliverables * Functional specification
User interface sketches Project schedule
Adapting the schedule is different than missing deadlines
Contract Commitment to PRIMARY goals and agreement on
SECONDARY * Design Document * User guide Code Running system Presentations
How the Course Will Run Meetings
Weekly team meetings with me: organizational and technical
Meetings with the client as appropriate (probably weekly) Weekly team meetings Each week, I’ll ask each team member to fill in a form with
hours spent (education, not grading) Regular deliverables
Description and dates will be posted on web Multiple executable deliverables to client Multiple classroom demos Class dates BUT will consider reasoned arguments about project-specific exceptions
Meetings
All meetings are in my office (Brooks 146)Begin today
I’m flexible about rescheduling meetingsBut I get grumpy when I’m stood upAgree on contact procedure for missing or
late
Software Engineering
Software Engineering Objective
The right software
delivered defect free,
on time and
on cost,
every time.
Carnegie Mellon Software Engineering Institute
All Processes Include
Requirements Design Implementation Test Maintenance
All software projects are different
but …Requirements will change.
Surprises will happen.
Schedules will slip.
Life will happen.