Perforce Software (www.perforce.com) has released six resolutions for software companies to consider when managing their development environments. The resolutions encourage companies to maintain well organized codebases and development processes to foster their growth.
"The new year is an ideal time for every organization to take an inventory of what is working well and find ways to improve -- and there’s no better place to start than at the very foundation of the code," says Randy DeFauw, technical marketing manager at Perforce. "In my experience with our customers, employing these software practices not only results in fewer issues down the road, but a more manageable codebase."
Perforce’s six recommendations for 2013:
° Deliver like Facebook: Facebook leads its industry because it delivers improvements to its site daily. Replicating this strategy is recommended, and easier to do now that the software tool stack can match that velocity. Even if companies are not building a Software-as-a-Service (SaaS) offering, product can still rapidly evolve internally without being formally released to customers. Harnessing the ability to deliver enhancements quickly will buy companies a considerable competitive advantage in their respective sectors. Added bonus: nothing keeps developers happier than seeing their code show up as live improvements in the product.
° Take Agile cross-functional: Agile isn’t just for developers anymore, and companies should not limit its use to their software teams. DevOps was all about bridging the gap between development and operations, and companies will find greater success if their entire team is responding as quickly to new requirements as the development team. Consider introducing agile project management to non-techies such as Sales, Marketing and Human Resources teams.
° Get everyone on the mother ship quickly: A software company’s two most valuable assets are its employees and its intellectual property. Do not operate them in silos. Instead, reuse IP wherever possible and make sure teams can work with each other. If talent is being acquired by purchasing a startup, ensure their past work can be incorporated into the existing system in a week, not a year. Let them keep using the tools they are accustomed to, even if it means running something more enterprise-ready in the background.
° Look before leaping into the cloud: The low costs, infinite scalability and minimal administration requirements make the cloud seem appealing to any company. The reality, however, is that performance, ownership and reliability issues need to be considered before deploying to the cloud. If employees are asking for a cloud-based solution, figure out why. Do they want Dropbox because there is no decent place to store their design documents and test plans? That can be fixed without cloud services.
° Be realistic: Engineers are practical people. Lay out clear goals with a reasonable time frame. If current delivery cycles are a year, they cannot be shortened to a week overnight. However, reducing the timeframe from a year to three months is indicative of significant progress and achieves buy-in for the next step.
° Study the America Invents Act: A major change to U.S. patent law is going into effect in March 2013. To to prevent potential intellectual property lawsuits, it is critical to study and fully understand the nuances of first-to-file, prior use and other looming changes. Have a plan in place for adjusting software processes (from initial design through market introduction) to meet the changing legal framework. Companies using open source software should take particular care to ensure they are in compliance with all the licensing and copyright provisions.