In a quest to understand and gain respect for the Three Prime Directives for Open Source Software Engineering, I have chosen to download the project "jg3d" from the website http://sourceforge.net/projects/jg3d/files/jg3d.jar/download and evaluate its contents. Upon downloading this, I come to find that it is just the jar file itself, and does not contain any documentation. Thus I refer to the information on the sourceforge website that says that jg3d is "... an implementation of an interactive 3d graph rendering engine and editor..."
In terms of the first Prime Directive-- "successfully accomplishing a useful task"-- I can only assume that it works, and cannot be exactly sure for myself. The user interface is very simple with just a sample of interconnected nodes and edges which the user can grab and move one of the nodes, having the rest of the nodes follow with a moderate amount of elasticity:
While I am not able to make much sense from this and am not sure how to apply it to some actual graphic-creating application, but jg3d itself seems to be extremely responsive and well created. Unfortunately there are no examples of which I can actually render and test out, so I can do little more than just play around with the little balls. I suppose that this means that this product is useful in providing a little entertainment and amusement, but as far as accomplishing what it is actually meant to do, that cannot be determined without another piece of software and an actual manual of how to use the two together.
As for the second Prime Directive (the ability for an external user to use this system successfully), I can say that I was able to install the system successfully, since it required no installation at all; just downloading the jar file and executing it. When it came to using the application, however, I was not sure at all whether I was using it correctly or not. There was no sort of documentation at all, so no help could have been obtained without utilizing external sources. Therefore, I must say that jg3d fails to meet the expectations of the second Prime Directive.
Again, since there was no documentation at all, it would be extremely difficult for anyone without knowledge of the internal system to develop and enhance jg3d. There even lacks the Java source code for the program, making it not possible to even figure out how it works by analyzing the Java code. I felt that there was certainly no way that I could possibly alter the program to improve it or implement it a different way. It seems to be that jg3d, or at least this version of it was released as a stable version, with no need to fix any major bugs. However, it being an open source project, it should contain or at least provide a location to a place where the source code can be found so that it can be downloaded for modification. Since jg3d does not provide this, it fails to meet the third Prime Directive of Open Source Software Engineering.
In assessing the Open Source project "jg3d", I have found that jg3d does not meet all three of the Prime Directives of Open Source Software Engineering. In fact, it may not even meet one of the requirements because the task of the program is not clear. An end user cannot figure out much about how to use this program or even what it is for, and it does not provide any documentation either that could help in figuring out these things. It is not simple to release an Open Source project, but without these components, it would be difficult to make use of them and thus be rendered as useless to most users.

No comments:
Post a Comment