System security
The first and foremost requirement of the system is to architect and implement high levels of security and reliability into the system. Doing this as the first item is critically important to its reliability, validity and use. This system, the Genesys portal, needs to be highly secure and reliable, but will have the additional attributes of ensuring the integrity of the data, the validity of the person, and many other issues.
First of all this is an open source development project. As we know Linux is open and free, enabling anyone to write any code to the base, however Linux does not get any viruses like the ones that Microsoft, a closed system, is plagued with. The user needs to review the code and understand what is happening in the application if that is necessary. This enables any company or person to achieve higher levels of understanding as well as the security to know their data or information is being managed properly.
The term free in open source does not mean that their is no financial cost. It denotes the freedom of the application to be reviewed and progress as is required. It is free to do what it needs to do. The best way to describe free in this instance is free like a puppy.
Second the application will be hosted on the grid. For me to set up and manage the appropriate servers and network infrastructure for this application would be redundant. A contract will be managed between Genesys and Sun Microsystems to host the application on their grid. This gives users the highest levels of infrastructure quality that exists at any time in the world. As time passes the user will also appreciate that no unauthorized use will occur. That would include myself. Why would I need producer or user related information or data?
As we discussed in previous entries Java was the language that will be used to develop these applications. This provides significant security and reliability value. Genesys will pay the licenses for the use of Java and therefore inherit the current installed base of infrastructure that is available today. I am not aware of any violation of the security architecture that Dr. Gosling implemented as one of the key and initial requirements of the language. This also taps into a significant base of developers that are in Java full time. With the infrastructure and tools that are available today, the development of systems has become very fast and very powerful.
With the open source developer tools provided in the past two to three years, developers have the infrastructure and tools they need to do anything, literally. And at absolutely no cost. This will lead to a revolution in applications in the coming years as these capabilities mature and are released on projects such as Genesys.
Without going into to much detail, these issues are not unique to Genesys and there are many groups that are working on the security issues of other industries applications. This is one of the benefits of Java, as things are discovered they can easily be shared within the Java Community Process and included in any application that uses Java.
Layering security onto closed applications after the fact does not work. We have Microsoft to thank for the proof of that statement. Building applications on top of a secure environment is the only way in which to ensure that the security and reliability are strong enough to provide the user with the data quality and integrity they need today and in the future. That is why the first specification is the security system, or security environment.