Welcome!

Weblogic Authors: Yeshim Deniz, Elizabeth White, Michael Meiner, Michael Bushong, Avi Rosenthal

Related Topics: Weblogic

Weblogic: Article

The Role of Programming, Presentation, and Database Skills in WebLogic Server Development

The Role of Programming, Presentation, and Database Skills in WebLogic Server Development

The skills needed to build an enterprise application with WLS 8.1 vary somewhat depending on what's being built. However, certain key skills should be present on every development team. Proper thought given to the programming, presentation, and database development skillsets can mean the difference between successful and problematic application deployment.

Java Skills
Java skills are, of course, the essence of WLS 8.1 development. Java skills are vastly different depending on what you're doing. A programmer used to doing small command-line programs in Java won't necessarily even know where to start developing an online application using WLS.

Because of this, assembling a team to build applications becomes more difficult. A manager cannot simply hire a Java programmer; she must know what underlying technologies the application will be using.

The norm in software development is to have one person wear many hats and do multiple things. A word of caution: A developer doing too many things at one time can directly relate to nothing getting done on time. A division of labor and a hierarchy of Java skills are what it takes to develop mission-critical software quickly, efficiently, and correctly.

A Java Architect
Software solutions are only as good or as bad as their design. A Java architect developing for WLS 8.1 must understand all the technologies available and choose the best ones for the solution. Most architects will use a design product to lay out the project - first at a high level, and then at a more detailed level, showing what technologies and classes are being used, extended, and created.

Changes will ultimately come into play as new requirements and technical limitations are uncovered. A good Java architect will have years of experience in software design and an excellent understanding of not only OOP, but the J2EE architecture as well. The architect should also be aware of the features of WLS 8.1, which will enable him to take full advantage of its benefits. This enables managers and architects to work together to provide the leadership and direction for the software project.

JSPs and Servlets
Almost all applications running on WLS 8.1 will use either JavaServer Pages (JSP) or servlets. JSPs include HTML with tags that denote Java coding, whereas servlets are a bit more involved because they're coded completely in Java.

JSPs are the easiest J2EE programs to write. A basic understanding of the Java programming language and certain J2EE-specific Web classes are all that's needed.

Another important part of writing JSPs is writing custom tag libraries to go along with them. Tag libraries enhance the ability of the JSP creator to create complex pages without writing any Java within the JSP file. Tag libraries are written completely in Java and have basic rules associated with them. Java developers should understand how tag libraries work and how to write them.

Servlets are slightly more difficult, but not much. Different levels of Java developers should exist here, with the more advanced programmers leading the entry level programmers.

JDBC and SQL
A J2EE application will usually connect to a database of some kind. This requires the use and set up of Java Database Connectivity (JDBC). JDBC enables Java programmers to connect, create, update, and retrieve information from databases that have JDBC drivers. Structured Query Language (SQL) statements are formed, and data is returned.

JDBC calls are an integral part of the J2EE framework. A developer who works with JDBC must understand SQL and how it operates because improperly designed SQL statements can have a huge effect on the runtime of an application - especially when the. A developer experienced with connecting with databases is desired here, or a person who understands SQL is needed to properly formulate the SQL statements for the Java programmer.

Note: Developers can always get help with database administrators or designers when constructing SQL statements for a program. However, understanding SQL at a high level is always beneficial.

Beyond the Basics
The scalability of the J2EE architecture is a paramount reason why J2EE is the platform of choice to develop on. Certain technologies work together to give the application seamless integration, even though it might be across different networks on multitudes of separate platforms. The skill set needed for this type of application requires the knowledge of some of, if not all, the following technologies:

  • Enterprise JavaBeans
  • Container-Managed Persistence
  • Bean-Managed Persistence
  • Java Message Service
  • Java Transaction API and Java Transaction Service
  • Remote Method Invocation
  • Java Naming and Directory Interface
  • Java Management Extensions
  • XML Document Object Model (DOM) and Simple API for XML (SAX) parsers
  • XML Web Services
  • JCOM - Java connector for connecting to Microsoft COM components

    These core technologies are advanced and are usually performed or directed by a senior Java developer. One person is usually not proficient in all the skills needed, but two or three developers with overlapping skills can work together to create and deploy these services.

    Applets
    Java applets are used to fill in the gaps between what HTML can do and what regular applications can do. Applets are graphical in nature, so they comprise a different skill set from J2EE. A J2EE programmer won't necessarily know even where to start when building an applet. Applets aren't used in all J2EE applications, but if dynamically displayed information is needed without requesting it from the server, this is a helpful skill.

    Visual Presentation Skills
    A picture might be worth more than 1000 words when putting together a Web site. Even if the Web site works properly, graphical enhancements and layouts attract new users and give a professional appearance to the site. Depending on what's being presented, many different skills are needed. The minimal skill set is HTML.

    HTML Development
    HTML development doesn't require the same technical expertise as coding in Java, but it isn't necessarily easy. J2EE applications have both dynamic and static pages. The dynamic pages are written in JSP and servlet format, whereas the static pages are plain HTML.

    Dynamic HTML (DHTML) is an extension of the HTML scope. Using JavaScript, HTML objects can be manipulated to form menus, for example. Also, cascading style sheets (CSS) files can be used in conjunction with HTML to provide a changeable look and feel. A good HTML developer has experience in laying out forms, working with specific tag properties, working with DHTML, and knowledge of CSS tags. There's a difference in how different browsers and versions of browsers display information. A good HTML developer knows these differences and implements browser-neutral applications.

    It's also necessary to point out that senior Java developers could have adequate skills for HTML and design, which is helpful. But in my experience, they don't necessarily create the most attractive sites using and watching out for any nuances the way a dedicated HTML person would.

    JavaScript
    JavaScript is useful in applications by providing a method to access form data and manipulate HTML objects. JavaScript was designed as an easy-to-use component for HTML developers. Consequently, most good HTML developers know this information.

    GUI Design
    Graphical user interface design is the key component to application usability. Most of the time, the designs change several times before a product is released. The actual programmers sometimes work with the users to find the screen layouts and functionality. This isn't always the best idea. Users are normally used to the old way they did things, so instead of improving the process or using a new layout that might be easier, they want exactly what they had before.

    A better choice is to use a GUI designer who understands these concepts and components. Sometimes it's not feasible to hire one because of budget constraints. In that case, the developers must be trained in GUI development. Good GUI design can make or break an application because the GUI is what the customer sees first. The customer won't see all the work that was put into the back end of an application, and applaud you for that design, until he can easily learn, find, and use the application's front end.

    Graphic Arts
    The days of presenting green screens full of data are gone. The presentation of data is now expected to please the senses. In a WLS application, not only must data be created, but pictures, movies, sounds, and other multimedia must also be created and distributed. Engineers don't usually have the skills to create and manipulate this art (they're too busy reading technical manuals). A graphic artist is now becoming a must in the development of applications. The graphic artist works with the GUI designer to create visually appealing screens. The skill of the graphic artist obviously depends on the applications you're building. The more visually intensive your applications are, the better the artist must be.

    Database Skills
    Database skills are essential for almost any application using WebLogic. Information must be gathered, stored, and recalled on a moment's notice free from errors. Database specialists ensure that the system is scalable and has good performance for the application. This first step in this process is always database design.

    Database Design
    Database design encompasses knowledge of grouping related information. This enables information to be found and queried easily. Using certain rules such as third normal form, tables, fields, primary keys, foreign keys, and so on can be identified. A good database designer can make it easy for administration later on.

    Note: A database designer can make the job of the entire team easy or near impossible. This can affect the entire project development process and even maintenance later on.

    Database Development
    Database developers take the design specifications and create the database, stored procedures, and views necessary for the application. Each database is slightly different in the features it supports, so database developers should be chosen who usually develop for only one database, such as Oracle or Microsoft SQL Server. This might not be true in all cases, but it's generally true that the larger the project, the more specialized the people.

    Database Administration
    Database administration is often overlooked when developing applications, but it's a crucial aspect of all areas of an application life cycle. Database administrators are responsible for analyzing database use to increase performance using database views, memory allocation, table size allocation, and stored procedures. These performance tweaks allow WLS applications to speed up the most time-consuming operation: waiting for data.

    Summary
    Programming, presentation, and database skills are important to the design and implementation of a WLS 8.1 application. These skills depend on the scope of project, and can be covered by a few individuals with a wide array of knowledge or many individuals with more specialized knowledge bases.

    Excerpted from BEA WebLogic Server 8.1 Unleashed, chapter 3, by Jeff Marin, Steve Steffen, et al.

    Publication date: October 2003

    ISBN: 0-672-32487-3
    Sams Publishing

  • Comments (0)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    IoT & Smart Cities Stories
    In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
    Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
    Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: Driving Business Strategies with Data Science," is responsible for setting the strategy and defining the Big Data service offerings and capabilities for EMC Global Services Big Data Practice. As the CTO for the Big Data Practice, he is responsible for working with organizations to help them identify where and how to start their big data journeys. He's written several white papers, is an avid blogge...
    Nicolas Fierro is CEO of MIMIR Blockchain Solutions. He is a programmer, technologist, and operations dev who has worked with Ethereum and blockchain since 2014. His knowledge in blockchain dates to when he performed dev ops services to the Ethereum Foundation as one the privileged few developers to work with the original core team in Switzerland.
    René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
    Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
    Whenever a new technology hits the high points of hype, everyone starts talking about it like it will solve all their business problems. Blockchain is one of those technologies. According to Gartner's latest report on the hype cycle of emerging technologies, blockchain has just passed the peak of their hype cycle curve. If you read the news articles about it, one would think it has taken over the technology world. No disruptive technology is without its challenges and potential impediments t...
    If a machine can invent, does this mean the end of the patent system as we know it? The patent system, both in the US and Europe, allows companies to protect their inventions and helps foster innovation. However, Artificial Intelligence (AI) could be set to disrupt the patent system as we know it. This talk will examine how AI may change the patent landscape in the years to come. Furthermore, ways in which companies can best protect their AI related inventions will be examined from both a US and...
    Bill Schmarzo, Tech Chair of "Big Data | Analytics" of upcoming CloudEXPO | DXWorldEXPO New York (November 12-13, 2018, New York City) today announced the outline and schedule of the track. "The track has been designed in experience/degree order," said Schmarzo. "So, that folks who attend the entire track can leave the conference with some of the skills necessary to get their work done when they get back to their offices. It actually ties back to some work that I'm doing at the University of San...
    When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...