DOC PREVIEW
CORNELL CS 501 - Introduction to Software Engineering

This preview shows page 1-2-3-26-27-28 out of 28 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS 501: Software EngineeringAbout the CourseCourse AdministrationAcademic IntegritySlide 5Slide 6Grading (Subject to Change)Overall Aim of the CourseProjectsProject SelectionThoughts about Project SelectionVariety of Software ProductsClientCategories of Software ProductPrevious Experience (Yours)ObservationsObservations about Big ProjectsFuture ExperiencePrevious Experience (Mine)Software is ExpensiveCourse Themes: RiskCourse Themes: VisibilityCourse Themes: ProcessCourse Themes: ScaleWhat is Good Software?The Craft of Software DevelopmentProfessional ResponsibilityNext Steps1CS 501 Spring 2005CS 501: Software EngineeringLecture 1Introduction to Software Engineering2CS 501 Spring 2005About the CourseWeb site: www.cs.cornell.edu/Courses/cs501/2005sp/Email: [email protected] (student to course team)Newsgroup: cornell.class.cs501 (student to student)Instructor: William ArmsTeaching assistants: Lin Guo, Amar Phanishayee Assistant: Anat Nidar-LeviComputer lab: Computer Science Undergraduate Lab, Upson Hall, Room 315/317.3CS 501 Spring 2005Course AdministrationEmailTo contact members of the course team, send email to:[email protected] not send email to the instructor or an individual teaching assistant, except for questions to the teaching assistant assigned to your project.Teaching Assistants do not have office hours, but you can schedule an appointment by email.4CS 501 Spring 2005Academic IntegritySoftware Engineering is a collaborative activity. You are encouraged to work together, but ...• Some tasks may require individual work.• Always give credit to your sources and collaborators.Good professional practice: To make use of the expertise of others and to build on previous work, with proper attribution. Unethical and academic plagiarism: To use the efforts of others without attribution.See: Code of Academic Integrity on the course Web site, which points to the Cornell code.5CS 501 Spring 2005About the CourseSyllabusFor the schedule of lectures, assignments, readings and quizzes, see the Syllabus file on the course Web site. (Note that this syllabus may change as the course progresses.)QuizzesFour quizzes held during class times. No examinations. (See Quizzes on the Web site for details.)Wednesday eveningThis time is for project team meetings. You may choose to meet at other times, but each project should have at least one regular weekly meeting.6CS 501 Spring 2005About the CourseReadings:Required readings. Material that will be tested in the quizzes will be identified during classes.Background reading. Recommended material, that will not be tested explicitly.Textbook:There is no course textbook. See the Web site for general books on Software Engineering.See the Books and Readings file on the Web site.7CS 501 Spring 2005Grading (Subject to Change)Project (group) 45%Project (individual) 25%Quizzes 30%8CS 501 Spring 2005Overall Aim of the CourseWe assume that you are technically proficient. You know a good deal about computing, can program reasonably, can learn more on the job.When you leave Cornell, you are going to work on production projects where success or failure costs millions of dollars.Soon you will be in charge! It may be your money!We want you to make your mistakes now and learn from your mistakes.9CS 501 Spring 2005ProjectsThe Course is Built around the Projects• Real project for real client who intends to use the software in production.• Select your own project, any branch of software development• Project teams, 5 to 7 people.• Feasibility study and plan: due February 18• Group presentations and reports:requirements, design, finalThe class on Thursday will discuss the projects.10CS 501 Spring 2005Project SelectionRead the Web site• Some projects are suggested on the Web site and will be discussed in class on Thursday• You are encouraged to find other projectsContact potential clients• Gain idea of their expectations• Estimate scope and complexity of the project• Discuss business decisionsAssemble project team• Post message on newsgroup cornell.class.cs501• Advertise at the beginning of class11CS 501 Spring 2005Thoughts about Project SelectionProjects• Target must be a production system (not research)• Client should be one or two designated people -- client should be prepared to meet with you regularly and attend the presentationsTeam• Teams need many strengths -- organizational, technical, writing, etc.• Consider appointing a leader to coordinate the effort12CS 501 Spring 2005Variety of Software ProductsExamplesReal time: air traffic control Embedded systems: digital camera, GPSData processing: telephone billing, pensionsInformation systems: web sites, digital librariesSensors: weather dataSystem software: operating systems, compilersCommunications: routers, mobile telephonesOffices: word processing, video conferencesScientific: simulations, weather forecastingGraphical: film making, design etc., etc., etc., ....13CS 501 Spring 2005ClientClient (a.k.a. Customer)The client provides resources and expects some product in return. Client satisfaction is the primary measurement of success in a software project.Question: Who is the client for Microsoft Excel?14CS 501 Spring 2005Categories of Software ProductCategories of client and software product:• Generic (e.g., Microsoft Excel)• Packages (e.g., Mathematica)• Customized versions of generic packages (e.g., Cornell's payroll system)• Bespoke (customized) (e.g., IRS internal system)• Demonstration, prototype, research, ...Who is the client for each category of product?15CS 501 Spring 2005Previous Experience (Yours)Your background• Biggest program that you have written?• Biggest program that you have worked on?• Biggest project team that you have been part of?• Longest project that you have worked on?• Most people who have used your work?• Longest that your project has been in production?16CS 501 Spring 2005ObservationsMost software development is by teams• Effectiveness of team determines successMost large software projects are built on older ones• It is rare to start a new suite of programs from scratch• Building on the work of others is a fundamental skill of software development17CS 501 Spring 2005Observations about Big Projects•A CS 501 project is about 0.3 person/years. A big project may be 100 to 1,000+ person years.•Every important program is written by many people, who are constantly


View Full Document

CORNELL CS 501 - Introduction to Software Engineering

Documents in this Course
Quiz 2

Quiz 2

2 pages

Usability

Usability

31 pages

Quiz 1

Quiz 1

2 pages

Stulba;''

Stulba;''

33 pages

Load more
Download Introduction to Software Engineering
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Introduction to Software Engineering and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Introduction to Software Engineering 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?