Internet and digital technologies are transforming the way we live and work today. New technologies are transforming how we share information, make relationships and make decisions.

It was just in the 1980's, when message centers still existed and businesses manually collected all telephone messages. We will skip the steps in between, like the answering machine, but now we have VOIP that sends our voicemail directly to our email inbox. We can be anywhere in the world, including at home by the pool and collect our telephone messages instantly, from our laptops or hand held devices.

Our global teams usually communicate through instant messaging. We Collaborate real time with each other for insights, information and answers. Your team member could be in Dublin while you live in Toronto. Instant information from 3000 miles away. You might just as well be in the office next door.

We are in a new era and it has only just begun. It will be software development teams, who will continue to transform and create this Smarter Planet through software. All business processes, hidden knowledge and services will become digital for quick access, to make faster and more effective decision making, Innovation will thrive and lives will be saved. Social software will allow us to find people with areas of expertise outside of our immediate teams, who will also provide us information to make the best decisions and blossom new innovation.

Creating a Smarter Planet isn't going to be exactly easy, but it will be a lot faster and development teams will be a lot smarter and effective if they have the right software development tools. Using development tools that provide communication for global teams, that automate project status and efficiently track progress of the project, will help us build better quality software faster.

Learn how IBM® Rational® DOORS® not only enhances communication and collaboration through increased visibility of business objectives and technical specifications, but also ensures your project’s conformance to customer requirements, and compliance with regulations and standards. IBM Rational DOORS is a requirements management solution optimized for the needs of systems engineering, product development and enterprise I.T., with capabilities to capture, link, trace, analyze, and manage changes to requirements. Take a closer look at how DOORS can help you deliver exactly what you agreed to build, on time, and within budget.

Jazz is a platform based on a client-server architecture. The Jazz server, normally running on a secured server-class machine, hosts a set of services and houses data in its repository. Remote clients communicate with the Jazz server over the network using HTTP. Remote clients come in many forms, with the quintessential one being an IDE with integrated Jazz support (like RTC), driven by a user engaged in collaborative software development. Other remote clients, such as Jazz-specific command line tools or Ant scripts, operate in headless mode. And others access the server directly using a web browser, without needing to install Jazz-specific software on their machine.

The Jazz Platform is designed and built to:

* Support seamless integration of tasks across the software lifecycle. * Facilitate team collaboration and coordination throughout the software lifecycle. * Provide an extensible platform. * Help teams build software more effectively. * Support globally distributed development teams. * Provide solutions scalable from small teams up through large enterprises. * Maintain audit trails and automate bookkeeping so that teams are accountable. * Support UI integrations (IDE, web browser, etc.) that fit the needs of customers. * Foster a broad ecosystem of tool providers, including independent software vendors (ISVs).

* Make software development more enjoyable.

IBM uses Jazz technology and products like Rational Team Concert (RTC) to build the products themselves. In fact, at any time registered Jazz.net users can see in-depth the on-going development of a product like RTC (work items, reports, graphs, etc.) in real-time.

Over the last couple of weeks I've been talking about Jazz and Rational Team concert, the importance of collaboration they provide and the architecture of Jazz. This week I will go into a little more detail of the collaboration capabilities of Rational Team Concert.

Rational Team Concert makes it easy to exchange information directly in the context of your work. If an enhancement request changes, you and other team members are notified of the change automatically. You can reference the change in chat sessions and link to artifacts. Business stakeholders can also automatically stay informed about the status of task changes that interest them.

Several views enable you to share team information. You can track team activity, present information in more detail, or configure which information is visible at any time.

Many aspects of the software development lifecycle are integrated, including iteration planning, process definition, source control, defect tracking, build management, and reporting. Each of these aspects is integrated in a single environment. You can track and manage the relationships between artifacts, promote sound development processes, and gather project information automatically and unobtrusively.

All this collaboration within the tool provides the ability to reduce meetings and status reports, reduce rework and leverage top technical and business talent by matching skills with work items through the tool.

It is all about communicating all the details and changes throughout the development cycle and that is smart software development.

Use Rational Requirements Composer & Rational Quality Manager to align business with IT

Learn how the integration between Rational Requirements Composer (RRC) and Rational Quality Manager (RQM) highlights the capabilities that ensure project deliverables stay aligned to current business goals and requirements. The demo illustrates how IBM is taking integration and collaboration to a new level to help reduce project risk, reduce rework and increase productivity so that organizations can build the right product faster.

Modeling lets you manage complexity and risk. Not all projects require models in order to be successful. The more complex a project is, the more you need models. Software is no different than every other kind of engineering in this respect. You probably don’t need to create a model before putting together a doghouse. It’s not very complex, and if the doghouse fails, i.e. falls apart, the consequences are not too dire – the dog stays in the big house. But, as we move up in complexity and look at building a family dwelling or even a high-rise office building, the need to model is more important, as these buildings are much more complex than a doghouse, and the consequences of these buildings failing are more serious.

There are many reasons to model…here are some of them.

- manage complexity

- detect errors and omissions early in the lifecycle- communicate with stakeholders- understand requirements- drive implementation- understand the impact of change- ensure that resources are deployed efficiently

Communication is the biggest benefit of modeling.

The best models represent different viewpoints of the same system. This isn’t just nice to have, it’s a necessity. Different stakeholders in a system will be interested in different viewpoints. Creating good models that ensure all stakeholders understand what they need to understand about the system is critical to success.

You need to use modeling to control the application architecture and to use a tool that uses the common language of modeling, UML. The solution should provide a way for geographically distributed teams to access the models. You want a tool that provides transformation capabilities, to aid with model-driven development. And the solution should help you create and enforce the rules of your architecture, by providing guidance on the development process you are using. This allows you to visually compare changes to models, and linking requirements to the design you are creating.

The IBM Rational product that provides this solution is IBM Rational Software Modeler. IBM Rational Software Modeler (Software Modeler) supports UML notation. It has a simplified user interface which makes it quite easy to use. Software Modeler is built on Eclipse, so it is extensible and it integrates with other Eclipse development environments. And of course it integrates with other IBM Rational products.

This demo shows how to transform an IBM® Rational® Requirements Composer project into a model in IBM Rational Software Architect or IBM Rational Software Modeler. See how use cases and process flow requirements captured in IBM Rational Requirements Composer can be used as a basis for your solution analysis and design activities within Rational Software Architect or Rational Software Modeler.

I think I will declare today April 10th, Database Administrator (DBA) Day. Why not? They work very hard and are often stretched to the limit. This person or team is responsible for the design, implementation, maintenance and repair of an organization's database. They monitor and improve database performance and capacity. They plan for future expansion requirements. They also plan and implement security measures to safeguard the database.

That is a lot of responsibility and rarely recognized unless something goes wrong.

For a Database Administrator gift, you may want to consider Optim. It streamlines and simplifies daily DBA tasks including database maintenance, schema change management, performance management, and database availability with IBM Integrated Data Management solutions for the DBA. More effective DBAs translates to better application performance, greater revenue, and more satisfied customers.

So it is a win win for both the DBA and the organization. Spread the word...Today is Database Administrator day!

See how a DB2® database administrator (DBA) uses Optim™ DBA solutions to address a wide variety of data management requirements with speed and agility, while reducing overall risk to the business. In this demo, a performance problem is quickly identified, diagnosed, and solved using Optim Performance Manager Extended Edition and Optim Query Tuner. The application team’s requirements for database changes are handled with greater agility while reducing risk and providing auditability by using Optim Database Administrator. Finally, the DBA helps a colleague use Optim High Performance Unload to meet the requirement to migrate large quantities of data up to 10 times faster than using DB2 Export alone.

Today I feel a little jazzy and want to talk a bit about Jazz. So you might ask..."What is Jazz"?

Over the years, developing software has been compared to many familiar activities - an art, a science, even a manufacturing process. What all of these comparisons miss is the social dimension: software is best developed by a team of people working together, reacting and responding to each other in order to achieve the best outcome. Jazz is an IBM initiative to help make software delivery teams more effective. Inspired by the artists who transformed musical expression, Jazz is an initiative to transform software delivery making it more collaborative, productive and transparent.

The Jazz initiative is composed of three elements: * An architecture for lifecycle integration * A portfolio of products designed to put the team first * A community of stakeholders

Let's explain these a little

An architecture for lifecycle integration

Jazz products embody an innovative approach to integration based on open, flexible services and Internet architecture. Unlike the monolithic, closed products of the past, Jazz is an open platform designed to support any industry participant who wants to improve the software lifecycle and break down walls between tools.

The Jazz integration architecture is designed to give organizations the flexibility to assemble their ideal software delivery environment, using preferred tools and vendors. More than that, it allows them to do so with the flexibility to evolve their environment as their needs change, to move at their own pace, and not to be hindered by the traditional brittle and restricted integrations associated with traditional tools. The Jazz Integration Architecture defines a common set of Jazz Foundation Services that can be leveraged by any Jazz tool, and explains the rules of the road for accessing and utilizing Jazz services. It also incorporates specifications defined by the Open Services for Lifecycle Collaboration project, an independent, multi-vendor effort to define a set of protocols for sharing information across multiple tools and vendors.

A portfolio of products designed to put the team firstThe Jazz portfolio consists of a common platform and a set of tools that enable all of the members of the extended development team to collaborate more easily. This reflects our central insight that the center of software development is neither the individual nor the process, but the collaboration of the team. Our newest Jazz offerings are:

Rational Team Concert is a collaborative work environment for developers, architects and project managers with work item, source control, build management, and iteration planning support. It supports any process and includes agile planning templates for Scrum and the Eclipse Way.

Rational Quality Manager is a web-based test management environment for decision makers and quality professionals. It provides a customizable solution for test planning, workflow control, tracking and reporting capable of quantifying the impact of project decisions on business objectives.

Rational Requirements Composer is a requirements definition solution that includes visual, easy-to-use elicitation and definition capabilities. Requirements Composer enables the capture and refinement of business needs into unambiguous requirements that drive improved quality, speed, and alignment.

A community of stakeholders

Jazz is not only the traditional software development community of practitioners helping practitioners. It is also customers and community influencing the direction of products through direct, early, and continuous conversation.

Align business with Rational Requirements Composer and Rational Team Concert

Learn how the integration between IBM® Rational® Requirements Composer and Rational Team Concert highlights the capabilities that ensure project deliverables stay aligned to current business goals and requirements. Specifically, see examples of how to create a link from a requirement in a vision document artifact in Rational Requirements Composer to the work item stored in Rational Team Concert. Then see how to use filters to query across all the products on the Jazz platform. These capabilities help reduce project risk, reduce rework, and increase productivity.

IBM Rational Software Architecture (RSA) really helps you innovate, collaborate and accelerate delivery within your enterprise. In a tight economy or even a great economy, these are not luxuries. These are necessities that give you a competitive edge and help you meet your development objectives.

Where RSA differentiates itself is collaboration. RSA is built on Jazz and this collaborative platform ties into your software delivery project. Unlike other software, where your models often become pictures of what is ‘thought’ to be implemented. RSA is integrated into the software delivery lifecycle, so your models can evolve with implementations and as new design details are identified, they can be communicated to stakeholders in real time. Designs can also be used to jumpstart development with "out of the box" transformations such as JEE5 from UML, unlike other abstractions, which are merely pictures that become obsolete quickly. With RSA your delivered code will match the design specifications. This means, you will not have ‘rushes’ to produce documentation for compliance audits and maintenance and enhancement of your applications will take an average of half the time and half the cost.

Many questions that come up in project status meetings are: what is the impact a requirement change has on the code? On the project deadline? On the project budget? If a ‘minor’ change is requested, for example, instead of 1000 simultaneous log-ons it should be 10000 or a minor process change due to newly announced regulations, what impact does it have on the project? Can these changes be accommodated? What does it mean to the status of the project?

RSA Integrates all aspects of software delivery lifecycle giving you a window into all of the surrounding software development phases – really linking design to all those phases. With views into requirements, your business processes, your change management and version control process – you truly do have a comprehensive integrated platform that is aligned to business goals, with an infrastructure for impact analysis.

Here is a list of benefits:

Abstraction (DSL, Deployment): Makes solving problems quicker, and easier- Bridge the Business-IT Gap with business and architectural models and SOA- Leverage your heterogeneous environments targeting a mix of Java/JEE/WebSphere/C++/C#/Microsoft .NET and other technologies- Better team collaboration leveraging the power of abstraction and the power of the Jazz platform integrated with Rational Team Concert- Mitigate risks, reduce costs, and improve outcomes by leveraging the techniques of abstraction-based communication, traceability, impact analysis- Manage evolution of, and adherence to, design contracts as development is carried out by geographically and/or organizationally distributed teams

Automation: lets you focus creative solution not repetitive tasks … automate mundane, repetitive tasks- Eliminate the mechanical and mundane, and focus on the creative.- Achieve high returns on investment by automating development with abstractions, patterns, and transformations that are tailored to your specific domains and architectures.- DSL services and tools to help define a custom environment for just enough modeling (tailored, simplified, adaptable) for the business.

Simplification: reuse, don’t start from a blank slate

RSA also has collaborative development asset sharing with Rational Asset Manager, live debug sharing with Rational Team Concert and SOA architectural freedom with WebSphere Business Modeler and WebSphere Integration Developer. It is important that tools integrate and talk to each other.This is all part of working smarter through collaboration and accelerate delivery. In other words, creating software with smart integrated tools to develop software faster and at a lower cost.

Don't let your development project fall into the 65% of software projects that fail to meet their stated objectives on time and on budget.

Requirements are the foundation of effective project delivery; poor practices and results, make it difficult to be successful in your projects or in the marketplace in general.

Let's discuss some the problems that can result from poor requirements practices;

One major issue in requirements practices is that there may be little to no stakeholder to stakeholder communication. For example, one stakeholder will send information and assets but may not have time or desire to discuss thoroughly. Another stakeholder will indicate that his process is the most important and should take priority. If there is no stakeholder to stakeholder discussion, the result is poor alignment of the strategy.

Another result is that the analyst may provide disparate, disjointed and inconsistent data in a variety of different formats that are impossible to understand and organize. This problem results in information overload that leads to ignored information and missing requirements.

Office tools and products have typically been the administrative tools to document our software development processes. They Have become the de-facto standard for defining requirements. As much as the tools work for individual recording functions, connecting and linking them in a meaningful way becomes very challenging and this exacerbates the process. Remember, documents are islands. They don't have version control, no reuse, team access and input may be difficult, just to mention a few issues with traditional office tools.

The result is that when the project continues with fuzzy unclear requirements and Stakeholders are unclear of timelines and expectations. The development team is placed on hold then suddenly placed in fire-drill mode to try and meet project deadlines. This is a project managers nightmare.

It is all about creating a smarter planet through software. Use great team tools to manage your development requirements. Some solutions are: Rational Requirements Composer which is designed to provide a solution for the creation and composition of meaningful requirements, based on user and stakeholder needs. Rational RequisitePro is designed to provide a platform for the management of Requirements assets, the establishment of priorities, the estimation of costs, difficulty, etc.

Align business with Rational Requirements Composer and Rational Team Concert

Learn how the integration between IBM® Rational® Requirements Composer and Rational Team Concert highlights the capabilities that ensure project deliverables stay aligned to current business goals and requirements. Specifically, see examples of how to create a link from a requirement in a vision document artifact in Rational Requirements Composer to the work item stored in Rational Team Concert. Then see how to use filters to query across all the products on the Jazz platform. These capabilities help reduce project risk, reduce rework, and increase productivity.

Do you need to learn Enterprise JavaBeans real quickly? This is a really cool Enterprise JavaBeans with Rational Application Developer for WebSphere course. This 9-part video demonstration will show you how to use Enterprise JavaBeans to create a simple blog web application. Starting from a fresh installation of Rational Application Developer, the course will take you step by step through how to create a local WebSphere instance and how to create and write an Enterprise JavaBean. Then you will learn how to create an Apache Derby database, and how to take advantage of the Java Persistence API for database storage. Finally, It will show you how to create a web project which uses the Enterprise JavaBean you created earlier. Then the video course will run the web application and you will see the JavaBean in action with the final blog web application.

Here are the nine parts. Sit back and enjoy viewing this educational video course!

It is cool when you can see industry examples of how software can improve your companies productivity and cost savings through software.

I worked with the Rational Focal Point team, to publish a demo discussing some of the major portfolio management challenges facing municipalities and demonstrating how Focal Point can meet those challenges, by utilizing many of the monitoring, prioritization, and decision making capabilities featured in the solution. Whether you manage a city, a company or an organization, you will need to prioritize projects and understand the return on investment each project will provide you, which can be extremely challenging, if you don't have the proper tools.

There are many other challenges and details to managing a portfolio of projects. Ideas for new investments or cost-cutting measures come from a variety of sources and most cities or companies don’t have a single repository where those ideas can be gathered and carried through a defined lifecycle. Without such a repository you run the risk of having great ideas fall through the cracks.

In lean times resources become limited. In these cases being alerted about budget overruns, scheduling delays, and resource bottlenecks as soon as possible is critical. Many cities or companies cannot generate the simple, real-time overviews that help managers quickly pinpoint trouble spots and address them in the earliest stages.

Presented here are a few of those challenges that the Focal Point solution has been designed to address—hopefully many of them look familiar to you.

Software is key to creating a smarter planet and here is a fine Industry example! Check out the demo!

This demo uses a government industry scenario to show some of the major portfolio management challenges facing municipalities. See how IBM® Rational® Focal Point can meet those challenges by utilizing many of the monitoring, prioritization, and decision making capabilities featured in the solution.

I remember the days of software development when we had huge war room meetings to get status from each team lead. The project manager would manage these 2 or 3 hour meetings and hope to goodness that everyone would remember what requirements need to be updated, who is to fix which bug and well, the list goes on. The closer we got to the end of the development cycle, the longer and more frequent these meetings would be. What if all the managers, team leads and developers had a dashboard to evaluate progress and update status? What a concept!

There are many development tools that help teams communicate perfectly throughout the software development cycle. These tools will help enable teams to follow good software development habits and team communication will improve. Just understanding these tools and following the guidelines will get the team communicating like never before. I'll continue to mention different development tools that help you develop quality code quicker, throughout my blogs, but today I will focus on Rational Requirements Composer and Rational Team concert.

Rational Team Concert collaborative development environment connects teams so they can work together to simplify, automate and govern software delivery in real time. Project mangers and others can gain greater visibility into individual and team work. They can reduce overhead balance resources and provide real-time insight. In addition, you can track project progress with dashboards that include real-time project statuses. Now this is every manager's dream to manage and view the status of a development project, without having huge war room meetings.

Another great product, Rational Requirements Composer helps teams define and use requirements effectively across the project lifecycle. The whole team creates and uses requirements. Better, faster requirements lead to less project rework, faster time to market, and better business outcomes. The earlier you know and manage your requirements, the more money you will save in rework. Get your customers and stakeholders involved early and manage your requirements so that everyone understands and communicates updates and priorities.

Now couple Rational Team Concert with Rational Requirements Composer and you have a match made in heaven. The beauty is that IBM® Rational® Requirements Composer and Rational Team Concert are integrated. Check out the demo below and learn how the integration between IBM® Rational® Requirements Composer and Rational Team Concert highlights the capabilities that ensure project deliverables stay aligned to current business goals and requirements. Specifically, see examples of how to create a link from a requirement in a vision document artifact in Rational Requirements Composer to the work item stored in Rational Team Concert. Then see how to use filters to query across all the products on the Jazz platform. These capabilities help reduce project risk, reduce rework, and increase productivity.

Check out the demo! Align business with Rational Requirements Composer and Rational Team Concert

Cloud computing provides a way to develop applications in a virtual environment where computing capacity, bandwidth, storage, security, and reliability aren't issues — you don't need to install the software on your own system. In a virtual computing environment, you can develop, deploy, and manage applications, paying only for the time and capacity you use while scaling up or down to accommodate changing needs or business requirements.

IBM has partnered with Amazon Web Services to give you access to IBM software products in the Amazon Elastic Compute Cloud (EC2) virtual environment. This is product-level code with all features and options enabled.

Several options are available to get you started using IBM platform technologies in the Amazon EC2 environment. You can bring your own IBM licenses to Amazon EC2, utilize development Amazon Machine Images (for ISVs only), or leverage the production-ready Amazon EC2 running IBM service. Read more about each of those options.

Follow along as Andrew Glover gets you started using Amazon EC2, part of the Amazon Web Services suite of on-demand, pay-as-you-go products. Once you pick your OS and AMI, you'll learn how to create an SSH key pair and define a corresponding security policy, provision an instance, and launch the instance.

A common language brings together two dissimilar partners: the Ruby scripting language and Google's custom format for Android programs. Thanks to the robust toolkits in the JRuby and Android projects, you can write and run Ruby scripts that behave dramatically differently from the typical Android program.

Follow along as Andrew Glover demonstrates using the Ruboto framework to rapidly build and deploy Android applications. See how to create an emulator instance, create a Ruboto project using the command line, code your app, and use a location listener for obtaining GPS information.

Optim™ Performance Manager for DB2® for Linux®, UNIX®, and Windows® boasts a whole new architecture that includes modern browser-based user interfaces which provide system health overviews and detailed diagnostics to isolate the source of emergent problems. It provides performance analysis and tuning for managing DB2 systems using an easy to use web interface.

You should check out these demos to get started on the basics. It is a really cool product.

IBM Optim Performance Manager 4.1.1.0, Part 1: Install the product

Part 1 of this demo series describes IBM Optim Performance Manager 4.1.1.0 architecture and packaging, and how to install the product. Part 2 describes the Extended Insight architecture, and how to install and configure the Extended Insight client.

Part of the Amazon Web Services family, Amazon's SimpleDB is a massively scalable and reliable key/value datastore that is exposed via a web interface and can be accessed using the Java language. SimpleDB provides a simple web services interface to create and store multiple data sets, query the data, and return the results.

Check out this demo and follow along as Andrew Glover guides you through an introduction to SimpleDB.