Project Management Tools for Agile

Nowadays Agile methodologies are considered the most adaptable to constant emergence of new technologies, to new development tools and to more changeable customer’s requirements. Flexibility is obtaining special importance due to the general tendencies of the information system development – global mass online services, Web 2.0, the switch from software solutions to SaaS services, the popularity of SOA architecture, etc.

In the modern world it is impossible to imagine a software development project planned for 2-3 years and performed with ‘hard’ non-flexible technologies since nobody can predict how the world will change (and consequently, the requirements to the project or applied technologies) within this period. There’s another problem – present day customers who order IT projects very seldom imagine what exactly they need. They can’t clearly formulate their requirements to the software. Moreover, new innovative technologies appear practically every year and they require fast implementation because of fierce market competition.

In such conditions Agile is probably the best solution as it allows starting the project as quickly as possible, introducing details in the course of its realization. The development is carried out within small iterations (1-4 weeks) and at the end of each iteration the customer gets a valuable application (or its part) which can already be used for business process management.

Moreover, Agile can be used in various projects — from small students’ start-ups to serious industrial projects with thousands of man-hours developed by a large software development company. It’s rather difficult to find another approach or methodology with the same scope of application.

The flexibility of Agile methodology is one of the solutions for high efficiency of a software development process. Software companies also have a variety of tools to leverage in order to improve significantly their performance and productivity. Modern project management is impossible without planning and task tracking. Let’s have a look at some of them which, in my opinion, are the best solutions at present.

Basecamp is an online project management system developed by the 37signals company. The functionality of this system is huge and the possibilities are varied. Here are the most prominent features of this system:

• Viewing the general information on clients and projects on one screen

• Task setting and task tracking

• Uploading, categorizing and tracking of different versions of files

• Forums for discussing problems and tasks

• Milestone management

• Time tracking

• Adding comments and messages

• Compatibility with other applications, widgets and programs

Most companies make use of Basecamp as their primary collaboration/task management tool since it has an intuitive interface and can be used even by nonqualified users.

Redmine is a flexible system for project management based on the web application framework RoR (Ruby on Rails). The possibilities of the program include:

• Several projects support in one database

• Flexible system of adjusting user access rights

• Flexible system of tickets and tasks

• Gantt chart support

• Built-in system of forums on the project

• Simple time tracking system

• LDAP authorization support

• Multilanguage support

• Various database support

• Integration with version control systems (SVN, CVS, Mercurial, Bazaar and Darcs)

Comindware Tracker is a web application for managing business processes and tracking the elements with integrated functions of task management and collaborative work. Comindware solutions are based on the ultra flexible technology ElasticData™, which allows users to manage business processes with extraordinary flexibility and adapt to the existing business processes. Comindware Tracker includes free Comindware Task Management and the technology ConnectStep that allows automating the process of generating tasks for the next step and optimizing their execution practically for all business processes within one or several departments.

This list is not complete. Every software development company makes use of their own favorite tools and techniques. The choice is yours. But one thing is universal – all such tools can improve significantly your competitiveness and thus should be implemented.

IBM released social business applications for tablets

Tablet computers are being used more and more by employees of various companies as a functional working tool. Software development companies try to keep up with the modern tendencies and offer new mobile applications that let use iPads and other modern devices for collective work, social interactions in the real time mode and business communication. The new products can boast of high productivity and compact sizes and allow users of portable devices to get a safe access to corporate communication platforms.

Some business applications will provide a mobile access to the corporate database, while another application, named LotusLive Meeting, will allow the users of modern smartphones and tablets (including iPhone, Android, BlackBerry and iPad) to take part in meetings, carried out in the global network.

For example, the IBM Corporation has announced a special business application. Thanks to the mobile client for the IBM Sametime platform, employees can exchange direct text messages in the mode of personal or group chat, while another application – Unified Telephony – can be used for making telephone calls. The optimized version of the product Lotus Symphony Viewer will provide a possibility to view office documents in the ODF format (including text files, tables and presentations) on the screen of the device.

The new applications are distributed for free among the owners of licensed copies of the IBM products. In the nearest future business software development will become more and more popular and the announced programs will be available in the official app stores, such as the Apple App Store and the Android Market.

New Platform Allows Controlling Personal Data

Last week at the conference Web 2.0 developers presented the new platform Singly 1.0 that will allow users to control where and how to use their data. Singly lets users collect the information published about them on the Internet and choose the data that can be used by third parties. Singly 1.0, introduced in the framework of the Locker Project, is an open source platform and is financed by the WordPress general director Toni Schneider and the Best Buy technical director John Battelle.

It should be noted that Singly and Locker Project are Jeremy Miller’s developments who is the developer of the XMPP protocol used practically in all instant message exchange programs based on XML. Jeremy Miller started working on the Locker project in February. According to Battelle, the aim of these developments was to provide users with a possibility to control confidential information.

The release of Singly 1.0 will allow software development companies a possibility to create applications with the help of which it will be possible to search, sort and provide users’ contact data as well as the links used by users online. Moreover, the applications developed on the Singly platform will allow searching by the content of the links, sent to the users subscribed to some account in social services.

In future, software developers are planning to expand the functions of the new platform and let is gather financial information and data about the users’ state of health.

Business software development

The key aspect of any successful business is a possibility and ability to attract and preserve profitable clients. The effective management of relations with customers requires more than simple sales process automation. A company should be able to use the key information about the clients and internal business processes for making correct and timely decisions.

Business software gives a company a chance to interact with the client via the channels that are most suitable and convenient for him; it allows a company to develop standard marketing, sales and servicing models, which considerably expands the number of potential clients and improves the quality of the service.

When do you need to order business software development?

If your office is filed with papers and documents; if you need much time to find the reports for the previous periods; if you have many orders but you don’t have a convenient tool for handling clients’ orders; if your company has expanded a lot and you can’t manage all workers, calls or orders, time to apply to the IT development company and have your business optimized.

All the above mentioned problems will be solved and your productivity will double. Moreover, the software developers will create special software package customized to your needs.

Microsoft Roslyn: New Type of Compilers

Microsoft has presented an interesting project named Roslyn. Within the framework of this project, all the concept of compilers and compilable programming languages itself has been reconsidered. Apart from the realization of completely new functions, such as .NET-tools, C#, Visual Basic and the Visual Studio development environment, the Roslyn project offers the completely new concept ‘compiler as a service’, laying a road to the .NET platform to the most promising area – into clouds.

Once Microsoft gave many professional software developers the hope for well-off and predictable future, having moved the development of its own and third party technologies on the .NET development platform. So far, the Visual Studio development environment and the .NET platform are the most popular and convenient development tools, having adopted the best features of java technologies and having made some important steps ahead. When Microsoft presented the new development tools for writing apps with the help of JavaScript and HTML5, many software development companies started to worry that the .Net development had been folded up. However, the reality has exceeded all expectations – the presented project Roslyn has proved that the .NET platform has exciting future.

The Roslyn technology can be described as ‘compilation by request through the providing service’, although this description is a bit complicated. Technically, the new technology is not a service in comparison with such cloud solutions as SaaS (Software-as-a-Service) or PaaS (Platform-as-a-Service). The Roslyn technology is more similar to the Windows system services that offer completely new principles of compiling .NET applications – each phase of compilation is presented in the form of service that can be requested by other applications.

Usual compilers throw away all intermediate data while getting ready-made files and in Roslyn compilers all intermediate data is available via standard .NET API-interfaces. For example, the request to one single API will retrieve the whole syntax tree for the given code fragment in the form of an object. The request to another API can return the number of methods in code.

So far, one can’t predict how soon the Roslyn technology will find its place among standard development tools  – now only the trial version for C# and Visual Basic is available.

Top 10 Most Welcomed IT Professions 2012

Despite the doubts in stability of the American economy in 2012, the research has showed that American companies are going to expand their IT staff. Analytics have found out what IT professions will be called for. The results of the annual research organized by Computerworld showed that 29% out of 353 IT-executive managers are planning to increase the number of their departments by the summer 2012.

‘The demand for IT-specialists in companies of all types and sizes is constantly growing’, says Mike McBrierty, the executive director of one of the biggest recruiting agencies the Eliassen Group. Moreover, according to his own words, the companies are planning to update the infrastructure and restart the realization of the projects postponed for the last 3 years.

As Computerworld claims, in 2012 the directors of IT departments have set teeth for implementing innovations and that’s why the most relevant for future employees will be the following nine main skills.

•    web and mobile application development skills
•    project management skills
•    technical support and maintenance skills
•    network technologies skills
•    business analysis skills
•    Web 2.0 technologies skills – more and more companies are planning to implement these technologies and the demand for php/java/.net software developers won’t decrease in 2012. Also there will be a big demand for Ajax GWT professional web developers as well as the specialists in .Net, PHP, HTML, XML, CSS, Flash and Javascript.

Dart: New Programming Language from Google

Recently the Internet has been buzzing on the news that Google is going to present the new programming language Dart in October. Google is developing Dart as an alternative to Javascript. In general, software developers agree that Javascript programming language has a number of ‘fundamental’ drawbacks which can’t be corrected by means of evolutionary development.

There are two solutions to the problem. The first one is to correct, if possible, the drawbacks of Javacript (Harmony project). The second variant is creating the new programming language Dart which will keep the dynamic nature of Javascript but will ensure better productivity and will be suitable for applying in big projects. At that, Google will provide the language openness and will contribute to its support by other browsers. Moreover, IT development companies will get a cross- compiler so as the Dart code can be transformed to Javascript for browsers which don’t support Dart natively.

Dart is developed with due account for three main goals: productivity, convenience, and code editors and additional tools support. Dart will also have to provide maximum security where this task isn’t in conflict with the three main goals.

The author of the new programming language is the famous programmer Lars Bak and his software development team. The additional sets of tools are being developed by Bruce Johnson’s team in Atlanta and the support of the Web Inspector level for Dart and Harmony is carried out by Pavel Feldman and his developers from the Google office in St. Petersburg.

Content Development Platform Oracle UPK 11.0

Oracle Corporation has announced the release of solutions Oracle User Productivity Kit 11.0 and Oracle User Productivity Kit Professional 11.0, which ensures faster deployment and implementation of business applications as well as the payback of the investments.

Oracle User Productivity Kit (UPK) and Oracle UPK Professional are simple in use and fully functional platforms for the development of content in the process of implementation and training. Created with the aim of increasing the working productivity and speeding up the process of using the product by end users, they support such applications as Oracle and the applications from other providers as well as the specialized clients’ applications.

Using Oracle UPK Professional, IT development companies are able to create, use jointly and exchange the content at all stages of the software project lifecycle. According to software developers, it will lead to considerable reduction in time expenses on deployment and implementation and in many ways will contribute to the success of an IT-project.

Oracle UPK Professional 11.0 contains the following new features and options:
•    Enablement Content that provides a quick start-up for projects and their successful advancement from the very beginning due to the innovative methods of documentation and instruction formation;
•    Web-based Knowledge Center that increases the efficiency, evaluates the organizational readiness and contributes to the growth of professional skills and knowledge using the platform for centralized deployment and following the content, as well as for preparing reports;
•    improved deployment that accelerates the procedure of content publication using the reviewed publishing wizard.

Moreover, pre-adjusted content for most Oracle Apps included into Oracle UPK and Oracle UPK Professional allows speeding up the development of user’s content since now organizations can easily modify the ready-made library according to their specific requirements. In this case, customers can expect business software development with the account of their needs and, of course, budget.

Windows 8 Opens Its Own Application Store

In the MSDN blog Steven Sinofsky, President of Microsoft Windows Department, announced the list of software development companies employed for  developing the Windows 8 platform.

Apart from the teams, Steven Sinofsky mentions the App Store. The users have made a conclusion that Windows 8 will have the integrated tools for accessing the online application store.

Unfortunately, no details about the App Store service have been informed. But it is likely to be similar to the Apple Mac App Store service that offers a wide choice of various free and paid applications for Mac OS-based computers.

The preliminary version of Windows 8 will be released for software developers and testers in the nearest future. According to Mr. Sinofsky, the given software platform will let rethought Windows for the new generation of computing devices. Using this OS will be possible on x86-compatible computers and gadgets based on the processors with ARM architecture, in particular on tablets.

The final version of Windows 8 will be released in 2012.

Agile Development: Pros and Cons

The International Association of Outsourcing Professionals (IAOP) published the results of the annual rating “The Global Outsourcing 100″. In 2011 four Belarusian IT software development companies appeared in the rating. How have they managed to do it? What is the result of such success?

One of the main reasons is using new effective technologies in the sphere of management, agile being one of them.
Recently agile software development is considered to be panacea for all woes turning any IT project into successful. Many western clients give preference to the companies working with agile.

The main peculiarities of agile are:

•    risk sharing – at present there are two main types of interaction with a client – fixed-priced and time-and-material contracts. In the first case all the risks on the project fall on the contractor, while in the second type the client pays for the actual work, which works little on the final result;
•    predictability – the refusal from long-term planning as well as the absence of figures on schedule and cost of the product in general;
•    regular feedback – the customer can introduce comments and alterations practically from the beginning of the project;
•    easy and quick reaction to changes in functional requirements as well as priorities;
•    selforganization – which allows escaping from the excessive management structure.

Why don’t companies want to switch to Agile?

The first reason is conventionalism: many companies think it’s not a good idea to change the familiar scheme which works and bring profit. The second reason is lack of experience in using the new system and the fear of failure in getting non-achieving immediate results. The third reason is additional resources for creating the working team and supporting its highly productive state.

Thus, in order to minimize the risk one a software development company should ope the ground for implementing Аgile on various levels: management level and development level.  This process can take from 3 to 6 months but the effect in the long term is worth doing it.