Wednesday, February 16, 2011

Using UML in Projects

Well the obvious question by any fresh student\developer is not how but WHY??? UML is used extensively in project development as a general programming practice, where you pictorially represent your entire project as a series of diagrams.


What is UML?
Seriously if you're still searching then I'd suggest Wikipedia. the most apt definition i found was:
The Unified Modeling Language (UML) is a standard  language for specifying, visualizing, constructing, and documenting the artifacts of software systems, as well as for business modeling and other non-software systems. The UML represents a collection of best engineering practices that have proven successful in the modeling of large and complex systems.
Now lets proceed to why we as students\developers should use it more often.


1) Everyone needs a plan
Thinking of starting without a plan? Well we are not cowboys, nor are we experienced that much, a plan will certainly help keep track of project progress. Also, a well structured plan can be verified, evaluated, and improved in the very initial stages without even having to make those obvious mistakes. Besides this the diagrams let you know exactly where you are and what you need to do next.


2) Ease of understanding
Software projects tend to get lengthy and boring. Class Diagrams will definitely help understand the project code better than a hundred page source-code booklet. UML helps you show the scope, depth and size of the project in simple diagrams. Any level of detail can be incorporated into the pictorials to ease understanding. 


3) Explain to "others"
It is simple to show how a project operates or how to proceed while making it using Use-case diagrams. Others simply have to put themselves in place of the "actor" and they have a plan of action that tells them how to operate.


4) Document Assets
Any software requires good documentation to support it. Both User Manuals and Developer manuals mark the beginning of a support and maintainance relationship that must continue long after sale, both for corporate and open source products. UML diagrams in documentation bring both transparency and clarity and reduces dependence on rather obtuse source code.


5) Re-Usability
Any reboot\restart\retry will require a new approach firmly rooted to the last one. Hence the use of UML retains the very essence of that process used. Also, it is pretty simple to edit existing models and modify them to match new requirements.


6) Universal
UML standards are universally accepted. People might not know the programming language used or whether it was object oriented or procedure centric but they definitely will understand the UML part of your documentation.


7) Further Development
Models can be isolated, segmented, and edited individually, allowing for branching into several projects. Large projects can be decomposed and utilized by many people for their applications.


Some Important Softwares(Opensource)
1) StarUML
2) ArgoUML

Saturday, January 29, 2011

IEEE - AIYEHUM 2011

IEEE Bangalore is organizing AIYEHUM 2011, or The All India Young Engineers’ Humanitarian Challenge to encourage students to solve real world problems and promote their ideas by providing all necessary means to implement them. These projects will be judged on the basis of their impact on humanity and their creativity, and several other factors like sustainability and cost.



Summary of events:

  • Proposals are invited from the students of India to solve Humanitarian Challenges.
  • Mentors from both Industry and Academia will be provided to guide selected teams implement their ideas for about 3 months.
  • The projects will be published on the IEEE Humanitarian Technology Network – www.ieeehtn.org 
  • The winners to be awarded with prizes and certificates.


Eligibility:
  • Challenge is open to all, both IEEE and non-IEEE members from UG/PG courses enrolled in technical colleges in India.
  • Teams will have minimum of 2 to up-to 4 members.
  • If a project is granted funds, teams must include an IEEE Student Member in the lead role, other team members are preferred to be IEE Student members but not mandatory. [All team members must be at least 18 years of age.].



Proposal submission:
Proposals must be submitted using the form provided on:




Important Deadlines:
Proposal submission: 01 March 2011
Notification: 10 March 2011
Initial progress report: 10 April 2011
Intermediate progress report: 30 May 2011
Final report: 01 July 2011

Please visit the Official Website  for more details...

Sourceforge.net attacked!

This was a direct attack to Open Source website sourceforge.net that hosts opensource projects made by anyone interested in making such projects. On Wednesday, the website reported exploit of several servers and fears compromise of user passwords. Hence all users have been asked to renew their passwords via the link:


Besides this, many developer-centric services were shut down to prevent data integrity. Mainly people reported that their file editing system was not working. The following services have been shut-down to prevent further damage:

* CVS Hosting
* ViewVC (web based code browsing)
* New Release upload capability
* Interactive Shell services
It was truly outrageous of some people to attack an open-source project in a world where anything else costs too much for individual PC users. Meanwhile, SF is busy identifying the attack's source.

Wednesday, January 26, 2011

Google Summer of CodeTM 2011

While surfing i came across this completely amazing concept by google, actually just another to add to their existing list of ideas. Eventually I also felt the need to promote this. Imagine being paid to express your coding abilities on open-source environments, i.e. to be paid stipends to work on open source programs.

An excellent opportunity for college students to gain experience on coding as well as get paid to do it, things just couldn't get better, heres an excerpt from their website.

"About Google Summer of Code

Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source software projects. We have worked with several open source, free software, and technology-related groups to identify and fund several projects over a three month period. Since its inception in 2005, the program has brought together over 4,500 students and more than more than 4,000 mentors & co-mentors from over 85 countries worldwide, all for the love of code. Through Google Summer of Code, accepted student applicants are paired with a mentor or mentors from the participating projects, thus gaining exposure to real-world software development scenarios and the opportunity for employment in areas related to their academic pursuits. In turn, the participating projects are able to more easily identify and bring in new developers. Best of all, more source code is created and released for the use and benefit of all."