Agile-ASPICE Saga: Demonstrating SWE.1 BP1 & BP2 with Real-World OEM Car Infotainment Examples

Agile-ASPICE Saga: Demonstrating SWE.1 BP1 & BP2 with Real-World OEM Car Infotainment Examples

Welcome to Episode 7 of the Agile-ASPICE Saga, where we take a deep dive into the world of software development practices. In this episode, we're excited to bring you a practical example from the OEM (Original Equipment Manufacturer) world. We'll use this example to illustrate the application of both Base Practice 1 and Base Practice 2. So, let's jump right in and explore how these practices come to life in a real-world scenario! ????


Now, let's explore an example of an OEM (Original Equipment Manufacturer) requirement for car infotainment systems to better illustrate Base Practice 1 & 2.

Example

Scenario: Imagine you're developing a car infotainment system, and you want to structure your software requirements.


Identify the software functions or capabilities & Grouping - It can be done based on different components of the system.

In Jira, you can group to components that represent the functional areas of your car infotainment system. These components could be tagged as component name or label or team name in JIRA.

  • Navigation
  • Media Player
  • Bluetooth Connectivity
  • Voice Recognition


Analyse component level requirement and break them into Epic & Features -

Let's take further example of "Bluetooth Connectivity".

Component: Bluetooth Connectivity (It can be tagged as component name or label or team name in JIRA)

Portfolio Epic: Seamless Device Pairing

Feature 1: Automatic Device Detection

Feature 2: Multi-Device Pairing

Feature 3: Hands-Free Calling

Feature 4: Voice Commands for Bluetooth


Break it further to User Stories along with functional & non-functional requirements -

Feature 1: Automatic Device Detection

User Story 1: As a driver, I want my car's infotainment system to automatically detect and pair with my smartphone via Bluetooth when I enter the vehicle so that I can seamlessly use my phone's functions hands-free and enjoy a safe and convenient driving experience.

or

As Shobha, a daily commuter, I want my car's infotainment system to automatically detect and pair with my smartphone via Bluetooth when I enter the vehicle so that I can seamlessly use my phone's functions hands-free and enjoy a safe and convenient driving experience.

Functional Requirement (Example): The infotainment system shall have the capability to detect nearby Bluetooth devices and initiate pairing automatically upon detecting a compatible device.

Non-Functional Requirement (Example): The automatic device detection process shall take no longer than 5 seconds to complete.


Feature 2: Multi-Device Pairing

User Story 2: As a driver, I want the infotainment system to support pairing with multiple Bluetooth devices simultaneously, such as my phone and a passenger's phone so that both I and my passengers can connect our phones to the car's infotainment system at the same time, allowing us to enjoy our preferred music, make calls, and use apps without the hassle of reconnecting each time we switch.

Functional Requirement (Example): The infotainment system shall allow users to pair with and maintain connections to multiple Bluetooth devices simultaneously.

Non-Functional Requirement (Example): The system shall support a minimum of 5 concurrent Bluetooth connections without performance degradation.


Feature 3: Hands-Free Calling

User Story 3: As a driver, I want to make and receive calls using the infotainment system's Bluetooth connectivity while keeping my hands on the wheel so that I can stay focused on driving and keep my hands on the wheel, ensuring a safer and more convenient phone call experience.

Functional Requirement (Example): The infotainment system shall provide a hands-free calling feature that allows users to initiate and receive phone calls using voice commands.

Non-Functional Requirement (Example): Voice recognition for hands-free calling shall achieve an accuracy rate of at least 95%.


Feature 4: Voice Commands for Bluetooth

User Story 4: As a user, I want to control Bluetooth-connected devices using voice commands, ensuring a safe and convenient driving experience so that I can stay focused on driving and keep my hands on the wheel, ensuring a safer and more convenient phone call experience.

Functional Requirement (Example): The infotainment system shall support voice commands for controlling Bluetooth-connected devices, including initiating calls and adjusting audio settings.

Non-Functional Requirement (Example): Voice commands for Bluetooth control shall exhibit a response time of less than 2 seconds.


Sorting the user stories & features logically -

Automatic Device Detection (User Story 1): First, make sure the system can find and connect to your phone when you get in the car.

Hands-Free Calling (User Story 3): Next, focus on allowing drivers to make calls safely without using their hands.

Multi-Device Pairing (User Story 2): Now, work on letting multiple devices connect at the same time.

Voice Commands for Bluetooth (User Story 4): Lastly, add voice commands to control connected devices.

You're basically deciding what's most important and what needs to come before others. This sorting ensures that the features related to Bluetooth connectivity progress in a logical sequence, with automatic device detection as the foundational capability followed by hands-free calling, multi-device pairing and voice command functionality building upon it. And remember, you can change this order if needed as the project goes on.


Categorization of features or user stories -

For categorization, let's tag these features based on their focus areas:

  1. Security-Related Features:

Feature 2: Multi-Device Pairing (Security: Allowing secure pairing with multiple devices)

Feature 3: Hands-Free Calling (Security: Ensuring safe phone usage while driving)

  1. User Interface (UI)-Related Feature:

Feature 4: Voice Commands for Bluetooth (UI: Enabling voice control for Bluetooth devices)

  1. Performance-Related Feature:

Feature 1: Automatic Device Detection (Performance: Quick and reliable device detection)

This categorization helps in organizing and understanding the areas of emphasis for each feature.


Prioritization of features or user stories -

Component: Bluetooth Connectivity

Portfolio Epic 1: Seamless Device Pairing

  1. Feature 3: Hands-Free Calling

Prioritization: High

Description: This feature allows drivers to make and receive calls using the infotainment system's Bluetooth connectivity while keeping their hands on the wheel. It enhances safety and convenience.

  1. Feature 1: Automatic Device Detection

Prioritization: Medium

Description: This feature enables the infotainment system to automatically detect and pair with a driver's smartphone via Bluetooth when they enter the vehicle. It enhances the user experience by reducing manual steps.

  1. Feature 4: Voice Commands for Bluetooth

Prioritization: Medium

Description: This feature allows users to control Bluetooth-connected devices using voice commands. It enhances safety and convenience by minimizing distractions while driving.

  1. Feature 2: Multi-Device Pairing

Prioritization: Low

Description: This feature enables the infotainment system to support pairing with multiple Bluetooth devices simultaneously, such as a driver's phone and a passenger's phone. While valuable, it may be of lower priority compared to hands-free calling and automatic device detection.

This prioritization is based on the perceived importance and impact of each feature on the user experience and safety. Hands-free calling is prioritized highest as it directly enhances safety, while multi-device pairing, though valuable, is of lower priority as it may be a less common use case. Prioritization can be further refined through discussions with stakeholders and users.


As we wrap up this episode, remember that just as a well-organized & structured software requirements make development smoother. In episode 8, we will dive deeper into SWE.1.BP3: 'Analyze software requirements,' where we'll uncover the secrets to dissecting and understanding requirements effectively. So, stay tuned for the next exciting installment of the Agile-ASPICE Saga, where we continue our journey toward mastering Agile practices in the world of ASPICE!"


要查看或添加评论,请登录

Shobha Singh的更多文章

社区洞察

其他会员也浏览了