CS 6063 (16038) -Software Engineering I (Version 2) Fall 2018

Transcription

CS 6063 (16038) - Software Engineering I(Version 2)Fall 2018Instructor's name & titleProfessor Strauss, CCPDepartment of Computer Science and EngineeringNYU - Tandon School of EngineeringPhoneOffice2MT 10.048{646) 997-3308e-mailOffice hour (2MT 10.048)fs817@nyu.eduWednesday 11:00 - noon{or by appointment)Graduate Assistant/GraderGauri Sarodegss383Course InformationCourseGraduatelevel credits3.0Class times and locationOnline (TBD)PrerequisitesGraduate status1

ObjectivesTo learn software-engineering techniques that can be applied to practicalsoftware projects.a) Understanding ofthe full "software engineering" effort andalternative approachesb) Technical emphasis on requirements, design, development,measurement, and modelingc) Understanding management issues including software costestimating and project managementd) Understanding process applicable to the softwaredevelopment/integration cycle and maintenancee) Impact oftechnology changes on quality and developmentactivitiesMethods of InstructionThe primary method of instruction is lectures supplemented with relatedassignments, readings, and projectsWeekly Lecture Hours: 3Hours: 0I Weekly Lab Hours: O I Weekly RecitationGeneral ContentThe course emphasizes the full software-engineering approach withalternative approaches. Technical emphasis is on requirements, design,development and modeling. Management issues include software costestimating and project management. Understanding the processesapplicable to the software development/integration cycle andmaintenance along with technology changes on quality anddevelopment activities is highlighted.Project PresentationEach project team is required to deliver a formal in class presentationdescribing the technical details and processes (covering the system lifecycle from idea generation to requirements elicitation through design2

documentation). Presentation delivery, format, and content should bebased on principle of a professional presentation. Presentationworksheets will be distributed faculty and peer evaluation. All teammembers are expected to participate in the presentation.Textbooks, Readings, materialsTextbookR.S Pressman, Software Engineering, A Practitioner's Approach,Seventh Edition, McGraw HillPressman - URL - http://www.mhhe.com/pressmanSupplementary readingsKruchten,Philippe - The Unified Process -An Introduction, AddisonWesley Longman, New York, 1999.Rubin, Kenneth - Essential Scrum, Addison Wesley, New York, 2013Cohn, Mike - Succeeding with Agile, Addison Wesley, New York, 2013Humphrey Watts S., Introduction to the Personal Software Process, SEISeries in Software Engineering, Addison Wesley Longman, New York,1997.The instructor may distribute additional material.Course Policies(Additional Policies posted at NYU Classes)Attendance/LatenessStudents are expected to attend lectures. Attendance is required. Incase of absence, the student is responsible for the material coveredduring that lecture. Absence from exams will be accepted only if thestudent notified the instructor or Academic Affairs prior to the exam3

with an acceptable reason. A make-up exam will be given only for theexams not for quizzes.Class participationClass participation includes actively engaging in class dialog anddiscussions and formal oral presentations.Exams and AssessmentsExaminationsA midterm exam and final exam will be given as shown on the schedule.The midterm exam covers material from the beginning of the semesterup to the exam. The final exam concentrates on material from themidterm to the end of the course. However, because the foundation forthe material covered in the second half of the course is based on thepervious material, the final exam should be viewed as beingcomprehensive with emphasis on material covered during the secondhalf of the semester. Exam questions are based on material from thetext, handouts and lectures.Systems ProjectAn essential requirement of this course is the systems project. Virtuallyall analysis and design activities are carried out in project teams, orgroups, in which communication and cooperation are vital to success.The group project is intended to give students experience in performingsystems development activities as part of a team.The TA/Grader and I will be available for consulting with groups at allstages of the project. Do NOT fall behind! The project will be dividedinto milestones. The milestones are in the course schedule.Academic dishonesty (Reference NYU and Poly Policies)Plagiarism, cheating, sharing of examination answers, submitting workdone by others as your own, and all other forms of deception proscribedin University rules are forbidden. For the sake of your own dignity andself-esteem, it is better to get a low grade than to engage in dishonesty.See postings on NYU Classes4

Grading: Weights and ScalesGradesGrades are based on two exams (midterm and final), class participation,and assignments. All assignments must be turned in to receive apassing grade. The weighing given to each of these factors is as follows:Midterm ExaminationFinal ExaminationProjectPresentationResearch Papers/Homework30%30%30%5%5%Homework will be assigned and marked. Performance on the homeworkwill be used to assess grades for students who are on the boundary of agrade. Homework will be discussed in class. Class participation is alsoconsidered as part of the grade.Performance statusDuring the class lectures, the study material shown in the schedule willbe discussed, including the questions at the end of assigned chapters. Aportion of the grade will be based on answering these questionsWithdrawalYou must formally withdraw from this course to avoid a failing grade.Failure to attend class or to submit work is not enough. Informationabout formal withdrawal is contained in the Schedule of Classes. Afterthe last day to withdraw, requests that must be approved by theinstructor. They will be approved upon presentation of convincingevidence that unforeseeable conditions beyond the students controlprevent him or her from devoting sufficient time to meeting therequirements of the course.Facilities and ResourcesComputers availability & policiesAll students are required to have a computer account. The SoftwareEngineering laboratory is located RH 2235

Course Calendar and ScheduleWeekDateChapterTopicsAssessment {due date)HomeworkProjectAssignment#1Project 2Wee22, 3ProcessesAlternativeProcesses3Week35, 6Requirementsand Analysis4Week47, 8, 9,Appendix 1Modeling withUML5Weeks11, 23Design withUML6Week6UMLImplementwith UML7Wee7MidtermExamination8Week817,18,19Testing withMetricsAssignment#3,#49Week9Open Sources&COTSTesting withMetricsOKR10Week1023,25,26Estimating &Sizing11Week1127,28Scheduling ificationOKRQ/A&ConfigurationManagement6

13Week1314, 15, 16, ndExaminationSecondExaminationAnalysisOKRYou should take the practice quizzes that cover each appropriate chapter(at the above URL)Course Outcomes:1) Knowledge of different software development approaches.2) Knowledge of modeling techniques3) Knowledge of software development life cycle activities4) Experience in sizing and costing software intensive systems5) Major management strategies affecting development6) Broad knowledge of analysis and design techniques7) Importance of UML tools in modern systemsProfessional Ethics: Collaboration is not acceptable on individualassignments. As a minimum, a zero grade will be assigned to the effort.Software Engineering Laboratory is located on the second floor of RogersHall.7

A midterm exam and final exam will be given as shown on the schedule. The midterm exam covers material from the beginning of the semester up to the exam. The final exam concentrates on material from the midterm to the end of the course. However, because the foundation for the material covered in the second half of the course is based on the