Welcome to Modeling | Modeling News | Modeling Videos | Latest Modeling Trends


Tuesday, November 13, 2007

Introducing the Unified Modeling Language into the Information Systems Curriculum

The Information Systems undergraduate program at Cleveland State University (CSU) has adopted the Unified Modeling Language (UML) as the tool for defining a system model through out the development process. This paper discusses the revised CSU curriculum, the use of UML as a common tool to unify several aspects of system development and implementation, and the way in which this approach replaces traditional software development tools. In general, the current CSU curriculum matches the IS 2002 curriculum model in which the implementation of database systems is a continuation of the analysis and logical design course. At CSU, to simplify course scheduling issues, students may take either course first or both at the same time, compromising the IS 2002 suggested prerequisite structure. Our teaching approach to this academic scenario is presented, as is our teaching methodology. Several examples are shown, including the use of tools such as Rational Rose, MS-Access, and Oracle.

In 1998 the Information Systems curriculum at Cleveland State University (CSU) underwent a major renovation, based in large part on the IS '97 (Davis, 1997) model curriculum, and has recently undergone review based on the IS 2002 report (Gorgone et al., 2002). Our goal at CSU is to prepare our students to play an effective role in entry level information systems positions, and to give them a solid foundation that allows them continued career growth. The flexibility of the IS 2002 model curriculum fits well with that goal. The current structure of the CSU IS curriculum is shown in Figure 1 ; the diagram also shows how each of our courses compares with the corresponding IS 2002.X course model; for instance our Systems Analysis Methods (IST 321) closely matches the IS 2002.7 course suggested in (Gorgone et al., 2002).

In addition to business courses and general education courses, the Information Systems program requires students to take a core of eight computer-based courses and three elective courses. The core covers programming, systems analysis, database development, networks, and the relationship between information systems and business. Electives include subjects such as web site development, knowledge management, project management, advanced programming, emerging technologies, etc.

In addition to the fact that the CSU program does not include quite as many courses as the IS 2002 program, there are differences in course prerequisites, particularly those relating to the systems analysis and database implementation courses. Many of our students (possibly a majority) are part-time students, which means that they take a few courses each semester and cannot fit into any type of "lock-step" program. As a result, we try to avoid locking students into long chains of course prerequisites since doing so could extend their degree completion time by a year or more. One consequence of this situation is that for many of the courses beyond the first few semesters, we cannot control the order in which students take courses. In particular, we cannot predict whether students will take the systems analysis course before the database course or vice versa. Given this situation, we have structured each course so that, in addition to teaching about the courses main topic, we also show students how the topic fits into the system development process.

In the initial redesign of the program (circa Fall, 1998), we identified two goals to emphasize across the curriculum: (a) placing emphasis on problem solving strategies and critical thinking; and (b) identifying and using best-practice and state-of-the-art techniques in problem solving. At that time, our general approach to system development was structured, and except for obvious knowledge dependencies, we treated most courses as independent of each other.

Over the next few years (the early 2000's) it became clear that we should be teaching object-oriented systems development and several changes were made to the curriculum. First we adopted a third goal: (c) presenting the entire systems development effort in a common, uniform, and unambiguous framework. Today, IS courses embrace the object-oriented model, and traditional structured development tools such as entity-relationship diagrams, data flow diagrams, and structure charts (Ramakrishnan and Gehrke, 1998; Yourdon, 1989; Page-Jones, 1988) have been replaced by UML diagrams. This has proven to be highly beneficial for several reasons. The UML tool provides a single complete and extendable tool for representing the entire life cycle. Although mastering the whole range of UML diagrams may seem overwhelming for the novice student, by presenting different parts of UML in different courses we make the learning process manageable, and students respond well to learning about specific types of diagrams. More importantly, the repetition of the diagrams in different IS courses has a remarkable effect in helping students to understand, review, and accept the systems development effort as a continuous and complex process. Rather than associating UML diagrams with just analysis and design, they are exposed repeatedly to the same tool in different parts of the system life cycle.