Presentation on theme: "Professor Michael Rung-Tsong LYU 呂榮聰 January 6, 2014"— Presentation transcript:
1 Professor Michael Rung-Tsong LYU 呂榮聰 January 6, 2014 CSCI3100 Software Engineering Course Policies and Procedures (class syllabus)Professor Michael Rung-Tsong LYU呂榮聰January 6, 2014
2 STUDENT EXPECTATIONSa positive, respectful, and engaged academic environment inside and outside the classroom;to attend classes at regularly scheduled times without undue variations, and to receive before term-end adequate make-ups of classes that are canceled due to leave of absence of the instructor;to receive a course syllabusto consult with the instructor and tutors through regularly scheduled office hours or a mutually convenient appointment;
3 STUDENT EXPECTATIONSto have reasonable access to University facilities and equipment for assignments and/or objectives;to have access to guidelines on University’s definition of academic misconduct;to have reasonable access to grading instruments and/or grading criteria for individual assignments, projects, or exams and to review graded material;to consult with each course’s faculty member regarding the petition process for graded coursework.
4 FACULTY EXPECTATIONSa positive, respectful, and engaged academic environment inside and outside the classroom;students to appear for class meetings timely;to select qualified course tutors;students to appear at office hours or a mutual appointment for official academic matters;full attendance at examination, midterms, presentations, and laboratories;
5 FACULTY EXPECTATIONSstudents to be prepared for class, appearing with appropriate materials and having completed assigned readings and homework;full engagement within the classroom, including focus during lectures, appropriate and relevant questions, and class participation;to cancel class due to emergency situations and to cover missed material during subsequent classes;students to act with integrity and honesty.
6 Course ObjectiveTeach the principles of software engineering in the context of contemporary specification, design, coding, testing, evaluation, and maintenance methodologies.Practice software engineering life-cycle with a real-world project which involves current design and development techniques.Introduce modern software system development techniques including software-intensive applications, distributed systems, Web services, software tools, and Extreme Programming.
7 Course Description Details include: This course will focus on state of the art techniques in software design, development, measurement and evaluation.Details include:software requirement engineering,specification techniques,structured design,structured programming,top-down design and development,segmentation and modularization techniques,information hiding,iterative enhancement,design and code inspection techniques,correctness,the software life cycle methodology,extreme programming,software management,software validation and verification techniques,software metrics,software reliability measurement,data collection and analysis.Laboratory experience in applying these techniques will be covered in the development of a modern Web-based mobile software project.
8 Teaching Staff & Schedule Lecturer – Prof. Michael R. Lyu, Office: Rm 927, lyu, Phone:TA – Mr. HU Junjie, Office: Rm 1024, jjhu, Phone:TA – Mr. KANG Yu, Office: Rm 101, ykang, Phone:TA – Mr. LING Guang, Office: Rm 1024, gling, Phone:TA – Mr. ZHANG Qi, Office: Rm 1026, zhangqi, Phone:Course account: csci3100 (http://www.cse.cuhk.edu.hk/csci3100)Tutor Group mail:ScheduleLecture: Monday 10:30am-11:15am (ERB LT)Tuesday 10:30am-12:15pm (LSK LT2)Tutorial: Monday 9:30am-10:15pm (ERB LT)Wednesday 5:30pm-6:15pm (ERB 401)
9 References Major Reference Book: Fundamentals of Software Engineering, Ghezzi, Jazayeri, and Mandrioli, Prentice Hall, 2nd Edition, 2003.Note: 2 copies are reserved in the main libraryOther references includeSoftware Engineering: A Practitioner’s Approach, Pressman, McGraw-Hill, 7th Edition, 2010.Software Engineering, Sommerville, Pearson/Addison Wesley, 9th Edition, 2011.Software Engineering: Theory and Practice, Pfleeger, Prentice Hall, 2nd Edition, 2001.Object-Oriented Software Engineering – Using UML, Patterns, and Java, Bruegge and Dutoit, Pearson/Prentice Hall, 3rd Edition, 2010.Handbook of Software Reliability Engineering, Lyu (ed.), McGraw-Hill, 1996.Other papers.
10 Major Topics Modern support tools and automated systems (git) Basic principles of Quality Assurance, risk reduction, Configuration Management.Quantitative measurement and metricsSoftware reliability modeling and measurementsExtreme Programming & Agile ProgrammingDistributed computing (Web Services, Cloud Computing)HTML5 & Java technologiesMobile apps and toolsOpen Source development environmentMotivation – Why Software Engineering instead of ad hoc techniques?General terminology; Introduction to process modelsRequirements engineering and analysisSpecification techniquesSpecification languagesDesign principlesDesign techniques (Object-Oriented Design, UML)Implementation issuesUnit test issues and toolsSystem integration testing techniques and tools
12 Course Marking Structure HomeworkHomework will be assigned only 3 times in this term, with 5 questions in each assignment.The Mid-term ExamThere will be a closed-book, “open 1-A4-page note” mid-term exam on 4 March (Tuesday) at 10:30am-12:15pm. The mid-term exam details will be announced later. Mid-term papers will be returned individually in specially arranged “Appointment with Michael” day (13/3).The Final ExamThere will be one comprehensive final exam according to the final exam schedule. The final exam is open-book, open-note. It will be a 3-hour exam.In-Class PracticeIn-class practice will be conducted roughly once a week. All participants get bonus. Record for participating the in-class practice will be posted on the course website.Final Course Grade WeightingsYour final grade will be determined by applying a curve which looks for natural breakpoints. This policy recognizes the fact that it is difficult to write exams for which the class will provide a predictable and well-behaved mean and variance. Your raw percentage for the course will be calculated based on the following weights:Homework: 10%Mid-term Exam: 20% 4 March, 2014 (Tuesday) 10:30am-12:15pmProject: 30%Final Exam: 40%Bonus: In-class practice (0.5 project points for each participated practice)
13 “The CSCI 3100 Project”Laboratory of a phased-project will be assigned and conducted according to the schedule in the appended Table. Deliverables of each phase will be graded by the instructor and the tutors.A missing deliverable will receive a score of 0 for that phase assignment. Late submission of a deliverable will be marked and subject to 10-20% grade reduction per day as penalty.A complete package for the project assignment could be picked up through the course account when the project kicks off on 13 January 2014 (next Monday).You may use any computing facility of your convenience to develop the software for the project, but it has to be compatible to the compiler in the CSE department’s computing facility, where you would turn in your program. Demo of your project will be separately arranged on 10 April 2014 (Thursday).Note: Laboratory project assignments are to be worked within the team boundary (4 members in a team). Form a team yourselves and let the tutors know before 10 January 2014 the coming Friday regarding who are the members of your team. Teams for the rest students will be assigned by the instructor and the tutors. No joint work over any technical aspects of the project are allowed between any two teams. Any problem about the project should be directed to the tutors through electronic mails, newsgroup discussions, or tutorial sessions. The reason for this policy is to enforce team separation for proper credits. This project should be considered as if there is only one single team, namely your team, responsible for your whole project development. No plagiarism is allowed regarding any aspect of the project. Violations of this policy will result in a failing grade in the course for all students involved.
14 Project Schedule and Weightings Phase DeliverablesWeightingsDurationsDue Date0. Project Assignment--13 Jan (on Web)1. Initial Design Document10%5 weeks16 Feb (midnight)2. Final Design Document3 weeks10 Mar (midnight)3. Initial Code~2 weeks16 Mar (midnight)4. Final Code and Demo50%10 Apr (full day)5. Final Report and Commented Code20%2.5 weeks27 Apr (midnight)In-class practice bonus7%every weekin classTotal107%13.5 weeks