Monthly Archives: August 2016

Project Communication Management Software

tc2-3

In today’s fast paced world, organizations are willingly hiring efficient project managers, who can assist them in optimizing the work processes. Project management itself is now being considered as the most efficient and effective methodology for the completion of various projects, being initiated at organizations at different levels. Whether companies are working on software projects or on projects of diverse niche, they get them done with the assistance of project managers.

For successful completion of a project, at present a number of organizations as well as project managers take assistance from project communication management software. This software assists project managers to be as effective as possible, irrespective of their industry. This project communication management software definitely enhances the work processes and hence, provides a structured platform for efficient completion of a project.

Project communication management software is an essential tool not only for software project managers or for software companies only, but for the entire corporate world, operating in diverse industries. This software allows you to efficiently communicate with your customers directly, without revealing your identity. You can easily discuss with them about the project requirements by posting your queries related to the project, irrespective of the geographical location.

The major advantage of this software is that it allows you to not only add your customers, but you can also other team members, who are working on the project. All you have to do is:

  • Initiate a project with its title on the software
  • Add team members with their name, designation and email address, note that it will not be revealed to your customers.
  • Add customers with their name, designation and email address
  • Whenever there is a query or you have to discuss something with customers, you can post messages and they will be notified with an email alert.

Features That Assist Successful Completion of Your Project

  • You can easily maintain a complete history of your communication for future reference.
  • Time spent on each project is recorded and hence, you can keep track of the project activities.
  • The interface is highly user-friendly, easy to use and install and hence, everyone can use the software easily. It therefore, allows quick ramp-up times.
  • Team members and customers can directly hold discussions without signing up.
  • A notification is sent to everyone added in the project along with a link, so that you can participate in the project discussion by simply clicking on the link.
  • Once members are removed the link sent to them becomes inaccessible.
  • You can easily upload relevant files, apply filters and tag members in the messages, so that they can quickly access them.

Advantages of Using Project Communication Management Software

  • Project managers can easily collaborate with team members as well as with their customers in real time. They can easily discuss issues; keep members up to date with the current status of the project while dealing with problems and queries arising at the instant.
  • Easily share significant documentation of projects with the help of document sharing tools that allows editing and organizing reports and also, ensures transparency and efficient communication.
  • The project communication management software reporting capabilities provides flexible report formats and has the facility to access required data promptly. Thus, the software assists in keeping tasks on schedule.

Online Collaboration Software Offers New

Collaboration Software is used to exchange the required information inside your teams and with your clients. This software is not only used for exchanging information but also use to manage projects, including all basic facilities like file storage, calendar, wikis, chat room, to-do list, goal setting etc. It is used to save time and reduce budget. Collaboration software offers new capabilities for project planning teams. Project planning team is used for initiation, planning, and execution, evaluation, monitoring, controlling, and maintaining the projects. During the execution of the project it is the responsibility of the planning team to monitor and look-after each step of the project. So team is responsible for development of an effective and productive project plan. So for all these functions it plays a very important role. A good communication skill is very important in obtaining and executing any project. Collaboration software is used to improve the communication within the organization. By using online collaboration software you can easily communicate with your team and your clients throughout the world at any time. This software tool allows you to access the data and information about the project from any location around the globe.

Nowadays many online project management software are available that provides different services. Using project management software decision making has become easier for project planning teams. Collaboration software provides up to date report, information and data which everyone can view and discuss upon it and makes changing for the growth of the project. By using this software communication and work discussion for the project becomes very easy and can be done on real time basis. Teams can easily share and maintain the files online. Project planning team instantly knows the new updates through dashboards and email notifications. By using it you will have live chat for your clients and team members, and this will help you spend your time for something that you like, instead of answering hundreds of emails of clients and team members. It will assist you in creating a pleasant work atmosphere, which makes your business communication more interactive. This web based software can be accessed from any type of computer without installing software on your computer. Project planning teams manage the projects very efficiently and effectively by using online collaboration software. So online Collaboration software is very important for the development of the company or organization and it also offers new services to the project planning teams.

Community Innovation

Many hands make software work

The stakes for Microsoft, which was outlining its Office 2010 product strategy, were extremely high. According to Microsoft’s earnings statements, Microsoft Office productivity suite generates more revenue than any other business division, says Gregg Keizer,who covers Microsoft and general technology news for Computerworld.

Months before Microsoft released Office 2010 productivity suite, 9 million people downloaded the beta version to test the software and to provide feedback. Through this program, Microsoft collected 2 million valuable comments and insights from those testers.

Denise Carlevato, a Microsoft usability engineer for 10 years, and her colleagues from Microsoft’s Virtual Research Lab observed how people used new features. Their objective was to make Microsoft Office fit the way millions of people used their product and to help them work better. It was a massive, controlled crowd sourcing project.

The scenario

Developing a new software product is always exciting, especially to watch ideas take form and truly become a reality. Sometimes a fresh perspective or an innovative use case is all it takes to turn a product from good to great. However, when it comes to testing, we often find ourselves in unchartered waters wondering if the product will actually work in the diverse customer landscapes. It is virtually impossible to test the vast number of devices and configurations of software that web-based software can run on today. Truly robust testing is time consuming, and ensuring that every possible permutation and combination of features, localizations, and platforms works, as intended is nearly impossible.

Often times, comprehensive testing is a challenge and buggy code is delivered to the customer. For example, if a Software-as-a-Service (SaaS) application does not render in a particular browser or a critical software tool fails to deliver its intended functionality, a bug fix or a patch is promised and the vicious cycle starts all over again. Either way, the customer withstands the worst of inadequate testing, especially when faced with the escalating costs of software maintenance, performance, etc. For the software development company, ramifications include distress around brand image, perceived quality, relationship and potential future projects, trust, etc.

Welcome to the new world of crowd sourced testing, an emerging trend in software engineering that exploits the benefits, effectiveness, and efficiency of crowd sourcing and the cloud platform towards software quality assurance and control. With this new form of software testing, the product is put to test under diverse platforms, which makes it more representative, reliable, cost-effective, fast, and above all, bug-free.

Crowd sourced testing, conceived around a Testing-as-a-Service (TaaS) framework, helps companies reach out to a community to solve problems and remain innovative. When it comes to testing software applications, crowdsourcing helps companies reduce expenses, reduce time to market and increase resources for testing, manage a wide range of testing projects, test competence needs, exigency to resolve higher defects rates, and use 3rd party’s test environment to subside the project requirements.

It differs from traditional testing methods in that the testing is carried out by a number of different testers from across the globe, and not by locally hired consultants and professionals. In other words, crowd sourced testing is a form of outsourced software testing, a time-consuming activity, to testers around the world, thus enabling small startups to use ad-hoc quality-assurance teams, even though they themselves could not afford traditional quality assurance testing teams.

Why Does Crowd Sourced Testing Work?

To understand why crowd sourced testing works, it is important to understand the set of biases that infest most testers and test managers around the world. This phenomenon is called, “The Curse of Knowledge,” a phrase used in a 1989 paper in The Journal of Political Economy. It means that for a particular subject expert, it is nearly impossible to imagine and look beyond the knowledge the tester has acquired i.e. the set of concepts, beliefs and scenarios that the tester knows or predicts. As a result, it is particularly challenging to think outside the box and conceive the various ways a typical end user would use particular software.

This phenomenon has been empirically proven through an infamous experiment conducted by a Stanford University graduate student of psychology, Elizabeth Newton. She illustrated the phenomenon through a simple game, people were assigned to one of two roles, namely tappers and listeners. Each tapper was to select a well-known song, such as “Happy Birthday,” and tap the rhythm on a table. The listeners were to guess the song from the taps. However, before the listeners guessed the song, tappers were asked to predict the probability that listeners would guess correctly. They predicted 50%. Over the course of the experiment, 120 songs were tapped out, but listeners guessed only three of the songs correctly – a success rate of merely 2.5%

The explanation is as follows: when tappers tap, it is impossible for them to avoid hearing the tune playing along to their taps. Meanwhile, all the listeners could hear is a kind of bizarre Morse code. The problem is that once we know something, we find it impossible to imagine the other party not knowing it.

Extrapolating this experiment to software testing, most testers conduct a battery of tests that they feel is representative and that captures the set of end-user scenarios for how the software would be used. The reality is far from this. Any expert tester would asset that it is impossible to capture the complete set of scenarios that an end user may throw at a software system. As a result, critical path(s) of the code under certain scenarios go untested, which leads to software malfunctioning, production system crashes, customer escalations, long hours of meetings, debugging, etc.

Crowd sourced testing circumvents all these headaches by bringing a comprehensive set of code coverage mechanisms and end user scenarios during the design and development stages of software engineering, during which the cost of modification is meager. This results in identifying critical use cases early on and providing for those contingencies, which reduces software maintenance costs later on during and after productive deployment. Besides progressive code coverage, the quality and depth of software testing among various vital software modules is achieved, which ultimately results in a higher code quality, among other benefits.

Crowd sourced testing – the framework

At the heart of crowd sourced testing is the community that tests a given software product. The community encompasses people from diverse backgrounds, cultures, geographies, languages, all with a diverse approach to software usage. The community, represented by a diverse and extended user space, tests any given software by putting it to use under realistic scenarios, which a tester in the core test team may not be able to envision, given a tester’s constraints, such as limited bounds of operation, knowledge, scenarios. Thus, it is easy to observe the broad set of usage patterns that put the software under intense scrutiny. Crowd sourcing software testing draws its benefits from delegating the task of testing a web or software project, while in development, on to a number of Internet users, to ensure that the software contains no defects.

The method of crowd sourced testing is particularly useful when the software is user-centric, when software’s success and adoption is determined by its user feedback. It is frequently implemented with gaming or mobile applications, when experts who may be difficult to find in one place are required for specific testing, or when the company lacks the resources or time to carry out internal testing.

The spectrum of issues that such test efforts could uncover within a short lead-time is particularly noteworthy. Such testing efforts yield productive results with reasonable costs. Often times, the product company pays only for those valid reported bugs. Hence, the Return on Investment (ROI) is high compared to the traditional means of software testing.

How does it work?

Most crowd sourced testing companies provide the platform for the testing cycles. Clients specify the type of tests that they wish to have performed and the types of devices that the software product must be tested on.

Testers complete a profile, indicating the skills they have, the devices to which they have access to, and the countries where they reside. Once a tester has completed his profile, he/she can check the project dashboard for a listing of projects and releases that are available for testing. The dashboard may also include sample test scenarios, additional tools and scripts, instructions for testers about what is expected from them, etc. Usually, the testers are required to submit a QA plan, which outlines both high level test cases and detailed test scenarios. The plan may also include whether or not the test can be automated and expected results.

A qualified Project Manager, who is typically a proven community leader or a person from the client/the platform company, reviews such plans, and approves or amends such plans to cater to the client’s specific testing requirements.

Each project includes an explanation and access to a forum where bugs and issues are discussed and additional questions can be asked. Testers document bug reports and are rated based on the quality of their reports. The amount the testers earn increases as their rating increases.

The community combines aspects of collaboration and competition, as members work to finding solutions to the stated problem. Forums facilitate networking and discussion of bugs or relevant issues; rating systems allow for recognition of a job well done, which helps participants gain credibility and improved career.

Checks & Balances

Security is a crucial element to crowd source testing. More often than not, confidential customer information is exposed to testers during application testing. Any breach of this data can lead to serious damage, both to the brand and the business. Test data management ensures the availability and security of test data by obfuscating sensitive information for large-scale testing engagements. Masking such information or creating ‘test-only’ data helps maintain privacy and security while using crowd sourced testing services.

In almost all cases, the testers are required to sign a Non-Disclosure Agreement (NDA) when they join the community. The NDA forbids them from talking about customers, their products or specific defects, both offline and online on Facebook, Twitter, personal blogs or anywhere outside the confines of the private testing platform. Beyond that, the customers can upload a customized NDA, which testers must sign before viewing the customer’s project. For projects that require a high level of security, a pre-screened list of white hat engineers, that have a long professional relationship with the platform company are selected.

Furthermore, standardized communication patterns help users secure their data and gain confidence in their testing vendors, which results in a seamless transition.

By combining an internal, permanent team of testers with a crowd of experienced software testers working from around the globe, superior quality in testing is delivered. By constantly filtering the network of testers to accept only experienced software testing professionals, applicants without formal training and significant professional experience are eliminated. This ensures the quality and the validity of the bugs reported. Last but not the least, tests are dispatched to individual testers based on their experience, available material, and languages mastered. The testers and test project exposure are continually monitored to ensure both quality and integrity, not only of the test results, but also of the associated environment.

Caveat emptor?

Crowd sourced testing is best when the product under development is consumer-centric rather than enterprise-centric, such as gaming or web driven consumer applications. A global user base to test the product should exist and the product should be relevant to the community at large. This is also a test for the application’s potential success in the marketplace.

There should also be an earnest interest from the community to proffer critical feedback for the product under consideration such as a monetary reward. This also brings forth another interesting challenge. The product company is not obliged to follow through on community’s recommendations and may dispense with the feedback for various internal reasons. In this case, the community may feel unheard and this mandates a fine balancing act of the entire ecosystem.

The product company should be committed to working with a large group of people and understand that it involves some degree of overhead in such a decentralized test effort. It also requires certain subject matter experts to mentor and monitor various testing efforts as well as offer support and relevant guidance to the testing teams. If the product team does not have the resources to take on full-fledged testing in-house, but has a good understanding of the testing requirements, it can realize its overall strategy from a globally sourced team.

With normal employment contracts, employees receive a salary for their contribution and the firm owns any intellectual property developed by the employee during their tenure with the organization. In a crowd-sourcing constellation, people are participating voluntarily. Unless the position on Intellectual Property (IP) is clear and explicitly stated, i.e. a condition of the right to participate is the acceptance of Intellectual Property transfers to the client, potential for IP infringement by the contributor exists.

A crowd sourced project requires skills and mastery in designing the compensation structure, both in monetary and non-monetary terms. The testers are usually paid a certain amount of money in the case of a successful bug/issue discovery. In some cases, the testers would prefer non-monetary aspects like recognition and personal satisfaction rather than monetary compensation. Thus, it is vital to understand the motivators prior to mission critical deployments.

In cases where participants are compensated on a per task basis, an incentive for participants to choose speed over accuracy exists. This is especially the case with especially micro tasks, which are susceptible to mistakes and could result in erroneous overall outcomes. Therefore, robust governance mechanisms need to be instilled, continually monitored and policies regularly updated to reflect the changing trends.

Advantages of crowd sourced testing:

  1. Representative scenarios from the real user base, not hypothetical test cases
  2. Tight feed-back loop with rapid feedback processing and agility
  3. Comprehensiveness in use cases, platforms, tools, browsers, testers, etc. that is typically impossible to replicate by any single product company
  4. Cost efficiency, as the product company pays only for the valid bugs reported
  5. Diversity among the pool of testers lends to comprehensive testing, especially with regard to applications, which are localization based
  6. Reduced time to test, time to market and total cost of ownership as critical paths of a software module are tested during design time, which leads to a reduced maintenance cost
  7. Better productivity and improved product development focus

Disadvantages of crowd sourced testing:

  1. Governance issues around security, exposure and confidentiality when offering a community project to wide user base for testing
  2. Quality and workload challenges that arise from the unpredictable nature of customer demands
  3. Project management challenges that stem from the users’ diverse backgrounds, languages and experience levels
  4. Documentation issues, such as poor quality of bug reports, bug duplicates and false alarms
  5. Equity and equality constraints in the reward mechanism with remuneration as a function of the quality of contributions that meets a prescribed minimum standard
  6. Management overhead associated with managing an active and growing community

What does the future hold?

Crowd sourced testing, clearly, has its advantages and limitations. It cannot be considered as a panacea for all testing requirements and the power of the crowd should be diligently employed. The key to avoid failure in crowdsourcing would be to use it prudently depending on the tactical and strategic needs of the organization that seeks crowd sourced testing services. It is important for the organization to embrace the correct model, identify the target audience, offer the right incentives and have a suitable workforce to manage the task results.

Crowd sourcing testing is a relatively new application in Software Engineering and as we continue to experiment and learn about crowdsourcing, we will gain experience and maturity that will help to identify best practices and to harvest the entire value it offers. With this learning, we will become better equipped at mitigating any associated risks and at learning how to better deal with the operational issues around the applicability of crowdsourcing to new sets of activities.

Discover How Online Discussion Forums Drive Traffic

Why build a discussion forum? Businesses use them to enhance employee productivity or communicate with customers: Sports fans use them to discuss their team’s performance, schools provide educational support to students, “foodies” compare recipes, and so much more. Forum audiences are as diverse as human interests. Because of this, their reach and influence as a search marketing tool should be studied and integrated in most if not all search engine marketing strategies.

How Do Forums Work?

A forum’s main topic is generally set by the owner, also known as forum administrator, but the bulk of the content is provided by members of the forum. In a forum, visitors have the ability to start “discussions” with other members in the form of topics, also known as “threads.” Once a forum user (guest or member) has read a thread, they’ll generally have the option to post a reply which can then be read by the community. These discussions can develop without all users needing to be online at the same time.

Forums can be thought of as containers, or archives, for information fostered by the community. Depending on the permissions community members have (as set by the forum administrator), members can post replies to existing threads and start new threads at will. Most forums allow people to browse through postings before registering and, once they feel comfortable, they can set up an account and submit their own posts.

Who Should Create a Forum?

If you’re passionate about a subject, there are few better ways to indulge your enthusiasm than by creating a forum for others to share and learn about the topic you love so much. Not only can you write about something you really enjoy, meet and become friends with people that share your passion, but there is often the opportunity to make good money while you’re doing it. What could possibly be better?

If you love kayaking, start a kayaking forum. If you love collecting Cherokee arrowheads, start a Cherokee arrowhead collectors forum. If you love skydiving, start a skydiving discussion forum! You can be sure of this: there will be others who share your zeal.

With over 2 billion people that now have access to the Internet, there really isn’t an interest, avocation or hobby that’s so obscure there aren’t others who share your passion. In fact, the more eccentric and unseen the subject, the more likely it could go viral and be of interest to a much larger audience. If your forum takes off and you have a large number of people visiting it every day, selling advertising space can often generate substantial monthly income for the forum owner.

Adding Community to Your Existing Site

Building a forum community is a great way to add value to an existing site and can create a sense of belonging for your visitors. This can encourage repeat visits and generate more interest in the site as a whole. With a discussion forum, there will be richer and more varied content being added to your site. You no longer need to be the sole contributor creating content, but rather many people joining in with their opinions and perspectives will help grow your site.

Also, if you’re marketing a product or service, you can generally rely on rapid and unvarnished feedback from a forum community. You can quickly find out how your product is working in the real world and respond more efficiently to customer needs. Moreover, forum communities foster personal relationships between members which can help get information rapidly disseminated as well as increase pageviews and product-use through word of mouth.

Creating a Forum

There are basically two ways to create an online discussion forum; the hard way, and the easy way. The “hard” way requires a fair amount of technical expertise and involves installing forum software on a host server, creating a database, and configuring the forum once it’s been installed. Further, installed forum software will also usually require some level of ongoing maintenance to insure proper functioning.

The smart and simple way to create a discussion forum simply requires choosing a free, web-based forum host. For those of you not interested in taking on the responsibilities of installing software and configuring databases, “remote” forum hosting offers a much simpler, more reliable, and less demanding free solution. Also, remotely hosted forums can easily be linked to websites or be operated as stand-alone entities.

Current Management Opportunities

During the past 30 years the world went through a very dynamic technological transformation. In retrospective, it can be stated without exaggeration that the emergence of electronic devices and the Internet have greatly impacted daily life as well as managerial practice to an unforeseen extent. The computerization of multiple business processes and the creation of large scale databases, among many other radical technological advances, have lead to enormous cost savings and quality improvements over the years. The interconnection of financial markets through electronic means and the worldwide adoption of the Internet have greatly reduced transaction and communication costs and brought nations and cultures closer to one another than ever imaginable. Computers are now fundamental tools in almost all businesses around the world and their application and adaptation to specific business problems in the form of software development is a practice that many companies perform on their own. In the past, such computerization and automation efforts were very costly and therefore only practiced by large corporations. Over the years, however, the software industry emerged to offer off-the-shelf solutions and services to smaller companies. Today, having survived the massive dotcom crash of the year 2000, software development businesses established themselves as strong players in the technology industry.

The emergence of numerous computer standards and technologies has created many challenges and opportunities. One of the main opportunities provided by the software sector is relatively low entry barrier. Since the software business is not capital intensive, successful market entry largely depends on know-how and specific industry domain knowledge. Entrepreneurs with the right skills can relatively easily compete with large corporations and thereby pose a considerable threat to other, much larger organizations. Companies, on the other hand, need to find ways to reduce turnover and protect their intellectual property; hence, the strong knowledge dependence combined with the relatively short lifespan of computer technologies makes knowledge workers very important to the organization. Knowledge workers in this industry therefore enjoy stronger bargaining power and require a different management style and work environment than in other sectors, especially those industries that have higher market entry capital requirements. This relatively strong position of software personnel challenges human resource strategies in organizations and it also raises concerns about the protection of intellectual property.

The relatively young industry is blessed with sheer endless new opportunities, such as the ability of companies to cooperate with other organizations around the globe without interruption and incur practically no communication costs. In addition, no import tariffs exist making the transfer of software across borders very efficient; however, the industry with its craft-like professions suffers from lack of standards and quality problems. The successful management of such dynamic organizations challenges today’s managers as well as contemporary management science because traditional management styles, such as Weberian bureaucracies, seem to be unable to cope with unstable environments.

Challenges in the Software Industry

Many studies indicate that present-day software development practices are highly inefficient and wasteful (Flitman, 2003). On average, projects are only 62% efficient, which translates to a waste of 37 %. The typical software development project has the following distribution of work effort: 12% planning, 10% specification, 42% quality control, 17% implementation, and 19% software building (2003). There are many possible interpretations of the nature of this distribution of resources. First, the extraordinarily high share of 42% for quality control purposes can indicate a lack of standards and standardized work practices. This large waste of effort may also be the result of inefficient planning and specification processes. Because the share of 19% for software building is a function of software complexity, hardware, and tools used, there is a chance to reduce it by carefully managing and standardizing internal work processes. The disappointing share of only 17% for implementation, however, should be alarming to business owners, since implementation activities are the main activity that results in revenue. The relatively low productivity level reported by Flitman (2003) seems to be also reflected in the fact that the average U.S. programmer produces approximately 7,700 lines of code per year, which translates to just 33 per workday (Slavova, 2000). Considering that a large software project, such as Microsoft Word, is reported by Microsoft to require 2 to 3 million lines of code, it becomes obvious how costly such projects can become and that productivity and quality management are major concerns to today’s software businesses. The challenge for contemporary software managers is to find the root of the productivity problem and a remedy in the form of a management practice.

A plethora of recent studies addresses software development productivity and quality concerns. Elliott, Dawson, and Edwards (2007) conclude that there is a lack of quality skills in current organizations. Furthermore, the researchers put partial blame on prevailing organizational cultures, which can lead to counterproductive work habits. Of the main problems identified, project documentation was found to be lacking because documents are deficient in detail and not updated frequent enough. Quality control in the form of software testing is not practiced as often and there seems to be a lack of quality assurance processes to ensure that software is built with quality in mind from the beginning. Organizational culture was found to be deficient in companies were workers tend to avoid confrontation and therefore avoid product tests altogether (2007).

Since knowledge workers are the main drive in software organizations, creating a fruitful and efficient organizational culture constitutes a main challenge to today’s managers. The relationship between organizational culture and quality and productivity in software businesses was recently investigated by Mathew (2007). Software organizations tend to be people-centered and their dependency on knowledge workers is also reflected by the enormous spending remuneration and benefits of more than 50% of revenue. As the industry matures and grows further, the challenge to organizations is that larger number of employees need to be managed which brings culture to the focus of management. Mathew (2007) found that the most important influence on productivity was achieved by creating an environment of mutual trust. Higher levels of trust lead to greater employee autonomy and empowerment, which strengthened the existing management view that trust and organizational effectiveness are highly related. Those companies with higher trust and empowerment levels benefitted from more intensive employee involvement and thereby achieved better quality products (2007).

Product quality, however, depends on other factors as well that reach beyond the discussion of work processes. Relatively high employee turnover was found to have a detrimental effect on product quality and organizational culture (Hamid & Tarek, 1992). Constant turnover and succession increase project completion costs, cause considerable delays, and expose organization to higher risks because their development processes can be severely disrupted. While human resources strategies should help find ways to retain key personnel in the company, organizations need to nevertheless be prepared for turnovers and minimize their risks. One of the greatest risks for people-centered, knowledge worker organizations is the loss of knowledge when employees leave.

Knowledge management has evolved into a relatively new discipline in the last two decades but is mostly practiced by large, global organizations only (Mehta, 2008). As corporations realized the importance of knowledge management activities to mitigate the risk of know-how loss within their organizations, they started employing chief knowledge officers and crews with the goal of collecting and organizing information. By building custom knowledge management platforms, companies can benefit from increased transfer, storage, and availability of critical business information. Such activities can help companies innovate and build knowledge capital over time (2008). The challenge remains, however, to set up such systems and to elicit employee support for knowledge management systems. In addition, these systems leave another critical question open. What happens when top performers take all the knowledge with them when they leave?

Another crucial variable affecting software product and service quality is top management involvement. Projects in the software industry commonly fail due to one or a combination of the following three major causes: poor project planning, a weak business case, and lack of top management support and involvement (Zwikael, 2008). Software projects are similar to projects in other industries by focusing on timely project completion, budget, and compliance to specifications, the industry requires specific support processes from top management to facilitate projects. These processes are summarized in Table 1. Key support processes, such as the appropriate assignment of project managers and the existence of project success measurement, indicate that successful companies demonstrate a higher level of project progress control than others; however, Zwikael acknowledges that top managers rarely focus on these key processes and instead prefer to deal with those processes that are easier for them to work on personally.

Table 1

The ten most critical top management support processes in the software sector (Zwikael, 2008). Those processes marked with an asterisk (*) were found to be the most important.

Support Process

Appropriate project manager assignment *

Refreshing project procedures

Involvement of the project manager during initiation stage

Communication between the project manager and the organization *

Existence of project success measurement *

Supportive project organizational structure

Existence of interactive interdepartmental project groups *

Organizational projects resource planning

Project management office involvement

Use of standard project management software *

Opportunities in the Software Industry

The advent of low cost communication via the Internet and the diversification of the software industry into many different branches brought a multitude of new market opportunities. Some of the main opportunities are rooted in the low costs of communication, while others originated from the possibility of geographic diversification and international collaboration.

One major opportunity which especially larger organizations seek to seize is geographic diversification in the form of globally distributed software development. Kotlarsky, Oshri, van Hillegersberg, and Kumar (2007) have researched this source of opportunities that is mainly practiced by multinational companies; however, an increasing number of small companies is also reported to be benefitting from dispersed software development across national boundaries. The study revealed that software companies can achieve significantly higher levels of productivity by creating reusable software components and reducing task interdependencies. By reducing interdependence, the produced modules are more likely to become useful in future projects on their own; furthermore, this reduction of intertwined computer code also has a positive effect on project teams. Teams in companies that globally distribute their developments benefit from increased autonomy and reduced communication requirements. The authors point out, however, that the prerequisites to distributing software development are not only good project planning but also the standardization of tools and development procedures. Without such prearrangements it may become almost impossible to manage and consolidate the various distributed team activities (2007). Especially for teams working across countries away from one another, it may pay off to deploy video or other Internet-based conferencing technologies and exploit huge savings potentials. But are these means of communication effective?

In the last decade a new form of organization has emerged that has taken the most advantage of the Internet. Virtual organizations exist entirely in cyberspace and their team members communicate mostly, if not exclusively, via the Internet using webcams and messaging software. The challenge for managers in virtual organizations is to exploit the new technology but also to find ways to motivate and direct the workforce and work processes. A study by Andres (2002) compared virtual software development teams with face-to-face teams and identified several challenges and opportunities for virtual managers. Managing work from a different time zone can be problematic due to the lack of physical presence. Communication will need to be asynchronous or can only occur at work hours that overlap in both time zones. Virtual teams facilitate this process by using email and voice/text messaging but more importantly by reducing the interdependency of tasks. Andres (2002) suggested that these types of communication have lower “social presence” meaning that humans have a need and ability to feel the presence of others in the group. The problem with many computerized communication channels is that visual clues, utterances, body language clues and clues from the person’s voice are missing. When placed on a social presence continuum, the various communication types rank as follows from the lowest to the highest: email, phone, video conferencing, and face-to-face meetings. Andres’ comparison between development teams using video-conferencing versus face-to-face meetings revealed that the latter group was far more efficient and productive, even though the video-conferencing team benefitted from reduced travel costs and time.

The study conducted in 2002, however, has several shortcomings. First, it is already seven years old and Internet costs have dropped and speeds have improved significantly since then. Considering the improvements in video quality and availability and computer speeds, this form of communication became more feasible recently. In addition, today’s managers are just now starting to learn how to use these means of communication efficiently. For example, even though email technology has been around for two decades now, many managers still find that emails can create a lot of ambiguity. The challenge to future generations of managers will be to change their writing style to match the limitations of email and other text messaging technologies. Another important factor to consider is that written communication may be stored indefinitely and have legal consequences; hence, more often than not, managers may intentionally prefer to avoid such communication channels for political or legal reasons. The study by Andres (2002), however, resulted in a negative view of video conferencing probably because the technology was not yet matured and the team members were not yet comfortable with it.

For video conferencing to work well, all participants need to be knowledgeable of the peculiar characteristics of that technology and adjust their communication style and speech accordingly. Regardless of meeting type, another important factor is preparation. What could be researched in conjunction with Andres’ study in the future is the degree of preparation of the group. Do team members invest enough time in preparing questions and answers for their teammates before coming to the meeting? Video conferences may require more preparation than face-to-face meetings in some circumstances.

Another opportunity for software businesses and challenge for managers worldwide is outsourcing. In the year 2007, $70 billion were spent globally for outsourced software development (Scott, 2007). Given the extreme shortage of IT skills in the U.S. and Europe, many companies take advantage of globalization by choosing international suppliers for their software development tasks. Outsourcing, however, requires elaborate coordination between the organization and its many supplier groups. The idea is that in total, coordination costs and problems are less costly than in-house development; however, this goal is not always achieved. While outsourcing, when it is deployed and coordinated correctly, can result in 24 hour development worldwide and thereby provide continuous services to the organization around the clock, it may result in the loss of intellectual property. While mechanic parts are patentable in most countries that support intellectual property rights, software is not patentable in most countries outside North America.

In addition to the challenge of managing outsourcing, software organizations exploit technologies in various ways to save costs, for example by offering remote access, telecommuting, and service-oriented architectures (SOA) (Scott, 2007). Remote access and telecommuting has increased six-fold between 1997 and 2005 and resulted in $300 million annual savings due to a reduction of office space (2007). SOA is a similar concept and involves a software rental for customers. Instead of buying, installing, and maintaining software and servers, customers can rent a service online and reduce the total cost of ownership because these activities are no longer required on the customer side. Gradually the virtualization of the software business opens new horizons and provides further opportunities but it also presents managers with endless challenges.

Some of the strengths and weaknesses of offshore and virtual team development were studied by Slavova (2000). In the year 2000, India and Ireland were the largest offshore software development locations. Offshore companies can offer up to 60% cost reduction, a faster completion of development tasks by distributing them around the globe, and specific domain knowledge which they acquired over the years providing similar services to other customers. The integration of work from external sources, however, constitutes a major hurdle. Furthermore, language and cultural issues can cause serious communication problems that put the project at risk, especially when misunderstandings cause misinterpretations of project specification documents. Slavova (2000) found that the most common remedy and strategy avoiding problems with offshore suppliers is to visit them frequently face-to-face; however, this tactic results in higher travel costs and disruptions of the managers’ workflows and hence may offset the benefits gained for outsourcing altogether. Managers in the software business need therefore to balance the risks and opportunity potentials before engaging in outsourcing because for many companies this strategy failed to pay off in the end.

A huge opportunity that emerged in the last decade is online innovation. The collective innovation effort of many individuals and companies is generally known as open-source on the Internet and it has lead to many advances in the computer technology, such as the free Linux operating system. At first businesses felt threatened by this wave of developments on the market because the businesses perceived that open-source solutions were in competition with their products. In many cases this was and still is in fact true; however, a couple of companies, including IBM, are exploiting this new way of innovation for their own and for a common benefit (Vujovic & Ulhøi, 2008). Because software companies operate in an increasingly instable environment, they struggle to create continuously new and better products. By exposing the computer code to the public on the Internet, companies can benefit from ideas submitted by the public, especially other companies. Furthermore, companies benefit from free bug finding and testing by external users but one of the primary reasons for “going open-source” is the quick adoption and spread of the company’s technology at a relatively little or no cost. The spread of IBM’s open-source technology, for example, is also free marketing for the company. But how can companies make money by offering something for free?

The closed innovation model (the traditional model of providing software without revealing the software code) can be combined with open-source, so the company can charge for the product. In other cases, the company can reveal the technological platform on the Internet for free and then sell specialized tools which utilize the new platform. The big money savers are obviously the shared development, testing, and maintenance costs since many interested parties work on the same project.

The knowledge-sharing model of open-source is nothing new, however. The philosophy and the benefits of open innovation models have been already realized in the third quarter of the nineteenth century. Back then, open innovation was practiced in the UK iron and

US steel industry. The cooperation of many industry players ended the domination of proprietary technologies for which costly royalties were due (Vujovic & Ulhøi, 2008). Given the dynamic environment of the IT industry and the short lifespan of computer technologies, the adoption of open innovation models gained much more popularity. By analyzing the largest open-source players in the market, Vujovic and Ulhøi put together a list of supportive strategies, which is shown in Table 2. Several of these strategies are quite relevant from a top management perspective as well, such as deploying open-source to block a competitor and using the open model as a gateway for greater market share.

Table 2

Strategies for adopting the open-source approach (Vujovic & Ulhøi, 2008).

Business Strategy

Obtaining higher market share

Obtaining market power

Better adoption of a product and thereby establishing standards

Shifting competitive advantage to another architectural layer

Making the product more ubiquitous

Delivering faster time-to-market

Spurring innovation

Complementing a revenue core stream

Blocking a competitor

Conclusion

Reviewing the rather recent emergence of the IT industry and the software industry in particular, several parallels can be drawn to management history. While Taylor’s scientific management was a highlight in the evolution of management science (Wren, 2005), the software industry seems to be lagging behind such great advancement. Due to its high level of complexity, the software development discipline is still plagued with quality problems stemming from a lack of standardization. Similar to Taylor’s efforts, managers need to analyze software development processes and develop industry-wide standards and measures. Once such measures and procedures exist, this will help make software projects much more predictable.

Much of today’s software industry practices would have been a déjà vu for Taylor, if he was still alive. In addition, the anomie and social disorganization concerns during the social person era apply today more dramatically than in the past. Mayo described in the 1940s how managers overemphasized on technical problems in the hope of raising efficiency ignoring the human social element (p. 296). The same situation is now evident to a larger degree in the computer industry. The rapid technological advances have created many opportunities and changed the work environment drastically. At the same time, however, management was unable to prepare for these dramatic shifts technology would bring to the workplace. At best, managers are simply reacting to technological advances because the consequences are mostly unpredictable given the complexity of human nature. For example, email brought several benefits such as low cost and simple asynchronous communication; however, many email messages are misunderstood because they are not written appropriately. Moreover, IT knowledge workers are struggling to keep up with the vast number of messages received per day as they constitute a severe disruption of the daily workflow.

As knowledge workers are becoming more and more essential to an organization’s survival and as organizations in this industry mature and require greater headcounts, the span of control is becoming an issue for managers to handle correctly. As discussed in Wren (2005), as the team size increases, the number of interrelations to be managed rises astronomically (p. 353). Managing larger teams poses a great problem because the sheer number of interrelations makes it also more difficult to develop trust within the team. Motivating large groups of knowledge workers can hence be tricky, especially because creative tasks can require a large degree of collaboration. Work design is hence a major hurdle for future managers to overcome. Much emphasis has been on hygiene factors and not on motivators of the workforce. Flexible hours, telecommuting, empowerment, and increased responsibility may help in the short-term but for the long-term management will need to find new strategies for retaining knowledge workers.

Product quality remains a big issue. Deming’s ideas are good but quality assurance in the software world is difficult to implement due to the lack of standards and measures. The open-source innovation model may provide some relief in this respect because the greater involvement of external developers can help improve overall quality. On the other hand, however, open-source projects are hard to manage for the same reason. Since open-source projects are self-directed and not owned by anyone in particular, those projects sometimes suffer from uncontrolled, tumorlike growth.

Several of Deming’s deadly sins (Wren, 2005, p. 463) apply directly to the software industry. Most products are made from scratch rather than from components and there is little standardization in software organizations. Since software developers have a tendency to see their job as a craft they defy standards and procedures. In addition, the rather complex environment with its dynamic requirements and the push for meeting deadlines make it easy for practitioners to lose sight of quality improvements through the preparation of organizational standards. High turnover and individual performance measures continue to be industry practice, even though many scientists, such as Deming, have argued for long that such measures are counterproductive.

Future managers need to find ways to compensate for the high turnover, if they cannot find a way to avoid it. The division of labor might work well for the company but it is not well perceived by the workforce which tends to require constant challenge. Top performers disfavor mundane tasks and prefer to walk away with all their knowledge. IBM has successfully deployed job enlargement for some time to combat this phenomenon (Wren, 2005, p.332). Unfortunately, this strategy might not work for every company and it can only be used within certain boundaries of the organization. Given the developments of the last two decades, managers will need to confront the discipline of knowledge worker management and find a workable solution for their organization.

The integration of management science with the advances in psychology and sociology may provide a route towards the solution of the knowledge worker management problem. It is crucial for managers to have an accurate understanding of the motivational drives for this particular group of the workforce. These employees enjoy higher income, greater flexibility and freedom, and greater bargain power. This puts them in a gray zone between the traditional, lower skilled employee and an owner in the company because knowledge workers create intellectual capital in the company. Because most of this capital is lost and remains with the employees when they decide to leave the organization, turnover can be much more damaging than with traditional workers. Managers can therefore not simply apply conventional strategies to this dissimilar group of employees; rather, they need to seek for more creative incentives for motivating and retaining knowledge workers.

References

Andres, H. P. (2002). A comparison of face-to-face and virtual software development teams. Team Performance Management, 8, 39-49. Retrieved March 15, 2009 from ProQuest.

Elliott, M., Dawson, R., Edwards, J. (2007). An analysis of software quality management at AWE plc. Software Quality Journal, 15, 347-364. Retrieved March 15, 2009 from ProQuest.

Flitman, A. (2003). Towards meaningful benchmarking of software development team productivity. Benchmarking, 10, 382-350. Retrieved March 15, 2009 from ProQuest.

Hamid, A., Tarek, K. (1992). Investigating the impacts of managerial turnover/succession on software project performance. Journal of Management Information Systems, 9, 127-145. Retrieved March 15, 2009 from ProQuest.

Kotlarsky, J., Oshri, I., van Hillegersberg, J., Kumar, K. (2007). Globally distributed component-based software development: an exploratory study of knowledge management and work division. Journal of Information Technology, 22, 161-174. Retrieved March 15, 2009 from ProQuest.

Mathew, J. (2007). The relationship of organizational culture with productivity and quality; A study of Indian software organizations. Employee Relations, 29, 677-697. Retrieved March 15, 2009 from ProQuest.

Mehta, N. (2008). Successful knowledge management implementation in global software companies. Journal of Knowledge Management, 12, 42-57. Retrieved March 15, 2009 from ProQuest.

Scott, J. E. (2007). Mobility, business process management, software sourcing, and maturity model trends: Propositions for the IS organization of the future. Information Systems Management, 24, 139-146. Retrieved March 15, 2009 from ProQuest.

Slavova, S. (2000). Offshore software development: strengths and weaknesses. Academy of Information and Management Sciences, 4, 16-22. Retrieved March 15, 2009 from ProQuest.

Vujovic, S., Ulhøi, J. P. (2008). Online innovation: the case of open source software development. European Journal of Innovation Management, 11, 142-157. Retrieved March 15, 2009 from ProQuest.