Apple has been a hot topic in the tech world lately, and not because someone left a top-secret developmental iPhone 7 in a San Francisco bar. Instead, the company's like-clockwork annual product release has led to disappointment as the software-hardware web becomes more unwieldy.
Software updates for iPhones and Macs are starting to detract from the stellar reputations of their predecessors, leading some to wonder whether this could be what Russell Ivanovic, a longtime iOS developer, calls "The Year of Android." For now, most complaints are bug-related, but the helter-skelter software release management has experts worried about potential holes in Apple's development process.
Aggressive software release management cycles can pressure developers into taking shortcuts. This is especially true as hardware development becomes quicker and easier. Since Apple's launch events are generally broadcast live online, the software has to be ready to go when the hardware is. Without adequate time to test and develop new OS releases, Apple's software teams could be forced to compromise security for the sake of meeting deadlines and throwing parties filled with black turtlenecks.
In a post entitled "It Just Works," Ivanovic writes, "The yearly release cycles of OS X, iOS, iPhone and iPad are resulting in too many things seeing the light of day that aren't finished yet." Unfinished, preemptive software is one of many issues a secure Agile development process can help you avoid.
Keep Technical Debt in Mind
Apple fans (and app developers who depend on the platform to make a living) have spoken, and they're not pleased. Some feel that Apple's famously lean teams are getting stretched too thin by trying to keep up with update after update and release after release. Agile Scrum methodology is a powerful way to utilize smaller teams to adapt to rapidly changing customer demands and product offerings, but it does have its limits — especially where secure development is concerned.
Today's glitchy updates and annoying reboots are tomorrow's massive vulnerabilities. If developers are forced to forego secure Agile development strategies, then the accrued technical debt could lead to some truly frightening security breaches. With Apple Pay newly added to the mix, consumers will be lucky if crashing phones and vanishing apps are the worst problems they face.
Learn From the Best
Despite its recent stumbles, Apple remains one of the most highly regarded hardware and software companies in the world. After all, there's a reason the company has been imitated in every endeavor from laptops to smartphones to watches. It's too early to panic and fear the company has permanently lost its mojo, but there's a software release management lesson to be learned from Apple's recent glitches: If it's not ready, don't release it, no matter how fun the party's going to be.
Beyond that, test early and often throughout the software development lifecycle. The problems so far have been more frustrating than dangerous, but keeping pace with the hardware guys is flirting with disaster. Remember: It's all fun and games until somebody loses valuable data. Develop securely, my friends.
Photo Source: Flickr