1
Lyee’s Idea and Achievement
Inventor of Lyee: Fumio Negoro Document writer: Hideo Yagihashi Lyee stands for the governmentaL methodology for software providence.
The Institute of Computer Based Software Methodology and Technology
L y e e Lyee stands for the governmenta L methodolog y for softwar e - - PowerPoint PPT Presentation
Lyee s Idea and Achievement Inventor of Lyee: Fumio Negoro Document writer: Hideo Yagihashi L y e e Lyee stands for the governmenta L methodolog y for softwar e providenc e . The Institute of Computer Based Software Methodology and
1
Lyee’s Idea and Achievement
Inventor of Lyee: Fumio Negoro Document writer: Hideo Yagihashi Lyee stands for the governmentaL methodology for software providence.
The Institute of Computer Based Software Methodology and Technology
2
1. Lyee Overview 2. Lyee Principle 3. Effects and Cases of Software Development with Lyee 4. Scientic Research into the Signification Vector (page) 3 12 31 45
3
4 External Design Internal Design Programming System Test System Planning Development Process
MindSA BPR PlanDB DOA OOA Design of Structure
Structure programming Object programming
CASE Tool DB Tool DFD Tool Decomposing Tool
Languages Delphi, VB, C Language Cobol 4th Generation Language Developer 2000
Development process
Tool
Lyee
User confirmation Testing Layout of screen / printout Definition of words LyeeALL registration Auto- generation
programs
Lyee can dramatically change the whole development process in water fall model.
5
Types of Software Application Applications
Business Control
Middleware Operating Systems
Already developed. A trial development for communications protocol has been conducted. Not yet. Not yet.
6
Aim of Lyee
Lyee has enabled to make an automatic agreement between requirements and programs by choosing nouns from requirements in natural language and making the same structured programs for each of those nouns, without going through specifications which are in general believed mandatory.
Programs in Lyee methodology are constructed with a collection of word-based programs, which was once sought by data-oriented approache’s researchers, but was not descovered by them. User interfaces like screens, printouts, and words are
Lyee’s program structure enables the building of a network among words when Lyee’s structured programs are executed on a computer.
In other words, the iteration mechanism in the Lyee sturucture eliminates the design work based on knowledge about the business operations.
Lyee methodology dramatically change the development processes, and enables us to reduce amazingly the workload of design, programming and test phase.
7
Automatic agreement
Specifications
Requirements in Natural language Automatic Agreement Programs
Lyee has enabled to make an automatic agreement between requirements and programs by choosing nouns from requirements in natural language and making the same structured programs for each of those nouns, without going through specifications which are in general believed mandatory.
A B C A B C
Nouns Nouns User System engineer
8
Word-based program (Signification Vector)
S . E
Requirement definitions for each word (mechanism of iteration)
Novelty, innovative steps, industrial applicability of Lyee are already approved to be patent in Japan, the United States, Canada, the Republic of Korea, Singapore, and New Zealand.
9
Lyee’s Program Structure
Control Program for Process Route Diagrams
Output word Input word area Output word Input word area
Common Parts Output Screen Input Screen
O u t p u t w
d Output word (Input and Output Words) (Output Words)
: :
(Input Words) Input word area Input word area
10
Output Screen Input Screen
Clear button End button
Process Route Diagrams
Execute button
File Output File Input Common Files
Execute button
Common Screens
Base structures (Scenario Function) to be made for each screen and file All the software can be represented by combinations of the Scenario Functions. The Process Route Diagrams show a variety of links of the Scenario Functions.
11
Input a) word ID b)definition of requirement for each word on the screens
LyeeALL
Language-based Templates LyeeAll improved remarkably high productivity.
LyeeAll (Development Tool for Lyee)
Source Programs
By providing Word Ids, calculation formula and acceptance conditions, which are definitions of a requirement of each word, to Lyee structure (Scenario Function), programs are generated automatically by LyeeALL.
12
13
Lyee’s Function
1) Programming It is to give instructions of how to process words to a computer one by one. 2) Completing Programming It is to complete a network of words at the time of execution, when a computer finds out correct processing orders, exclusively following the instructed processing method for each word. Lyee’s program structure, which is identical for each word, and represents a mechanism of iteration enables the building of a network among words when Lyee’s structured programs are executed on a computer. In other words, the design work imposed on systems engineers becomes practically null.
14
Example Clarifying Lyee’s Principle
Choosing the same words from among independently defined words and connecting them lead to automatic generation of programs.
Sales value Unit price Volume purchase unit price Margin Unit price purchase unit price Words Defining words ×
= Input data = Input data = = I
n p u t d a t a Volume × ( 1 + margin )
15
Basic Rules of Data Processing
Process each word in the flowchart of the Signification Vector one by one, and generate values to those words. Until all the words have values set in, this process continues to be operating.
Processing next words.
A Group of Words of Requirements
YES NO NO YES
Flowchart of Signification Vector
Execute the defined calculation formula. Set the value in as a value for the word. Does the word have a value? Does it have a value & does the value meet acceptance conditions ? Word 1 data Word 2 data Word 3 data Word m data Word n data
16
Restart?
Not established Established Established
Restart?
First run Second run
Iteration Mechanism for Deleting Sequential Orders of Execution
unit price ‹--- purchase unit cost × (1 + margin) volume ‹--- χ
Established Established
sales value
‹---
unit price × volume purchase unit price ‹--- α margin ‹--- β input
16
17
How the Signification Vectors Are Activated
YES NO YES NO
W - Sales value = Unit price × Volume Does it have a value ? & does the value meet acceptance conditions ?
S E
Sales value = Work - Sales value Does the word have a value ?
Signification Vector for Sales Value
YES NO YES NO
Does it have a value ? & does the value meet acceptance conditions ?
S
purchase unit price = W-purchase unit price Does the word have a value ?
Signification Vector for Purchase Unit Price
Work - Sales value = Unit price × Volume
Not established
purchase unit price = Work - purchase unit price
Established
E
Does it have a value ? & does the value meet acceptance conditions ? Does it have a value ? & does the value meet acceptance conditions ? Does the word have a value ? Does the word have a value ? W - purchase unit price = I - purchase unit price Work - purchase unit price = Input - purchase unit price
Restart?
Established
Iteration Mechanism for Deleting Sequential Orders of Execution
unit price ‹--- purchase unit price × (1 + margin) volume ‹--- χ
Established Established
sales value ‹--- unit price × volume purchase unit price ‹--- α margin
‹---
β
Second run End
Restart?
18
Not established Established Established
19
How the Signification Vectors Are Activated
YES NO YES NO
Word - Sales value = Unit price × Volume Does it have a value ? & does the value meet acceptance conditions ?
S E
Sales value = W- Sales value Does the word have a value ?
YES NO YES NO
Does it have a value ? & does the value meet acceptance conditions ?
S
purchase unit price = Work-purchase unit price Does the word have a value ? Work - Sales value = Unit price × Volume
Established Already established
Does it have a value ? & does the value meet acceptance conditions ?
E Signification Vector for Sales Value
Signification Vector for Purchase Unit Price
Does the word have a value ? Sales value = Work- Sales value Does the word have a value ? Work - purchase unit price = Input - purchase unit price
20
Generating the Functional Requirement
20
Sales value Purchase unit price Margin Unit price Volume Output Screen Control Sales value Purchase unit price Margin Unit price Volume Sales value Sequence and combinations (→ ) of the siginification vectors are generated at the time of execution on a computer
First run Second run
Not Established Established Established Established Established Established
21
Characteristics of Signification Vectors
1 The Signification Vector of each Word sets nothing else but its own value. ⇒ Independence of Words. 2 Any processing order of Words will do. ⇒ No concerns with execution orders. 3 Lyee’s program structure enables regeneration of a network
⇒ Constant adjustment of all the related Words. 4 Programs are automatically generated on a computer. ⇒ Completeness of programs at any moment
22
Approach of Conventional Methods
specifications
Requirements programs
: If A = a1 Then B = f1(A) C = f2(A, B) Else B = f3(A) C = f4(A, B) Endif : The relational formulae are fixed in sequence and their combinations are restricted.
User S E
23
Lyee’s Approach
Requirements Words (nouns)
All we have to do is to collect word-based programs. Sequence and combinations of the relational formulae are generated at the time of execution on a computer.
L y e e’s structure
Program of word A Program of word B Program of word C
: :
Iteration
User System engineers
A B C A B C
Extract nouns
24
Signification Vector
Requirements Programs
Functional Requirements and Programs Are Simultaneously Determined.
(Input Word) (Output Word) (Output Word)
Attribute Check E m p t y ? Judgement of Conditions E m p t y ? Data Generation
L2 L3 L4
Calculation formula 1 Calculation formula 2
25
Layout of screen / printout
collection of Words Drawing process route diagrams
Building of Signification Vectors, Action Vectors
Registering the received calculation formulae and acceptance conditions from users in LyeeALL.
User confirmation Are the user intentions satisfied or not?
Collected Words have ambiguity.
a) Construction data generation formula. b) Adding Words.
Lyee’s Development Process
Iteration!
26
Scenario Function
Φ Tense Control Function
L4: Signification Vector L4: Signification Vector L2: Signification Vector L2: Signification Vector L3: Signification Vector L3: Signification Vector L4: Signification Vector L2: Signification Vector L3: Signification Vector
Φp : W03 Pallet Φp : W02 Pallet Φp : W04 Pallet
Φ Tense Control Function Φ Tense Control Function
Iteration is conducted until all the Words have values set in!
27
The structure of Scenario Function
28
Calculation W04 Calculation W02 Calculation W03 Inventory check W04 Inventory check W02 Inventory check W03 Continuous route Inventory DB W04 Inventory DB W02 Inventory DB W03 Recursive route Recursive route Duplex route End Multiplex route
Example of Process Route Diagram (PRD)
29
InventoryDB W03 Inventory DB W03 InventoryDB W02 Inventory DB W02 InventoryDB W04 InventoryDB W04 Inventory DB W04 Inventory check W03 Inventory check W03 Inventory check W02 Inventory check W02 Inventory check W04 Inventory check W04 Calculation W03 Calculation W03 Calculation W03 Calculation W02 Calculation W02 Calculation W02 Calculation W04 Calculation W04 Calculation W04 Continuous route Recursive route Recursive route Duplex route End Multiplex route Recursive route Inventory check W04 Inventory check W03 Inventory check W02
The way of SF’s execution
30
C a l c u l a t i
W 4
C a l c u l a t i
W 2
C a l c u l a t i
W 3
I n v e n t
y c h e c k
W 4
I n v e n t
y c h e c k
W 2
I n v e n t
y c h e c k
W 3
Continuous route
I n v e n t
y D B W 4 I n v e n t
y D B W 2 I n v e n t
y D B W 3
Recursive route Recursive route Duplex route End
C a l c u l a t i
W 4
C a l c u l a t i
W 2
C a l c u l a t i
W 3
I n v e n t
y c h e c k
W 4
I n v e n t
y c h e c k
W 2
I n v e n t
y c h e c k
W 3
I n v e n t
y D B W 4 I n v e n t
y D B W 2 I n v e n t
y D B W 3
The track of SF execution is user’s requirement of conventional ways. This is totally different from that captured with SF. The difference between SF and conventional ways for user’s requirement is significant although it seems that we are not be able to comprehend substantially the significance of this difference due to the limitation of our way of thinking.
Appearance of User’s Requirement which conventional ways aim to capture
31
32
Conventional Development Process
Clarification of program logic structure Program specifications DB physical design Preparation for process patterns System test Does the system satisfy the business needs? Putting the components in programs Program test Designing screens and printouts Normalizing the data items Determining the data items and their defined calculation formulae Designing DB logic Programming Test Internal Design External Design System Planning Decision
business model Decision
architecture Analysis on existing systems Detailed DFD Making the components
Combination test Data Flow Diagram Analysis on related business matters Adjustment
33
Lyee’s Development Process
Does the system satisfy the business needs? Drawing process route diagrams Decision on new business model Checking human errors in registered requirement Layout of screens and printouts Analysis on related business matters DB physical design Confirming interface
Determining the words, their calculation formulae Defining logical DB Registering requirements in LyeeAll Decision on system architecture Adjustment of programs & DB
The three steps of conventional procedures such as external and internal design and programming can be converged into almost
Programming process is automated, namely, very easy so that users are able to decide their requirements step by step.
Adjustment Test Defining Requirements System Planning
34
Conventional Maintenance Process
Test Internal Design External Design System Planning Clarifying the points to be revised in external requirements Revising screens and printouts Revising DB definitions Find out the revised parts and their affected parts Programming Revising programs Program test Combination test System test Does the system satisfy business needs?
35
Lyee’s Maintenance Process
Layout of screens and printouts Confirming interface
Does the system satisfy the business needs? Revising layout of screens printouts Revising requirements
Revising DB definitions Checking human errors in revised requirements
When it comes to maintaining conventionally made programs, it is very difficult to identify which parts of the programs need changing and are affected by those changes. With the Lyee method, however, this process can be replaced by the revising of the requirement of each word so that the entire maintenance procedures become simpler.
Adjustment Test Defining Requirements System Planning
36
Systems Developed with Lyee Method (1)
Sales and Management System (CATENA CORPORATION)
Management Customers System (CATENA Associated Company)
Property System (CATENA CORPORATION)
Cost Calculation System by budget and kinds (Major Steel Company)
Management System for services (System of management for accept an order and shipping)
Store-net System(4 supermarkets sized middle or small)
Operating and management system for 401K (Major Insurance Company)
2,000,000 steps (actually used steps for operation)
Cost: 1 / 4 Period: 1 / 3 Example-1
37
Systems Developed with Lyee Method (2)
New Management System for services ( Major Insurance Company )
New Management System for Sales goods ( Major Heavy Industry Company )
Management System for Bond Possession Balance ( Major Think tank Company)
Sales System (Major Major Electric Power Company )
New Management System for Sales Goods (STEP 2) (Major Heavy Industry Company)
240,000 steps
Web Online Production Management System (STEP1 ) ( Major Heavy Industry Company )
40,000 steps
Web Online Securities Management System (STEP1 ) ( Major Bank )
100,000 steps
C/S
Lyee method applied first to newsystem development achieved a reduction of 2/3 from a conventional method in terms of development cost and period.
Cost: 1 / 6 Period: 1 / 5 Cost: 1 / 3 Period: 1 / 3 Example-2
38
Operating and management system for 401K
Major insurance company
Support big scale work and sales by using the Internet technology This system targets the following tasks, which the operating organization is in charge. 1.Support management for office work that promotes business. 2.Support sales 3.Support call center
Server
2 SUN Enterprise 450 in deskside tower
Solaris 2.6
UNIX OS
TP1 / Web
Gateway that accesses from WWW browser to OPEN P1 system through RPC.
TP1 / Client / W
Library that can operate on Sun Enterprise as a client of OPEN/TP1
COBOL 85 V3.0
Oracle 8i Enterprise Edition 8.1.5
2000/1/1
2000/8/17
* Note The second phase will start in May, 2001.
Operating and management system for 401K (1st phase ) outline Example-1
39
Participation of the users
Issue G requirement defined list • movable screen picture • screen • office work defined list Design and produce G Program User conference
Collaborative office System sectional meeting
Office work against outside G ( Company A ) System of the connection with outsiders
Project Management G ( Company A )
Promotional education G ( Company B ) Support and promote system
Foundation G ( Company A )
Design & produce G
( Lyee ) Practical use G ( Company C )
Organization and Role of the Project
Collaborative office Project Management G
Office work against outside G
Promotional education G Foundation G Produce G Practical use G System administrator of the user side , Adjust whole things and submit, confirm and admit the specifications Schedule across projects and adjust, and manage the resource and the quality of the products
Examine the specifications about the system of the connection with outsiders, make a requirement defined list • word list • movable screen picture Examine the specification about the promotion support system, make a requirement defined list • word list • movable screen picture
Examine and build a real environment, choose and submit a software about development
Office work against outside G/Make a program for a requirement defined list that makes the promotional education
Keep the real confirmed environment • Build a real environment • Use as usual
Issue G
40
January February Mar. Apr. May Jun. Jul. Aug
01---10 11---20 21--end 01---10 11---20 21--endJob/Allotment Issue G
Screen & printout layoutsLyee G Issue G
Files & message design Programming Interface to Hitachi web application Run / VerificationEnterprise- contributed Issue G Lyee G Issue G Modification/Addition Individual
16 16 06 07 27 27 27 15 31 31 05 13 18 15 20 22 02 26 16 25 17 01 13 08 15 14 19 10 30 27 15 10 10 30 10 31 01 20 10 03 03 10 032 Months & less for Development } 3 Months & less for Total development
Spiral 1, Enterprise
Spiral 2, Enterprise
17 17 17 17Modification/Addition Enterprise Individual- contributed Remodification Enterprise Issue G Lyee G Issue G Issue G Lyee G Issue G Issue G Lyee G Issue G
Screen & printout layouts Files & message design Programming Interface to Hitachi web application Run / Verification Screen & printout layouts Files & message design Programming Interface to Hitachi web application Run / Verification Screen & printout layouts Files & message design Programming Interface to Hitachi web application Run / Verification Screen & printout layouts Files & message design Programming Interface to Hitachi web application Run / VerificationThe schedule of the operarting and management system for 401K ( 1st phase )
01---10 11---20 21--end 01---10 11---20 21--end 01---10 11---20 21--end 01---10 11---20 21--end 01---10 11---20 21--end 01---10 11---20 21--end2 Months for 1st requirement
41
Receive the screen WFLW02 W03 W04
WFL WFL WFL WFL WFL Send the screenK1
Transition screen Response screen WFL WFL WFL Send messageW02 W03 W04
Input the DB WFL WFL DB WFL WFL Receive message WFL WFL WFL WFL Output the list Output the DBK2
DB WFL WFL Send message Check the attribute Generate a data Edit the data Check the attribute Generate a data Edit the dataWeb-Server DB-Server
W04
Register Proceed Send the screenBusiness Application with Lyee sphere Boundary software with Lyee
Function to receive a screen Function to receive a screen BrowserOperate and execute a screen function Fu・ ( Script )
WFL Receive messageSolaris 2.6 Net-scape Enter Prise Server
RPC protocolTP1/Web/cliant TP1/Web TP1/Web/cliant
Input definitionTP1/Web
Basic software
( Universal structure )
To respond to change of the basic software, it is enough to change the boundary software.
Output definitionLyee Web Structure
Solaris 2.6 Oracle
42
(Users’ Evaluation) After a new program making method, Lyee, was used for a new management system for sales goods, testing has been conducted to evaluate the quality of the system. The results of evaluation are in favor with Lyee. Lyee methodology was patent in the United States in August, 2000 and Japan in November. ‹ Evaluation › (1) Scope for evaluation: 500, 000 steps (including new lines, JAVA, WEB electric approval system, screen 62, file 52). (2) Development period: less than 1/3 (7 Ms -- › 2 Ms) (3) Development cost: less than 1/3 (14000Hs -- › 4320Hs) New Management System for Sales Goods (STEP1) ( Major Heavy Industry Company ) Example-2
43
Development time reduces to 1/ 5 - 1/10 Document amount reduces to 1/100 Development work steps reduce to 1/5 - 1/20 Maintenance work steps reduce to 1/ 40 - 1/200 Maintenance staff are released from locked-up routine Software assets reusable by everyone
Open Lyee’s Effects
44
Lyee’s Advantages for Users
1 You could start system development with insufficient definition of requirements. Addition to and change of requirements are to be absorbed in a short-term spiral-development. 2 You could start system development with partial definition of requirements. Since a program is made for each word, we could start system development just by using the words clients show step by step. 3 It is easy to conduct system development in a parallel manner and merge them into one later. Word-based programs are independent of each other in nature so that merging the programs is an easy task. 4 All users have to do in the first place is to provide screens, printouts, and words. The rest they have to do is to check whether the system is satisfactory or not to their requirements. They are released from a burden of explaining the detailed specifications and reviews.
45
46
Monad Word
(Leibniz) ( Lyee ) (Spinoza)
Substanse Attribute
The correspondence between Philosophy and Lyee
Monad is changing Infinite set of Monad Monad is changing Mode:
Meaning is changing
Infinite set of Monad
47
The ambiguity in Requirement (Infinity)
1.Number of words constituting requirements Requirement
Word
2.Relations among words
sequence & combination of words
48
Monad2 Monad3 Monad1
First change by will Essential communication
Pre-established Harmony by Leibniz
Automatic Change of Internal world Automatic Change of Internal world
49
Word
Avoidance of Russel’ Paradox
Infinite set of Monad
( Natural Space )
Boundary Monad
Finite set of Monad
(Consciousness Space )
Russel’s Paradox
Synchronization
Replace a finite set of Monad with a finite set of ambiguous words
50
... ...
Consciousness Space Natural Space ‹Static State› ‹ Dynamic State›
Word : wi
Finite set of Monad
‹ Synchronous State›
Boundary Monad
The structure of Signification Vector
Infinite set of Monad
51
Objectify the word to create a state of A-.
S
Does this word provided with coordinates refer to a state of A+ or a state of A-?
.
A-,
Has this objectification been correctly done?
A+,
No Yes No Yes Is it possible for the word to be objectified furthermore? Assign the A- state to the word. Assign the A- state
to the word.
Signification Vector
A large volume of hypotheses and axioms are necessary to explain the theory behind this idea. To this end, explanatory materials are due to be released in the near future.
E
Assign the A- state
the word.
52
W04 pallet W03 pallet W02 pallet A+ A-
x3
w1
w1-3
The Technical Model
w2
w2-4 w2-2 w2-3
53
The Institute of Computer-based Software Methodology and Technology