Wednesday, August 22, 2012

Software Configuration Management


Plumbing1 239x300 Ripping out the Plumbing: Why Thinking about Replacing your SCM Tool Could be a Good Idea 



In many ways, software configuration management (SCM) is very similar to a plumbing system. It was probably there when you bought your house, or joined your company. It becomes out-dated and inefficient, and can end up costing a lot more just to maintain than replace. How often do people realistically think about replacing their plumbing, or their SCM tool for that matter? Sure, the transition often requires upfront costs and a temporary lag in progress while a new tool is implemented and teams come up to speed. But what are the potential benefits of reevaluating your toolset, and can those potential benefits outweigh the costs of disturbing the status quo?




 Elimination of Merge Hell

Teams often struggle with merges for a release, and end up in “merge hell” . In some cases, the pain is so bad that software doesn’t even get released, or teams have to spend weeks cleaning up a branch. If this was the plumbing system in your house, it could be the equivalent of having a shower that only has ice cold water. This is a problem that we couldn’t tolerate at home, yet because it is accepted part of our day to day “SCM” lives, we tolerate it. Would you take an ice cold shower every day or would you do something about it?

SCM Performance Improvements

Many SCM systems suffer from performance issues. This could be due to the size of the repository or the performance of the network. A huge benefit of changing to a new system is performance improvements – is there a faster tool out there? The productivity gain alone when going from 15 minute check-ins to 30 seconds saves your development team hours. If this was your house, would you tolerate a sink that dribbled water out when you turned the faucet?
SCM tools are highly engrained in day-to-day software development activities. As a result, many processes, regardless of their inefficiency or difficulty, become routine.  When these processes become routine, it is often difficult to realize how impeding they are, or how much these processes can be improved. Many teams are starting to investigate the benefits of “ripping out the plumbing,” by looking for tools that will help them improve software development processes.
Processes such as branching and merging, and even accelerating development as a whole are increasingly important to dev teams, but are proven difficult to establish without the proper tools. So, while replacing your software configuration management tool may seem like an overwhelming task, the potential value that teams can gain from evaluating their tools for can have a dramatic effect on productivity. With the speed and capability of today’s tools, it seems worthwhile to take a step back and see how these new solutions might fit in with your development process and help you optimize the efficiency of your development team.

 

The Changing Landscape of SCM

 http://accurev.com/blog/tag/software-configuration-management/It’s 1998. I’m just starting my job at Rational Software, supporting ClearCase. During my training and through my first few months handling customer issues, I developed a deep understanding of the complexities of SCM and the heavy-handed centralized control that ClearCase provided its customer base. Wrappers, triggers and script automation were the key to a tightly controlled, centralized development environment.  In the developers’ eyes, dealing with the version control tool was just a part of doing their job.
Developers like to code, not “waste time” with tools or infrastructure. They are creators and want to create their masterpiece. Check-in, Check-out, Merge, etc. are not ways developers want to spend their time, especially if they are forced to deal with poor performance from an SCM tool, whether it’s by the tool itself, or the myriad of wrappers that were forced on top of the SCM tool their company chose. In a developers eyes, any time spent NOT writing code is wasted time.
However, despite the negative ramifications of SCM centralization and control to the developer’s productivity, there are absolute benefits to the enterprise that cannot be lost. Security, traceability, visibility and control are paramount to running a development organization.
My decision to come work at AccuRev in 2001 was based on the software’s unique ability to provide all the features the enterprise needs, while minimizing the negative impact SCM has on developer productivity. The ease at which AccuRev provides visualization and control over the entire development process was truly a game changer.  And while still a centralized SCM tool, AccuRev was designed to minimize the pain developers felt during their day to day operations.
It’s now 2012 and the SCM landscape has changed dramatically for developers. De-centralized / Distributed development is all the rage now. Version control tools such as Git and Mercurial are providing developers with the experience they demand. Local copies of repositories give unparalleled performance. Strong branching models provide near painless branching and merging. Tools like Git are designed with the developer in mind. Performance, merging strength and extremely in-depth control of all operations are the focus of product features.
All that said, while distributed SCM tools are great for developers and fine for open source development, Enterprises are experiencing chaotic development and losing control in their engineering organizations. So which way do you go? Centralized appeases the Enterprise, De-Centralized appeases the developers.
The answer is both. Now that AccuRev has introduced Kando, Enterprises can maintain all the security, traceability, audit-ability, visibility and process control their business depends on, while giving their developers exactly what they want – to use Git for their day to day development.

General Availability for Industry’s First Seamless Integration of Enterprise-Level Security and Visualization into Git

AccuRev released for general availability today the first Git integration that seamlessly bridges the world of commercial tools and open source software configuration management.
Kando diagram blog 287x300 General Availability for Industrys First Seamless Integration of Enterprise Level Security and Visualization into Git
AccuRev’s Kando, an enterprise security and compliance platform for Git, which was released in beta in January, complements the open source SCM tool with additional functionality, allowing organizations using Git to simultaneously leverage enterprise-level security and requirements traceability.
Kando is the first software development solution that enables Git development shops to add workflow, issue tracking, security, change requirements and other capabilities to the software development process, all while maintaining the flexibility and familiarity of Git environments.
Kando’s ground-breaking enterprise-level security and compliance capabilities allow its users to:
  • Comply with enterprise-level regulations, by providing full audit and traceability
  • Secure Git with access control capabilities, and support for enterprise authentication via LDAP and Microsoft Active Directory
  • Visualize and manage development processes that use Git in AccuRev’s StreamBrowser™ environment
  • Support Software Change and Configuration Management (SCCM) through change-based development with AccuRev Change Packages
“Our Kando Beta announcement in January had an overwhelmingly positive response, and it is clear that Git adoption has expanded well beyond the Linux community, into product development and IT,” said Lorne Cooper, AccuRev’s CEO. “Kando can solve many security and requirements traceability problems that enterprise organizations face when adopting Git, and really allows Git an opportunity to scale the development process across enterprise software development teams.”

During the development of Kando, AccuRev established the Kando Technical Advisory Board, comprised of representatives from several enterprise organizations with Git environments.

 

 


Sunday, June 10, 2012

Features expected from Windows 8

Introduction             

           After the successful launch of Windows 7 in 2009, the company continues to rule the desktop, but has faltered in the emerging tablet space. The next version of its popular operating system, codenamed Windows 8, is designed to bridge the gap between PCs and slates, but will it be enough to help the world’s leading software company catch up to its competitors in the mobile space when it launches sometime in 2012?

         Just as important, will Windows 8 have the kind of compelling features that made Windows 7 a must-have upgrade for consumers and businesses alike? We’ve gathered together the top 8 announced or rumored features of Microsoft’s upcoming OS so you can decide for yourself.

Top Expected Features Of Windows 8 

1)Touch-friendly user interface 

         Say goodbye to the Start Menu, at least when it comes to the main desktop. Microsoft has demoed a flashy new user interface filled with touch-friendly live tiles that show everything from the news to your social media updates. Windows 8 also supports full-screen HTML 5 applications on the desktop and the ability to switch between apps with a single swipe to the left or right.

         “Tiles are better than icons,” Jensen Harris, director of PM: Windows User Experience, said in a demo video. “They have a little more space for the app to show its personality. Like the weather app can just show you the temperature without you having to open it.”
          
          Despite the slickness of the new OS, Microsoft may have a hard time convincing users that an interface that looks more like Windows Phone 7 than Windows 7 will work well on non-touch devices.

          "On a PC where you are still using a keyboard and mouse, or a laptop, where you don’t necessarily want to touch your screen, or only rely on a touch pad, I think it’s a harder sell,” said ZDNet's Mary Jo Foley. “I just can’t see myself — the way I work, and the way that I know a lot of other people work — having to click through those tiled boxes on the screen in order to find a program."

           Fortunately, a traditional-style Windows desktop will be available for apps that require it. However, it's not clear whether users will be able to disable tile mode entirely.

2)Snap for multi-tasking

          By default, Windows 8 won't even have traditional windows as native apps will run full screen without title bars or minimize/maximize widgets. To see more than one program at a time, you'll be able to "snap" one app to the left while another sits on the right. You can then adjust the dividing line between the programs to show more or less of each. Microsoft's Harris demoed Snap in this Microsoft video. 

3)Improved file copy feature

        Windows' obtuse file copying function has been a minor annoyance for years. Every copy operation has its own dialog box that shows you a single progress bar which may or may not provide an accurate estimate of how long the operation will take to complete.

        With Windows 8, Microsoft puts all current copy operations into a single dialog box where you can check their progress and pause/resume them. You'll also have access to a more detailed report that shows the filetransfer rate of each file copy and a more transparent warning when you try to copy one version of a file over another.

        Unfortunately, the estimates won't be more precise. In a blog post, Microsoft says that "estimating the time remaining to complete a copy is nearly impossible to do with any precision because there are many unpredictable and uncontrollable variables involved."

4)ARM processor support

        Windows 8 will be the first Microsoft operatingsystem to run on ARM-based processors in addition to traditional x86 chips from Intel and AMD. ARM processors such as Nvidia’s Tegra, Qualcomm’s Snapdragon and TI’s OMAP have dominated the smartphone and tablet space because they’re great at low-power, connected computing.

        Windows 8 for ARM will support a new mode called “always on, always connected” that allows any device to act like a phone, remaining in standby mode for hours without disconnecting from the Internet, then waking instantly the minute you need them to.

        At Computex Taipei, Microsoft VP of Windows Planning Mike Angiulo showed that both an ARM device and a standard x86 PCcould run the same piano playing application. He also demoed a notebook based Nvidia’s quad core Kal El CPU that could run Microsoft Office and print documents to a standard printer

5)Web apps on the desktop

        Like HP with its WebOS and RIM with BlackBerry Tablet OS, Microsoft plans to support a new class of programs called “Tailored Apps” that will use standard web languages such as HTML 5 and JavaScript, but be able to interact with the hardware and file system. By supporting these well-known languages, Microsoft can attract an army of additional developers and, since these they run through a browser engine, compatibility across both ARM and x86 hardware platforms is assured.

       However, we don’t know exactly how developers using Microsoft’s .NET framework and other popular programming languages will be able to build apps that work on both the ARM and x86 flavors of Windows 8. Will they be able to code once, run everywhere?
“At the highest level, people hear, oh it’s just the same code and it can run in both places, but we don’t really know that that is true,” ZDNet's Mary Jo Foley said. “And in fact, some of the things Microsoft said about having to rework office so that it works on Windows on ARM make me think it isn’t true.”

6)Windows 8 app store

        With Apple adding a Mac App Store for to OS X and everyone from Amazon to Lenovo getting into the app store game on mobile, a Windows 8 app store seems like a no-brainer. We don't know much about the look, feel, pricing or selection of the store because Microsoft's only official word on it comes in a blog post from Windows Division President Steven Sinofsky where he simple lists "App Store" as one of the many teams working on Windows 8.

        However, in April, Chinese site CnBeta posted the picture above, claiming that it came from a leaked build of Windows 8. Given the windowed appearance of this picture, we can only guess that this is either a fake, an early version or a version designed for Windows 7 users. We suspect that the final Windows 8 app store will have the same kind of tiled interface as other native Win 8 apps.

7)Native USB 3.0 support

        With speeds up to 10 times as fast as USB 2.0 and the ability to carry more voltage for charging, USB 3.0 offers a whole new world of speed and convenience. Though USB 3.0 controllers and devices will work under Windows 7 with third-party drivers, Microsoft is building native drivers into Windows 8 and developing an efficient new USB software stack. Your blazing fast external SSD should work better than ever! 

8)Kinect gesture control and other input methods

         Microsoft hasn't announced support for Kinect-style gesture control, but long-time observers feel confident that when Windows 8 launches in 2012, it will be there. Given Kinect's popularity on Xbox, we tend to agree.

        Windows Supersite's Paul Thurott told us he expects Microsoft to not only support gestures but all kinds of new input methods, including voice control and facial recognition.
"This doesn’t get a lot of press, but one of the big advantages, one of the big deals about kinect, even now in this early version is the voice-control stuff," he said. "People stand there and they wave their arms around in the air, and it’s interesting and it makes for a good demo, but the truth is, when you’re watching TV, it’s actually kind of nice to control the playback and the navigation with your voice."


*Source GADGETBOX -http://www.gadgetbox.msnbc.msn.com.