Removing All Icons from the Desktop in Windows 7

No matter how hard I try, I always end up with a lot of junk on my desktop. There is never an end to the war I fight with my desktop to keep it clutter-free � this is evident from the programs I download, documents that I am too lazy to save elsewhere, and new program links that seem to pop up from nowhere. I like to see my desktop wallpaper and not have my view of the wallpaper blocked by useless icons. One cool way to win the never-ending desktop war is to disable the desktop�s ability to show the icons and instead pin the most common desktop icons � such as the Recycle Bin and other shortcuts � to the taskbar. Disabling the icons on the desktop is actually a very simple task. Most people never know about this feature because it was placed where you would never expect it in previous versions of Windows. In Windows 7, just right-click your desktop, expand View, and then select Show Desktop Icons. Almost instantly, the icons disappear. Don�t worry because the icons and folders on your desktop were not deleted. If you ever want to turn the icons back on, just repeat the preceding steps again. This is a very simple way to clean up the desktop quickly. It�s sort of like sweeping dirt under a rug. The desktop clutter is still there, but you can�t see it.

Source of Information : Windows 7 Tweaks 2010

Enabling Windows 7 Num Lock by Default

If you have a password that has both numbers and letters and you frequently use the number pad to enter part of your password, this hack is for you. I cannot count the number of times that I started to type my password and was then presented with a logon error telling me that my password was incorrect. I would sit there staring at the screen for a second before I realized that Num Lock on my keyboard was not on.

This is a great hack for every desktop computer with a full-size keyboard and a separate number pad. Turning on Num Lock by default on a laptop is not a good idea because most laptops do not usually have a separate number pad. Enabling this feature on a laptop will result in almost half your keyboard functioning as the number pad, and you would be much better off using the numbers instead of the letters. To get started, follow these steps:

1. Click the Start menu, type regedit, and press Enter.

2. When the Registry Editor loads, navigate through HKEY_USERS, .DEFAULT, Control Panel, and Keyboard.

3. Locate the InitialKeyboardIndicators entry, right-click it, and select Modify. To enable Num Lock, enter 2 into the box. If you want to disable it, enter 80000000 into the box with the Base set to Hexadecimal (80000000 is the hexadecimal equivalent of 2147483648 which is the system default value).

4. Then click OK to save the changes. That�s it!

If you are on a laptop and you attempted to enable Num Lock � even though I told you not to � and need to fix your system, repeat the preceding directions but replace the value of InitialKeyboardIndicators with 80000000 to disable the feature.

Source of Information : Windows 7 Tweaks 2010

Changing the Windows 7 Logon Screen Screensaver

If you turn on your computer and let it sit at the logon screen long enough, eventually the screensaver will appear. This setting can be tweaked so that the screensaver that you want to see instead is set and not the boring Windows default. Unlike changing your screensaver for your account when you are logged on, it is possible to change the logon screen screensaver setting only by using the registry. With the help of a few quick registry hacks, you can fine-tune the screensaver that is displayed and other settings, such as the screensaver Timeout value that determines how long before the screensaver is activated.

Follow these simple steps to customize your logon screensaver:

1. Start the Registry Editor. Click the Start button, type regedit in the box, and press Enter.

2. When the Registry Editor starts up, navigate through HKEY_USERS, .DEFAULT, Control Panel, and Desktop.

3. First, you need to tell Windows the logon screensaver is active. Right-click the Desktop key and select New and then String Value. Name the value ScreenSaveActive. Next, set the value to 1 by right-clicking it and selecting Modify. Enter 1 and click OK.

4. Set the amount of time the system waits after the last activity was detected before starting the screensaver. To do this, right-click the Desktop key and select New and then String Value. Name the new entry ScreenSaveTimeOut. Then, set the value to the number of seconds you want to wait before the screensaver starts by right-clicking the new value and selecting Modify. I like to set mine to 300 seconds for 5 minutes.

5. Now you need to set the screensaver you want to display. To do this, rightclick the Desktop key again and select New and then String Value. Name this value SCRNSAVE.EXE and set its value to the full path to the .scr file. For example, I use C:\windows\system32\Mystify.scr for the Mystify screensaver. Refer to below for a list of Windows screensavers and the paths you can use.

6. Close Registry Editor. You are now finished. After a reboot, you will see your new screensaver.

Windows 7 Screensavers
Screensaver Name Full Path
Bubbles C:\Windows\System32\Bubbles.scr
Mystify C:\Windows\System32\Mystify.scr
Photos C:\Windows\System32\PhotoScreensaver.scr
Ribbons C:\Windows\System32\Ribbons.scr
Blank Screen C:\Windows\System32\scrnsave.scr
3D Text C:\Windows\System32\ssText3d.scr

Source of Information : Windows 7 Tweaks 2010

Clearing Windows 7 the Last User Logon

Every time you boot up your PC, all computer accounts and users who have logged on to it display on the logon screen. This can be a big security risk because it shows the usernames of all accounts that someone can try to use to break into the computer. In addition, the logon screen can become cluttered with many user accounts. Therefore, it might be a good idea to enable the Do not display last user name policy. In previous versions of Windows that used the classic logon screen, this policy would just clear the User name text box so that an attacker would have no clue about the last account used to log on. With the removal of the classic logon screen in 7, this policy behaves slightly differently by removing the Account list on the logon screen and turning on basic User name and Password boxes.

Using the policy is easy, if you choose to enable it. If so, just follow these steps:

1. Click the Start button, type secpol.msc, and press Enter.

2. When the Local Security Policy editor loads, navigate through Local Policies and then Security Options.

3. Locate the Interactive logon: Do not display last user name policy. Rightclick it and select Properties.

4. On the Local Security Settings tab, select Enable, and then click OK.

5. Close the Local Security Policy editor and you are finished.

For those of you that don't have SecPol.msc in your version of Windows (only Professional version and higher) you will have to set the registry key manually:

1. Click the Start button, type in Regedit, and hit Enter.

2. Navigate through HKEY_LOCAL_MACHINE, SOFTWARE, Microsoft, Windows, CurrentVersion, Policies, then System.

3. Right-click dontdisplaylastusername and select Modify.

4. Set the value to 1 and click OK.

As soon as you log off or reboot, the new logon screen settings will be present.

Source of Information : Windows 7 Tweaks 2010

resolve the frequent troubles of LCD monitor Ourselves

TFT LCD monitors are rapidly becoming shipped with new computers by default. On this page I explain you the frequent trouble of TFT monitor and how to resolve them. 

No display or white screen:
If this is a new install make sure the refresh rate is not set too high. If you installed a new video card in your system make sure the refresh rate is not set too high. Under Windows, reboot the system and go into “Safe Mode” (Use F8 key on boot up) select safe mode and change the refresh rate under display properties to either 60Hz or Default. Then reboot the system and the screen will turn on. Maximum mode on 15″ TFT screens is 1024×768 and maximum mode on 17″ and 19″ TFT is 1280×1024. Check to see if the green light is on with the external power adapter. Make sure all plugs are secure and the video cable is properly attached to the computer.

Dark screen in games:
TFT Liquid Crystal Display monitors are a unique devices that are manufactured to meet excellent picture clarity and reproduction in a native mode. Outside a native mode graphics will be darker, fine lines and text will be thicker. Native mode for 15″ TFT panels is 1024×768, 17″ and 19″ TFT panels are 1280×1024. Most games can be configured to run at 1024×768 which should produce clean graphics.

Thick text:
As described above, TFT LCD monitors perform best in their native modes. Other modes can be used however the reproduction of text will vary in thickness depending on the mode the monitor is running in. Best text reproduction is view in the monitors native mode.

Faint or unseen text:
TFT monitors are Bright! So bright that sometimes text in a DOS program may be very faint or not seen. In order to see this text, you can reduce the contrast level down until the text is visible. TFT LCD monitors were manufactured to perform in a GUI environment such as Windows, Linux (X) and Macintosh. Older designed programs may have upgrades to enhance this effect to make the text legible.

Wavy lines on the screen:
In some instances you may encounter wavy lines on the screen. These are usually 1/4″ thick and move in a vertical motion. This is caused by a noisy electrical feed from a wall outlet. If you change your vertical refresh rate under display properties to 75Hz this effect should disappear.

Small dot on screen:
TFT panels by their very nature are difficult to manufacture. KDS uses displays from various suppliers including; Samsung, Hyundai and Acer, who all guarantee the display to be 99.99% free from pixel defect. What that means is a 15″ LCD display can have up to about 6-10 broken pixels and still be considered “acceptable”. Broken pixels are individual pixels, which are stuck on, off, or as one particular color. Depending on their location and intensity, they can be next to invisible or obvious. This is common to ALL TFT screens and is not considered a defect by the screen manufacturer.

Dark areas:
Retail TFT LCD monitor products employ the use of a single TFT backlight. This backlight is responsible to deliver full edge to edge brightness across the screen. On some models the screen may not be as bright in the center or the edges as other areas. This is due to the design the actual panel manufacture took to keep costs down so that the TFT panel is affordable for the retail environment. Prices of TFT panels vary according to added features (TV tuner, SVIDEO etc.). They also vary according to the number of backlights that are in the panel. High-bright monitors with multiple backlights can cost upwards of $2,500.00 for a 15″ panel.

Hiding Users on the Logon Screen in Windows 7

One of the features of the new logon screen is the list of all the user accounts on the computer. What if you created an account for running services? You do not want other users of your computer to have the option to log on to that account, because you designated it only to be used by applications running as a service. Maybe you have a secret user account that you don�t want anyone to see. With the help of a simple registry tweak, it is possible to hide any account on the logon screen so no one will know it exists.

Hidden away in the registry is the feature that Microsoft used in the past to hide system accounts from the logon screen. In the next few steps, I show you how to re-create the missing registry code so that you can use this feature again to hide your accounts:

1. Click the Start button, type regedit in the Search box, and then press Enter.

2. When Registry Editor loads, navigate through HKEY_LOCAL_MACHINE, SOFTWARE, Microsoft, Windows NT, CurrentVersion, and Winlogon.

3. You must now create a new key. Right-click the Winlogon folder, select New, and then select Key. Name this new key SpecialAccounts.

4. Right-click the new SpecialAccounts key, select New, and then select Key. Call this new key UserList.

5. Now you are ready to add the name of the account that you want to hide. To add a name, right-click and select a new DWORD (32-bit) value.

6. When the new DWORD is created, enter the name of the user�s account as the name of the DWORD. After you have done this, you can close the Registry Editor.

After you log off and back on or reboot, the user will not be displayed on the logon screen. If you want to hide all accounts and just have a User name and Password box, the next section is for you. If you opt for that method, you can hide all accounts and still log on to them. You just need to remember the username and the password because no accounts will be listed anymore.

If you ever change your mind and want the account to display on the logon screen again, just delete the DWORD that you made in the system registry, and everything will be back to the way it once was.

Source of Information : Windows 7 Tweaks 2010

What Is Sharding?

Sharding is the method MongoDB uses to split a large collection across several servers (called a cluster). While sharding has roots in relational database partitioning, it is (like most aspects of MongoDB) very different.

The biggest difference between any partitioning schemes you've probably used and MongoDB is that MongoDB does almost everything automatically. Once you tell MongoDB to distribute data, it will take care of keeping your data balanced between servers. You have to tell MongoDB to add new servers to the cluster, but once you do, MongoDB takes care of making sure that they get an even amount of the data, too.

Sharding is designed to fulfill three simple goals:


Make the cluster ?invisible.?
We want an application to have no idea that what it's talking to is anything other than a single, vanilla mongod. To accomplish this, MongoDB comes with a special routing process called mongos. mongos sits in front of your cluster and looks like an ordinary mongod server to anything that connects to it. It forwards requests to the correct server or servers in the cluster, then assembles their responses and sends them back to the client. This makes it so that, in general, a client does not need to know that they're talking to a cluster rather than a single server. There are a couple of exceptions to this abstraction when the nature of a cluster forces it.


Make the cluster always available for reads and writes.
A cluster can't guarantee it'll always be available (what if the power goes out everywhere?), but within reasonable parameters, there should never be a time when users can't read or write data. The cluster should allow as many nodes as possible to fail before its functionality noticeably degrades. MongoDB ensures maximum uptime in a couple different ways. Every part of a cluster can and should have at least some redundant processes running on other machines (optimally in other data centers) so that if one process/machine/data center goes down, the other ones can immediately (and automatically) pick up the slack and keep going. There is also the question of what to do when data is being migrated from one machine to another, which is actually a very interesting and difficult problem: how do you provide continuous and consistent access to data while it's in transit?


Let the cluster grow easily
As your system needs more space or resources, you should be able to add them. MongoDB allows you to add as much capacity as you need as you need it.

These goals have some consequences: a cluster should be easy to use (as easy to use as a single node) and easy to administrate (otherwise adding a new shard would not be easy). MongoDB lets your application grow�easily, robustly, and naturally�as far as it needs to.

Source of Information : OReilly Scaling MongoDB 2011

Preventing Vendor Lock-In as You Migrate to the Cloud

�Insanity is when you keep doing the same things expecting different results,� wrote Rita Mae Brown. In a similar vein, in The Life of Reason, George Santanyana (1863�1952) famously wrote, �Those who cannot remember the past are condemned to repeat it.� While IT has been battling lock-in since the earliest days of computing, not too much attention has been paid to this problem as IT rushes to madly to embrace the cloud.

To prevent being locked in to a single vendor, you need to ensure that the architecture you have selected can run on multiple clouds, and that the data can be easily migrated from Cloud A to Cloud B. While that sounds trite and simple, it�s still true. And in theory, it�s not hard. But as usual, God (or the Devil; take your pick) is in the details. Totally new development without any use of legacy code is the easy case, but it is not so common; we all carry around the accumulated baggage of the past. However, should you be fortunate enough to have this luxury, I would suggest developing on Eucalyptus or OpenStack, a new open source effort led by Rackspace and NASA, and using one or more of the most favored languages for cloud development, namely C++, Java, or Python, or PHP for less-demanding applications. This approach gives you the greatest choice of providers. Eucalyptus runs under VMware, is compatible with AWS, supports Windows Virtual Machines (in Eucalyptus Enterprise Edition 2.0), and is supported by many, if not most, of the cloud service vendors. In addition to Linux images, Eucalyptus EE 2.0 customers can now deploy images running on Windows Server 2003 and 2008 and Windows 7, along with an installed application stack in a Eucalyptus private cloud environment.

OpenStack, currently built with the Ubuntu Linux distribution and using the KVM virtualization hypervisor, is compatible with Amazon�s AWS and is expected to run directly on Linux as well as be compatible with VMware, Xen or Hyper-V. However, if, like most enterprises, you need to deal with an accumulation of legacy applications, then it is obviously important to understand what the accumulated inventory of platforms and languages consists of, and to determine whether source code is available or has been partially or totally lost (this happens much more than one might imagine).

Next, you need to determine whether to use this as the opportunity to recode or to just make the existing applications work in cloud. If you are recoding, then the previous advice holds. If not, vendor choices for migrating applications to the cloud will be dictated (and limited) by several constraints:

� Does the vendor support the operating system(s) and programming languages that you require?

� Which database management systems are required? Is there a vendor-maintained �image� that supports your DBMS?

� How much memory and processing power is required? Does the vendor provide sufficiently powerful machines, and is there room to grow?

� Do you choose a private, public, or hybrid cloud? What impels your decision?

� Do the management tools you have in place support management in the cloud? Are there upgrades available?

� How rapidly do your needs change, and can your vendor provision and deprovision fast enough?

� Does the vendor�s service level agreement (SLA) meet your needs?

� Is your auditor satisfied with the vendor�s documentation of its compliance with SAS 70 and ISO 27001? Is SysTrust certification available?

Source of Information : Implementing and Developing Cloud Computing Applications 2011

Desktop Virtualization

The first widespread use of virtualization was on the desktop. Companies tired of maintaining armies of technicians to tweak, fix, and upgrade desktop PCs. Operating system migrations, PC replacements, operational PC costs, and PC security concerns had become major and unaffordable costs. Managers wanted a standardized environment. Even better, they wanted an environment that can physically sit in a closet or a room full of servers.

The two main vendors to jump on this bandwagon were Citrix and VMware. As the workforce became more mobile, the importance of remotely accessing a virtual desktop increased. Today's desktop is really an end-user environment defined by a profile consisting of applications, documents, and configuration data. As end users rely more and more on mobile devices such as laptops, smart phones, and removable storage drives, they need desktop environments that they can access anytime, anywhere. With the traditional ?monolithic? desktop, the applications, operating system, and user data are all tied to a specific piece of hardware. Virtualization breaks the bonds between these elements into isolated layers, enabling IT staff to change, update, and deploy each component independently for greater business agility and improved response time. End users also benefit from virtualization because they get the same rich desktop experience, but with the added ability to access that computing environment from multitude of devices and access points in the office, at home, or on the road.

Virtual desktops are also superior to terminal services because they eliminate the headaches associated with application sharing and application compatibility. Instead of having to share a limited subset of applications that are compatible with terminal services, each end user gets a complete, standardized, and fully customizable desktop computing environment�a virtual machine. Each virtual desktop is completely isolated from other virtual machines, and IT administrators can provision and manage OS and application software just as they would with a traditional PC

Use of virtual desktops began about the turn of the millennium (2000) and are still a big deal. According to a June 2010 Morgan Stanley report, 6 half of the CIOs surveyed plan to use desktop virtualization within twelve months, which the firm believes could double the reach of client virtualization. Morgan sees the VDI (virtual desktop infrastructure) market growing to a $1.5 billion opportunity by 2014. This would represent a 67 percent compound annual growth rate. Not surprisingly, VMware and Citrix are expected to remain the dominant vendors behind that trend.

Source of Information : Implementing and Developing Cloud Computing Applications 2011

Patterns for Adopting Scrum - Start Small or Go All In

Conventional, long-standing advice regarding transitioning to Scrum or any agile process has been to start with a pilot project, learn from it, and then spread agile throughout the organization. This approach is the frequently used start-small pattern in which an organization selects typically one to three teams (of five to nine people each), gets them successful, and then expands Scrum from there. As Scrum spreads through the organization, new teams benefit from the lessons learned by the teams that have gone before. There are many variations of start small, depending on how many people the organization wants to transition and how quickly they want to do it. Start small can also be applied differently based on how riskaverse or uncertain about the transition the organization is. For example, in some cases the first team or teams will finish their projects before a second set of teams even begins. Other organizations will take an overlapping approach, where the second set of teams starts only one or two sprints after the first.

The start-small pattern, while popular, is not for everyone. Salesforce.com, for example, followed the opposite pattern (Fry and Greene 2006). I remember answering my phone on October 3, 2006, and hearing Chris and Steve from

Salesforce.com tell me that they had just converted 35 teams to Scrum overnight. They asked if Fd like to help. My initial thought was that they needed a psychiatrist more than a Scrum consultant. Not one to shrink from a challenge, though, I agreed to help, packed a copy of Freud alongside my laptop, and set off for their office in San Francisco. Part of what I saw there wasn't entirely unexpected� teams and individuals in an uproar over such a sudden, far-reaching change�but I also saw other things that helped this large-scale, rapid adoption succeed. Salesforce.com was pursuing the all-in pattern, which draws its name from a poker player who bets all of his chips on one hand. Salesforce.com has a hard driving, aggressive, achievement-driven culture that would not have been a good fit for a cautious start-small approach. When key executives were presented with a proposal to adopt Scrum, they were convinced. They felt that if Scrum was worth doing for one team, it was worth doing for all teams, so they chose to go all in.

Surprisingly, the all-in and start-small patterns can be combined. An increasingly common approach is a one- to three-team pilot project followed immediately by going all in. The pilot in this case serves the typical purpose of allowing the organization to learn about Scrum and how it will function there. However, the pilot in this scenario also serves the more important purpose of increasing organizational awareness about Scrum. If you're going to transition 200 or more people all at once, it is extremely helpful to be able to point to one team who has already done it and say, "We're all going to do what they did."


Reasons to Prefer Starting Small
The start-small approach offers several advantages.

� Starting small is less expensive. An all-in transition will almost certainly cost more than starting small. Because of the greater number of people learning a new way of working all at the same time, all-in transitions generally rely more heavily on outside coaches, ScrumMasters, and trainers. The slower pace of a start-small adoption allows the organization to build internal expertise and then use that to help the teams that start later. Starting small also saves money because early mistakes affect only a subset of the organization. Tom Gilb, who was perhaps the original agilist, has written, "If you don't know what you're doing, don't do it on a large scale" (1988, 11).

� Early success is almost guaranteed. By carefully selecting the initial project and team members, you can almost guarantee the success of your first Scrum project. You may consider this cheating; I don't. When starting small, a goal of the first few projects is to generate the knowledge that will enable the successful rollout of Scrum. There may be value in starting with a project and team that make success easy and then learning from its experiences. Additionally, an early success can be vital to gaining buy-in from skeptics or fence-sitters.

� Starting small avoids the big risk of going all in. An all-at-once transition can be very risky. Small mistakes will be magnified across the entire transition effort. Perhaps the most significant risk to an all-in approach is that you will be unlikely to get a second chance. If you start to transition the entire organization, make a mistake that increases resistance, and then revert to your pre-Scrum process while figuring out how to overcome the newly discovered issues, it is unlikely that team members will give you a second chance to start the transition. Resistance by that point will likely be so entrenched that the transition effort will have failed. By contrast, if you start small and find a fatal flaw in how you've started, you can keep the next round the same size as the current one, rather than expanding, effectively restarting the transition process.

� Starting small is less stressful. Twenty-first century organizations and their employees are under constant stress. An announcement that the whole development organization is adopting Scrum, which affects so many aspects of everyday work, could be the proverbial straw that breaks the camel's back. The stress of transitioning is reduced by starting small because early adopters become coaches and ambassadors. They encourage other groups to make the transition with stories of their successes and honest discussions of the challenges they faced and overcame.

� Starting small can be done without reorganizing. Most organizations that fully adopt Scrum will eventually undergo some degree of reorganizing. This can create further stress and can increase resistance from some individuals. By starting small, the need to reorganize can be put off longer, ideally until valuable experience with Scrum has been gained.


Reasons to Prefer Going All In
Just as there are reasons to prefer starting small, there are reasons to prefer an all-in transition:

� Going all in can reduce resistance. In anything less than an all-at-once transition, there will always be some skeptics who will hold out hope that the whole effort is a pilot that will soon be abandoned. Like Cortez burning his boats at Vera Cruz to prove his resolve to his soldiers, an organization that goes all in is demonstrating both its commitment to the new process and also that it will not turn back. This level of visible commitment to the change can be beneficial in helping the change succeed.

� It avoids problems created by having Scrum and traditional teams work together. If you transition anything short of the entire company all at once, you run the risk of having some teams using Scrum and others not. This means there will be times when a Scrum team needs to coordinate work with a traditional team, which creates challenges because of the different attitudes Scrum and traditional teams bring to things like planning, deadlines, and communication. These problems go away when the entire organization adopts Scrum at the same time. Chris Fry and Steve Greene ofSalesforce.com report that "the key factor driving us toward a big-bang rollout was to avoid organizational dissonance and a desire for decisive action. Everyone would be doing the same thing at the same time" (2007, 137).

� An all-in transition will be over more quickly. One of the central tenets of this book is that an organization is never "done" becoming agile; there are always improvements to be made. However, there is definitely a time when employees can look back and say of the transition that the worst is over. An organization that goes all in can reach this point more quickly.


Choosing Between Going All In and Starting Small
As I mentioned at the start of this chapter, starting small has been the default approach recommended by most agile authors and used in most agile adoptions. The combination of this approach's low risk and high likelihood of success make it hard to find fault with. Always choose to start small when there is reluctance by leaders in the organization to fully commit to Scrum. Success, even on a small scale, can be the best way to convince the skeptics. Always start small when there is a high cost associated with failure. If the cost of failure is too high for those leading the transition, starting small is the way to go, even if it may not be best for the organization as a whole. Start small is probably not the best approach when your organization urgently needs the benefits of Scrum. (But if you do choose to start small, scale quickly.) Starting small is safe, but it's slow.

Going all in should be used in limited cases. Consider going all in if time is critical. Although an all-in approach may cost more money, it will cost less time. If time is your primary concern, all in may be the best solution. Consider going all in if you, like Salesforce.com, want to send a clear message to a small number of critics and stakeholders that Scrum is here to stay. Never go all in without enough experienced ScrumMasters to serve each team. It doesn't matter in the short term whether these ScrumMasters are internal or external; but remember that eventually you'll want all of your ScrumMasters to be internal employees. Finally, size matters. If there are only ten of you, you might as well go all in. But for teams of more than perhaps 400, going all in may not be logistically possible.

Whichever route you choose for adopting Scrum, remember that choosing this pattern is only the first of the many decisions you'll need to make when transitioning. You will next need to decide whether to make your transition public.

Source of Information :  Pearson - Succeeding with Agile Software Development Using Scrum 2010

ADAPTing to Scrum

Lori Schubring was among the first to realize that things had to change. An application development manager for a large manufacturing company, Lori realized that its development process had become "so formalized that we hindered our ability to remain flexible for the business. It got to the point where we weren't turning around project requests fast enough" (2006, 27). Aware of the need to change, Lori attended a free, half-day seminar introducing Scrum. What she saw there was a better way to develop software, a framework she thought might help her organization. As such, Lori developed the desire to change to Scrum. Next, she acquired the ability to do it by participating in a ScrumMaster class, attending an agile conference, and visiting a company that had already adopted Scrum. Lori then promoted Scrum to her boss and team, convincing them of its benefits. Finally, Lori transferred some of the implications of her team using Scrum to the rest of her company so that organizational gravity would not pull the team back to where it had started.

Lori's story encapsulates the five common activities necessary for a successful and lasting Scrum adoption:

� Awareness that the current process is not delivering acceptable results

� Desire to adopt Scrum as a way to address current problems

� Ability to succeed with Scrum

� Promotion of Scrum through sharing experiences so that we remember and others can see our successes

� Transfer of the implications of using Scrum throughout the company

Conveniently, these five activities�Awareness, Desire, Ability, Promotion, and Transfer�can be remembered by the acronym ADAPT. These activities are shows Awareness, Desire, and Ability as overlapping, whereas Promotion and Transfer repeat and occur throughout the transition effort. After you have transitioned, this cycle will continue as you continuously improve.

The five activities of ADAPT are based on ADKAR (Hiatt 2006), a general model of change that includes the steps of Awareness, Desire, Knowledge, Ability, and Reinforcement. In practice, I have found separating Knowledge and Ability to be unnecessary. In a field such as software development, knowledge without ability is meaningless. Additionally, the Reinforcement step of ADKAR is replaced in ADAPT with separate Promotion and Transfer steps, emphasizing the importance of these activities to a successful transition.

An organization that successfully adopts Scrum can be thought of as engaging in these activities at multiple levels:

� Organizationally. The organization as a whole will engage in these activities. No matter how aware one person or group is, there must be a critical mass of people with a similar awareness before the organization will be able to collectively move forward. In thinking of the ADAPT model at this level, we may speak of a company with an organizational desire to adopt Scrum. Or we may say that our organization currently lacks the ability to do Scrum.

� As individuals. Because organizations are made up of individuals, it is important to acknowledge that individuals will progress through the overall transition at different rates. For example, you personally may already have acquired the ability to do Scrum; you've learned some new skills and some new ways of thinking about software development. A colleague, on the other hand, is only starting to become aware that the current approach isn't working.

� As teams. Individuals can be aided or hindered in the transition to Scrum by their teams. Teams tend to progress through the ADAPT cycle more or less together. In the same way that studies have shown individuals are more likely to be overweight if their friends are overweight (Thaler and Sunstein 2009), you are more likely to have a desire to do Scrum if the rest of your team does as well.

� Per practice. The ADAPT model can also be applied to each new skill that is acquired as part of adopting Scrum. Consider the increased reliance on automated unit testing that is common on Scrum teams. The team and its members must first become aware that the current approach to testing isn't working. They must then develop the desire to automate more tests and to do so earlier in the process. To do this will require that some team members learn new skills. Promoting the team's success with automated testing will encourage other development teams to emulate them. Finally, transferring the implications of the team doing more automated testing to other groups ensures that forces external to the team do not prevent it from continuing with the new practice.

One of the first things you'll need to do, whether you are currently using Scrum or just starting your adoption, is to decide where your individuals, teams, and organization are in their ADAPT sequence. It could be that you are acquiring the ability to do test-driven development on a team that is promoting its success inside a department that desires to implement Scrum. The overall organization, however, may be aware of only a general need to change. This chapter will discuss not only the five ADAPT activities but also the tools you will need to encourage and develop awareness, desire, ability, promotion, and transfer throughout all levels of the organization.

Source of Information :  Pearson - Succeeding with Agile Software Development Using Scrum 2010

Why Becoming Agile Is Hard (But Worth It)

Many software development organizations are striving to become more agile. And who can blame them? Successful agile teams are producing higher-quality software that better meets user needs more quickly and at a lower cost than are traditional teams. Besides, who wouldn't want to be more agile? It just plain sounds good, doesn't it? It is almost as though one cannot be too thin, too rich, or too agile. But beyond the buzzword and hype, organizations that take becoming agile seriously by adopting a process such as Scrum are seeing dramatic benefits.

They are seeing significant gains in productivity with corresponding decreases in cost. They are able to bring products to market much faster and with a greater degree of customer satisfaction. They are experiencing greater visibility into the development process, leading to greater predictability. And for them, out-of control, will-it-ever-be-done projects have become a thing of the past.

One company to realize these benefits by adopting Scrum is Salesforce.com. Founded in 1999 in a San Francisco apartment, Salesforce.com is one of the true, lasting dot-com-era success stories. With revenue of more than $450 million and 2,000 employees in 2006, Salesforce.com had noticed the frequency of its releases had dwindled from four a year to one a year. Customers were getting less and waiting longer to get it; something needed to be done. The company decided to transition to Scrum. During the first year of making the switch, Salesforce. com released 94% more features, delivered 38% more features per developer, and delivered over 500% more value to its customers compared to the previous year (Greene and Fry 2008). In the ensuing two years, revenue more than doubled to more than $1 billion. With results like these, it is not surprising that so many organizations have transitioned to Scrum. Or at least tried to.

I say "tried to" because transitioning to Scrum and other agile methods is hard�much harder than many companies anticipate. The changes required to reap all of the rewards being agile can bring are far reaching. These changes demand a great deal from not only the developers but the rest of the organization as well. Changing practices is one thing; changing minds is quite another. It is my aim in this book to show not only how to transition well but also how to succeed long term.

I've personally witnessed several failed agile adoptions that could have been prevented. The first was in a company that had spent more than a million dollars on its transition effort. Executives brought in outside trainers and coaches and hired five people into an "Agile Office" to which new Scrum teams could turn for advice. The company's failure was the result of thinking that the implications of adopting Scrum would be restricted to only the development organization. The executives who initiated this transition thought that educating and supporting developers would be sufficient. They failed to consider how Scrum would touch the work of salespeople, the marketing group, and even the finance department. Without changes to these areas, organizational gravity pulled the company back where it had started.

For completely different reasons, Josef ultimately failed at introducing Scrum to his company. A newly promoted and first-time project manager, Josef was instantly attracted to Scrum because it fit his natural management style. Josef easily convinced his team�who had all been his peers as little as one month before�to try Scrum on their new project. The project was wildly successful, earning accolades for the team and winning Josef the chance at a much larger project. Josef introduced the new project team to Scrum, and most members were willing to try the new approach. Although those working on the project were happy to use Scrum, some of the functional managers to whom they reported got nervous about what Scrum might mean to their careers. Josef's luck ran out. The functional managers�in particular the directors of quality assurance and database development�banded together and convinced the vice president of engineering that Scrum was inappropriate for projects of the complexity and importance being done in their company.

Caroline fared a little better. A vice president of development in a large data management company, Caroline had more than 200 developers in her organization. After seeing the benefits of Scrum on one project, she excitedly launched an initiative to introduce Scrum across her division. All employees were provided with training or coaching. Within a few months nearly all teams were producing working software at the end of each two-week sprint. This was great progress. When I visited this company a year later, though, the employees had failed to make any additional headway. To be sure, teams were producing higher-quality software and doing it a bit faster than they had before starting with Scrum, but her company's gains were only a fraction of what they could have been. Caroline's company had forgotten that continuous improvement is part of Scrum.

Frightening, isn't it? Each of these failures was a well-intentioned effort to transition to Scrum.Yet all the good intentions in the world could not keep them from failing. Don't worry, though. Transitioning to Scrum may be hard, but it's entirely possible with the right approach. In this chapter we examine why transitioning to any agile development process, including Scrum, is especially difficult.

We detail some of the challenges that derailed the companies I've mentioned. Most important, though, we look at the reasons why the benefits of becoming an agile organization are more than worth the effort.

Source of Information :  Pearson - Succeeding with Agile Software Development Using Scrum 2010

Microsoft Also Endorses the Hybrid Cloud Model

In November 2009, Bob Muglia, president of Microsoft�s Server and Tools business, unveiled Windows Server AppFabric and Windows Azure platform AppFabric, a technology that bridges on-premise and cloud deployment and management scenarios for the Microsoft development environment.

Windows Server AppFabric delivers a set of capabilities for hosting services (RESTful or SOAP-based), workflows, and application-level monitoring (based upon efforts formerly code-named �Dublin�). This technology provides developers with a prebuilt infrastructure that improves the scalability and manageability of composite applications. As a result, much of the complexity related to infrastructure is already taken care of.

AppFabric is complemented by Windows Azure, which will help developers build composite applications that span both on-premise and cloud environments. The Service Bus and Access Control services (previously called .NET Services) provide capabilities for secure connectivity between loosely coupled services and applications, enabling them to navigate firewalls or network boundaries.

Source of Information :  Implementing and Developing Cloud Computing Applications 2011
 
Support : Creating Website | Johny Template | Mas Template
Copyright © 2011. Information Computer and Technology - All Rights Reserved
Template Modify by Creating Website
Proudly powered by Blogger