Agile Archives - Jama Software Jama Connect® #1 in Requirements Management Fri, 04 Oct 2024 17:15:05 +0000 en-US hourly 1 [Webinar Recap] Traceable Agile™ – How to Achieve Speed and Quality with Software Delivery https://www.jamasoftware.com/blog/webinar-recap-traceable-agile-how-to-achieve-speed-and-quality-with-software-delivery/ Tue, 19 Mar 2024 10:00:19 +0000 https://www.jamasoftware.com/?p=76433 This image portrays a webinar on the topic on Traceable Agile.

In this blog, we recap our webinar, “Traceable Agile™ – How to Achieve Speed and Quality with Software Delivery” – Click HERE to watch it in its entirety.

In this insightful session, Professor Paul Meadows MSc, PMP, CSM and Steven Meadows, Principal Solutions Lead at Jama Software®, explore Traceable Agile™, as well as best practices in terms of Agile processes, helping you ensure that your team is achieving the right balance between quality and speed.

You will learn about:

  • Best Practices and Tooling: Learn about the best practices in implementing effective agile processes and recommended tooling to enhance your team’s performance.
  • Balancing Speed and Quality: Strategies to ensure your software delivery is both fast and shipped with fewer defects
  • Implementing Traceable Agile: Dive deep into Traceable Agile, a methodology that promotes speed while maintaining a comprehensive historical and current view of your development process, enabling early issue detection.
  • Real-World Applications: Gain insights into how Traceable Agile is being implemented in various industries, and the benefits it has on software and hardware integration.

Below is an abbreviated transcript of our webinar.

Traceable Agile™ – How to Achieve Speed and Quality with Software Delivery


RELATED: Traceable Agile™ – Speed AND Quality Are Possible for Software Factories in Safety-critical Industries


Professor Meadows: Well, first of all, I’d like to say thank you for inviting me to the webinar. Steven, I’m looking forward to this. Just in terms of my background, I’ve first of all completed a full career in the British Army and since then I’ve over 20 years of project management experience, really based in mostly world-class, global enterprises, building and managing project management offices, developing and executing project management policies and standards. I’ve got a master’s degree in project management from Liverpool University. I’m a certified project management professional with the Project Management Institute and I’ve been a certified scrum master for over eight years.

I’ve taught project management for Columbia University in New York City and I am currently the lead faculty professor for the master’s degree in project management at NYU, also in New York City.

Steven Meadows: Great, thanks for that introduction. Just as a brief introduction for myself here, my name is Steven Meadows. I’m a principal solutions lead and I represent my company Jama Software and we’ll be touching on what Jama Software is and the solutions that we offer shortly. I also have around about 12 to 13 years experience in solution architecture, solution implementation. I’m also certified in Agile development using Jira software as well as Jira project administration too. So I’ve helped out or helped a lot of different Agile teams implement Agile solutions and implement while using tools. I do briefly want to introduce Jama Software, our company, and also solutions that we develop.

So Jama Software really provides a suite of solutions that spans the entire product and systems development lifecycle, things like capturing and managing requirements’ traceability to ensuring collaboration across different departments and different teams throughout the software development lifecycle. Also, across other verticals as well. Now you’ll see some of the verticals on this slide that we support, including regulated industries like medical device and aerospace and defense, as well as pure software development and industrial manufacturing too.

Now, some of the ways that we really help our customers realize value with our tools by reducing development cycle times, increasing process efficiency, gaining visibility and control and so on. So with that then, Professor Meadows is now going to provide an overview on Agile, the Agile Manifesto, and some of the principles as well.


RELATED: Requirements Traceability Benchmark


Professor Meadows: Thanks Steven. So here we are on the Agile overview page. We’re going to talk about some of the benefits, but as Agile development methodologies and frameworks become more and more the choice of organizations as we see here, they recognize the significant productivity improvements that can be achieved. It’s important here though, Steven, to really draw the distinction between waterfall requirements management and Agile requirements management. As we know, the strength of Agile is in the collaborative development that’s achieved with constant stakeholder and development team interaction over the more traditional approach where requirements are captured upfront largely and changes are not only unwelcome but actually considered disruptive.

And where they do occur generally they have to follow a fairly formal process of review and approval before they’re accepted. So in today’s very dynamic marketplaces, you can see clearly this is not going to help organizations achieve and maintain competitive advantage. So the four foundational values we see here were developed as part of the Agile Manifesto way back in 2001, and they’re really designed to efficiently elicit requirements and turn those requirements into functioning software. It’s about responding to change over following a plan.

And when you look at that in the context of the value placed in working software over comprehensive documentation, we really start to get to understand the challenges that emerge in trying to make sure our stakeholders and their needs are being met by what we deliver. This becomes even more complex when we start to look at the 12 Agile principles in more detail next. Before we move on to there, let me give you a little bit more detail about these values though. So individuals and interactions over processes and tools. Well this value itself emphasizes the importance of focusing on people and obviously their interactions with the team rather than solely relying on processes or tools.

But I don’t want to underestimate the value of processes and tools and we will definitely talk more about that through this webinar. This one really highlights the significance of effective communication, collaboration, and teamwork in delivering successful outcomes. Agile teams prioritize building strong relationships and that’s really one of the strengths that’s looked for as you build a team is that ability to build strong relationships and really fosters open communication, empowering individuals to make decisions that contribute really to the overall project success. Moving on to working software over comprehensive documentation.

Again, this is another one of those values we’re going to dig a lot deeper into through this webinar. But this value really underscores the importance of delivering functional software that meets the needs of the customer over extensive documentation, is the way it’s worded. And while documentation itself has its place in software development, tangible results are in the form of working software. Agile teams strive really to deliver value early and often. Today we’re seeing continuous delivery in many of the firms you’ve implemented successful Agile.


CLICK HERE TO WATCH THIS WEBINAR IN ITS ENTIRETY:
Traceable Agile™ – How to Achieve Speed and Quality with Software Delivery


]]>
Traceable Agile™ – Speed AND Quality Are Possible for Software Factories in Safety-critical Industries https://www.jamasoftware.com/blog/traceable-agile-speed-and-quality-are-possible-for-software-factories-in-safety-critical-industries/ Tue, 03 Oct 2023 10:00:37 +0000 https://www.jamasoftware.com/?p=69735  

traceable agile development

Traceable Agile – Speed AND Quality Are Possible for Software Factories in Safety-critical Industries

Automotive, aerospace and defense, and industrial companies have largely adopted Agile within rapidly growing software factories to speed time to market in order to stay competitive. These software factories have largely succeeded in speeding up software development for companies within the industries that have adopted it, but maintaining quality is still a key concern. The inability to coordinate development across engineering disciplines has led to product recalls, quality complaints, and has created significant internal challenges to satisfy functional safety requirements from regulators and confidently deliver high-quality software. These challenges — and resulting outcomes — are often so severe that leadership of the software factories have been let go.

Fundamental Questions We Hear

When we ask software factory leaders, “what keeps them up at night?” We consistently hear the following five questions:

  • How do I know which product requirements have been missed?
  • How do I know which product requirements are not fully covered by test cases?
  • How do I know which product requirements have failed to pass tests?
  • How do I identify rogue development activity?
  • How do I know if changes have been made at the system and / or hardware level that impact the software team?

These are fundamental questions that should be answerable from leading Agile tooling, but they are not. The reason is that Agile tools focus on tasks (define, assign, status, complete, delete) and have no notion of the current and historical state of the project. Tasks are not tied to any state of the project which often leads to drift from the actual needs and requirements of your customer or end user. As a result, these questions are not answerable with Agile tools like Jira and Azure DevOps. Project management tools like Jira Align answer important questions around staffing, sprint planning, and cost allocation, but do not address the critical questions above focused on the real-time state of the software development effort against the approved requirements.


RELATED: What is a Scaled Agile Framework (SAFe) and How Does it Help with Complex Software Development?


The Answer? Traceable Agile.

How do you best speed software and overall product development and still achieve the quality expectations of customers and company leadership? The answer is Traceable Agile. Traceable Agile speeds the FLOW of software development but also maintains the current and historical STATE of the development effort and auto-detects issues early in the software development process. Traceable Agile recognizes that developer activity is best managed as a FLOW using tasks in a tool such as Jira. What is needed to achieve Traceable Agile is to pair a system with Jira that manages the STATE of the development effort at all times. By keeping STATE and FLOW tools separate but integrated, no change is required to software developer process and tools. This is significant. Software leadership can now answer their critical questions without having to undergo a major process and tool change with resistant developers which would slow down development and/or increase staff attrition.


RELATED: How to Achieve Live Traceability™ with Jira® for Software Development Teams


So how does Traceable Agile work in practice?

Here is an overview and diagram of Jama Connect® maintaining the STATE of development activity and Jira providing the FLOW.

  1. Task activity continues as normal in Jira and risk is auto-detected in Jama Connect by comparing all user stories and bugs in Jira to the expected development and test activity for each requirement in Jama Connect.
  2. All exceptions are identified —the ones that answer the questions that keep software factory leadership up at night — such as requirements with no user stories, user stories with no requirements, requirements with no test cases or test results, etc.
  3. After the exceptions are inspected in Jama Connect, management can take action and assign corrective tasks in Jira as just another task in the queue for a developer.

 

traceable agile software development

 


RELATED: Extending Live Traceability™ to Product Lifecycle Management (PLM) with Jama Connect®


This is a fully automated process that leverages automated synchronization of meta data between Jira and Jama Connect via Jama Connect Interchange™. The only metadata that needs to be synchronized from Jira to make Traceable Agile possible is as follows: ID, Created Date, Creator (User), Modified Date, Modifier (User), Title, Status, Link (URL), Relationships. On inspection in Jama Connect of an issue, one simply clicks on the link to go to Jira if more information is required to diagnose.

Many of our leading clients have already implemented Traceable Agile and are significantly improving their Traceability Score™ which we have demonstrated leads to superior performance on quality metrics in our Traceability Benchmark Report.

Feel free to reach out to me to learn more and I will respond.


RELATED: In this video, we will demonstrate and discuss Traceable Agile™
and how speed and quality make software factories and safety-critical industries possible.



]]>
Adopting an Agile Approach to Requirements Management https://www.jamasoftware.com/blog/adopting-an-agile-approach-to-requirements-management/ Wed, 08 Dec 2021 11:00:17 +0000 https://www.jamasoftware.com/?p=58646


The complexity of products is rapidly growing, and as a result, the number of requirements needed to satisfy client goals is also expanding. This makes the documentation process time-consuming and potentially risky.  

Existing approaches to Requirements Management (RM) aren’t always flexible enough to meet stringent expectations and provide a single source of truth. Everyone involved with a project requires maximum visibility to understand what you’re building – and why. 

One study found that the majority of design teams admit that they don’t have a requirements management system in place, and instead rely on cumbersome emails and shared documents. Furthermore, only 15% of teams surveyed had invested in a dedicated RM solution.  

Teams that are frustrated with rework, feeling stuck in unproductive collaboration and not moving as fast as they could benefit from adopting an agile approach to requirements management.  

What is an agile approach to requirements management?  

There isn’t a commonly agreed upon definition of agile requirements management or a single set of processes that will automatically make you agile if you implement it. However, there are concepts, processes and tools that support an agile approach to requirements management.  

The foundation of an agile approach to requirements management is rooted in flexibility. Flexibility means you can easily iterate and make changes, so that you end up with a more accurate outcome and avoid off-target deliveries and missed deadlines.  

Agile requirements gathering is focused on developing the product faster while addressing customers’ needs more accurately. Collaboration is critical; everyone on the team must have a firm understanding of the customer’s true needs and how they affect RM.  

In contrast, teams that don’t use agile requirements are susceptible to unproductive work time, a lengthy review process, excessive rework, and even serious defects in the released product.   

requirements-management-hub

 How does agile requirements management outperform the alternatives?  

Agile requirements management is focused heavily on action. With agile, you create a flexible framework upfront, so product implementation is faster and more accurate. In contrast, other approaches, such as the waterfall approach, have less flexibility and are built on a rigid foundation. But why?  

The waterfall approach uses a V-shaped development process. The steps involved with coding, such as discovery, requirements, system engineering and architecture, are performed in a specific order. You can’t move to the next step until you’ve finished the one before it. Once coding is complete, you continue to move through the next processes in a specific and inflexible order.  

The strategy behind this approach is that you do as much work as possible upfront, and any decisions made during the early project stages are adhered to closely, without much room for change. Moreover, requirements and design often don’t go through testing until the end stages of the development process, so any potential changes show up late in the development cycle, and therefore are more time-consuming to fix.  

Agile requirements management is built on the principle of flexibility, so any potential challenges are identified and resolved much earlier in the process, minimizing expensive and costly rework. A few benefits of the agile approach include:  

  • Improved product design and delivery. A recent report suggests that best-in-class RM solutions can significantly improve product design and delivery for agile development teams. “In the face of increasing regulations, connected products for the internet of things (IoT), and scaling Agile practices, AD&D [application development and delivery] leaders long for something to bring traceability and auditability to their processes without sacrificing speed.”  
  • Improved traceability. The right RM solution can enhance development transparency through traceability. Traceability empowers teams to perform impact analysis more readily, which is critical to product development.  
  • Achieve quicker time to market. Teams are facing more complexity and pressure to comply with industry regulations, and need to measure customer value to search, track and connect interdependent requirements. Achieving faster time to market requires that teams collaborate faster and more effectively, working to build traceability requirements and test cases.  

As you work to understand how an agile approach to requirements management benefits your team and customer, it also helps to have a basic understanding of the agile requirements lifecycle and how it works.  


RELATED POST: What is Requirements Traceability and Why Does It Matter for Product Teams?


Designing with greater flexibility through the agile requirements management lifecycle  

The agile requirements management lifecycle is focused on clearly defining a project’s scope, so that you better understand what needs to happen to meet the desired end goal. It provides a high-level understanding of business goals, and outlines what is needed for the project to be a success. Consider taking the following steps:  

  • Understand user stories. User stories give you powerful information about the problem you’re trying to solve. A user story is a quick description of everyday use cases and might include a few sentences about how the user expects the product to perform. A template might be something like this: “As a [role], I need [product] to do [goal of the software] so that I can [benefit of the product].”  
  • Outline the most important requirements. Identify what requirements are most essential based on the high-level business strategy. These requirements may be supported by user stories, functional requirements and more based on the specific client goals 
  • Transform to product features. This stage is about fine-tuning and translating the details that you’ve gathered into product features. The development team collaborates to ensure that any requirements are easily understood by anyone working to implement them. User stories are linked to features and tasks, so that developers understand what they need to do – but also why they are doing it.  

Agile requirements management helps give you a foundation on which to build, and best practices arm you with strategies that are proven effective at helping you move in the direction of agile.  

What are the best practices for agile requirements management?  

The agile requirements process helps you capitalize on opportunities faster through earlier launch dates and a prolonged market window. As a result, you can get to market more efficiently with fewer resources spent. To support this, it helps to understand best practices around agile requirements management, including:  

  • Create collaborative processes. You need the ability to accurately capture and communicate the project’s requirements, goals, program and interdependencies to minimize friction throughout the entire process.  
  • Support real-time collaboration. If you want to improve efficiency, collaboration is a critical tool to accomplish that goal. You need the ability to immediately note and prioritize critical decisions, as well as pull in any required contributors and reference historical context to get rid of communication bottlenecks.  
  • Solidify understanding through virtualization. Visual context helps people understand information easier and supports faster decisions. Mind mapping, for example, assists with recognizing data quickly and in context.  
  • Pay attention to the current state and any future potential gaps. You need the ability to understand and respond to change. Identify implications of potential product changes to minimize late-stage changes and rework by ensuring the development teams have the latest data to make informed decisions as requirements evolve.  
  • Implement live traceability. A large benefit of agile RM is increased flexibility. Live traceability enables you to easily navigate upstream and downstream relationships to understand the impact to change and coverage across development.  
  • Fast-track decision-making and reviews. You need the ability to conduct virtual reviews of requirements, test cases, user needs, or test results and to track discussion, changes and critical decisions across teams.  

Best practices are a good starting point to figure out how to develop agile requirements management. The next step is to look at your existing tools and ask: Do they support agile requirements management? And if not, examine the alternatives so that you can reap the benefits of an agile process, with support from the right tools.  


RELATED POST: 11 Requirements Gathering Techniques for Agile Product Teams


Selecting the right agile requirements management solution  

As you move toward more seamless and agile project requirements, it’s important that you have the right technology in place to support you. Here are a few tips for selecting the right tool:  

Examine the flaws in the tools and processes that you already use. Understanding your existing tools, what works and what doesn’t, is essential to future success. Look at your current planning, project management, design, testing and more to determine what isn’t working, so you can figure out what will work better.  

Find out where requirements fall apart. A tool with more advanced collaboration, design and modeling capabilities can assist with defining exactly what you need to build. If you’re challenged with understanding the impact on requirements, for example, you require a tool with greater traceability and enhanced reporting capabilities that integrate easier with automated testing tools. 

Create a plan that is flexible with change. Keep any future changes in the backdrop while making decisions about technology. Understanding changes that may evolve in the future, such as increased government regulation, helps you stay ahead of what’s next.  

Products and systems will only continue to get more complex, driving the need for agile requirements management. Increased complexity translates into more time spent tracking requirements, which is why having the right tools in place is critical. 

Requirement Management tools that are nimble enough to keep pace with evolving market demands empower product development teams to leverage technology that fits their existing tech stack and fits easily into their daily workflow.  



]]>
Scaling Up Agile Teams: How Enterprise Companies Can Remain Competitive in a Startup Market https://www.jamasoftware.com/blog/scaling-up-agile-teams-for-enterprise-companies/ Tue, 10 Dec 2019 12:30:13 +0000 https://www.jamasoftware.com/?p=36601

One of the biggest challenges for companies at the enterprise level is remaining competitive in a climate full of innovative entrepreneurs and nimble startups. A company that has been around for decades, and has entrenched hierarchies and bureaucracies, risks falling behind up-and-comers who have the flexibility and culture to remain nimble.

But size doesn’t have to be an impediment to implementing Agile teams. Even global behemoths can use Agile principles to remain on a path of growth while still responding to customer needs like a startup.

In an article for Harvard Business Review, authors Darrell K. Rigby, Jeff Sutherland, and Andy Noble look at several different companies that have implemented Agile methods successfully and review what worked, what didn’t, and how companies can launch Agile teams that work — and position themselves for a more competitive market going forward.

Challenges and Benefits

Scaling up Agile offers enticing benefits to leaders who face a constant barrage of challenges from energetic, nimble startups. What leader wouldn’t want a more responsive, adaptive organization?

But turning Agile teams into a reality can be tough for companies with clearly established hierarchies and slow-moving bureaucracies. It’s one thing to know that organizing multidisciplinary Agile teams would be beneficial; it’s another thing entirely to clarify which functions are suited for Agile principles and how many Agile teams to launch.

Not All Functions Have to Be Agile

Leaders looking to scale up Agile need to recognize that not all functions have to be organized into Agile teams. Agile teams are best suited to functions related to innovation — and indeed, the methods first caught on in IT departments. Operations such as purchasing and accounting may not be the best place for Agile teams.

However, the authors of the Harvard Business Review article point out that once Agile teams are launched in some functions, they will, by necessity, interact with other parts of the business. These fledgling Agile teams risk creating friction with departments still operating under traditional top-down hierarchies and existing bureaucracies. In order to keep both parts of the business functioning and positioned for success, leadership itself needs to understand and adopt Agile approaches.

Bosch, the German multinational engineering and technology company and an early adopter of Agile methods, attempted to implement a “dual organization” — that is, the company deployed Agile teams across the newest, “hottest” initiatives while keeping traditional functions operating as usual. But this implementation didn’t have the transformative effect the company hoped for, so it tried again in 2015. This time, members of the management board were divided into Agile teams, and the project evolved from an annual project to a continuous process. Now, Bosch has a mix of Agile teams and traditionally structured units, but nearly all areas have adopted Agile values and are more collaborative and adaptive.

Read this blog to learn more about Agile software development practices for regulated industries

A Blueprint For Implementing Agile Methods

Implementing Agile methods across the organization requires a different perspective and outlook from the traditional top-down, project-focused approach used by leadership in the past. In fact, the very nature of those old systems runs counter to Agile principles.

The authors highlight several keys to successful Agile implementations:

  • Scaled, gradual launches: With rare exception, the companies that succeed with implementing Agile teams do so by proceeding gradually. They may start with an initial launch of teams best suited to the methods, evaluate the success of those teams, and then role out new teams across functions that make sense.
  • A taxonomy of teams: “Taxonomy” is just a way of classifying teams and functions. This system follows Agile’s modular approach by classifying different components of the business and then integrating them. For instance, a company could identify three functions — customer experience teams, business process teams, and technology systems teams. It would then create a cross-functional team from these functions — one designed to solve one specific problem.
  • A transition sequence: Leaders should identify those initiatives that offer the greatest value and the most learning and then position them for launch by making sure the team is ready to begin. The authors offer a checklist of attributes of a team that’s ready to begin, including focus on a high stakes major business opportunity, commitment to Agile values, principles, and practices, and support from senior executives.
  • Strong buy-in from top leadership: Whether the company completely reorganizes to start over with Agile teams or begins by implementing Agile in a few functions and letting it spread organically, none of the implementations would succeed without full support from top leadership. Leadership should be committed to addressing impediments and driving the adoption of the team’s work.

To learn more about common problems with Agile and how to solve them, check out our webinar, “How to Avoid Common Pitfalls of Agile for Embedded Systems.”

No Limits

In practice, there is no limit to how many Agile teams a company can implement across the organization. Agile teams can even work in “teams of teams,” where each smaller team is responsible for one small initiative that feeds into a larger initiative. And as Agile teams gain traction in the company, more traditional functions can adopt Agile methods and implement teams as well. Agile methods have been implemented in sales, marketing, and even HR functions.

Scaling up Agile is at once intimidating and enticing, but those companies that implement Agile teams successfully see major improvements to their businesses. Not only do they respond and adapt more quickly to market changes and competition, but they often see better financial results, greater customer loyalty, and higher employee engagement. For those enterprise level companies struggling to keep up with a rapidly changing market, scaling up Agile offers a way to stay competitive now — and far into the future.

Download our whitepaper, Agile for the Enterprise, to learn more about successfully implementing Agile in regulated and governed industries.

]]>