58
Software Engineering Center Software Engineering Center http://www.ipa.go.jp/software/sec/index.php Japan's Case: Highly reliable S/W development technology Dr. Seishiro TSURUHO President, Software Engineering Center Information-technology Promotion Agency, Japan International Software Engineering Conference Seoul, Korea, December/3/2004

Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

SoftwareEngineeringCenter

Software Engineering Center

http://www.ipa.go.jp/software/sec/index.php

Japan's Case: Highly reliable S/W development technology

Dr. Seishiro TSURUHOPresident, Software Engineering CenterInformation-technology Promotion Agency, Japan

International Software Engineering ConferenceSeoul, Korea, December/3/2004

Page 2: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

1

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterAgenda

1. Situations Surrounding Software Engineering

2. Establishment of Software Engineering Center (SEC)

3. Future of Software Engineering

Page 3: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

2

SoftwareEngineeringCenter

Software Engineering Center

SoftwareEngineeringCenter

Software Engineering Center

1. Situations Surrounding Software Engineering

Page 4: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

3

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Software as a Basis for Social Infrastructure and Added Values

Software is a social and economic infrastructure that supports all kinds of industries and creates added values of products and services

Electrical Machineries for Information and Communication Systems (e.g. PCs, PDAs, Servers)

Software (e.g. business applications, embedded software)

IT infrastructures (e.g. broadband router)

physical basis /

foundation

source of added values

IT industries

Automotive industries (e.g. ITS, procurement systems, production systems)

Bio industries (e.g. bio-informatics)

Financial business (e.g. electronic commerce systems)

e-Gov.advanced medical systems

Software now plays a critical role to strengthen competitivenessof all kinds of industries and to implement structural reforms

Page 5: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

4

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

The Software Industry is Getting More Important

Japanese Electronics and Information Industries

8,740

6,930

6,302

8,355

7,230

5,403

10,61113,591

5,873(11.3%)13,618(23.4%)

4,128

4,093

3,579

3,8283,623

4,339

0

10,000

20,000

30,000

40,000

50,000

60,000

1990

sales and output (yen in billions)

Information Service

Electronic Components/Batteries

Semiconductor

Telecommunication Equipments

Electronic Computers

Office Supplies, Electric Measuring Instruments

Consumer Electric Equipments

Consumer Electronic Equipments

2001

52,05358,190

UsingEmbedded Software Systems

Source: “A Survey on Selected Service Industries,” “the Census of Manufactures” and “Dynamic Statistics”

Page 6: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

5

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

The Scale of the Embedded Software Industries is Continuously Expanding

Examples(SLOC*)

• Car Navigation System with PDA– 3 million

• LCD/Plasma TVs– 0.6 million

• DVD recorder with built-in HDD– 1 million

Source: Nikkei Electronics, 2000 9-11(no.778)

1990 1995 2000

100K

1M

10M

100MB

Car Nav.

TVs

Cell Phones

Hi-Vision TV

voice guidanceCD-ROM VICS

enabled

DVD enabled

Internet TVdigital cell phone

i-mode enabled

packet communication

enabled

i-mode enabled

Java enabled

ITS enabled

data-storage broadcasting

3/4G enabled

Object Size

* SLOC: Source Lines of Code

Page 7: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

6

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Source: Dr. M. Hirayama, Toshiba Corp., Software Engineering Center, ET2002 TB-6, “Some Steps for the Quality Improvement of Embedded Software Systems Development”

1989 19991996

Size

of S

oftw

are

(LO

C :

Line

s of

Cod

e)

4-bit generation 16-bit generation8-bit generation

700K

1.5M

2.2M

500K

1M

2M 12 months

Time to Market Size

Current User Needs for Software Systems (esp. for Embedded S/W):Larger Size & Faster Time to Market

Size of Programs of Cell Phones

Current Development Productivity Does NOT Meet the Requirements of the Present Age?

6 months

Page 8: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

7

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Profile of the Embedded Software Industry

• Embedded Software Industry– engineers : 150,000.– development size: 2 trillion JPN Yen.

• output of embedded systems (dynamic statistics): 50 trillion JPN Yen.

– output : about 10 billion lines/year• One engineer develops 6,000 lines/year on average.

• cf, Information Service Industry– employees: 510,000– sales: 14 trillion JPN Yen

Source: Report on Embedded Software Industries (The Ministry of Economy, Trade and Industries, 2004)

Page 9: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

8

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Is the Quality Declining?LOTS of CAUSES of TROUBLES: development failures, delivery delays, budget overruns, breakdown and operational errors of information systems, defects of embedded software systems...USUAL REQUIREMNENTS, which make the quality management difficult:larger size, more complex systems; faster time to market, cost-reduction... … And OPEN SOURCE SOFTWARE movement.

Examples of the impact of some mission-critical system failures include…

Feb/2001 A SOFTWARE DEFECT caused 230,000 mobile phones recall.

An OVERFLOWMar/2003 of air-traffic control SYSTEM stranded 300,000 passengers in the airport.A SYSTEM MALFUNCTION caused the airline company to cancel 155 flights in two daysOUT-OF SERVICE of a bank ATM from morning to 14.30. ABNORMAL STOP in a bank’s mission-critical system in the evening.A BREAKDOWN

May/2003of an air route surveillance radar system caused 130

flights delay of more than 30 minutes. Apr/2004

Page 10: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

9

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

estimate on MAN-MONTH

no environment to produce

practical and skilled talents

Software Users

USER: no clear req. definition, no capability of evaluation

A defect in embedded SW systems in mobile

phones → large-scale recall

national institutes

univs.

prime contractors

Software Vendors

SMEs; approx.5600

Discrepancy in public traffic

system

Malfunction of payment systems of leading banks

Financial BusinessCentral/ local governments Manufactures

weak partnership

<industries><academia>

Market Size:13.7 trillion JY

Employees:560,000

no quantitative / competent

evaluation of software

Japan’ “strength”: Japan is recognizing what to do…to strengthen the filed of the integration with HW, i.e., embedded SW

Vendors have little incentive

for quality & productivity improvement

VENDOR: rough estimate→TROUBLES!

hollowing out of the JPN S/W industry caused by the rise of the low-cost & high performance Asian industriesfew personnel exchanges,

few knowledge sharing

Structural Problems of Software Industries in Japan

partner companies

big enterprises:

10-20

Page 11: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

10

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Toward Collaboration Between Academia & Industries in JPN

USA: Many universities offer PRACTICAL research programs in SOFTWARE ENGINEERING. Active interactions with industries.

Japan: Mainly THEORY-oriented COMPUTER SCIENCE. Few collaboration (e.g., talents, knowledge) with industries.

【USA】67% of employees in the IT industry hold IT-related degrees (BS, MS, PhD). About half of it (about 34% of the industry) are from computer science departments. 【Japan】24.5% of new employees in the IT industry graduate from universities;19% from technical junior colleges / vocational schools. … 53.7 % in the IT industry have not received formal IT education.【China】More then 400 universities & colleges offer software-related courses to more than 400,000 students.【India】120,000 graduate from IT departments every year; most of them are software-related.

Page 12: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

11

SoftwareEngineeringCenter

Software Engineering Center

SoftwareEngineeringCenter

Software Engineering Center

2. Establishment of Software Engineering Center (SEC)

Page 13: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

12

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Software Engineering Center (SEC)

ESTABLISHED on Oct. 1, 2004 (some preliminary activities have started since the beginning of the year)

STAFF: Intellects from Industries & Academia(Internal Researchers: 26 Task Force Members: approx. 130)

PRESIDENT: Dr. Seishiro TSURUHO

MISSION OF THE SEC:Develop Qualified Software Efficiently with “Monozukuri” or Craftsmanship in Mind

Page 14: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

13

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterStrategy of the SEC:

Strengthen Competitiveness in Software Engineering

Keep adding values through a spiral value chain

• Add values through marketing & research, development & standardization

• Obtain feedback through promotion and evaluation

• Iterate the value chain

SEC

marketing/ research

development/ standardization

promotion

evaluation

Page 15: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

14

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Action Plans to Implement the Strategy

• Concentrate most critical tasks in two major areas– Software Engineering for Enterprise Systems (SEES)

• quantitative data analysis, estimation methods, software life-cycle process– Software Engineering for Embedded Technology (SEET)

• Standard development technologies, management technologies, skilled HRs

• Utilize & Implement the results: Feedback practical expertise– Advanced Software Development (ASD)

• Analyze advanced case examples: Study & Research emerging fields– Collaborative Researches

• Collaboration with national and overseas institutes– Emerging Fields

• E.g. requirements engineering, design & development technologies, Agile

Page 16: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

15

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterActivities of the SEC

Industries

共同研究、技術移転・普及啓発、人材流動等

Software Engineering for Embedded Technology

Strengthen the development capability, Nurture skilled engineers

Building Best Practices of Advanced Software Development

Software Engineering Center, Japan

Univ., National Institutes & Overseas Institutes

Collaborative Researches (sharing raw-data, case examples…)Technology Transfer, Promotion, Standardization, Flexible

Human Resources Exchange

SEI(US), IESE(Germany), MMRC(Tokyo Univ.), EASE(NAIST&Osaka Univ.)

Be a “Platform” for SW Development Capability

Development & Promotion of Methods/Techniques, Standardization, Research & Survey

Users VendorsCollaboration for quality & productivity improvement

Software Engineering for Enterprise Systems

Improve Quality & Productivity

Page 17: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

16

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

The SEC as a Cornerstone of Partnership among Industries, Academia and the Government

Academia IPA/SEC JPN Government Industries

MMRC (Tokyo Univ.)

NEXCESS Project (Nagoya Univ.)

e-Society Project (JAIST)

Software Engineering for Enterprise Systems

(SEES)

Software Engineering for Embedded Technology

(SEET)

Advanced Software Development

(ASD)

Committee to Strengthen the Capability

of SEES

Committee to Strengthen the Capability

of SEET

Committee of ASD

The SEES Task Force

The SEET Task Force SESSAME

The ASD Task Force

EASE Project (NAIST &

Osaka Univ.)

TOPPERS

JASPAR

EMBLIX

TRON Assn.

Research Associations

JISA

JUAS

Agile Process Association

IPSGSIG-SE JASPIC

Foreign Research Institutes

(IESE, SEI)

JASA

Page 18: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

17

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Efforts & Approaches:Software Engineering for Enterprise Systems

Initiate Engineering Approaches for more efficient development & risk reduction• Quantitative Data Analysis

– Collect & Analyze quantitative data; provide statistics; develop a jointly owned view for the current situations

– Provide templates to be used for data collection

– Promote engineering approaches• Estimation methods

– Prove the estimation models / approaches

– Promote best practices• Software Life-cycle processes

– Define roles and activities of the stakeholders; reduce any project risks

No unrealistic, wasteful efforts!

*vendor to userdeliver expected “value”

*user to vendororder reliable systems/service

In Future: ideal & “typical”

req./expectation

systems/service

systems/service

   

vendor

  

user

high CS

credit/ brand

deliver

order

vendor

user

At Present: typical situation

・misunderstanding of the roles &

activities among stakeholders

・unrealistic & wasteful efforts

・failed projects, low customer satisfactions

req./expectation

deliver

order

Page 19: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

18

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Efforts & Approaches:Software Engineering for Embedded Technology

Organize and Promote Methods & Techniques to Efficiently Develop High-quality Software

• Quality Improvement Technique

– Study & Organize methods to improve quality in both upstream & downstream

• Project Management Technique

– Study & Organize PM methods concerning the characteristics of embedded software development

• Process Technique

– Formulate standard process based on concurrent development with HW.

– Organize a set of guideline for process improvement.

Quality & Productivity Improvement

Quality improvement

technique

Project management

technique

Process technique

Organize and promote techniques to strengthen the capability

of embedded software development

Page 20: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

19

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Nurture Skilled Human Resources for Embedded Software Development

Model for works

[reference]

Framework of skills

Model for careers[reference]

Evaluate their skills

Career Advancement& Career Shift

Project Team Design

Skill Improvement

Skill Standards

WG

②Career

Development WG

OutputProfiles of Skills

③Education

Program WG

① Formulate techniques & skills ② Utilize the right skilled engineers ③ Nurture skilled human resources

Input Profiles

of Engineers

Use the results of the evaluationEvaluate the skills

Page 21: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

20

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

The Organization of SEC, Japan (As of Nov. 16, 2004)

President’s Office

Advanced Software Development

Software Engineering for Enterprise Systems (SEES)

Software Engineering for Embedded Technology (SEET)

Advisory Board

・ITS Platform Development

Project Administrative Group

・Survey on SPI Methods・Administration, PR, & Promotion

・Collecting & Analyzing Quantitative Data・Estimation Methods・Software Life Cycle Processes・Requirements Engineering・Design and Development Technology

・Embedded Software Engineering・Skill Standards

Committee to Strengthen the

Capability of SEES

56 members

Committee to Strengthen the

Capability of SEET

74 members

Software Engineering Center, Japan

LINK9 full-time researchers

8 full-time researchers

9 staff members

President: Dr. Seishiro TSURUHOSenior Vice President: Dr. Toshinori SAEKIVice President: Dr. Kiyoshi MATSUURA

Project Leader: Mamoru YASUDASub-leader: Yasushi ISHIGAI

Project Leader: Hiroshi MONDENSub-leader: Kiichiro TAMARU

Project Leader: Dr. MATSUURA

Project Leader: Dr. SAEKISub-leader: Dr. MATSUURA

METI Ministry of Economy,

Trade & Industry

Page 22: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

21

SoftwareEngineeringCenter

Software Engineering Center

SoftwareEngineeringCenter

Software Engineering Center

3. Future of Software Engineering

Page 23: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

22

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

“Neo-Software Factory Approach”

• Europe : Software is ScienceUS : Software is BusinessJapan : Software is Product

• “Software Factory Approach”Products should be produced in factories

• Negative effects of the “Software Factory Approach”– underestimate coding– overemphasize managements & controls

• “Neo-Software Factory Approach” for new era– management of product line– unified metrics

Page 24: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

23

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Can Japanese Software Industries Sustain Growth?

“YES! IT’S POSSIBLE.”• Huge Market:

- excellent companies - general public

with good sense

• Multilayered Culture: - “cool” & attractive seeds

• Fine Engineers on the Line

• Leaders are Aware:– They have realized that the problems of software development is

not temporal but structural.

• “From Japan” business models

• World-class software

• 21st century backbone software

• VENTURE firm as change agent

Page 25: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

24

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterWhat are the “Structural Problems”?

• Local optimization / “Operation-focused” without strategy– Barriers of organizations, dead-letter rules & regulations,

disregards for management staff• Obstacles to understanding & sharing information

– “visible” “measurable”• Software is People

– Education/training take much time & cost a lot. – “Most of us as managers are prone to one particular failing:

a tendency to manage people as though they were modular components.” ((Tom Tom DeMarcoDeMarco, , PeoplewarePeopleware: Productive : Productive Projects and TeamsProjects and Teams))

– “The central question in how to improve the software art centers, as it always has, on people.” (Brooks, Frederick P(Brooks, Frederick P.,.,““No Silver Bullet: Essence and Accidents of Software EngineeringNo Silver Bullet: Essence and Accidents of Software Engineering””))

Page 26: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

25

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Classification of SW Industries by their Software Engineering Capabilities

Big Vendor Companies (doing both HW/SW businesses)N, H, F, IBM & others

Tier 1 (200 billion JPY~)4 companies

Tier 2 (50~200 billion JPY)13 companies

Tier 3(10~50 billion JPY)      37 companies

Tier 4 (~10 billions JPY)more than 10,000

Others: 10

10 companies

4 companies

5 companies

4 companies

15 companies Tier1 (Innovator)Its quantitative management is well understood through the organization and regularly exercised

Tier2 (Early Adopter)adopts defined processes; perform high-level development & management.

Tier3 (Early Majority, Followers)follows defined processes; perform development.

Tier4 (Laggard)highly depends on its personnel capability.

Classification by SW Engineering Capability

Current Sample Companies (48)Classification by Sales

<Information Service Industries>

Page 27: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

26

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Classification of SW industries & improvement of their engineering development capabilities

large

low

small

SW-ECapability

high

Sales

• ways to improve SW engineering capabilities

– scale-driven type:• Large size can mitigate the

impact of the cost for the capability improvement

– agility-driven type:• Take the advantage of the

smallness of the size. Its mobility helps to improve the SW engineering capability

Tier 2/3

Tier 4

Tier 2/3

Tier 1

Page 28: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

27

SoftwareEngineeringCenter

Software Engineering Center

http://www.ipa.go.jp/software/sec/index.php

THANK YOU!

Software Engineering CenterInformation-technology Promotion Agency, Japan

Page 29: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

SoftwareEngineeringCenter

Software Engineering Center

http://www.ipa.go.jp/software/sec/index.php

Reference Materials

Page 30: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

29

SoftwareEngineeringCenter

Software Engineering Center

SoftwareEngineeringCenter

Software Engineering Center

A. Software Engineering for Enterprise Systems

Page 31: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

30

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

SEES within Organization Structure of SEC

President

Software Engineering for Enterprise Systems (SEES)

Software Engineering for Embedded Technology (SEET)

Advisory board

- Collect and analyze real project data- Define data items- Infrastructure for benchmarking- Provide common sense among stakeholders

- R&D on requirement engineering

- R&D on development technologies

- Provide “Role and Activities”guidelines for stakeholders- Detail guidelines for effort estimation based on the above guideline

Advanced software development

- Demonstrate best practices of estimation

Requirement Engineering

Development technologies

Quantitative Analysis

Life cycle processes

Estimation Methods

56 members from industries or academia

Launched on Oct. 1, 2004

Page 32: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

31

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Current major issues in Japanese software industries

• Software Development are conducted based on individual supplier companies’experiences and there have been little communication among them.

• In addition most users have been playing “nominal” roles and heavily depending on suppliers to define their own requirements. Even advanced users have been struggling with requirement definitions with little knowledge about best practices.

• SEC’s mission is to break though the current states by providing “common understanding” which are already established in most other industries.

– quantitative approach – best practices

• Quantitative approach– collect real project data (quantitative and qualitative) from all over the Japanese

software companies– aim to be able to benchmark

• Best practices– we will provide stakeholders of software development with guidelines about “Roles and

recommended activities” during software life cycle.

Page 33: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

32

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Issues and GoalsAs is (many cases)

• Issues– Recognition gap between suppliers and users

• Major causes of projects failure– Lack of engineering approach both in suppliers

and users– Weaknesses in global market in terms of IT

• Goals– Strengthen competitiveness relevant to IT

• Software development capabilities• ROI concerning IT

– Cooperation of suppliers and users• Through cooperation develop and facilitate

engineering methods and minds in both sides• Bridge the gap between users and suppliers• Suppliers provide users with value through

systems• Users satisfy the value and increase trust on

suppliers• By the good cycle strengthen global competition

Suppliers

Users

Value by systems

Service

Trust High CS

Suppliers

Users

Wide G

aps

Failures & Low CS

To be(Make it happen)

Engineering in both sidesBased on objective data

High Quality

Page 34: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

33

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Issues and out steps: Quantitative approach

Visualization of software development

Issues Our steps

Research on metrics and modeling

Common sense about quantitative data

Benchmarking concerning size, quality, delivery, and cost

Illustrating relationships among metrics

・・・

Framework for quantitative approachShare it among stakeholders

Quality

Delivery

Cost

Size

Lack of EngineeringEspecially quantitative

Approach

Page 35: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

34

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Relations with other organizations

-Provide advanced technologies-Analyze real issues in the fields

JISA, JUAS(Suppliers associations and Users associations)

Academia

-Collaborate with each other-Proliferate best practices-Nurture practitioners

Advanced Software Development

-Provide project data-Use SEC database-Provide real issues-Trial of developed methods/technologies

Enterprise software domain

projects

Embedded software domain

SEC in Japan -Tackle specific issues in each domain

Other software engineering communities

Software Industries-Users companies

-Suppliers companies

Page 36: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

35

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Plan of Outputs in Enterprise Software Project

-Benchmarking services-Analysis (2)-Estimation (2)-Start Process visualization R&D(*1)

2004Collection and analysis of data

“Role and activities” in upper stream

2005Benchmarking services

“Role and activities” in middle stream

2006R&D on process visualization

“Role and activities” in lower stream

-Project DB-Definition of Data items-Analysis (1)

-Web services-Extended DB

-Role and activities guidelines- For upper stream- For estimation

Quantitative data analysis

Lifecycle process guidelines

- Web services

- Extended analysis- Process visualization (Metrics, data collection, tools, etc)

- Merge other themes results as requirement, development technology, data analysis

Estimation methods - Estimation (1)

-Role and activities guidelines- For development processes

-Analysis Guidelines-Analysis (3)-Process visualization R&D(1)

-Role and activities guidelines- For V&V, acceptance

Requirement Engineering

成果の出口

Development Technologies

- Theme selection

- Theme selection

- Modeling best practices

- Analysis of real project

- Architecturebest practices

- continue

- continue - Modeling best practices

- Architecture, reuse best practices

- Analysis of real project

*1 Planning to collaborate with EASE project*2 Merge the results from Requirement engineering and Development technologies

Page 37: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

36

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Engineering capabilities

*** *

Advanced cases

Quantitative Approach

Example:-Product data-Process data

******

*******

****

*** *

**

**** *

**

***

**** ** *

** ****

D: Based on both corroborated knowledge and quantitative data

C: Based on quantitative data

**

***

** *

** *

** *

*******

*** *

******

*******

***

** ******* *******

** *

** *

*********

**

** **

**** *******

** **

*********

** *

**** ******

*******

*******

****

** **

**** *******

*** ***

***********

** *

**** ******

**********

** *

**** *****

**********

**** *****

*** *

********

**

* *** ***** *

*********

**

* *** ***** *

***** ****** ********** ******

* ********* ****

** ***

** **

*******

** *

****

*** ********* ****

** ******** **

*** ****** ***

**************

************

*********

* ******* *********

******************

*******

* ********

* ****

*********

**** *******

*********** *******************

***

**

* *** ***** **********

******* **** ****

****************** *** ****** **

A: Ad-hoc

Example:-Experts’ experiences-Robust processes

***

***

B: Knowledge share and structured way

***

***

***

********************

****************************************

**************

****

** **

**

** **

****

** ** *

**

**

Example:- Intuition

Example:- Elicit best practices based on both experts’knowledge and data

***

* ** *

Qualitative A

pproach (Experience, processes)

*companies

Page 38: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

37

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Various paths to improve QCDCapabilities about QCD

A:C

DB:

Bottom Line made upward

Software Industries in the future

We plan to provide guidelines to step up the next stages according to the current status of companies. Quantitative Approach

Page 39: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

38

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Goals of: Quantitative Analysis of Project Data• Sharing quantitative “common understanding” among stakeholders

– Provide statistics • Statistical data concerning size, quality, term, etc. by domains, types of systems and

so on→ Analyze data collected in SEC database→ Share “common sense” at the planning processes

• Relation ship among metrics between size and effort, quality and term, for example→ Analyze effect factors to the relations→ Share “common sense” at the planning processes and during the development

• Proliferating engineering approach based on quantitative data– Demonstration

• Cleaning up a “skepticism” concerning feasibility and effectiveness of quantitative approach

– Provide engineering methods especially in data analysis

* Eventual aim is that individual companies prepare their own databases and, based on them, provide high quality software with high efficiency quantitatively

Page 40: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

39

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Output of 2004Output Brief explanation Characteristics

1 Worksheet for data collection

- Compatible data collection - Reduction of effort in data collection

SEC Data Base

3 Analysis results -Size vs effort by domains, relationship among metrics

-Benchmarking-White papers from SEC

4Statistical results providing services(*2)

- According to specific needs, statistical results can be retrieved on the web

-Benchmarking

- The first domestic project data base

- Definition of each data item

2

-Collected from cooperative software suppliers in Japan- Also from users companies (*1)- Data themselves are closed

(*1) Project data will be collected by JUAS based on the same data sheet

(*2) Output 4 may be provided in 2005 for contributing companies

Page 41: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

40

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Data items• General items charactering projects

– Types of development, new development, new customers, level of success etc• Application domain

– Domains, types of application, characteristics of users, etc• System characteristics

– Usage of ERP, development platforms, development language, etc.• Development

– Life cycle models, usage of tools, rate of reuse, etc• States of projects

– State of development teams, work environments, etc.• Requirements

– Ambiguity, commitment by users, etc.• Personnel

– Skills of Project Manajor, skills of team members, etc.• Size

– FP methods, FP, SLOC, etc.• Duration

– # of months of development (actual, planned), etc.• Effort

– Total efforts (actual, planned), efforts by phases (actual, planned)• Quality

– Total defects, defects of each phase, etc.

Page 42: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

41

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Analysis results – example size vs. effortRelationships based on Domain, Application Type, System architecture

-Domain: Telecom-Type: Accounting-Architecture: C/S

××

×××

××

××

××

××

×

××

×

××

×

×

Frequency

Efficiency

Size: Middle

effort

SizeSmall Middle Large

Page 43: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

42

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Statistical results providing services

- Domain: Telecom- Skill: PM high, Team middle,…………

SECData base

Provide conditions

Frequency

Efficiency

For selected companies, such as those who provide project data

Page 44: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

43

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Goals of: Estimation Methods Study• Pervasive usage of accountable estimation methods

– Replace ad-hoc ways to engineering methods– Understandable for stakeholders

• Demonstration of engineering approach– Demonstration through estimation

• Cleaning up a “skepticism” concerning feasibility and effectiveness of quantitative approach

– Provide guidelines for engineering approach in estimation • Analyze best practices both in Japan and overseas• Trial of some selected methods

* Eventual aim is that individual companies prepare their own databases and best practices, and, based on them, conduct accountable estimation to cultivate trust each other

Page 45: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

44

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Output of 2004Output Brief explanation Characteristics

1Guidebook for estimation methods

-Guide for the methods- Domestic best practices- Best practices outside Japan

-Reference for companies without estimation methods-Refine methods of “have”companies

2 Publication of each method

- Publicize on the SEC journal or other media

- Early notification about estimation methods

3 Trial

-Trial on some selected methods at cooperative companies-Publicize the results anonymously

-Demonstration / Corroboration-Incentives for cooperation

Page 46: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

45

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Guidebook (Image)

Plan Requirement Design Implementation

Information/RiskInformation/Risk

Little information / Little information / High riskHigh risk

# Req.# Use cases

Function PointsLine of codes # Test cases

TimeTimeFull information / Low Full information / Low riskrisk

InformationInformation

RiskRisk

- How precise estimation can be done in each phase

-Share estimation risks according to the phase

- Provide best practices to improve estimation (Simplified estimation methods, multi-phased contract, etc.)

Estimation (3)Estimation (2)Estimation (1)

Page 47: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

46

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterExample of contents of guidebook

(Early estimation (1))• Related tasks

• Necessary data

Preparation of analysis

Analysis of work flows and system

Establish work flow model

-Function-Amount of Data-Quality-System architecture

Cost Estimation

-Size-Effort-Term

Types Example DescriptionFunction # of componets Predict necessary # of components based on domain, type of application

Data Amount of Data (MB)# of records

Predict from # of operators, users, etc.

Quality (1) Reliability, (2) Usability, (3) Efficiency, (4) Portability, (5) Maintenability

High reliability(24 hours 365 days), Anonymous users, Transfer to other platforms, etc.

Architecture Stand alone, Mainframe, Layered Client/Server, etc.

Must use the current system or new one, etc.

(Relevant task)

(Most relevant task)

(Necessary Data)

・Planning Information systems

Page 48: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

47

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterExample: Estimation (1)

Parameters- Requirement: # components- Data: XXXMB, # records- Quality: High reliability- Architecture: Mainframe & Web

SEC Database

Data base of individual

companies

FrequencyRetrieved based on Parameters

Frequency

Time, effort, cost, efficeincy

Retrieved based on ParametersParameters

Estimation from distributions of

past data

Generally estimation based on individual database is the most precise

Median

Max

Statistical methods can be used

Determine by distribution

Make use of SEC Database

Time, effort, cost, efficeincy

Page 49: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

48

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Structure of Output

(1) Upper stream(2) Middle stream(3) Lower stream

Framework

Guidelines

Enhanced SLCP guidelines

Guideline(Plan/Req)

TerminologyDefinition of processesConcept

(1) Plan, requirement

(2) Design, Implementation

(3) V&V, Acceptance

Engineering processes

Organization processes

Support

processes

Guideline(Design/Imple

mentaion)

Guildeline(V&V,

acceptance)

Life cycle models

Waterfall model IterativeAgile

Based on waterfall models Considering state-of-the-art models such as iterative and agile models

Page 50: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

49

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Timeframe

widespread

Framework Enhanced SLCP guidelines

Lifecycle models Waterfall model Iterative/Agile …..

Cope with more models

Guidelines Roles and activities guidelines (Planning, Requirement)

Guidelines (Outsourcing)

Guidelines (V&V, Acceptance)

Cover all life cyclesFeedbacks from the fields

2004 2005 2006

Page 51: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

50

SoftwareEngineeringCenter

Software Engineering Center

SoftwareEngineeringCenter

Software Engineering Center

B. Embedded Software Industry Report

Results of Questionnaire from:548 Japanese Firms

58 USA Firms57 European Firms

“Embedded Software Industry Report” Ministry of Economy Trade and Industry, 2004

Page 52: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

51

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Newly Developed Size (SLOC)JapanEurope USA

10M

5-10M

1-5M

500K-1M

100K-500K

50K-100K

10K-50K

1K-10K

Under 1K

不明

0% 10% 20% 30% 40% 50%0% 10% 20%30% 40%50% 0% 10% 20% 30% 40% 50%

Page 53: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

52

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Average Time to Market: Whole Product

Under 6 months19.0%

6 months to 1 year43.2%

1 to 1.5 years19.2%

1.5 to 2 years 10.0%

Over 2 years3.9%

Unknown4.6%

Page 54: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

53

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Average Time to Market: Embedded Software

Under 6 months39.6%

6 months to 1 years41.3%

Unknown4.9%

Over 2 years1.5%

1.5 to 2 years3.1%

1 to 1.5 years9.6%

Page 55: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

54

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Software Cost over Total Development Cost

Under 10%18.2%

10 to 20%13.2%

20 to 30%13.7%

30 to 40%10.5%

40 to 50%6.6%

50 to 60%14.0%

60 to 70%4.8%

70 to 80%4.4%

80 to 90%3.5%

90 to 100%1.5%

100%3.2%

None6.3%

Page 56: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

55

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Software Cost over Total Development CostEurope Japan USA

0% 10% 20% 30% 40% 50%

なし

10%未満

10~20%未満

20~30%未満

30~40%未満

30~50%未満

50~60%未満

60~70%未満

70~80%未満

80~90%未満

90~100%未満

100%

なし

Under 10%

10~20%

20~30%

30~40%

40~50%

50~60%

60~70%

70~80%

80~90%

90~100%

100%

90~100%未満

80~90%未満

70~80%未満

60~70%未満

50~60%未満

40~50%未満

20~30%未満

10~20%未満

0% 10% 20% 30% 40% 50% 0% 10% 20% 30% 40% 50%

Page 57: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

56

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Do You Subcontract Your Development?

53.4%46.6%

USA

Yes

75.7%

No

24.3%

Japan

34.5%

65.5%

Europe

Page 58: Japan's Case · 2020-07-01 · Building Best Practices of Advanced Software Development Software Engineering Center, Japan Univ., National Institutes & Overseas Institutes Collaborative

57

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenterReason for Using Subcontractors

30.9%

14.5%27.3%

3.6%

16.4%

3.6%1.8%

1.8%

0.0%

67.7%

3.2%6.5%

12.9%

3.2%

6.5%

Europe

USAJapan

Affiliated Firm requiresto Outsource

Manage Fluctuationsof Workload

53%

Outsourcer or OEMrequires development

2%

Save DevelopmentCost 7%

Lack of Technologywithin the Organization

15%

Shorten DevelopmentSchedule 13%

8%

2%

Other0.3%

Lack of InternalResources