Software engineering technology transfer the way forward or the way back
This presentation is the property of its rightful owner.
Sponsored Links
1 / 26

Software Engineering Technology Transfer…the way forward or the way back PowerPoint PPT Presentation


  • 94 Views
  • Uploaded on
  • Presentation posted in: General

Software Engineering Technology Transfer…the way forward or the way back. by Assoc. Prof. Karl Reed,FACS, FIE-Aust., MSc,ARMIT. Chair IEEE-Computer Society Tech. Council on Software Engineering

Download Presentation

Software Engineering Technology Transfer…the way forward or the way back

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Software engineering technology transfer the way forward or the way back

Software Engineering Technology Transfer…the way forward or the way back

by Assoc. Prof. Karl Reed,FACS, FIE-Aust., MSc,ARMIT

Chair IEEE-Computer Society Tech. Council on Software Engineering

Governor, IEEE-Computer Society(1997-1999,2000-2002), Director, Computer Sys. & Software Engineering Board, ACS,

Department of Computer Science & Computer Engineering, La Trobe

University

Hon. Visiting Professor, Middlesex University

liberal use will be made of ideas from Jason Baragry, David Cleary and Jacob Cybulski

“those who fail to study history are bound to repeat it”


Some definitions

Some Definitions..

  • TECHNOLOGY AWARENESS…

    • To be aware of some aspect of the technology not currently being used, and to understand it well enough to decide to adopt or not to adopt.

  • TECHNOLOGY TRANSFER…

    • To achieve technology its adoption to a level proficiency which permits use to produce products and services on a commercial basis, or their improvement

  • Conditions of Necessity

    • The creation of an irresistible desire for or belief in the value of some technology that leads to its adoption as a matter of urgency

    • Demonstration that new technology can solve some commercial problem or improve some process


Our problem

Obviously we are.. We’re doing research aren’t we?

You mean it may not be?

If it were believed to be true, there’d be no real TT problem.

Our Problem…

  • A.Are we making a real improvement?

  • B.How can we be sure this is true?


Software engineering technology transfer the way forward or the way back

Stages of SE...

Immature methodologies, Fortran, Cobol, Assembler-70’s,telephone systems

Customer req dominate,ROI mandatory

Cottage industry, but well intentioned

Systems Analysis and Design methodologies

70’s-80’s

Mature?

Body of Knowledge but no universal success

Determinate, quality driven, high reliability, business model oriented

Formal Methods, info. Hiding, architecture, strong typing, CASE,RE,SCS,formalised testing, banking networks,internet,PC-OS,

OO,CMM,Process Modelling,re-use, cots,dig.flight control systems,EFTPOS

Cottage industry, reversion to the old-days

Unreliable, technology history free, ROI independent-business model? s/w surprises

Large-scale s/w, comsumer goods,engine management systems, ABS

time to market, extreme programming, web systems, free-ware, 94-00’s


Software engineering technology transfer the way forward or the way back

  • Where Are We?

Traditionalist’s View

DISASTER

IN WAITING!

  • Bowsers that are limited

  • Time-To-Market web-application deployment

  • 16 year old wunder-kinder throwing systems together

  • poorly designed functionality

NO PROBLEMS MATE!

Modernist’s View

  • rapidly deployed functionality

  • rapid evolution of systems to meet customer needs

  • conventional approaches being left behind

  • the old do not understand the new


Software engineering technology transfer the way forward or the way back

To many surprises….!!!(nsf report on s/w research 1998)

“F1. Current software has too many surprises. The sources of surprise

are poorly understood.”

  • “F2.Key sources of software surprise include immature or poorly integrated software domain sciences, construction (product) principles, and engineering processes. Software research emphases have swung from process to product research, with weak coverage of domain sciences and integration.”

Sources of surprises... Real and apparent ambiguity in the means of representation of systems, e.i. Languages (cf 3 pages of c++ with 3 pages of government regulations)(Reed, 2000)


Software engineering technology transfer the way forward or the way back

No surprises….!!!(nsf report on s/w research 1998)

“F1. Current software has too many surprises. The sources of surprise

are poorly understood.”

Sources of surprises... Real and apparent unpredictability in behaviour...

“Teenagers have less trouble with PC software because they are adept at playing computer games” Charles Wright, editor Melbourne Age “green pages” computer section 2000

“Building ‘bots’ that play computer games with near human competence is not that hard” US researcher in AI….


Software engineering technology transfer the way forward or the way back

By way of Illustration...Some Contradictions……

and confusion

1. Software Architecture.. ‘not immutable, not always determinable a’priori,multiple versions in one artefact, retrofitable…. Analog with “built” systems not clear.

2. Software Process.. CMM vs fine-grained process independent, Time To Market vs Planned Process, Phase incompletedness, Extreme Programming.

3. Software Process... Often mandated, but not followed… few detailed studies similar to production engineering (see Hess)

4. Re-use… not successful, yet components industry emerging

5. Engineering & SE.. Poor choices of analogues from traditional domains, e.g. “immutable components”


Software engineering technology transfer the way forward or the way back

Some Contradictions……

and confusion (cont’d)

6. SWEBOK.. Organised body of knowledge opposed by leading SE players.

7. Prescriptive Design processes... only slowly beginning to appear, perhaps via UML.

8. Requirements Engineering... Cannot always be completed in advance..may be continuous part of the implementation process...

9. Software Crisis… yet increasingly, successful large-scale applications are ubiquitous

10. High Quality training for 30 yrs.. Yet each new s/w development wave starts with a blank mind, e.g. web-based computing

11. Documentation matters but.. It’s seldom actually done


The optimists view of technology transfer

The optimists view of technology transfer..

10


A tech transfer model

A Tech-Transfer Model

11


Software engineering technology transfer the way forward or the way back

Our Knowledge of Industry The Australian Example..

THE SOFTWARE INDUSTRY OF THE LATE 1960'S AND EARLY 1970'S WAS…

a)PACKAGE (and hence re-use) ORIENTED

A wide range of packaged software on 16 bit and mainframes was produced.

E.G. Accounting, payroll, engineering design, manufacturing, insurance, etc.

b)KNEW ABOUT PORTABILITY…

Many of these were transported between different OS and machines.

One suite of packages in assembler (50klocs) was "ported" to at least 6 different systems

c)RECOGNISED THE RE-USE OF SKILLS , IDEAS AND DESIGN…

The concept of "the continuity of experience" syndrome, the human "experience factory".

FORMAL PROCESS MODELS DO NOT APPEAR TO HAVE BEEN IMPORTANT


Software engineering technology transfer the way forward or the way back

Australia (cont’d)

/ THE SOFTWARE INDUSTRY BY THE MID 1980'S WAS…(cont'd)

a)A HIGH-LEVEL TOOL DEVELOPER

Developed "4GL's" and APPLICATION GENERATORS

Both HP and DataGeneral used Australian products for their early Application Generators

The product Lansa (ASPECT) is one of three Application Generators for the S/38 (now AS/400)

b)PRODUCING LARGE-SCALE MAINFRAME

PACKAGES & SYSTEMS…

Major international supplier of insurance s/w,

Major developer of large-scale s/w for Govt. and Industry.

c) UNDERSTOOD PROTOTYPING

CDA used SNOBOL in the mid-1970's for protoyping commercial systems.


Software engineering technology transfer the way forward or the way back

Australia (cont’d)

/ BY THE LATE 1980'S EARLY 1990'S WAS…

a)PRODUCING OO LANGUAGES AND TOOLS…

The language OCHRE…

b)UNDERTAKING INDUSTRY-WIDE STUDIES…

Productivity studies based on function points (Aust. Software Metrics Assoc.)

SPICE (Software Quality Association/ACS)

c)DEVELOPING S/W QUALITY STDS AND CERTIFICATION…

AS3563, S/W Assurance Standard being mandated by Govt.

Software Quality Institute lead by Geoff Dromey at Griffith Univ.

d)OTHER THINGS…

F-P estimating tools, OO based specialists consultancies…commercial use of Formal Methods on small scale

e)TTM competency…

F-P estimating tools, OO based specialists consultancies…commercial use of Formal Methods on small scale


Software engineering technology transfer the way forward or the way back

THE HISTORY…(cont'd)

/ THE SOFTWARE INDUSTRY'S WEAKNESSES…

a)LIMITED INTERACTION WITH RESEARCH COMMUNITY…

b)JEALOUS AND SECRETIVE ABOUT DEVELOPMENT METHODS

c)ABSENCE OF TARGETED RESEARCH CENTRES

d)NEEDED GREATER EMPHASIS ON WINDOWS & MacIntosh S/W

/ THE SOFTWARE INDUSTRY'S ASSETS…

a)Good supply of well trained graduates in CS and EDP

More than 14 000 p.a.!

(now 7 SE degrees in Australia)

b)Strong managerial/ technical culture of package and product development


Software engineering technology transfer the way forward or the way back

Australia (cont’d)

/ THE SOFTWARE INDUSTRY's PARAMETERS…

TOTAL SALES…US$1.8B

S/W PRODUCT @ 50% of total

DOMESTIC SHARE OF PRODUCT

@ 40%

EXPORTS US$500M

(1993 FIGURES)

by comparison, the Japanese s/w industry has less than 15% of T.O. in s/w product.

There are 40 Australian S/W companies selling product in Japan


Approaching software developers

Be able to show ROI after adoption costs (equipment + training) and productivity losses due to learning curves after adoption. (improved profit)

Show resolution of competitive advantage problems (beat off competitors, maintain market share)

Show new market opportunities due to new products/services

Approaching Software Developers…

  • Technico-Commercial Drivers… the linkage

  • The goal is to find a high-level, one-line statement of pressing commercial issue that maps directly on to a “technology acquisition” (research) agenda (map idea to common concept base accessible to highest management)

  • Show an economic benefit


Software engineering technology transfer the way forward or the way back

Research-Commercial Mapping… Defining Relevance

Typical SE Research Agenda Australia ~ 1997

Technico-commercial Drivers

1.Re-engineering and Empirical Studies of s/w Practice,

2.Tools and Methodologies, and Design Representation,

3. Re-Use,

4. Evolving Software,

6. Object Oriented Dev.

7. Product Quality Measurement

8. Time-to-Market

9. Testing

¶ Impact of developments in run-time platforms

¶ Low-cost and evolving software

¶ User Interface Development

¶ Software Productivity

¶ Performance Predictability

¶ Software Product Quality Certification

¶ Time to Market ¶


Software engineering technology transfer the way forward or the way back

  • The ANSEI Technico-Comercial Driver to Research agenda mapping


Software engineering technology transfer the way forward or the way back

Technology Transfer Mechanisms

  • “Champions” in the organistions targetted.. Need to be involved by the researchers

  • Disclosure, workshops, training, publications, technical newspapers

  • Professional associations SIG’s and meetings

  • Wining and dinning managers

  • Joint trials of technology, may need to be funded by research centre…(various models, including fully profitable contracts.. Must counter lost opportunity cost problem)

  • “Exemplar” projects by the research centre, creating “technology pull”

  • Incremental technologies may be easier to adopt


Software engineering technology transfer the way forward or the way back

Technology Transfer Mechanisms(cont’d)

  • NIH has cultural, economic and technical basis..

    (It took ~ 5 years for Ada/Clean-room/OO to show an overall cost benefit cf Fortran at NASA/SEL)

  • 50% productivity gain needed for break-even in one learning curve time..


Software engineering technology transfer the way forward or the way back

issues

Baragry’s conjectures and their implications..

The work products problem…

The work-products (documentation) are not appropriate to actual s/w development practice

§ if the methodologies are not leveraging the design process(Reed),

/ Documentation will not reflect design...

/ Documentation will be an external, non-design process… since it is based on conceptual models other than those being used!..

/ S/W development processes in practice consist of “work arounds” like other prescription based systems


Software engineering technology transfer the way forward or the way back

What if we had a large re-engineering project?

component semantics and concept extraction.. The role of re-engineering.. S/W Archaeology...

/ program is a model of some real world process

/ exactly what “concepts” are represented in terms of non-procedure replicated code fragments?

/ What are their semantics?

-What impact do these have on program composition?

/ How do these relate to different problems in the same domain?

..different problems in different domains?

/ How are components modified in practice and what is the outcome?


Software engineering technology transfer the way forward or the way back

The role of re-engineering.. S/W Archaeology and S/W Architecture....

/ recovery of standard architectures

/ identification of s/w construction practices, e.g. shifts from one programming style to another

/ development of maintainability and evolvability classifications for --

§ design methodologies

§ architectural styles

/ development of maintainability and evolvability classifications for architectural styles


Software engineering technology transfer the way forward or the way back

component semantics and concept extraction.. The role of re-engineering.. Architecture issues for the S/W Archaeologist

/ identification of design approaches which ensure that conceptual architectures are transferred to implementation

/ identification of standard mappings from conceptual to actual architectures which occur using different design approaches on different problems


Software engineering technology transfer the way forward or the way back

Tak Ska du har…


  • Login