0% found this document useful (0 votes)
8 views45 pages

M1 - Software Development Life Cycle - 07072022

The BGSV Embedded Academy (BEA) program aims to develop embedded competence through a structured curriculum that includes automotive basics, software development lifecycle, and Agile methodologies. It emphasizes practical training methods such as classroom instruction, online self-learning, and live demonstrations. Key components of the program include understanding software development models, Agile principles, and the Scrum framework for effective project management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views45 pages

M1 - Software Development Life Cycle - 07072022

The BGSV Embedded Academy (BEA) program aims to develop embedded competence through a structured curriculum that includes automotive basics, software development lifecycle, and Agile methodologies. It emphasizes practical training methods such as classroom instruction, online self-learning, and live demonstrations. Key components of the program include understanding software development models, Agile principles, and the Scrum framework for effective project management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 45

BGSV Embedded Academy (BEA)

Focused Program to Develop Embedded Competence

BGSV EMBEDDED ACADEMY

T1: Automotive Basics


(Sensor, SW, Mobility P1: Requirements
M1: SW Development
Engineering
Technical
T2: Automotive
Solution) SW
Architecture
Methodological
Lifecycle Process
P2: Design Principles
Competence
(AUTOSAR)
T3: Embedded
Competence Competence
Programming P3: Review
M3: Clean Code
T5: Test Overview P4: Safety & Security

Classroom training, Online Self-learning, Live Demo


Purpose: Develop basic general embedded competence
Disclaimer

 This slide is a part of BGSV Embedded Academy (BEA) program and only
used for BEA training purposes.
 This slide is Bosch Global Software Technology Company Limited’s internal
property. All rights reserved, also regarding any disposal, exploitation,
reproduction, editing, distribution as well as in the event of applications for
industrial property rights.
 This slide has some copyright images and text, which belong to the
respective organizations.
M1
Software Development
Life Cycle
© There are some copy right text and images using in slide 13 – 41. These texts and images belong to Scrum
Alliance.
AGENDA
Software Development Life
cycle

V-Model / Process Library

Agile / Scrum basic


Software Development Life cycle
Life Cycle
 What is life cycle?  Software Development has its own cycle
Software Development Life cycle
Is Process / Model important?
Process / Model is defined to follow up Software
Development Life Cycle with :

• No Assume

• No Misunderstanding Customer Need

• No Skip level

• Ensure Verification and Validation


Software Development Life cycle
Do they have a good design?

or they miss something


during development
phase?
Software Development Life cycle
Waterfall Model & Agile Model in software development model
Software Development Life cycle
Waterfall Model & Agile Model – Use cases
Waterfall Develop Active Braking Product Agile Projects to develop HMI for Smart
(ABS,ESP,…) use Home
case
Requirements is analyzed and Requirements needs to fit market
clarified, clear scope with trend and cannot be fixed from the
customer at the beginning start
Baseline is planned to fulfill Marketing department needs
every requirement, and each working UI soon to get feedback
baseline take around 1-2 from end Users
months
Customer only can test on Software Team and Customer shall
released software of baseline have regular meeting to check the
with well scopes define in this delivery status (2,3 week depend on
baseline project)
Requirement change during Requirement change and updated
current baseline is not frequently to reflect market needs
applicable
V-Model / Process
Waterfall Model : Overview V-Model
Library System
Requirement
Requiremen
1 s Elicitation 2 ts Analysis

System
Architecture
3 Design

SW
Requirement
4
Analysis

Software
5 Design

Implementation
6

xSW / CSW
Integration
7
Test

SW Test
8

System IT
9

System Test
10
V-Model / Process Library
Waterfall Model : Overview V-Model
System
Requirement
System

Pr
Requiremen System Test Sy
od 1 s Elicitation 2 10 ste
uct ts Analysis m

System
Architecture System IT
3 Design 9
Fu
nct
ion

SW
Requirement SW Test
4 8 CS
Analysis W

xSW / CSW
Software

SW Architecture Integration
5 & Design 7
Co Test
mp
on Co
ent mp
.
Software Component
5 Design Test 7

Detailed Software
Unit Test
5 Design 6 Uni
Uni t
t

Implementation
6
V-Model / Process Library "Reliable Solutions are based on
requirements traceability"
Traceability Bi-directional traceability is explicitly
demanded
System
Requirement
System

Pr
Requiremen System Test Sy
od 1 s Elicitation 2 10 ste
uct ts Analysis m

System
Horizontal
Architecture System IT
3 Design traceability 9
Fu Ve
tr a

nct r ti
ion
ce

SW
ca
Requirement SW Test
ab

4 8 CS
l

Analysis W
ilit

xSW / CSW
y
Software

SW Architecture Integration
5 & Design 7
Co Test
mp
on Co
ent mp
.
Software Component
5 Design Test 7

Detailed Software
Unit Test
5 Design 6 Uni
Uni t
t

Implementation
6
V-Model / Process Library
Testing Concept with example
V-Model / Process Library
Product Engineering
Agile / Scrum basic
Agile Overview

 Agile software development is a group of software development method based


on iterative and incremental development, where requirements and solutions
evolve through collaboration between self-organizing, cross-functional teams.
 Among various development methods following Agile, Scrum is the most widely
used.
Agile / Scrum basic
Agile Overview

Use case:

New
Technology
Needs of
Customers Quick
cannot be delivery
defined demand
upfront

Market trend
changes
Agil Customer
would like to

e
see Software
often
progress
Agile / Scrum basic
The Agile Manifesto

We are uncovering better ways of developing software by doing it and helping


others do it. Through this work we have come to value:

1. Individuals & interactions over Processes and tools


2. Working software over Comprehensive
documentation
3. Customer collaboration over Contract negotiation
4. Responding to change over Following a plan

That is, while there is value in the items on the right, we value the items on the left
more.
Agile / Scrum basic
The Agile Principles (1/3)
Agile / Scrum basic
The Agile Principles (2/3)
# Principle Description
1 Deliver value Our highest priority is to satisfy the customer through early
and continuous delivery of valuable software
2 Welcome change Welcome changing requirements, even late in
development. Agile processes harness change for the
customer's competitive advantage
3 Deliver early Deliver working software frequently, from a couple of
weeks to a couple of months, with a preference to the shorter
timescale
4 Collaborate Business people and developers must work together daily
throughout the project
5 Motivated team Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get
the job done
6 Communicate face The most efficient and effective method of conveying
to face information to and within a development team is face-to-face
conversation
Agile / Scrum basic
The Agile Principles (3/3)
# Principle Description

7 Working Working software is the primary measure of progress


software
8 Constant pace Agile processes promote sustainable development. The
sponsors, developers, and users should be able to maintain a
constant pace indefinitely
9 Technical Continuous attention to technical excellence and good design
Excellence enhances agility
1 Simplicity Simplicity, the art of maximizing the amount of work not done,
0 is essential
1 Self-organizing The best architectures, requirements, and designs emerge from
1 teams self-organizing teams

1 Retrospect At regular intervals, the team reflects on how to become more


2 effective, then tunes and adjusts its behavior accordingly
Agile / Scrum basic
Scrum Methodology

A SCRUM Team
Agile / Scrum basic
What is the SCRUM?

Focuses on delivering the highest


priority business value to the customer

Team is self-organized, self-direct and cross-


Scru
functional
m

Shortens feedback loop between customer


and developer

Tests early and often to see if the system


being developed will deliver value
Agile / Scrum basic
What is the SCRUM?
Agile / Scrum basic
SCRUM Pillars

Transparency
 Giving visibility to the significant aspects to
process to those responsible for the outcome.
Inspection
 Timely checks on the progress toward a sprint
goal to detect undesirable variances
Adaptation
 Adjusting a process as soon as possible to
minimize any further deviation or issues
Agile / Scrum basic
SCRUM Values
Agile / Scrum basic
Scrum framework

SCRUM Team
Product Owner
Scrum Master
Development Team

Scrum
framework
SCRUM Events SCRUM
Sprint Planning
Daily Scrum Artifacts
Sprint Review Product Backlog
Sprint Retrospective Sprint Backlog
Increment
Agile / Scrum basic
Scrum framework
Scrum
Scrum Team
Team

Product
Product Owner
Owner Scrum
Scrum Master
Master Development
Development Team
Team
Agile / Scrum basic
Scrum framework

Product Owner
 Decides which features are going to be
built and in what order based on the
value of the functionality
 Defines and manages the feature set of
the product
 Identifies the release date
 Responsible to ensure ROI (or
profitability) for the work done
 Accepts or rejects work done
 Assists in the planning sessions and
develops release plans
 Arranges for funding
Agile / Scrum basic
Scrum framework

Development Team
 Set of generalizing specialists who are
cross-functional in nature
 Collaborate and self-organize
 Commit to work for each iteration as a
team
 Perform estimations, development and
testing
 Demonstrate work done
 Provide lessons learned
 Development team size is from 3 -> 9
members
Agile / Scrum basic
Scrum framework

Scrum Master
 Facilitates project work and enforces scrum
theory, practices and rules
 Enables team collaboration and shows
personal interest in the team
 Removes barriers to work
 Conducts release and iteration planning
sessions
 Responsible for daily stand-up meetings
 Conducts retrospectives
 Serves the Product Owner, Development
Team and the Organization as a servant
leader
 Also called as Project Manager, but should be
more a facilitator and not a controller
Agile / Scrum basic
Scrum framework
Sprint goal

Scrum
Events Product Owner
Sprint presents ordered high
Planning priority product
backlog
Daily Scrum
What will be delivered
in the current sprint?
Sprint Review
Team selects work
Sprint Retrospective that can be done

eight hours for a one-


month Sprint
Agile / Scrum basic
Scrum framework
Scrum
Events
Sprint Planning

Time-
Daily Scrum boxe
d 15-minute
Sprint Review Q1
What was done since last meeting?
Sprint Retrospective
What will be done until next Q2 USB stick
meeting?
Any impediments?
Q3
Agile / Scrum basic
Scrum framework

Scrum
Events
Sprint Planning  end of a sprint
 Development team
Daily Scrum demonstrates work
done
Sprint  Product owner15-minute
Review identifies ‘done’ and
What was done since last meeting? not ‘done’ work and
Sprint Retrospective feedback
What will be done until next USBforstick
 4-hour meeting
meeting? one-month Sprints
Any impediments?
Agile / Scrum basic
Scrum framework

Scrum
Events
Sprint Planning
 Inspect the last sprint
Daily Scrum  Identify and order
major items that went
15-minute
well and potential
Sprint Review
improvements
Sprint What was done since last meeting?  Create a plan for
Retrospectiv implementing
e What will be done until next USB stick
improvements
 3-hour meeting for
meeting?
Any impediments? one-month Sprints
Agile / Scrum basic
Scrum framework

Scrum
Artifacts
Product Backlog

Sprint Backlog 15-minute


What was done since last meeting?
Increment
Product Owner maintains and orders list of
What will be done until next USB stick
requirements, will be prioritized by the customer and
meeting?
Backlog top will be the most appreciated important
features.
Agile / Scrum basic
Scrum framework

Scrum
Artifacts
 Sprint Backlog is a work
Product Backlog list
 Created by the
Development Team
Sprint Backlog 15-minute
during Sprint Planning
and updated throughout
What was done since last meeting? the Sprint
Increment  Provide details of all the
tasks and work that the
What will be done until next development USB
teamstick
needs
meeting? to complete
Any impediments?
Agile / Scrum basic
Scrum framework

Scrum
Artifacts
Product Backlog

Sprint Backlog 15-minute


What was done since last meeting?
Increment
 Sum of all product backlog items completed
to date
USB stick
 Must always be in a readily releasable
(‘done’) state
next meeting?
Agile / Scrum basic
Scrum framework

Definition of Done (DoD)


The Scrum Guide™ describes the Definition of Done (DoD) as a tool for bringing
transparency to the work a Scrum Team is performing. It is related more to the quality
of a product, rather than its functionality. “Done” that is a standard for any work done
on it. It can be done from the beginning of the project, can be adjusted in sprint
planning.

All test cases are Integration is success-


tested and passed fully performed

Examples

The source code


80% code path is
has been cross-
tested (coverage)
checked
Agile / Scrum basic
Scrum framework

Kanban Board
• Agile project management tool designed to help
visualize work, limit work-in-progress, and
maximize efficiency (or flow).
• Visible, transparent and easy to discuss activities of
the team members
• Easy to track progress and status of team’s
activities
• Detect current efficiency of team/member
• Improve productivity by limiting the number of “In
progress” activities
Agile / Scrum basic
Scrum framework

Kanban Board (Actual)


Agile / Scrum basic
Collaborative Team

Co-location Team
vs.
Distributed Teams

 Apply frequent communications. When


 Face-to-face interaction.
team members aren’t in close
Without any physical barriers such as
proximity to each Other
walls or doorways between them
 Intensify facilitation
 Whiteboards and task boards, Sticky
 Videoconferencing, live chat, Skype,
notes, sticky paper, flip charts
Interactive whiteboards, Web-based
meeting facilitators
Agile / Scrum basic
More topics

Epic and
User Story

Scrum of Scrums User Story in


details,
acceptance
criteria

Burn-up, burn- Story points


down chart and Planning
poker
Agile / Scrum basic
Summary
Thank you!

45

You might also like