using perforce streams to optimize development of flash memory solutions

12
# Young Choe SVP at SK hynix Using Perforce Streams to Optimize Development of NAND Solutions

Upload: perforce

Post on 17-Nov-2014

1.416 views

Category:

Technology


1 download

DESCRIPTION

Hear how SK Hynix, the world's second-largest memory chipmaker and the world's sixth-largest semiconductor company, uses Perforce Streams for globally distributed development of their Flash memory solutions.

TRANSCRIPT

Page 1: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

Young ChoeSVP at SK hynix

Using Perforce Streams to Optimize Development of NAND Solutions

Page 2: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

Young ChoeSenior VPSK hynix

Graduated from the Seoul National University, Korea MS and Ph.D.(candidacy) from North Carolina State University Lead Software Developer at BMC Software VP, Linux Technology Group, Samsung Electronics Director, Systems Software, Android Platform Team at nVIDIA Currently, SVP, Software Engineering TF at SK hynix

Page 3: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

NAND Solution Market Trend

[CAGR]

30%

64%

22%

48%

PPN

eMMC

SSD

Others

[ Unit : Bpcs, 16Gb Eq.]

“ The demand of

NAND Solution

products are

increased

continuously as like

SSD, eMMC… ”Source: SK hynix marketing, Mar. 2014

Page 4: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

NAND Solution Development

Controller

Firmware

NAND Solution

V&V

Raw NAND Features of NAND Solution Development

Hardware + Software

Agility for prompt Technology Shift

High Quality of Software

Cross Development environment

Page 5: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

Our Perforce Configuration

Our Development Environment

Distributed Development

Global Collaboration

Cross-Functional

Merge & Acquisition

Complexity

Europe

Korea

Taiwan

US

“Global Real-time Development by Perforce”

Page 6: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

As-Was : Using classic depots

//SSD/…

//SSD/sandbox/…

//SSD/private/…

//SSD/sandbox/shin/…

//SSD/sandbox/mark/…

//SSD/private/jim/…

//SSD/private/li/…

Drawbacks of classic branch

Lack of Visibility

Hard Traceability

Difficult to identify Directive

Lack of Controllability

?

Page 7: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

• Obtain the Global Visibility

– Modeling Development Lifecycle

• Intuitive Integration

– How to propagate the changes

• Unified Development Capability

– Same working environments (Tools, Interface and Process)

Major Considerations

Page 8: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

• Benefits of Stream

– Codeline management (main/dev/rel types)

– Modeling development cycle

– Intuitive developer actions (green, gray and red arrows)

– Easy workspace management (One workspace)

– Inheritance of parent stream attributes

Stream helps us

Page 9: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

As-Is : Using Stream depots

Stream Depots

Collaboration with Legacy Depot

Two layer Depth - Easy to find the target/source

Stream Type

Main / Dev / Rel / Virtual

Page 10: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

• For Release Stream

– Prjname_CustomerName_Rev#

• For Dev Stream

– Target_Purpose ( No restriction )

• For Virtual Stream

– Prjname_CustomerName_Rev#_bin

Stream Naming Conventions (ex..)

Page 11: Using Perforce Streams to Optimize Development of Flash Memory Solutions

#

Conclusion

• Global Collaboration– Seamless distributed working sites

• Visualization of Project Roadmap– Lifecycle management from Dev to Rel

• Increasing the Productivity– Same tools in everywhere