KENNESAW STATE UNIVERSITY GRADUATE COURSE PROPOSAL OR REVISION, Cover Sheet (10/02/2002) Course Number/Program Name CS 6030 Agile Software Design & Modern Languages / MS-CS Department Computer Science Degree Title (if applicable) M.S. Computer Science Proposed Effective Date Fall, 2012 Check one or more of the following and complete the appropriate sections: X New Course Proposal Course Title Change Course Number Change Course Credit Change Course Prerequisite Change Course Description Change Sections to be Completed II, III, IV, V, VII I, II, III I, II, III I, II, III I, II, III I, II, III Notes: If proposed changes to an existing course are substantial (credit hours, title, and description), a new course with a new number should be proposed. A new Course Proposal (Sections II, III, IV, V, VII) is required for each new course proposed as part of a new program. Current catalog information (Section I) is required for each existing course incorporated into the program. Minor changes to a course can use the simplified E-Z Course Change Form. Submitted by: Approved Hisham Haddad, CS Dept. Faculty Member 9/30/2011__ Date Not Approved Department Curriculum Committee Date Approved Approved Approved Approved Approved Approved Not Approved Department Chair Date School Curriculum Committee Date School Dean Date GPCC Chair Date Dean, Graduate College Date Not Approved Not Approved Not Approved Not Approved Not Approved Vice President for Academic Affairs Date Approved Not Approved President Date KENNESAW STATE UNIVERSITY GRADUATE COURSE/CONCENTRATION/PROGRAM CHANGE I. Current Information (Fill in for changes) Page Number in Current Catalog Course Prefix and Number Course Title Credit Hours Prerequisites Description (or Current Degree Requirements) II. Proposed Information (Fill in for changes and new courses) Course Prefix and Number __CS 6030_______________________ Course Title __Agile Software Design & Modern Languages _ Credit Hours 3-0-3 Prerequisites Program Admission Description (or Proposed Degree Requirements) This course focuses on Agile software development process and methodologies. It covers an overview of programming languages including scripting languages. The objective of this course is to provide students with knowledge and understanding of the agile methodologies used for software development. Students will form good understanding of the various types of programming languages including scripting languages. . III. Justification This course is part of the core requirements of the MS-Computer Science program. This course focuses on the learning objectives associated with developing breadth in knowledge of computer science, with topics in the modern area of mobile computing. This course is a prerequisite for CS 7030 Mobile Device Application Development and CS 7060 Mobile Intelligence. This course contributes to the following Program Objectives: P.L.O. 1: Building on their undergraduate education in computing, students will master advanced concepts across a targeted breadth of computer science study. As a prerequisite for two electives for more advanced study: P.L.O. 2: Students will be required to demonstrate that they have in-depth knowledge of at least two fields within computer science. IV. Additional Information (for New Courses only) Instructor: Dr. Hisham Haddad Text: Agile Software Development, Principles, Patterns, and Practices, By Robert C. Martin Prentice Hall; 1st edition, 2002 ISBN-10: 0135974445. Prerequisites: Program Admission Objectives: Students will be able to explain the Agile software development process and methodologies. Students will explain and use modern/current programming language. Students will explain and use modern/current scripting languages Instructional Method - Classroom lectures Method of Evaluation - Quizzes, tests, and homework assignments. V. Resources and Funding Required (New Courses only) Resource Amount Faculty Other Personnel Equipment Supplies Travel New Books New Journals Other (Specify) $0 $0 $0 $0 $0 $0 $0 $0 TOTAL $0 Funding Required Beyond Normal Departmental Growth $0 VI. COURSE MASTER FORM This form will be completed by the requesting department and will be sent to the Office of the Registrar once the course has been approved by the Office of the President. The form is required for all new courses. DISCIPLINE COURSE NUMBER COURSE TITLE FOR LABEL (Note: Limit 16 spaces) CLASS-LAB-CREDIT HOURS Approval, Effective Term Grades Allowed (Regular or S/U) If course used to satisfy CPC, what areas? Learning Support Programs courses which are required as prerequisites Computer Science CS 6030 Agile SD&Mod Lan 3-0-3 Fall 2012 Regular APPROVED: ________________________________________________ Vice President for Academic Affairs or Designee VII Attach Syllabus CS 6030: Agile Software Design & Modern Languages Course Description and Objective: This course focuses on Agile software development process and methodologies. It covers an overview of programming languages including scripting languages. The objective of this course is to provide students with knowledge and understanding of the agile methodologies used for software development. Students will form good understanding of the various types of programming languages including scripting languages. Prerequisites: Program Admission. Textbook and Resources: Software Engineering: A Practitioner’s Approach, 5th Edition, by Roger S. Pressman. McGrawHill Education, NY, 2001, ISBN: 0-07-365578-3. Design Patterns: Elements of Reusable Object-Oriented Software, by E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Addison-Wesley, Reading 1995, ISBN: 0-201-93361-2. Instructor: Dr. Hisham Haddad Policies: (specific to the instructor) Class Assignments: All assignments and homework are due at the beginning of the class period on the due date. Late assignments may be penalized at the rate of 10% per day (including weekend days). Quizzes: Un-announced quizzes may be given during the course at the beginning of the class. Usually, a quiz covers all materials presented in the previous lecture. Students are encouraged to review the last lecture just before coming to class. Points will vary from one quiz to another. Exams: There will a Mid-term exam during the 8th week and a Final exam as scheduled. Exact dates and times of exams will be announced in class. Make-up Exams and Late Penalty: Make-up exams WILL NOT BE GIVEN except under unusual circumstances and satisfactory written justification. Make up exam must be taken within one week of the original scheduled date or as arranged by the instructor. The decision whether to give a make up exam rests with the instructor. Passing Grade: Assignments and exams are required parts of the course and must be satisfactorily completed to pass this course. The student must have a passing performance on each part. A failing grade on a component may result in a failing grade in the course. Required Effort: For every hour in class, the student is expected to spend at least 2 to 3 hours of serious effort outside the class for studying and working class assignments. Depending on background and preparedness, some students may have to spend more effort. Attendance: Class attendance is mandatory and is a required part of the course. Withdrawal Policy: The University withdrawal policy is followed in this course. The last day to withdraw the course without academic penalty is <Enter Date Here>. Ceasing to attend class or oral notice thereof DOES NOT constitute official withdrawal and will result in the rendering of a grade of “F” for the class. Student wishing to withdrawal after the scheduled change period (add/drop) must obtain and complete a withdrawal form from the Academic Services Department in the Registrar’s Office. Tentative Course Schedule: (subject to change) The following course outline delineates the topics to be addressed during the course. Additional material may also be covered in the class. Weeks 1, 2, 3 4, 5 6 7, 8 Topics Introduction to Software The product Software characteristics Software applications Software myths The process The models Introduction to OOP Classes and objects Methods and attributes Messages Inheritance, encapsulation and polymorphism Identifying OOP Elements (object, classes, attributes, and methods) OOP Project Management (process framework, metrics, estimation, scheduling, tracking) Software Project Management and Metrics Project management concept Project components Project metrics Review and Midterm Exam Project Planning and Risk Analysis Planning Objectives 9 10, 11 12, 13 14 15 Scoping concept Resources Estimation concept and tools Risk concept Risk factors Risk identification Risk projection Risk mitigation Project Scheduling and Tracking Scheduling concept People and effort (lines of source code, effort equation) Tasks (defining the tasks, selecting the tasks, task refinement) Scheduling charts (timeline charts, tracking charts) Error tracking Project plan Design Patterns Understanding the concept of design patterns The benefits of using design patterns How to select and use design patterns Cataloging design patterns Examples of design patterns Software Quality Assurance and Configuration Management Quality concept Quality assurance Software reviews Software reliability Quality standards Software configuration management (concepts, tasks, and standards) Project Presentations Research Paper Presentations Final Exam Assessment: Final grades are based on performance in class assignments, quizzes, exams, and attendance as indicated below. Quizzes Class Project/Paper Attendance and Participation Midterm Exam Final Exam 10% 25% 25% 10% 30% The instructors reserve the right to change these values depending on the over all class performance and/or extenuating circumstances. Grade Evaluation: Final letter grades are determined based on the following grading scale: A B C D F 90 - 100% 80 - 89% 70 - 79% 60 -69% Below 60% Lecture Notes: Lecture notes will be presented and discussed in class. Student will be responsible for all materials presented in class, including notes, handouts, and assignments. In case the student misses a class, it is his/her responsibility to contact the instructor and obtain information about the material presented in that class. Assignments: Class assignments and homework will be provided in class. Student will be give sufficient time to complete the assignment. See section Policies for more information about class assignments. Project Requirements: Project requirements will be determined upon project selection. Class size and students' background and interests will be considered in selecting the appropriate project for the semester. Projects details and will be provided and discussed in class. Academic Integrity Statement: Every KSU student is responsible for upholding the provisions of the Student Code of Conduct, as published in the Undergraduate and Graduate Catalogs. Section II of the Student Code of Conduct addresses the University's policy on academic honesty, including provisions regarding plagiarism and cheating, unauthorized access to University materials, misrepresentation and falsification of University records or academic work, malicious removal, retention, or destruction of library materials, malicious/intentional misuse of computer facilities and/or services, and misuse of student identification cards. Incidents of alleged academic misconduct will be handled through the established procedures of the University Judiciary Program, which includes either an "informal" resolution by a faculty member, resulting in a grade adjustment, or a formal hearing procedure, which may subject a student to the Code of Conduct's minimum one semester suspension requirement. Students are encouraged to study together and to work together on class assignments and lab exercises; however, the provisions of the STUDENT CONDUCT REGULATIONS, II. Academic Honesty, KSU Undergraduate Catalog will be strictly enforced in this class. Frequently students will be provided with “take-home” exams or exercises. It is the student’s responsibility to ensure they fully understand to what extent they may collaborate or discuss content with other students. No exam work may be performed with the assistance of others or outside material unless specifically instructed as permissible. If an exam or assignment is designated “no outside assistance” this includes, but is not limited to, peers, books, publications, the Internet and the WWW. If a student is instructed to provide citations for sources, proper use of citation support is expected. Additional information can be found at the following locations. http://www.apa.org/journals/webref.html http://www.lib.duke.edu/libguide/citing.htm http://bailiwick.lib.uiowa.edu/journalism/cite.html http://www.cas.usf.edu/english/walker/papers/copyright/ipdummie.html Student Evaluation of the Course: A standard questionnaire will be administered during the last two weeks of the semester in all classes. Additional questions developed by the college or instructor(s) may be included as well. It is important that each student provide meaningful feedback to the instructor(s) so that changes can be made in the course to continually improve its effectiveness. We value student feedback about the course, our teaching styles, and course materials, so as to improve our teaching and your learning. At a minimum, the following two questions will be asked: 1) Identify the aspects of the course that most contributed to your learning (include examples of specific materials, exercises and/or the faculty member's approach to teaching and mentoring), and 2) Identify the aspects of the course, if any, that might be improved (include examples of specific materials, exercises and/or the faculty member's approach to teaching and mentoring). Disability policy. Kennesaw State University provides program accessibility and reasonable accommodations for persons identified as disabled under Section 504 of the Rehabilitation Act of 1973 or the Americans with Disabilities Act of 1990. A number of services are available to help disabled students with their academic work. In order to make arrangements for special services, students must visit the Office of Disabled Student Support Services (770-423-6443) and arrange an individual assistance plan. In some cases, certification of disability is required. It is the student’s responsibility to take care of this at the beginning of the semester.