Abstract
Software modeling plays an important role in software engineering education. There are a variety of modeling techniques; some are intuitive and quite accessible to novices, while some are highly sophisticated and attract theory oriented students and researchers. Thus, educators have freedom in selecting appropriate models in accordance with the level and the disposition of students.
In this chapter, we show that teaching multiple software modeling techniques from a unified viewpoint is a good way of obtaining balance between the scientific aspect and the practical aspect of software engineering education. At the same time, it is pedagogical to let students notice the difference between different models. Some models, particularly when illustrated as diagrams, look quite similar but such similarity is often misleading. It is emphasized in this chapter that explicitly teaching differences between models is also very important.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aoyama, M., Miyamoto, K., Murakami, N., Nagano, H., Oki, Y.: Design specification in japan: Tree-structured charts. IEEE Software 6(2), 31–37 (1983)
Futamura, Y., Kawai, T., Horikoshi, H., Tsutsumi, M.: Development of computer programs by problem analysis diagram(pad). In: Proceedings of the 5th International Conference on Software engineering, pp. 325–332 (1981)
Griswold, W.G.: Teaching software engineering in a compiler project course. Journal on Educational Resources in Computing (JERIC)Â 2(4) (December 2002)
Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer Programming 8, 231–274 (1987)
Harel, D., Politi, M.: Modeling Reactive Systems with Statecharts. McGraw-Hill, New York (1998)
Hayes, J.H.: Energizing software engineering education through real-world projects as experimental studies. In: CSEE&T, February 2002, pp. 192–206 (2002)
Hecht, M.S.: Flow Analysis of Computer Programs. Elsevier, North Holland (1977)
Jackson, M.: Software Requirements & Specifications: a lexicon of practice, principles and prejudice. Addison-Wesley, Reading (1995)
Magee, J., Kramer, J.: Concurrency – State Models & Java Programs. John Wiley & Sons, Chichester (1999)
Nassi, I., Shneiderman, B.: Flowchart techniques for structured programming. ACM SIGPLAN Notices 8(8), 12–26 (1973)
Tamai, T.: A class of fixed-point problems on graphs and iterative solution algorithms. In: Pnueli, A., Lin, H. (eds.) Logic and Software Engineering. World Scientific, Singapore (1996)
Tamai, T.: How modeling methods affect the process of architectural design decisions: A comparative study. In: Proc. 8th International Workshop on Software Specification and Design (IWSSD 1996), Paderborn, Germany, March 1996, pp. 125–134 (1996)
Tamai, T.: Foundations of Software Engineering, Iwanami Shoten, Tokyo, Japan (2004) (in Japanese)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tamai, T. (2006). A Pedagogical View on Software Modeling and Graph-Structured Diagrams. In: Inverardi, P., Jazayeri, M. (eds) Software Engineering Education in the Modern Age. ICSE 2005. Lecture Notes in Computer Science, vol 4309. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11949374_4
Download citation
DOI: https://doi.org/10.1007/11949374_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-68203-5
Online ISBN: 978-3-540-68204-2
eBook Packages: Computer ScienceComputer Science (R0)