Posted by: Vipin | December 21, 2009

How to assess your requirement management process?

Requirement Management:  The essential ingredient of any successful software development project.  If you are in a position to clearly define and manage the requirements, you will be able to reduce the rework considerably.

It will be a good idea to do a self-assessment about your current requirement management process and to know where do you stand at this point.  If you know where you are now, it will be very easy to decide and plan to reach your next goal.  IBM Rational will help you to do a self-assessment.

So, let’s spend sometime….

Don’t forget to submit your papers!  Last date is nearing.

Posted by: Vipin | December 19, 2009

New! IBM Rational Team Concert just released!

Watch this video to understand the newly added features.

As functionality, performance is also one of the key criteria of any software application.  Unlike functionality, performance is slightly difficult address.  It depends on many factors: Architecture, network, databases, application server, etc.

Many of the times, we are ignoring the fact that, the basic code itself can play a significant role in the performance of a system.  Some reason or other, this will be unnoticed and unattended to the fag end of the development of the system.  We normally do functional testing on a routine basis to make sure the functionalities of the system are as expected.  Also gives significant importance to regression testing to make sure that the changes are not impacted on the other existing system components.  But how much do we really bother about the performance factors during coding?

If we can really take advantage of a static code analysis on a regular basis, we can surely improve the performance of the system.  If we use a product like IBM Rational Software Architect, we can detect the bottlenecks very easily.  The tool will be in a position to take to you to the functions and give you some intuitive suggestions on how to improve.

According to me, if we can spend some time during the course of development, rather fighting for performance at the end, will fetch much better results.

Let’s spend some time on IBM Rational Software Architect…

Posted by: Vipin | December 17, 2009

Leading in the leaders quadrant: IBM System Architect

Gartner Inc.’s 2009 Magic Quadrant for Enterprise Architecture Tools positions IBM in the Leaders Quadrant.

Download and read more about the Enterprise Architecture tool from IBM Rational and its success story along with an excellent industry rating.

Download a complementary copy..

UML: Unified Modeling Language.  No introduction is needed.  Everybody knows.  When you ask, most of the companies and practitioners say that, yes, we are using UML.  But my question is how much do you really use the potential of UML and the UML tool?  Are you using it only to depict some diagrams using that? Or are you in the real world of model driven development?

A tool like IBM Rational Software Architect can be used to create UML based models and designs. Yes.  This is precisely my point, many of them are using only for drawing some diagrams.  But this tool can do much more than drawing.

Changes are usual.  You need agility to be successful.  In this context, you need to have, not only diagrams or models but you need the real power of model transformations, there by reducing the time and effort of software development.  This may be a point of debate.  I am sure in the long run, if you take into account of the effort and time for rework, with the model driven way, supported with model transformations, you will be saving a lot of time and effort.  There may be some extra upfront investments, for sure, which will later payback handsomely!

Spend some time to read more about this….

Novice Corner:

What is UML?  How do we start?  How can I get more information?

Start from here…

Order of the day is GUI applications.  In the System z world, you cannot live only with this.  You need to leverage the existing applications running on Green Screens.  One of the biggest challenges is how to balance and complement each.  The skills required are different.  Almost a big wall is there in between these worlds.  Question is how to write a program, which can run either on COBOL world, or on the latest Java world?  Sounds impossible?  No. Not at all!

Enterprise Generation Language.  EGL is the answer.  What is EGL?  It is a modern programming language specifically designed to support the business developers.  You don’t have to know about the intricacies of Java programming language; at the same time you can take advantage of all the benefits of Java.

Using IBM Rational Business Developer, you can create powerful applications without getting into the low level details of programming and middleware.  You can create a full function application with your business logic in EGL and RBD will convert the same into either COBOL or Java source code along with the necessary runtime artifacts.  Since EGL is not providing any low level API’s, it is not a good tool for system programming.  EGL is very powerful for transactional business services.

Sounds interesting, read more…

Novice Corner:

EGL:  Enterprise Generation Language:  What is EGL?  Why you need this?  What are all it can do?  What are the unique benefits of this?  To begin, read this..

Business world is no longer static.  The speed at which changes are happening is too fast to adapt.  Many enterprises find it difficult to align the business goals with the right strategy and implementation model.  Wide variety of assets, shrinking budgets, increasing globalization and inability to take an informed decision quickly are few of the factors stopping the current enterprises to be more agile and responsive to the market demands.

An enterprise architecture solution to plan, control and streamline, at the same time to innovate and deliver solution to the customer demands, is needed.

IBM Rational System Architect

Novice Corner:

Scrum Approach: The term scrum originated in the game of rugby as short for scrummage or scrimmage. In the context of software development, scrum is a method of project management in an agile development process. The purpose is to keep the focus on delivering the highest business value to stakeholders in the shortest possible time.  Read more….

This is really a million dollar question!  To me, both are right and at the same time both can be wrong also!  The success and failure depends on the way you develop software.  The structure of the team, their communication, the domain, documentation level and style, language and cultural barriers, etc. are the major influencing factors.  Sounds simple, nothing new, but an open secret.

If you look around, hundreds of companies are outsourcing their development activities to many of the developing nations.  When you ask, many of the outsourcing companies say, availability of the skilled manpower, cost effectiveness, more time to look at their own core competencies are the major reasons for outsourcing.

Now let’s look at the reality.  How many of them are really successful? As far as I know, those projects are really successful to the extend both parties have understood and done their parts well.  Many of the times, the expectation differences, language, culture and behavioral aspects play a significant role in the success of an outsourced project.  More than technology, coding or testing issues, the above factors play a vital role.

Now let’s examine certain factors about in-house development. Why in-house development is more successful?   We can see, the transparency, easiness of communication, common understanding of the project and more or less a live involvement of the team on the project on a continuous way are some of the major points.

So how do we leverage the benefits of in-house success factors on an outsourced project?  If we can develop the software on a collaborative way, involving all the stakeholders on a continuous fashion, then we can surely achieve more success.  When we don’t have to depend on the weekly status reports to understand, what the other team is working and do a postmortem to take up the corrective actions and so on, things will change.  A real-time and automated reporting will make all the difference.   This is even true in the case of a fairly big in-house team.

No single approach is sufficient.  We need to take advantage of both.  Today we have Internet and Web 2.0 platforms.  Why can’t we look for a hybrid way of collaborative development, which will assure you much better success rates! When a company like IBM has proved it right by implementing the same way using the new “Jazz” platform for the development of many of the Rational products’ roll out, I think it is the right time to have a real deep look into the new “Jazz” platform.  Combination of “agile” methodology and “Jazz” platform could become a sure-shot for success!

Novice Corner:

Jazz platform:  Jazz is a new technology platform from IBM.  It is designed to transform how people work together to build software, making software delivery more collaborative, productive and transparent.  It is a scalable framework to dynamically integrate and synchronize, people, process and assets of a software development project.

« Newer Posts - Older Posts »