COMPUTER SCIENCE DEPARTMENT COURSE ASSESSMENT FORM Required Core Course: CMPS 342 Course Title: Database Systems Instructor: Huaqing Wang Quarter: Fall 2010 (1). Outcomes that CMPS 342 Will Achieve Database system is taught in every computer science and MIS department. In the computer science department of CSUB, the course is designed to have the following outcomes: (3b.) An ability to analyze a problem, and identify and define the computing requirements and specifications appropriate to its solution. (3c.) An ability to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs. An ability to understand the analysis, design, and implementation of a computerized solution to a real-life problem. (3e.) An understanding of professional, ethical, legal, security, and social issues and responsibilities. An ability to understand and appreciate the ethical and societal issues related to computers and computer networks. (3f.) An ability to communicate effectively with a range of audiences. An ability to write a technical document such as a software specification white paper or a user manual. (3j.) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices. (2) How the Course Is Designed Achieve Outcomes To achieve those outcomes listed above, the instructor has designed the course in the way of combining theoretical topics and practical knowledge together, and the students have worked REALLY hard from the beginning to the end of the class. The instructor gives the lectures on the following topics: 1. Conceptual data modeling method: Entity-Relationship model which is the commonly used model in IT world to model information of any organization. 2. Relational data model, it concepts and theoretical queries languages (Relational Algebra, and Tuple and Domain Relational Calculus, data constraints. The theories of relational model are the based of most database management system. 3 SQL: The structured database query language which is implemented by most of commercial database management systems. 4. Oracle Database Management System, its SQL/Plus and PL/SQL. We use Oracle since it is the most popular database management system, and free to California state university system. 5. Database Connectivity from Java and Microsoft Studio. We look at the two different database connectivity methods, compare them to find out similarities and differences between these two. Along with lectures, all students design and implement their own real-life application software in the following 5 phases/steps: 1. Conceptual database design: Investigate companies/organizations, and model the data/information in E-R model introduced in the lectures. 2. Logical database design: convert the conceptual database into relational database. Design and implement queries in relational algebra and calculus. 3. Physical database design: Implement logical database in Oracle Database Management System by creating tables, and create views, constraints, queries in SQL. 4. Programming on server-side: Create stored procedures, functions, and triggers. 5. Design and implement client software: Use either C# or Java language to design a local form-based or a web-based graphical user interface system. At the end of the class, each student has 1. Two oral presentations. One for business investigated and conceptual database designed for the business. In the second presentation, students present the final phase of the project, the user-end software which manipulate the data on the backend. 2. A written documentation with 50 -- 100+ page. The document records the design and implementation: models, languages and tools used. 3. Seen 15 to 20 different database designs, and participated discussions on how to apply design methodologies to different businesses. (3) Assessment Tools and Assessment Results Students work on real-life computer software project, picked by themselves. They work step-by-step on their projects and documents all phases from the very beginning to the end of the quarter. I think the 3b, 3c, 3f and 3j can be assessed through the project documents which include the theoretical, practical and programming parts. Also the students will given a midterm which is heavily on theoretical topics. For this assessment, I will assess the outcomes of the course based on students' projects. For future assessments, I could add some embedded questions to their projects, and also use the midterm scores to assess the outcomes. Does the course achieved the outcomes? I pick up a couple of students' final statements in their written documents, and present here. To access the entire documents for most of the students’ projects, please visit the following website: http://www.cs.csubak.edu/~wang/CS342/Student_Project/2010/ Here are three students' final statement in their conclusion part of their projects. Student 1: "Even though this project is small and simple, it is a great example to real-world application of a database. This project is a great starting foundation in the field of managing a database. This class was a great experience and has pushed me to strive for knowledge. Topics that I learned are as followed: what a database is, database modeling (entities, attributes, constraints), relational algebra, relational calculus, SQL commands, creating tables into the database, stored procedures, implementing the database into visual studios with C#, and creating a graphical user interface (which is something that I’ve never done before). Student 2: "This project was my first real experience at a full application and all that is entailed in creating even a simple one. This experience has given my great skills, maybe not particularly coding in c# or building a database, but as to the steps to attack a project and make leaps towards building my own skill set for the real world. I plan on spending the next few months continuing the program so that i know that my knowledge is set in my head for future use and so I can build in the foundations I have learned in the class." Student 3: "This project was conceived out of a need to automate the day to day operations in the Public Works Department at the City of Delano. I had been approached by the Department Head to assist them and develop an application that will allow their staff to keep track of their daily activities. This project has served as a very powerful mile stone. I will now begin to migrate this application to Microsoft SQL Server and integrate it with ESRI Arc Server. It is my hope that I can provide a rich internet application that allows its users to work smarter." Huaqing Wang has been teaching the courses for over 20 years at CSUB. Based on the comments from former graduates and employers of local companies, and from projects designed implemented and documented by students of this year and years before, he conclude the course has achieved its four(3b, 3c, 3f, 3j) of its five projected outcomes very well. Based on the department guidelines, the outcomes are assessed and the results are summarized below: Outcome: 3b Weighting Factor: 3/5 Outcome Content Tested (ACM Key): IM Method: First phase of Student project Results: E(xceeds) Outcome: 3c Weighting Factor: 5/5 Outcome Content Tested (ACM Key): IM Method: Evaluation of student entire document, software implemented on bother server and client Results: E Outcome: 3e Weighting Factor: 2/5 Outcome Content Tested (ACM Key): HC Method: Not tested Results: F Outcome: 3f Weighting Factor: 2/5 Outcome Content Tested (ACM Key): IM Method: Evaluated based on two oral presentations and written document Results: E Outcome: 3j Weighting Factor: 3/5 Outcome Content Tested (ACM Key): IM Method: evaluated based on the midterm exam, and phase II of the project. Results: M (4) Outcomes Failed and Proposed Solutions To achieve the outcome 3e, I have invited Mr. Tom Van Matre, Division Chief, Systems Auditor-Controller-County Clerk of Kern County, to give a talk to my class. Mr. Van Matre talked about the professionalism, job opportunities at Kern County. In my lectures, I have talked about the security issue. However, the ethical and societal issues have not covered enough. Therefore, I think the course failed in 3e. The reasons for the failure of 32 are 1. The text used has no part contributed to the professional, ethical, and societal issues. 2. The contents covered in the class, and the intensity of completing Projects give little room for me, to address ethical and societal issue and to give student reading assignment to study those issues. 3. The department has required computer science majors to take Philosophy 316 which covers professional, ethical and societal issues. Due the reasons listed above, I will propose the followings to the department in future offerings: 1. Cover contents as it is now, but change 3e to cover less part (for example, cover professionalism only), due to reason 1 listed above. 2. Remove the outcome 3e from CMPS 342 due to reasons 2 and 3. (5) Supporting Documents 1. Students Projects (not including programs) : 16 files accessible at http://www.cs.csubak.edu/~wang/CS342/Student_Project/2010/ 2. Project Requirements/Student Assignment: Accessible at http://www.cs.csubak.edu/~wang/CS342/342_phase1.txt http://www.cs.csubak.edu/~wang/CS342/342_phase2.txt http://www.cs.csubak.edu/~wang/CS342/342_phase3.txt http://www.cs.csubak.edu/~wang/CS342/342_phase4.txt http://www.cs.csubak.edu/~wang/CS342/342_phase5.txt 3. A letter from Mr. Tom Van Matre on CMPS 342 class: Mr. Van Matre has hired 8 of out graduates, his appreciation of CMPS 342 could be used to indicate what students have achieved in the courses. The letter is accessible from http://www.cs.csubak.edu/~wang/CS342/Student_Project/2010/letter_from_Tom_VanMatree