Information Technology Assignment Analyzing Enterprise Computing Platforms
Task: Enterprise software platforms are designed to simplify complex enterprise computing problems for the development, deployment and maintenance of multi-tier enterprise solutions. In this information technology assignment, you are to write a research report to critically review the current enterprise computing platforms: Java EE, .NET and Cloud. In your review, you are to compare and contrast the major components of the platforms and assess the potential impacts when choosing one of them for enterprises. To complete this report, you need to have good understanding of the related issues and are expected to do personal research.
According to the research on information technology assignment, enterprise architecture is an approach where the enterprise is analyzed, planned, designed and implemented. This is done to execute the strategies of the organization efficiently. This ensures the business structure projects of IT and policies to obtain expected results. This allows the enterprise to lead in the market. To achieve the goals, enterprise software is designed. This report focuses on current enterprise computing platforms like Java EE, .NET. It discusses layered model, service orientation, runtime framework, advantages, disadvantages and misconceptions while using enterprise computing architecture.
Benefits of Java EE as a layered model
- This model runs on any application server and operating system.
- It can handle complicated and high-volume applications.
- It has a lot of features to tackle session management, failure, balancing load and integrating application.
- This model is designed to get a high range of vendor choices for applications servers and tools required (Leisner and Brune2019, May).
- It is helped by other famous enterprise vendors like BEA, Oracle, IBM and SAP. Benefits of .NET as a layered model
- It helps to increase the productivity of the program.
- This model has a good framework base to create the graphical user interface.
- This is designed to support standard levels of Web services.
- It is integrated with the operating system in Microsoft.
- Its cost is meagre.
- This model ensures its work in more than 25 programming languages.
Java EE components and their functions
As per Juneau (2018), the main components of the Java EE framework are as follows:
- Client tier-This component run on the clients or the applications. This means it is dependent on the clients using this model.
- Web tier-With web client use, heavy operations are converted to beans of enterprises that can leverage the services, security, and speed of the technologies.
- Business tier- This component meets the needs of a specific business such as retail, banking and finance.
- Enterprise information system- This component handles the software of the enterprise information system. It needs access to the system’s database connectivity (Kumari and Kaur, 2018).
.NET components and their functions
The components of .NET are given below:
- Common language runtime- It manages the programs to execute.
- Common type system- It specifies the values and type definitions in the memory.
- Common language specification- It makes sure that the languages used are interoperable.
- Base class library- It collects a variety of classes from the framework.
Infrastructure as a service (IaaS)
As opined by Zimmermann et al., (2018, October), IaaS is a cloud computing layer. It enables the consumers to outsource the networks, servers, storage and various other resources. IaaS offers three types of models, including hybrid, public and private cloud. The public cloud is present in the vendor's data centre, and the private cloud is present in the premise of the customer. The hybrid cloud is made up of combining the two. IaaS gives the following services:
- Computing: It includes virtual CPU and main memory, entitled for the end-users.
- Storage: This helps to store files in the back-end sites.
- Network: It provides networking things, including switches, bridges and routers.
- Load balancers: This helps to balance the load
Platform as a Service (PaaS)
This service ensures a runtime environmental system. This helps the programmers to develop, test and deploy the applications of the web. In PaaS, the scalability of the back-end is handled in a better way by the provider of the cloud service. This includes server, network and storage, database management, middleware, business intelligence, etc. PaaS provides the following services:
- Programming languages: It provides programming languages to create the application system. They provide Java, PHP, Pearl, and Ruby as programming languages.
- Application frameworks: This framework helps to understand the development process of the application. The application framework includes Rack, Drupal, WordPress, Zend, etc.
- Database:This allows databases such as MongoDB, ClearDB and Redis to better communicate with the application system.
- Other tools:This provides different types of tools to develop and deploy the application system.
Software as a Service (SaaS)
According to Pirnau and Botezatu (2017), it is a distribution model software run by a cloud service provider. Following are the services provided by the SaaS providers:
- Document management: This type of application is provided by a third party to manage and track documents.
- Mail services: Many e-mail providers offer SaaS services to handle a vast number of users and mails.
- Business services: SaaS providers offer different types of business services to give the business a kickstart.
- Social networks: As many people use social networking sites to maintain their convenience, the SaaS providers offer social network services.
Services providing Java EE and runtime development
Oracle manages Java EE and runtime development. The runtime portion provides various web containers and EJB. Enterprise beans along with the contaioners provides Java EE server.
A runtime framework, also known as a runtime environment, includes a part of a model known as the execution model. Different programming systems like Java EE, .NET and Cloud have different runtime.
Oracle glassfish server
It is free software made to develop applications of the enterprise. The applications should be scalable and portable. Other components can also be downloaded for various additional services. Glassfish runs on implementing on Apache Felix. It is mainly based on source codes that are released by Oracle and Sun corporation.
Transaction refers to collecting operations that involve data items in the database management services. Four significant properties of transactions are consistency, atomicity, isolation and durability. The effects of a transaction persists if it commits. It involves more than one database operations to access.
According to Lnenicka and Komarkova(2019), concurrent control refers to the process required to manage transaction execution simultaneously in the database. It ensures to obtain correct results of the concurrent operations quickly.
The Oracle glassfish server's objective is to provide an interoperable, distributed and secured computing-based component on the model. They support web services security and also security for application clients, declarative security, Java authentication provider, support for web services, support for complete compliance with the security model of Java EE.
Component packaging and deployment
Various .NET and Java EE modules like web module,application client module, connector module, etc., can be deployed by archive deployment, automatic deployment, directory deployment, JSR 88 deployment and dynamic reloading.
The runtime framework's primary benefit is that all the programs can adequately access the functions they need to work on and thus are not dependent on operating systems. The programs have user interfaces regardless of the fact whether it runs on Linux or Windows. This helps to save time to build an application from scratch, which improves their efficiency (Brune 2019, September).
Pros and cons of open-source software
• Free trial before buying
• Provide free support
• Provide open standards
• Have most minor bugs but fixes faster
• Provides better security
• Their competitive advantage has been reduced
• They support minimum leverage
• They have gained increased risk in business (Yi, Nie and Li2017, July)
Pros and cons of proprietary software
• They have good stability in their products
• Owns their company
• Provide tailored support
• They are dependent on other services
• Provide software opacity
Misconceptions and clarification about cloud system
The most common misconceptions about cloud computing are as follows:
- The cloud system is easily accessible and can be breached.
- The payment system is costly.
- The provider's spy on the activities of the users
- Easily and automatically scaled
- It is not at all expensive
- The management is under their control
- Security for different users is not the same
Software portability is a high level programming in computer.
- It helps to migrate easily to new versions
- It lower the cost of software
- Constant repetitions occur here
- It is time consuming
- It needs a lot of workload to make the test environments
The report concluded that Java EE, .NET and cloud computing all are superior languages. To incorporate these, the enterprises should have knowledge and skills about the infrastructure. .NET is reliable as compared to Java EE if they use Windows widely. It is essential to check the requirements to choose any one of these. Ultimately, the overall thing that matters is the efficiency of the enterprise's business operations. Enterprise computing architecture impacts on the technical and effectiveness of the empirical studies. They extend the current task technology by integrating the advantages of organizational technology with individual tasks.
Brune, P., (2019, September). Do We Need Another Blockchain Framework? A Case for a Legacy-friendly Distributed Ledger Implementation based on Java EE Web Technologies.
In WEBSITE (pp. 301-306).https://www.scitepress.org/Papers/2019/83444/83444.pdf
Juneau, J., (2018). Java EE containers. In Java EE 8 Recipes (pp. 523-557). Apress, Berkeley, CA.https://link.springer.com/chapter/10.1007/978-1-4842-3594-2_12
Kumari, P. and Kaur, P., (2018). A survey of fault tolerance in cloud computing. Journal of King Saud University-Computer and Information Sciences.https://www.sciencedirect.com/science/article/pii/S1319157818306438
Leisner, M. and Brune, P., (2019, May). Good-bye localhost: a cloud-based web IDE for teaching Java EE web development to non-computer science majors. In 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) (pp. 268-269). IEEE.https://ieeexplore.ieee.org/abstract/document/8802810/
Lnenicka, M. and Komarkova, J., (2019). Developing a government enterprise architecture framework to support the requirements of big and open linked data with the use of cloud computing. International Journal of Information Management, 46, pp.124-141.https://www.sciencedirect.com/science/article/pii/S0268401218305942
Pirnau, C. and Botezatu, M.A., (2017). Service-Oriented Architecture (SOA) and Web Services. Database Systems Journal BOARD, p.32.https://www.dbjournal.ro/archive/26/26_4.pdf
Yi, H., Nie, Z. and Li, W., (2017, July). Implementation of learning management system based on cloud computing. In 2017 4th International Conference on Information Science and Control Engineering (ICISCE) (pp. 380-384). IEEE.https://ieeexplore.ieee.org/abstract/document/8110313/
Zimmermann, A., Schmidt, R., Sandkuhl, K., Jugel, D., Bogner, J. and Möhring, M., (2018, October). Evolution of enterprise architecture for digital transformation. In 2018 IEEE 22nd International Enterprise Distributed Object Computing Workshop (EDOCW) (pp. 87-96). IEEE.https://ieeexplore.ieee.org/abstract/document/8536109/