Reference no: EM133708324
Some key Issues in Enterprise Computing Architecture
In this assignment, you are to address some key issues in enterprise computing architecture. You will need to demonstrate understanding of the key issues or competence to apply the key principles. The key issues/principles have been introduced by this unit through the textbook, weekly lectures or tutorials/labs. You will need to review the learning materials to address the following questions and prepare to do personal research if necessary.
Note: copying from the unit learning materials or internet resources cannot show your understanding but may incur plagiarism or loss of marks. Thus, you will need to address the following issues in your own words with proper citation and reference. Your work must be appropriately referenced by using Harvard (author-date) referencing style.
Question 1: Transaction types for data persistence
In this unit, you have learnt and practised two types of transaction for data persistence. Students need to describe the two types of transaction by including the following factors:
The names of the two types of transaction
The use case of the two types of transaction
The detailed configuration for using the two types of transaction.
Note for describing point 3, we assume that we have a MySQL database named COIT20259DB.
Question 2: Stateful EJB
Students are to demonstrate comprehensive understanding of Stateful EJB by including the following factors:
Provide a simple but complete example to declare a stateful EJB and invoke the EJB.
Interpret the example.
To support the EJB, you need an application server like GlassFish. Explain why an application server is needed for EJBs.
Interpret how and why application servers treats stateful EJB differently from other types of EJB.
Note: to make your example concise, Java import statements are not required, and you can use any Java SE or Jakarta EE APIs directly.
Question 3: EJB Security
On completion of the lab projects of Week 7, answer the following questions related to EJB security.
What security roles are declared in the project, where are they declared in the project, and what will be authorised by the role declaration?
You have used GlassFish management console to create a user ‘mike' and to assign it to a group ‘Enterprise' and to create another user ‘richard' and to assign it to another security group ‘StaffEnterprise.' Explain how a user is mapped to a security role in the project.
Describe EJB authentication and authorisation when the user ‘mike' run the main() method of the project.
A user ‘stephen,' who should have the access to all the methods of ItemEJB, needs to be declared. Based on lab projects of Week 7, what is the way to make the required declaration.
Question 4: Restful Web Services
Students are to demonstrate a comprehensive understanding of the following questions based on the given code of a Restful web service PhoneResource.
Present four cURL commands, of which each accesses a method of PhoneResource
Both a normal web site and a web service can be accessed by HTTP methods. There must be critical differences between them. Otherwise, it is unnecessary to call it "web service." Students are to describe some key differences between them.
Each web service is accompanied by a WADL document. WADL, as a structured representation of a web service's capabilities, plays a crucial role in automating system integration. Students are to present and explain some key points highlighting the automation and integration through using WADL.
Question 5: Microservices
When microservices offer significant advantages for certain enterprise computing scenarios, there are a lot of misconceptions about microservices. Students are to clarify the following misconceptions.
Microservices are a simpler architecture than other enterprise computing architecture.
Microservices are a one-size-fits-all solution for enterprise computing.
Shifting from monolith to microservices is easy.