This week's giveaway is in the EJB and other Java EE Technologies forum.
We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line!
See this thread for details.
The moose likes Security and the fly likes On java Coding guidelines: What does program reliability entail? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Engineering » Security
Bookmark "On java Coding guidelines: What does program reliability entail?" Watch "On java Coding guidelines: What does program reliability entail?" New topic
Author

On java Coding guidelines: What does program reliability entail?

charlsy chuks
Ranch Hand

Joined: May 18, 2012
Posts: 68
Hi dear authors,

Everyone seems to be discussing security and I am seeing some terms that I probably have not come across in my java career.
However, I would like to know what reliability is. Does it have to do with how robust a say web application is in how it handles multiple requests without failing to serve jsp
pages?
Does it have to do with how many times a recursive function can call itself without the program running out of memory?
Please brief me on this guys. Thank you.
Dhruv Mohindra
Author
Greenhorn

Joined: Dec 08, 2009
Posts: 11
    
    5
Hi Charlsy,

I would like to know what reliability is.


Reliability deals with the expectation from a system to operate according to its functional specification under some stated conditions for a specified time duration. Sometimes it is also referred to as the probability that software will not cause the system to fail under stated conditions for a specified time duration. The introduction to the "Reliability" chapter in our JCG book elaborates the software reliability aspect.

For a Java based web application, reliability could entail ensuring that webpages are served despite underlying coding bugs, runtime errors and most importantly issues caused by a deficient design / architecture. The first step towards meeting reliability requirements is to follow a coding standard and avoid writing sloppy code. The next step is to follow the principle of least astonishment - do not produce code that is complex, ambiguous, inconsistent or unpredictable. Code must also be written to avoid / address known failure scenarios in a fail-safe manner.

Does it have to do with how robust a say web application is in how it handles multiple requests without failing to serve jsp
pages?


For a web server, handling multiple requests without failing falls under "availability" (part of the security - CIA triad) as well as "reliability". An application server that runs without errors for X amount of time may be considered reliable. Also, note that reliable code will promote availability but a highly available system may not imply that the constituting code is reliable.

Does it have to do with how many times a recursive function can call itself without the program running out of memory?


A program that always runs out of memory because of recursion falls under "security" (denial of service). A program that occasionally runs out of memory (say every other hour) because of memory leaks or faulty concurrency is certainly not "reliable".





You know what I did last summer - Java Coding Guidelines: 75 Recommendations for Reliable and Secure Programs.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: On java Coding guidelines: What does program reliability entail?
 
Similar Threads
How to unload a class/jar from the classpath under Weblogic environment
Polymorphism
Lazy bartender request - Java phones
ONE-PROGRAM-ONLY computer
Web Hosting