Atlassian’s guide to modern software development

Software is everywhere these days: phones, TVs, cars, vending machines, coffee makers, and pet toys all offer some software driven features. All of these products have been created by groups of people that have organized with the goal of making electronic signals behave in a desirable pattern. In short, software development is the overall process involved when taking a software project from conception to production delivery.

This process encompases the design, documentation, programming, testing and ongoing maintenance of a software deliverable. These various aspects are used to create a workflow pipeline, a sequence of steps that when followed produce high quality software deliverables. This pipeline is known as the Software Development Lifecycle.

The art of software development has many deep schools of thought. The following discussion is not a comprehensive guide, but a overview of the most recognized techniques. Software development today is generally executed with a complementary agile project management process. This process is in-effect during steps 3 and 4 from the Software Development Lifecycle.

A regular planning period is conducted in which expectations are set, dependencies are addressed and tasks defined. The tasks are executed and adjusted during a sprint period. During the sprint period these tasks are updated as they progress to completion. Specialized organizational software for task tracking, like Jira, is used to monitor the state of individual task within a holistic sprint view.

1. Concept
Projects are envisioned, designed, and prioritized. Confluence is a great tool to develop product research documents and share design files during this stage.

2. Planning/Roadmap
Stakeholders are identified, budgets set, and infrastructure requisitioned. Design documents from the concept phase are broken down into actionable tasks. Jira and Trello manage, track, and organize these task lists.

3. Code/Review/Test
Development teams work to build production ready software that meets requirements and feedback. CI/CD pipelines ensure efficient developer experience. Bitbucket offers collaborative code review tools and CI/CD pipelines which plugin to the code review process.

4. Deploy/Release and Hosting
With code approved and merged, it’s time to ship it. Bitbuckets CI/CD pipelines makes deployments as easy as clicking a button. The live production code will need a place to live. Consider using cloud hosting provided by Amazon AWS, Google Cloud Platform, or Microsoft Azure.

5. IT Support
Support and maintenance is required of active software projects. Jira Service Desk provides powerful tools to capture, triage, and resolve customer support requests.

6. Incident Management
Deprecation and end-of-life activities, including customer notification and migration are software development best practices.

1. Concept
Projects are envisioned, designed, and prioritized. Confluence is a great tool to develop Product research documents and share design files during this stage.

2. Planning/Roadmap
Stakeholders are identified, budgets are set, and infrastructure is requisitioned. Design documents from the Concept phase are reviewed and broken down into actionable tasks. Jira and Trello are used to manage track and organize these task lists.

3. Code/Review/Test
The development team works to produce production ready software that meets requirements and feedback. CI/CD pipelines are utilized to ensure efficient developer experience. Bitbucket offers code review tools which encourage iterative quality improvement through team discussion. Additionally, Bitbucket has CI/CD pipelines which plugin to the code review process.

4. Deploy/Release and Hosting
Once code has been approved and merged it’s time to ship it. Bitbuckets CI/CD pipelines can make deployments as easy as clicking a button. The live production code will need a place to live. Modern applications use cloud hosting provided by Amazon AWS, Google Cloud Platform, or Microsoft Azure.

5. IT Support
Ongoing support and maintenance is required of active software projects. Jira Service Desk provides powerful tools to capture and triage support requests.

6. Incident Management
Deprecation and End-of-life activities, including customer notification and migration. 

Source

Share:

Facebook
Twitter
Pinterest
LinkedIn

For reliable and quality Managed IT Services, IT Support and VoIP, Contact Precise Business Solutions 

Leave a Reply

Your email address will not be published. Required fields are marked *

Skip to content