The popularity of Agile and within it, Scrum, in software development has steadily grown over the last decade, as it allows organizations to deliver software faster than traditional methods while being flexible enough to accommodate ever-changing requirements. From software developers, project leaders, product innovators, to decision-makers wanting to embrace an Agile mindset-all can find this journey rich in valuable knowledge, skills, and insights. In this Agile for Software Development Proficiency Journey, you will start at the grassroots by acquiring a general awareness of Agile and Scrum concepts to transition from traditional ways of software development. In the second track, you will dive deep into the Agile best practices and principles to improve software requirements and design work processes. You will continue your journey in the third track by exploring how Agile methodologies are implemented in the development and testing phases of software development. Finally, in the fourth track, you will learn to adopt best practices to build an Agile mindset and to scale Agile to suit larger organizational goals. In a nutshell, the journey provides a strong foundation to help key performers and leaders in software development make well-informed decisions when it comes to embracing Agile practices or improving existing processes.
In this track of the Agile for Software Development Aspire journey, the focus will be on development & testing with Agile. You will explore Agile methodologies, extreme programming, Agile teams, and project management.
In this track of the Agile for Software Development Aspire journey, the focus will be on Agile organizations. Explore Cloud for Agile software development, DevOps for Agile, Agile models, and building an Agile culture.
The Agile methodology has become dominant in the software development scene over the last decade, as it allows organizations to deliver software faster than traditional methods while being flexible enough to accommodate ever-changing requirements. In this course, you'll learn the steps of the software development life cycle and the roles and responsibilities of a software development team, and the various software test methods. You'll learn the Agile software development methodology, the steps of the Agile, and the Agile artifacts. You'll also learn how to identify how Agile differs from the Waterfall methodology, and learn about the CI/CD process and how it relates to Agile. And finally, you'll learn best practices for transitioning a traditional software development team to Agile.
Scrum is one of the most popular Agile methodologies used today, because it helps organizations deliver quality in an environment of constantly changing requirements. In this course, you'll learn how Scrum works as an Agile approach to empower teams to deliver quality working software that is valuable to customers. You'll learn how to identify the following features of Scrum and their benefits in modern software development: backlog refinement, planning, sprint review, and retrospective. You'll recognize the key responsibilities of the scrum rules of product owner, scrum master, and developer, and how they support the Scrum paradigm. And finally, you'll learn how the product and sprint backlogs support the sprint process.
Being able to gather software requirements quickly is a crucial component of the software development life cycle. Sadly, traditional software requirements are static and do not respond well to change and are not very effective. Agile software requirement methods can be used to create requirements that adapt to change and are highly effective in creating software that will satisfy customer needs. In this course, you'll learn the differences between software requirements, functional requirements, and non-functional requirements. You'll examine the shortcomings of traditional requirement specification and the traditional management process. Finally, you'll learn about Agile software management, Agile software requirements, the software requirements specification document, and the software feasibility tool.
Today's software companies are looking for people who know how to do more than just work in an Agile teams. They desire employees who can design software to work with the quick, demanding iteration cycles of the Agile process. In other words, they are looking for someone with Agile software design experience. Agile software design is a valuable skill since it complements the Agile team approach by focusing on making software more maintainable and minimizing complexity as software changes and scales. In this course, you'll learn about the concepts of modularity, coupling, and cohesion. You'll examine the product vision and using product vision boards. Next, you'll learn the purpose of Agile scoping tools, the concept of minimal viable product, and the Definition of Done. Finally, you'll learn about UX design and Agile design best practices.
Software companies want predictability from their development teams in terms of software delivery, quality, and, just as importantly, cost. The Agile process makes development costs more predictable by promoting the breaking of work into small pieces so it can be accurately estimated by the Agile team. Organizations value Agile team members who are educated in efficient Agile estimation methods, as they make the cost of software projects more predictable and therefore less wasteful. In this course, you'll learn how Agile applies to the whole organization and needs to become part of the culture. Next, you'll learn why team involvement is important in the estimation process and various estimate techniques for determining the scope of work. Finally, you'll learn some of the key questions that should be asked during the estimation process and some of the pitfalls of using Agile estimation techniques.
Final Exam: Software Project Requirements and Design with Agile will test your knowledge and application of the topics presented throughout the Software Project Requirements and Design with Agile track of the Skillsoft Aspire Agile for Software Development Journey.
Agile methodologies in software development help deliver value or product faster, with better quality and the ability to respond to change. In this course, you'll be introduced to the concepts and methodologies behind Agile for software developers, including the benefits of using Agile in the software development industry today. You'll begin by learning the Crystal Agile framework and discover the various features of Crystal as an Agile methodology. You'll learn about feature-driven development and how it applies to Agile software development. You'll then explore Extreme Programming and its features. You'll examine the principles and steps of Lean development methodology and also learn about the use of Kanban, including the Just-in-Time approach and its benefits. Finally, you'll learn how the Agile methodologies compare by asking the question of how truly Agile each methodology is.
The Extreme Programming methodology is intended to improve software quality and responsiveness, as well as handle changing software requirements. In this course, you'll learn how Extreme Programming is a framework that aims to produce higher quality software and an efficient and positive way of life for the developers on the team. You'll dive deep into the Extreme Programming methodology including its concepts, life cycle, and roles. You'll explore source control tools such as GIT, as well as how they are used in Extreme Programming. By the end of the course, you'll have also learned the benefits of Extreme Programming, including the interconnected set of twelve practices and how the methodology as a whole is helping to integrate Agile into software development for an efficient and dynamic team.
Self-organizing teams explore the notion of being a living organism and how every member affects the strengths and weaknesses of the team. In this course, you'll explore self-organizing teams and their components. You'll learn about self-organizing teams with Agile, including methods and technologies for promoting Agile collaboration within teams. You'll examine how to be an effective product owner and scrum master using examples in software development environment. Next, you'll learn about distributed teams, including best practices for a successful team and overcoming challenges. Finally, you'll examine how to build a strong Agile team, including monitoring and managing the team using metrics to become an effective Agile software development environment.
Agile team meetings are an essential part of software development. In this course, you'll explore the various areas of Agile team meetings. First, you'll learn the basics of sprint planning meetings, including running, managing a virtual meeting, and product backlog refinement sessions. You'll dive into each area of Agile team meetings and examine through working examples each of the Agile team meetings, including their objectives, goals, and benefits. You'll explore how to document the minutes of meetings and the role of each member attending them. Finally, you'll learn how to recognize best practices in all of the Agile team meetings and how to effectively build an Agile team meeting for software development.
Agile team management helps teams in an evolving landscape maintain focus on the rapid delivery of business value. In this course, you'll be introduced to a collaboration suite called Jira for Agile project management. You'll learn how Jira has become one of the leading tools used for Agile project management, encompassing all kinds of project management types and leveraging project management skills. You'll also learn about Jira's use in Agile software development and its benefits. Next, you'll explore areas in Jira for effective Agile project management using tools such as scrum boards to track Agile software project. You'll learn about effective Agile project communication, including how to use data analysis metrics to monitor and control an Agile project. Finally, you'll learn about the communication methods in Agile software project management.
Final Exam: Software Development with Agile will test your knowledge and application of the topics presented throughout the Software Development with Agile track of the Skillsoft Aspire Agile for Software Development Journey.
The cloud has various deployment and service models that can be combined with Agile software development methodologies to help your organization design and create your very own cloud strategy based on your organization's needs. In this course, you'll learn about Agile software development, cloud management, cloud identity and access management, the cloud physical infrastructure, the cloud logical infrastructure, and cloud privacy. Next, you'll examine the available cloud deployment models such as public, private, hybrid, community, and virtual public clouds, as well as multi-cloud and multitenancy environments. You'll then move on to explore cloud service models such as Infrastructure as a Service, Platform as a Service, and Software as a Service. Finally, you'll learn about advanced topics such the Internet of Things.
Software development is a complex process that can be made easier with the use up Agile. The benefits are amplified when combined with DevOps and the cloud. In this course, you will takes a closer look at the relation between Agile, DevOps, and the cloud. First, you will learn about the features of DevOps and its benefits. Next, you will learn about the Agile development process and the Agile life cycle. Next you will learn about continuous integration and CI/CD. You will then learn about cloud stability and the Agile, DevOps, and cloud interaction. Finally, you will learn about the Agile cloud architecture and how the cloud provides scalability.
Even though Agile software development adapts well to changing requirements and is scalable, there is still a steep learning curve for how to effectively use it in the organization. In this course, you'll explore the challenges faced by an organization transitioning to Agile. First, you'll learn about several Agile frameworks including the Hybrid, Lean, and Bimodal Agile models and frameworks. Next, you'll learn about Agile estimation methods, Agile benefits, and scaling Agile. You'll move on to examine the SAFe framework for Agile and the LeSS framework. Finally, you'll learn about scaling scrum, Scrum challenges, and the Scrum of Scrums meeting.
In order for Agile to be effective, it needs to become part of the organization and corporate culture. In this course, you'll learn how to build an Agile culture in the organization. First, you'll examine the challenges an organization is likely to face when transforming into an Agile organization. Next, you'll learn how to establish an Agile governance framework that will guide the organization on the best practices for building an Agile team, mentoring the team, and building the Agile culture. Finally, you'll explore Agile conflict resolution, moving towards Agile maturity, and effective Agile management.