Integrating Visual Modeling throughout the Computer Science Curriculum

The purposes of this paper are to (1) promote excellence in computer science by suggesting a cohesive innovative approach to fill well documented deficiencies in current computer science education, (2) justify (using the authors- and others anecdotal evidence from both the classroom and the real world) why this approach holds great potential to successfully eliminate the deficiencies, (3) invite other professionals to join the authors in proof of concept research. The authors- experiences, though anecdotal, strongly suggest that a new approach involving visual modeling technologies should allow computer science programs to retain a greater percentage of prospective and declared majors as students become more engaged learners, more successful problem-solvers, and better prepared as programmers. In addition, the graduates of such computer science programs will make greater contributions to the profession as skilled problem-solvers. Instead of wearily rememorizing code as they move to the next course, students will have the problem-solving skills to think and work in more sophisticated and creative ways.




References:
[1] Alice is a 3D Interactive Graphics Programming Environment for
Windows 95/98/NT built by the Stage 3 Research Group. Retrieved
April March, 20, 2004, from http://www.alice.org/.
[2] Anderson J., & Franceschi, H. (2005). Java 5 Illuminated. Jones and
Bartlett.
[3] BlueJ and interactive Java development environment. Retrieved April,
10, 2004 from http://www.bluej.org/,
[4] Coad, P. & Yourdon, E. (1991). Object-Oriented Design. Prentice Hall.
[5] Collins, C., & Tabrizi, M.H.N, (2007) Using Visual technologies to
promote excellence in computer science education. Proceedings of the
XXI. International Conference on Computer, Electrical, and Systems
Science, and Engineering (CESSE 2007), 21, 83-87,
http://www.waset.org/proceedings/v21/v21-15.pdf.
[6] Deek, F.P., McHugh, J.A., Hiltz, S.R., Rotter, N., & Kimmel, H. (1997).
On the evaluation of a problem-solving and program development
environment. Proceedings of 27th Annual Conference on Frontiers in
Education Conference.
[7] Eckel, B. (2003). Thinking in Java, (Third Ed.), Pearson/Prentice-Hall.
[8] Fayad, M.E., Tsai, W.-T., & Fulghum, M.L. (1996). Transition to
object-oriented software development. Communication. ACM, 39(2),
108-121.
[9] Felleisen, M., Findler, R.B. , Flatt, M., and Krishnamurthi, S. (2003).
How to Design Programs, MIT Press Cambridge.
[10] Guizzardi, G., Pires, L.F., & van Sinderen, M.J. (2002). On the role of
domain ontologies in the design of domain-specific visual modeling
languages. Invited presentation at Second Workshop on Domain-
Specific Visual Languages, 17th Annual ACM Conference on Object-
Oriented Programming, Systems, Languages, and Applications.
Retrieved April 5, 2005 from
http://www.dsmforum.org/events/DSVL02/Guizzardi.pdf).
[11] Holliday, M. & Lugenbuhl, D. (2004). CS1 assessment using memory
diagrams. Proceedings of the 26th SIGCSE Technical Symposium on
Computer Science Education.
[12] Hyde, D.C., Gay, B.D., and Utter D., (1979). The integration of a
problem-solving process in the first course. Proceedings of the 10th
SIGCSE Technical Symposium on Computer Science Education.
[13] Kolesar M.V., Allan V.H. (1995). Teaching computer science concepts
and problem-solving with a spreadsheet" in Proceedings of the 26th
SIGCSE Technical Symposium on Computer Science Education.
[14] Lloyd, B.H., & Gressard, C. (1984). Reliability and factorial validity of
computer attitude scales, Educational and Psychological Measurement,
42(2), 501-505.
[15] Longo, P.J., Anderson, O. R., & Wicht, P. (2002), Visual thinking
networking promotes problem solving achievement for 9th grade earth
science students, Electronic Journal of Science Education, 7(1), 1-50.
http://www.umassd.edu/cas/biology/longo/problem_solving.pdf
[16] Naked Objects Framework. (2002). Retrieved April, 12, 2005 from
http://www.nakedobjects.org/static.php?content=home.html.
[17] Mahmoud, Q.H., Dobosiewicz, W., & Swayne, D., (2004). Redesigning
introductory computer programming with HTML, JavaScript, and Java.
in Proceedings of the 35th SIGCSE Technical Symposium on Computer
Science Education.
[18] Microsoft Visio (2003). Visio Fact Sheet, Retrieved May 1, 2005
http://www.microsoft.com/office/visio/prodinfo/facts.mspx.
[19] Rational Rose. Retrieved April, 20, 2004 from http://www-
306.ibm.com/software/rational/sw-atoz/indexR.html.
[20] Savitch, W. (2005). Problem-Solving with C++: The Object of
Programming. (Fifth Ed.), Addison-Wesley.
[21] Suchan, W.K. and Smith, T.L. (1997). Using Ada 95 as a tool to teach
problem-solving to non-CS majors. in Proceedings of the Conference on
TRI-Ada.
[22] Tabrizi, M., Collins, C., Ozan, E., & Li, K. (2004). Implementation of
Object-Orientation Using UML in Entry Level Software Development
Courses. Proceedings of SIGITE Conference. 128-131.
[23] Ventura, P., & Ramamurthy, B. (2004). Factors that lead to success in
CS: Wanted: CS1 students. no experience required. In Proceedings of
the 35th SIGCSE Technical Symposium on Computer Science
Education.
[24] Wikipedia: Aspect-oriented programming
(http://en.wikipedia.org/wiki/Aspect-oriented_programmig).