File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Architect Certification (SCEA/OCMJEA) and the fly likes Performance - How to justify Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Certification » Architect Certification (SCEA/OCMJEA)
Bookmark "Performance - How to justify" Watch "Performance - How to justify" New topic
Author

Performance - How to justify

John Lincoln
Ranch Hand

Joined: Feb 11, 2003
Posts: 192
Hi,

I am working on NFR, mainly performance now. Not sure how to justify. Please suggest

thanks for all the help
Vijaykumar Dixit
Ranch Hand

Joined: Jul 04, 2011
Posts: 32

You can look into initial chapters of Cade's book about NFRs. It describes how to achieve performance. Just reflect on your design and see if you have followed those directions. I guess then you will know the justification automatically.

One example from my assignment. I have used JPA so one of my justifications would be you get easy lazy or eager object intialization feature in JPA which can be utilized to improve performance.
Rishi Shehrawat
Ranch Hand

Joined: Aug 11, 2010
Posts: 218

The decisions that you have made to improve performance need to be highlighted. Some examples could be to caching, process asynchronously, etc.
Krzysztof Koziol
Ranch Hand

Joined: Nov 19, 2006
Posts: 133

Vijaykumar Dixit wrote:
One example from my assignment. I have used JPA so one of my justifications would be you get easy lazy or eager object intialization feature in JPA which can be utilized to improve performance.


Is your design EJB-Centric or Web-centric? I'm wondering how can you get benefit of lazy loading when using EJB-Centric approach since all required data should be fetched in the transaction scope which is during EJB method call.
Vijaykumar Dixit
Ranch Hand

Joined: Jul 04, 2011
Posts: 32

My design is EJB centric. Having said that there are instances where data displayed on presentation layer is split into summary page and details page.

Here suppose jpa entities are detached when passed over to web tier in case of summary display all collections within don't need to be initialised. However on details page, EJB will make sure complete entity is fetched.

Hope I am talking sense.
Krzysztof Koziol
Ranch Hand

Joined: Nov 19, 2006
Posts: 133

Ok, I see your point now. I think it makes sense that based on what needs to be presented an entity could be loaded with its related entities or not.
Arnold Reuser
Ranch Hand

Joined: Nov 20, 2003
Posts: 196
@John:

The two factors that determine the system performance are as follows:
* Processing time—The processing time includes the time spent in computing, data marshaling and unmarshaling, buffering, and transporting over a network.
* Blocked time—The processing of a request can be blocked due to the contention for resources, or a dependency on other processing.

It can also be caused by certain resources not available; for example, an application might need to run an aggressive garbage collection to get more memory available for the processing.
Besides increasing the system capacity and using more efficient algorithms one can also introduce cached copies of data.
Cached copies of data can be used to reduce the computation overhead, as follows:
* Introduce concurrency to computations that can be executed in parallel.
* Limit the number of concurrent requests to control the overall system utilization.
* Introduce intermediate responses to improve the performance perceived by the user.

To improve the system throughput, it is common that a timeout is applied to most of the long-lasting operations, especially those involving the access to an external system.
 
wood burning stoves
 
subject: Performance - How to justify