460-4104/01 – Enterprise Application Development (VEA)
Gurantor department | Department of Computer Science | Credits | 4 |
Subject guarantor | Ing. David Ježek, Ph.D. | Subject version guarantor | Ing. David Ježek, Ph.D. |
Study level | undergraduate or graduate | Requirement | Choice-compulsory |
Year | 2 | Semester | winter |
| | Study language | Czech |
Year of introduction | 2015/2016 | Year of cancellation | 2022/2023 |
Intended for the faculties | FEI | Intended for study types | Follow-up Master |
Subject aims expressed by acquired skills and competences
Attendees will understand how enterprise applications are developed. They will understand and be able to apply patterns, techniques and approaches commonly used for the development of these applications. This area of knowledge includes:
- Definitions of Enterprise applications
- Architectures suitable for Enterprise applications
- Technologies used in creating Enterprise applications
- Use of patterns during enterprise application development
- Presentation layer patterns: MVC, Page Controller, Front Controller, Template View, Transform View, Intercepting Filter
- Domain layer patterns: Table Module, Transaction Script, Domain Model, Inversion of Control and Dependence Injection, Proxy Pattern
- Aspect-oriented programming
- Data layer patterns for data access: Table Data Gateway, Row Data Gateway, Active Record, Data Mapper, Data Access Object
- Behavior patterns for object-relation mapping: Unit of Work, Identity Map, Lazy Load
- Selected structural patterns for object-relation mapping: Serialized LOB, methods of inheritance mapping
- Web services
- Architectural style REST
- Service-oriented architecture
- Architecture of micro-services
- Communication via message passing
Teaching methods
Lectures
Tutorials
Project work
Summary
The course defines the characteristics of enterprise applications and then deals with multi-layer architecture, as one of the most common architectures of enterprise applications. Description and purpose of 3 common layers is discussed with students and the use of design patterns in these layers are described. Furthermore, the subject deals with other used approaches and techniques such as web services, architectural style REST, architecture of micro services and others. Students are also introduced to the technologies of the JAVA platform, and how to integrate and use the mentioned patterns and techniques in these technologies.
Compulsory literature:
Recommended literature:
1. Alur, Deepak, Malks, Dan, Crupi, John. Core J2EE Patterns: Best Practices and Design Strategies Prentice Hall Press, 2013. ISBN 9780133807462.
2. Core J2EE Patterns: Patterns index page [online]. 2001-2002 [cit. 2014-09-05]. Dostupný z WWW: http://www.corej2eepatterns.com
Way of continuous check of knowledge in the course of semester
Tests and homeworks.
E-learning
Other requirements
Knowledge of JAVA technology. Basic knowledge in the field of software engineering.
Prerequisities
Subject has no prerequisities.
Co-requisities
Subject has no co-requisities.
Subject syllabus:
1. Characteristics of the enterprise applications.
2. Used patterns.
3. Intruduction to J2EE.
4. The presentation layer.
5. The middleware layer.
6. The data layer.
7. Security.
8. The dominant application framework.
9. The means for the integration of existing systems.
10. Services for messaging middleware level.
11. Portal solutions.
12. Web Services and SOA
13. Current used frameworks I
14. Current used frameworks II
Conditions for subject completion
Occurrence in study plans
Occurrence in special blocks
Assessment of instruction