Overview: Application Development
The AWS Marketplace offers a large variety of commercial and open source offerings to augment application development within the AWS ecosystem. Sumo Logic's AWS Marketscape looks at the pros and cons of the most common app development tools and solutions from the Marketplace.
The job of writing and deploying software is radically different than it was just a few years ago, even for organizations far removed from the technology industry. While each enterprise is unique, internally developed software releases commonly used to occur on a relatively infrequent basis.
This is no longer the case: most businesses are rolling out new software updates with much shorter cycles and with a far greater sense of urgency than ever. These transformations are being driven by a collection of distinct, yet interrelated trends like stronger competitive pressures, Agile software development methodologies, DevOps practices, and cloud computing platforms. In response to these demands, enterprises of every type are implementing new policies for testing and deploying software.
AWS App Developer Solutions and Tools
Amazon has repeatedly demonstrated its solid understanding of how the software development and release processes are evolving. Consequently, AWS equips developers and administrators with a broad range of valuable products that embrace these new approaches.
These offerings increasingly blur the line between cloud and on-premise assets and procedures, and are part of a highly dynamic picture that sees many enterprises employing a collection of different tools to assist at each stage the software development lifecycle.
Three targeted AWS services are at the forefront of these efforts:
- AWS CodePipeline: A continuous delivery service that enables fast and reliable application updates. It orchestrates the build, test, and deployment workflow, and also helps optimize the entire process by providing strong visualization, automation capabilities, and diagnostic information.
- AWS CodeCommit: A cloud-based source code control system that provides enterprises with private, scalable, and secure Git repositories, which also integrate with the on-premise Git tools that may already be in production.
- AWS CodeDeploy: A cloud-hosted service that automates the vital job of deploying code to any destination, including on-premise computing resources. Following this approach helps reduce potential errors, and can easily be scaled to thousands of servers.
AWS App Development Solution Pricing
As is the case with many of its other solutions, Amazon’s application development tool pricing makes it easy to get started:
- AWS CodePipeline: A low ($1) monthly fixed price per active pipeline. “Active” is defined as a pipeline that has at least one code change per month.
- AWS CodeCommit: There’s no cost for up to five active users per month. Additional users are charged at $1 per user each month.
- AWS CodeDeploy: Amazon imposes no additional charges for deployments to AWS-hosted instances. On the other hand, on-premise instance updates are charged at $.02 each time.
AWS App Development Limitations
Until fairly recently, AWS had primarily served as a traditional cloud computing platform that was not tightly integrated with on-premise processes and resources. However, products such as AWS CodeDeploy are changing this perception, and it’s quite likely that Amazon will continue its march towards incorporating and servicing the entire IT portfolio—regardless of where it’s hosted.
Despite these advances, though, many enterprises will continue to rely on highly focused external solutions that have repeatedly demonstrated their effectiveness.
Third Party App Development Solutions
This array of specialized technologies–both open source and proprietary—addresses the entire software lifecycle, including design, development, testing, release, and performance management. Most of these solutions—and the rich ecosystem of products and services they’ve spawned—are well integrated with AWS but enable customers to maintain independence and thereby avoid vendor lock-in. They all offer highly flexible deployment alternatives (such as on-premise, cloud, or both), and are easily tailored to specific client requirements.
Third Party App Development Features
|Targeted, best-of-breed solutions||Cross language capabilities||Open source baseline with optional commercial extensions|
|Support for different development styles||Automatic build generation||Comprehensive version control|
|No single point of failure||Leverage distributed processing||Extensible via plugin architecture|
Third Party Development Software and Apps
|Atlassian||Atlassian supplies software for the entire application development lifecycle. Bamboo provides continuous integration, deployment and release management capabilities. BitBucket encourages team code collaboration and assists with Git repository management.|
|Github||GitHub fosters a fast, flexible, and collaborative development process that’s useful for individuals as well as teams. By hosting and managing code on GitHub, developers can keep their work private or share it with the world.|
|Jenkins||The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.|
|CloudBees||Developed by the creators and top contributors of Jenkins, CloudBees adds enterprise-class security, stability and manageability.|
|JFrog||JFrog provides world-class infrastructure for software management and distribution. This includes cloud-based as well as on-premise deployment options.|