Today web applications are the most important type of software applications. This textbook
shows how to design and implement them using a model-based engineering approach that covers
general information management concepts and techniques and the two most relevant technology
platforms: JavaScript and Java. The book provides an in-depth tutorial for theory-underpinned
and example-based learning by doing it yourself supported by quiz questions and practice
projects. Volume 1 provides an introduction to web technologies and model-based web application
engineering discussing the information management concepts of constraint-based data validation
enumerations and special datatypes. Volume 2 discusses the advanced information management
concepts of associations and inheritance in class hierarchies. Web apps are designed using UML
class diagrams and implemented with two technologies: JavaScript for front-end (and distributed
NodeJS) apps and Java (with JPA and JSF) for back-end apps. The six example apps discussed in
the book can be run and their source code downloaded from the book's website.