More Related Content
More from Keizo Tatsumi (20)
The History of Software Engineering and Software Testing (World and Japan)
- 1. The History of Software Engineering and Software Testing World and Japan
2012.5.8
1950 1955 1960 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010
▲ ▲ ▲ ▲
Hardware
World EDSAC(1st Neumann computer) IBM System/360 IBM System/370 Cray-1
(USA)
) ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(1st commercial computer) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
Computer Systems
(Scientific computer) ● ●
(Apple) (Sun Microsystems)
▲ ▲ ▲ ▲ ▲ ▲ ▲
Software MS-DOS UNIX System V
OS/360 UNIX CP/M Linux
Windows NT ▲
Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN COBOL LISP PL/I C ▲ C++ ▲ Java ▲ Ajax
▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲ Ruby on Rails
FLOW-MATIC ▲ Netscape Internet ▲ ▲
● ● HTML/HTTP/WWW Explorer XML ● SOAP ●
(Microsoft) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲ ▲ ● ● ▲ ▲
Systems, SAGE ▲ CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
Projects, SABRE ● ● Google Docs & Spreadsheets
Services ▲ ▲ Yahoo! Google Cloud computing
Mercury ▲ Gemini ▲ ● ● ● ●
Apollo project anouncement Apollo 11 moon landing eBay Salesforce.com Facebook Twitter
The Era of "Computer" Paradigm The Era of "Information Processing" Paradigm The Era of "Network" Paradigm
Japan Evolution of IT
Promotion of "Made A growth phase of Birth and Spreading the The Era of Cloud
Paradigm (*1) Exploration of computer Transition to Open Rapid growth of IT as a social
The opening of computer era in Japan computers" mini-computers and popularization of distributed Computing Paradigm ?
markets (mainly by IBM) System internet infrastructure
development software markets PC/Workstations processing network
▲ ▲ ▲ ▲ ▲ ▲ ▲
Hardware ETL Mark I [Relay] FUJIC [Vacuum tube] NEAC2200<NEC> DIPS-1 PC-8001 PC-9001 UNIX servers
*1st digital automatic computer *1st electronic computer FACOM230<Fujitsu> <NTT> <NEC> <NEC> <Hitachi,NEC,Fujitsu,Mitsubishi,OKI>
<ElectroTechnical Laboratory> <Fuji Photo Film> HITAC8000<Hitachi> ▲ ▲
▲ Reorganization into 3 paired groups ▲ ▲
ETL MarkⅢ [Transistor] of Japanese computer makers FM-8 PC servers
▲ <ElectroTechnical Laboratory> M series<Fujitsu-Hitachi> <Fujitsu> <Mitsubishi,Fujitsu,Hitachi>
FACOM100 [Relay] ▲ MUSASINO-1[Parametron]<NTT> ACOS series<NEC-Toshiba> ▲
<Fujitsu> *1st parametron computer COSMO series<Mitsubishi-OKI> ▲ Express5800<NEC>
▲ HIPAC MK-1[Parametron]<Hitachi> JW-1<Toshiba> *PC server with WinNT3.5
▲ NEAC-1101[Parametron]<NEC> *Japanese word processor
▲ ▲ ▲
Software Loader for NEAC-1101 1st Operating system for NEAC2200 DIPS-103-10OS
Symbol input routine for HIPAC-101 Monitor for HITAC-5020 (Time sharing OS)
▲ ▲ ▲
Automatic programming(FORTRAN) for HIPAC 103 MCPII monitor for FACOM 230-20/30 OSIV<Fujitsu>, OS<Hitachi>
▲ (Multi-program processing) ACOS<NEC-Toshiba>
FORTRAN/Assembler/IOCS/SORT for FACOM 222A UTS<Mitsubishi>
▲ ▲ ▲ ▲ ● ●
Systems, Tokyo Stock Exchange, National Railways National Railways online seat reservation system(MARS101) JUNET(Japan University NETwork) Yahoo! JAPAN amazon Japan
Projects, Nomura Securities seat reservation system Japan Airline seat reservation system ▲ ●
Services *1st business use computers ▲ (MARS1) Tokyo Olympic realtime record management system *Commercial online services PC-VAN ▲ Rakuten
installation (UNIVAC120) Japan Meteorological Agency NIFTY *e-commerce site ▲
*weather forecasting i-mode<NTT DoCoMo>
▲ ▲ ▲ Zengin System(Japanese Banks' Payment Clearing Network) ▲
Sanwa Bank Mitsui Bank online banking system ▲ ▲ Japan Net Bank
*1st banking system 1st-generation online systems of banks 2nd-generation online systems of banks 3rd-generation online systems of banks *1st internet bank
Management Perspective (*2) The Functional Era The Schedule Era The Cost Era The Quality Era
Thesis: Antithesis: Synthesis and Antithesis: Synthesis: Antithesis: Antithesis and Partial Synthesis:
Evolution of Software Engineering (*3) Software Engineering is Like Hardware Software Crafting Formality and Waterfall Processes Productivity and Scalability Concurrent vs. Sequential Processes Agility and Value
Engineering
▲ ▲ ▲ ▲ 1st NCSE(ICSE)
World Conferences, Symposium
NATO Software Engineering Conferences Symposium on Computer Software Reliability
Software Engineering, Software Testing
(USA) ▲ ▲ ▲ ▲ ▲ ▲
Development Structure Theorem Stepwise Refinement Structured Design CASE Booch Method UML UML 2.0
Methodologies (Bohm-Jacopini) ▲ ▲ ▲ (Computer aided ▲ ▲ ▲
Structured Programming Top-down Programming ▲ Data Flow Diagram software engineering) Object Modeling Technique Design Pattern Aspect Oriented Programming
▲ Abstract Data Type ▲ ▲ ▲
▲ Abstract Module ▲ Object-Oriented Software Architecture Test Driven Development
Formal Methods Entity-Relationship Model ▲ Software Engineering ▲
▲ ▲ Design by Contract ▲ Scrum
Warnier Method Jackson Structured Programming Agile Manifesto
▲ ▲ ▲ ▲ ▲
Management, Process Waterfall Model DoD-2167 DoD-2167A MIL-498 XP
(Royce) ▲ ▲ ▲
Spiral Model ISO/IEC 12207 ISO/IEC 15288
(Boehm) ▲ ▲ [Software Life Cycle Process] ▲ [System Life Cycle Process]
ISO 9000 CMM CMMI
▲ ▲ ▲ ▲ ▲ ▲ ▲
Quality Model, Program Quality Characteristics of Factors in Software Quality ▲ ISO/IEC 9126 ISO/IEC 14598 ISO/IEC 15939 ISO/IEC 25000
Measurement (Rubey) Software Quality (Boehm) (McCall) GQM [Product Quality] [Software Product [Software Measurement [Software Quality Requirements
▲ ▲ ▲ ▲ (Basili) Evaluation] Process] and Evaluation]
Lines of Code(LOC) Token count Function Point(Albrecht) COCOMO ▲
(Halstead) Putnam model (Boehm) IEEE Std 1061
▲ ▲ ▲ [Software Quality Metrics Methodology]
Software Reliability Model Reliability Growth Non-Homogeneous Poisson Process
(Jelinski&Moranda) (Coutinho) (Goel&Okumoto)
▲ ▲
Cyclomatic Complexity Software Science(Halstead)
(McCabe)
Software Metrics(Gilb)
The Debugging-Oriented The Destruction- The Evaluation-
The Growth of Software Testing (*4) The Demonstration-Oriented Period The Prevention-Oriented Period
Period Oriented Period Oriented Period
Testing, Analysis ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
Program Test Methods Symposium 1st Workshop 2nd 3rd International Symposium on Software Testing and Analysis (ISSTA)
Symposium ▲ ▲ on Software Testing Workshop Workshop Testing, Verification, ▲ ▲
Courant Symposium IEEE Symposium on Computer Software Reliability and Analysis (TAV) ▲ ▲ ▲ ICST
on Debugging Techniques ▲ ROSATEA ROSATEA
in Large Systems International Conference on Reliable Software (Role of Software Architecture in Testing and Analysis)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
Testing Techniques
[Decision Table] [Test design by Decision table] Cause-Effect Graphing Decision Table Equivalence Partitioning Orthogonal Array Testing OATS AETG
(GE, Sutherland) (Scheff) ▲ (Elmendorf) Testing Boundary Value Analysis (Fujitsu) *Orthogonal array testing *Pairwise testing
[Equivalence Partitioning] (Myers) (AT&T) (Bellcore) ▲
▲ [Boundary Value Analysis] ▲ ▲ ▲ Component-based Software Testing
Gedanken-experiments on sequential machines (Elmendorf) n-switch Coverage Domain Testing Object-oriented Testing ▲
(Moore) (Chow) ▲ Architecture-based Testing
▲ ▲ ▲ ▲ ▲ Exploratory Testing
Path analysis Coverage analyzer Coverage[TER] Coverage[Cx] Data Flow Testing (Kaner)
(Miller & Maloney) (Hirsh) (Brown) (Miller) ▲ ▲
Basis Path Testing ▲ Fuzz Testing ▲
(McCabe) Mutation Testing ▲ ▲ (B. Miller) Operational Profiles ●
▲
▲ ▲ IEEE 829 IEEE 1008 (Musa) ISTQB ISO/IEC 29119 development start
Inspection Software FMEA [Test Documentation] [Unit Testing] (Software Testing )
(Fagan) (Reifer)
V&V, Test Process ▲ ▲ ▲ ▲
▲ FIPS 101 IEEE 1012 W-Model TMap ▲ ▲ ▲
V-Model (Lifecycle V,V&T) (V&V Plans) (Herzlich) SW-TMM TPI TMMi
Books, Papers ■ ■
Checking a Large Routine Digital Computer Programming Computer Programming Program Testing & Validating
Program Test Methods The Art of Software Testing Software Testing Techniques 2nd Ed. Testing Object-Oriented Systems
(Turing) (McRacken) Fundamentals (Gruenberger) (Hetzel) (Myers) (Beizer) (Binder)
■ ■ (Leeds & Weinberg) ■ Software Reliability Software Testing Techniques
Computing Machinery and Intelligence Review of Evaluation of the Functional Testing (Myers) (Beizer)
(Turing) "Digital Computer Programming" of Control Programs Program Style,・・・, Debugging, and Testing ● Special Issues
(Baker) (Elmendorf) (Tassel) ■ Papers, Articles
Debugging Techniques in Large Systems Tutorial: Program Testing Techniques Books, Magazines
(Rustin) ■ (Miller) # Establishment
Theory of Test Data Selection
(Goodenough & Gerhart)
Japan Electronic Industry # (Software engineering technical committee) ▲ Information-technology # #
Development Association JEIDA founded 1st research report on software engineering Promotion Agency (IPA) IPA Sigma project IPA SEC(Software Engineering Center)
Japan (JEIDA)
Communities and # # ▲ ▲
IPSJ founded Software Engineering SIG ICSE in Tokyo COMPSAC in Tokyo
publications
Information Processing
Society of Japan (IPSJ)
● ● ● ● ● ● ● ● ● Embedded software development
IPSJ Magazine "Joho Shori" Special issue on Software Software engineering Software tools Current status of software engineering Software management Software process Software project management ●
(1st issue) ■ ■
Program testing(Kishida) Hot topics on software testing ●
An approach for software inspection ■
Testing techniques for software(Chusho) Trend of software reviews, software inspections
(Kanno) and defect prevention
# ▲ 1st SPC symposium
Union of Japanese Scientists Software Production Control research committee (SPC) Software Quality Body of Knowledge (SQuBOK)
and Engineers (JUSE) #
Software Engineering Software inspection and quality assurance Concepts and practices of JUSE Certified Software Quality Engineer (JCSQE)
(Kanno) (Ishii(Ed)) software quality assurance(Yasuda)
Japan Standards Association (JSA)
Software quality management practices
Japanese Society for
■ ● (Moriguchi(Ed))
Software quality control Special issue
Quality Control (JSQC)
and productivity on software quality control
▲ ▲
Software Engineers
Association (SEA)
1st Software symposium #
SEA founded
Testing Engineer's Forum (TEF) # ▲ ▲
TEF Japan Symposium on Software Testing (JaSST)
#
Association of Software # ASTER founded
Test EngineeRing (ASTER)
Nippon Telegraph and Telephone ■ ● ● Japan Software Testing Qualifications Board(JSTQB) ▲
Public Corporation
"Business Communication" Program Testing Test methods for online system Practical software engineering # # Test skill standard
(1st issue) (Shibuya,Fujiwara) ASTA WACATE (Test.SSF(β))
■ ■ ■ (Asia Software Testing Alliance)
"bit"(1st issue) Road to software engineering Software testing Software testing techniques
Other publishers <Kyoritsu Shuppan> (Miyamoto) (Kishida) (Tamai)
"Software Test PRESS"(1st issue)
Software engineering - Current and prospects Software testing techniques
(Miyamoto) (Tamai)
Special issues of
# ● ● ●
["Software Works" founded(Hitachi)] Hitachi Review Hitachi Review Hitachi Review[Current topics on software engineering]
periodicals from [Software development technology] [Software engineering]
computer makers
●
FUJITSU magazine Fujitsu's software quality assurance in practice(Kubo)
[Reliability] ● ●
Toshiba Review NEC Technical Journal
[Software engineering] [Software engineering]
(Japanese translation)
Japan's Software Factories (Cusumano)
Japanese translations Program Test Methods(Hetzel) The Art of Software Testing(Myers) Software Testing Techniques 2nd Ed.(Beizer) Black-Box Testing(Beizer)
of test publications Program Style,・・・, Debugging, and Testing(Tassel)
Software Reliability(Myers) Testing Computer Software 2nd ED.(Kaner)
▲ ▲ ▲ ▲
Testing techniques AGENT Orthogonal Array Testing HAYST method
▲ Case Flow Diagram
deviced in Japan ("needle probe") (*CEG test tool) <Fujitsu> <NEC> (*Orthogonal Array)
<Hitachi> <Hitachi> Function Diagram <Fuji Xerox>
<Hitachi>
(*1) "Kako no jyouhou seisaku to jyouhou sangyou ni kansuru chousa bunseki ni tsuite"(in Japanese), IPA, March 2004
(*2) The Future Engineering of Software: A Management Perspective (Basili, Musa), 1991 © K.Tatsumi, 2012
(*3) A View of 20th and 21st Century Software Engineering (Boehm), 2006
(*4) The Growth of Software Testing (Gelperin & Hetzel), 1988