CS7081 - Enterprise Software Components and Systems Development (2017/18)
|Module specification||Module approved to run in 2017/18|
|Module title||Enterprise Software Components and Systems Development|
|Module level||Masters (07)|
|Credit rating for module||20|
|School||School of Computing and Digital Media|
|Total study hours||100|
|Running in 2017/18||
The module is concerned with the study and application of tools and techniques that enable the development of internet based information systems. A large proportion of contemporary applications need to run on the Internet, whether web-based, mobile, desktop or embedded. The architecture of these systems need to be designed in a way to enable component reuse with the full range of systems. Java enterprise framework will be studied in the course that facilitate reuse and elegance of design through the use of MVC pattern, as well as enterprise quality technologies such as Enterprise Java Beans and Web Services.
This module aims to
i) give students an understanding of the concepts, mechanisms and processes involved in creating internet and web based applications;
ii) equip students with an understanding of the concepts and design of software architectures;
iii) provide knowledge and training to design and implement software components for enterprise systems;
iv) prepare students for Oracle Certified Java Enterprise Web Developer and/or Oracle Certified Java Business Component Developer exam.
• Design Patterns and Software Architecture of Java Enterprise Systems
• Web Component Model in Java Enterprise Framework
• Servlet Technology
• Java Server Pages
• Java Server Faces
• EJB Component Model in Java Enterprise Framework
• Sessions and Session EJBs
• Persistence and Entity Beans
• Transaction Management
• Java Messaging Service and Message EJBs
• Service Oriented Architecture in Java Enterprise Framework
• SOAP and RESTful Web Services
• Security in Java Enterprise Systems
• Legal, social, ethical and professional issues pertaining to online operation and component-based software systems development
Learning and teaching
The module will be taught by a mixture of lectures and workshops.
The lectures (24 hours) will be used to introduce the various concepts and principles of the module and their strengths in applications.
Lectures will be followed by workshops (24 hours). The workshops will afford students the opportunity to work on exercises related to previously taught material. The students will be able to present previously completed exercises for comment from the lecturer and other students.
Students will be expected to spend time on unsupervised work, for example, private study of problem sheets, in the preparation of coursework (156 hours). A framework will be put in place to encourage disciplined learning through student self-awareness of progress in volume of work, understanding, attendance and punctuality.
On completion of the module the student should be able to:
LO1: Explore the nature of technological research and development
LO2: Evaluate different methods and techniques and apply them to the design of software products, services and applications for the Internet with regard to security, robustness, performance and scalability
LO3: Develop a working knowledge of the key APIs included in Java Enterprise framework and use them to develop enterprise applications which incorporate third-party products such as Web servers, application servers, databases, messaging service providers and Web services
LO4: Demonstrate professional skills in using enterprise tools for developing software components and systems
LO5: Assess the professional, legal and ethical issues associated with online operation and address them adequately in enterprise setting
LO6: Evaluate the legal, social, ethical and professional issues in the context of enterprise component and system development
LO7: Confidently attempt the Oracle Certified Java Web Component Developer and/or Oracle Certified Business Component Developer exam for obtaining professional certification
The assessment is carried out through coursework and in-class test. The coursework focuses on creating a well-architected internet application. The students will be required to create a web application which includes a database for persistent storage of information and incorporates a minimal fixed set of key synchronous components and technologies taught in the course such as servlets and enterprise java beans, as well as an optional choice of additional synchronous components and technologies such as JSP and JSF and asynchronous components and technologies such as messaging beans and Web services (LO1-LO6). The system will be documented including test plans and user, developer and/or administrator documentation, and will be demonstrated to the teaching team. The in-class test will be a preparation for the certification and will be modelled after the Oracle Java Enterprise certification exams (LO2-L4, LO7).
- JENDROCK, E., CERVERA-NAVARRO, R., EVANS, I., GOLLAPUDI, D., HAASE, K., MARKITO, W. & SRIVATSA, G. (2013) The Java EE 7 Tutorial. Available from: https://docs.oracle.com/javaee/7/tutorial/. (Core reference)
- PAUL R. ALLEN, JOSEPH J. BAMBARA. OCM Java EE 6 Enterprise Architect Exam Guide. McGraw-Hill Osborne; 3rd edition (2014). ISBN: 0071826785CHARLES LYONS. OCEJWCD Study Companion: Certified Expert Java EE 6 Web Component Developer. Garner Press, 3rd edition (2012). ISBN: 0955160340
- KATHY SIERRA, BERT BATES. Head First EJB: Passing the Sun Certified Business Component Developer Exam. O'Reilly Media; 1st edition (2003). ISBN: 0596005717
- BRYAN BASHAM, KATHY SIERRA and BERT BATES. Head First Servlets and JSP: Passing the Sun Certified Web Component Developer Exam. O'Reilly Media; 2nd edition (2008). ISBN: 0596516681