1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*......

55
1 A Software Engineering A Software Engineering Institute Institute for the Victorian Software for the Victorian Software Industry A Re-useable Case Industry A Re-useable Case Study*... Study*... 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 *A summary presented to the Sheffield-Hallam Univ. Feb. 2001 by Assoc. Prof. Karl Reed,FACS, FIE-Aust., MSc,ARM

Transcript of 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*......

Page 1: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

1

A Software Engineering InstituteA Software Engineering Institutefor the Victorian Software Industry for the Victorian Software Industry A Re-useable Case Study*...A Re-useable Case Study*...

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

*A summary presented to the Sheffield-Hallam Univ. Feb. 2001

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

Page 2: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

2

Why Were We Proposing Why Were We Proposing VSEI?VSEI?

Promote government policy in information technology ensuring support for an already successful industry

Ensure that the industry has a major research institute

Ensure ‘world’s best practice’ is understood and adopted here

Twenty years from now a permanent structure delivering an increased

competitive edge to a major exporting industry!

Page 3: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

3

Australian Political RealityAustralian Political Reality Information Technology Sector --> Primary

Industry share of GDP Extensive Gov’t R &D for Primary Sector..

10 Divisions of CSIRO, State R & D inst., CRC’s ~15 Govt.-Industry Funded R & D Corps for Primary Industry Estimated relative short-fall ~A$700M.p.a (£300M.p.a)

Few Public sector large-scale “professional” research groups

Universities regarding R & D as their domain.. means of cross-subsidising teaching(?)

How does this compare with the UK?

Page 4: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

4

What was our strategy?What was our strategy?

“Forcing” argument based on comparison with Primary Industry and Govt. rhetoric

Linkage with industry Credible proposal …. to deliver world’s

best practice Twenty years from now

a permanent structure delivering an increased competitive edge to a major exporting industry!

Page 5: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

5

GoalsGoals

Guarantee the long term technical viability of a major IT industry sector the software and services industries

Provide equivalent R & D support as that available to overseas competitors

Provide professional research capability advancing the discipline

Page 6: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

6

Industry-Academia Working PartyIndustry-Academia Working PartyMeeting since May 1997Meeting since May 1997

Chairman Karl Reed, La Trobe University

Deputy Chairman Paul Radford, Managing Director Charismatek

Working party Silvio Salom, Managing Director Adacel Laurie Lock Lee, Manager Planning and Development BHPIT Robyn Lawrie, Technical Director Charismatek Alex Sawicki, Department of State Development/Multimedia Victoria Gary Stoneham, Marketing Manager MITS Sally Duncan, Project Manager Megatec Barbara O’Brien, Quality Manager Megatec Bill Jacobs, Technical Director TUSC Computer Systems David Cleary, La Trobe University

Special advisor Dan Marantz, Cobol Digital

Observers The Preston Group Whittle Programming KCS Computer Services Clive Finkelstein, Information Engineering

Page 7: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

7

Academic Partners with industry Academic Partners with industry linkslinks

Karl Reed, Amdahl Project (Case, Metrics, Evolvable Programming)

Tharam Dillon, La Trobe UniversityOO, Relibility, Metrics

T.Y. Chen, Swinburne Univ. Tech., IVE/STC HKTesting and Software Quality

Paul Bailes, Univ. Queensland.Software Maintenance Centre

HK opportunity for participation

Page 8: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

8

Not Seeking Silver BulletsNot Seeking Silver Bullets

We’ve all heard of goto-less programming, structured analysis and

design, CASE, object orientation, CMM, SPIN ??? all trumpeted as ‘the solution’

This proposal “a considered holistic response to a series of

difficult problems” not a “quick fix”!

Page 9: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

9

An Appropriate SolutionAn Appropriate SolutionA Small to Medium Enterprise BiasA Small to Medium Enterprise Bias

Only one of its kind in the world, other SEIs client domains generally not the software industry focus on embedded systems, telecom and defense

aerospace pre-occupied with process issues

Our objectives commercial outcomes, deliverables to industry not just academic

Funding for technology transfer

Page 10: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

10

World’s Best PracticeWorld’s Best Practice

Aggregated research teams

~ researchers 40 + ~20 PG's Funded technology transfer Industry driven collaboration (including

management) Cash driven budget (mostly Government) Single point of control

Page 11: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

11

Scale Comparable to World's Scale Comparable to World's SEI'sSEI's

Overall A$2M pa to A$30M pa (combined Esprit is

much larger)

Fraunhofer Institute for Experimental Software Engineering DM20Mpa (goal)

Centre de Recherche de Montreal (CRIM) C$18M pa (total) C$3M pa (software engineering)

Page 12: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

12

International Funding ModelsInternational Funding Models

Overall typically less than 50% non-government

funding, often as low as 30%, sometimes zero

funds often obtained from government sources other than granting agency

funding models dominant mode; core funding (up to 70%)

guaranteed by government agency with allowances for ramp-up

100% government funding grant based funding

Page 13: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

13

International Funding ModelsInternational Funding Models

Fraunhofer Institute for Experimental Software Engineering Fraunhofer Gesellschaft 40% regional government 10% future goal; non-Fraunhofer funding to be 70%

(ramp up conditions apply) joint projects; seek 50% involvement (people

preferred)

Page 14: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

14

SEIs Around the WorldSEIs Around the Worlda Brief Summarya Brief Summary

Client domain generally not targeted at the software industry mainly ‘embedded’ systems, telecom and

defense aerospace (Korea and Taiwan and some Esprit projects are software industry)

Modus Operandi networks, multi-project granting (CNRC, CRIM),

academic driven, research driven, captive-client (SEI), in house, large-scale (Fraunhofer), etc

Page 15: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

15

SEIs Around the WorldSEIs Around the Worlda Brief Summarya Brief Summary

Areas of investigation all areas of software engineering...

Technology transfer seminars to technology trials and ‘leverage’

activities (often funded by agency), experiments (PIEs), intellectual property handover

Research styles single project (Esprit), short, medium, long-term,

team, consortia, distributed consortia

Page 16: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

16

SEIs Around the WorldSEIs Around the Worlda Brief Summarya Brief Summary

Outcomes process improvement, methodology, tools,

some product (Esprit varies enormously), intellectual property

Intellectual property all models; shared by partners, client owned

Page 17: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

17

SEIs Around the WorldSEIs Around the Worlda Brief Summarya Brief Summary

Participants (primary funding sources) single agencies (SEI, Fruanhofer, etc), multiple

agencies (European SEI), state governments (Italy, Canada, Germany), multi-national programs (Europe), very few consortia with upfront industry funding

Page 18: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

18

SEIs Around the WorldSEIs Around the Worlda Brief Summarya Brief Summary

Research agenda determination ‘agenda setting’; agency attempts to inject new

technology and best of breed practice (NSF, SEI, DARPA)

‘responsive’; industry set research agendas ‘academic interventionist’; academia propose

research projects ‘joint’; academia and industry ‘empiricist’; agendas derived from study of

practice

Page 19: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

19

SEIs Around the WorldSEIs Around the WorldFraunhofer Institute for Fraunhofer Institute for Experimental Software Experimental Software EngineeringEngineering

Funding Fraunhofer Gesellschaft 40% regional government 10% future goal; non-Fraunhofer funding to be 70% local government 50% of new building special ramp-up conditions apply

Scale goal DM20M pa

Page 20: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

20

SEIs Around the World,SEIs Around the World,Centre de Recherche de Montreal (CRIM)Centre de Recherche de Montreal (CRIM)Software Development Tools and Software Development Tools and Methods (SDTM)Methods (SDTM)

Funding about C$3M pa for software engineering Quebec

Scale total CRIM C$18M pa Client domain embedded systems, aerospace, telecom,

electricity supply, software tool builders

Page 21: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

21

SEIs Around the World,SEIs Around the World,Centre de Recherche de Montreal (CRIM)Centre de Recherche de Montreal (CRIM)Software Development Tools and Software Development Tools and Methods (SDTM)Methods (SDTM)

Modus operandi joint academic-industry projects studies of tools, methods etc for clients specific research projects. participation sought technology monitoring projects seem small

Page 22: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

22

SEIs Around the World,SEIs Around the World,Centre de Recherche de Montreal (CRIM)Centre de Recherche de Montreal (CRIM)Software Development Tools and Software Development Tools and Methods (SDTM)Methods (SDTM)

Areas of investigation methodology improvement re- and reverse engineering improvement of practice, including metrics,

standards and SQA object orientation domain-specific architectures, reuse real-time systems, including formal methods

Page 23: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

23

Some ESPRIT Research Some ESPRIT Research ProjectsProjects

Legacy Assessment Workbench (LAW) areas (aerospace, nuclear)

reengineering, metrics workbench for C legacy code (safety critical systems)

symbolic execution, formal methods

outcomes prototypes for evaluation and adoption

Page 24: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

24

Where Are We?

Bowsers that are limited Time-To-Market web-application deployment

16 year old wunder-kinder throwing systems together

rapidly deployed functionality

NO NO

PROBLEMS

PROBLEMS

MATE!MATE!

DISASTER

IN WAITING!

poorly designed functionality

rapid evolution of systems to meet customer needs conventional approaches being left behind

the old do not understand the new

Traditionalist’s View

Modernist’s View

Page 25: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

25

“F1. Current software has too many surprises. The sources of surprise are poorly understood.”

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)

“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.”

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

research 1998)

Page 26: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

26

“F1. Current software has too many surprises. The sources of surprise are poorly understood.”

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

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

“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….

Page 27: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

27

By way of Illustration...Some Contradictions……

and confusion

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”

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

Page 28: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

28

Some Contradictions……and confusion (cont’d)

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

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

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

Page 29: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

29

Approaching Software Developers…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

Technico-Commercial Drivers… the linkage

Show an economic benefit

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)

Page 30: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

30

Typical SE Research Agenda Australia ~ 1997

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

Technico-commercial Drivers

Research-Commercial Mapping… Defining Relevance

Page 31: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

31

The ANSEI

Technico-Comercial Driver to Research agenda

mapping

Table I - Relationship Between Technico-Commercial Issuesand Research Agendas

Technical-Commercial Issue

Proposed Research

Issue Implications Main Agenda Items Sub-Agendas OUTCOMES SupportsImpact ofdevelopments in run-timeplatforms

Addfunctionalityto legacySystems(e.g.GUI),ability tomovesoftwarebetweenplatforms,need toreducemaintance

1.Re-engineering andEmpirical Studies ofs/w Practice,

Designreasoningrecording,empericalstudies ofpractice,softwaremigration,impact onmethodologies

Tools andmethodologies, detailedknowledge ofcurrentpractice

Processimprovement,validation ofmethodologies,actual measuresof s/w quality,s/warchitecture,domainengineering,evolving s/w,nature ofsoftwareengineering

Low-costandevolvingsoftware

Modifiability,maintanance,techniquesfor designing

3. Re-Use,

4. Evolving Software,

6. Object OrientedDevelopment

8. Time-to-Market

Methodologies formodifiableand evolvingsoftware,empericalstudies ofexistingpractice

Methodologies incorp.design forevolution, s/wquality , tools

Automaticqualitymeasurement,processimprovement,nature ofsoftwareengineering

UserInterfaceDevelopment

Design forergonomics,engineeringbased onapplicationsdataprocessing

1. Re-engineering andEmpirical Studies of s/wPractice,

3. Re-Use,

5. Engineering ofUser Interfaces,

6. Object OrientedDevelopment

9. Testing

Ergonomics,characterisaton ofprocessing,methodologiesfor this

Methodologies forengineeringuserinterfaces,

Allmethodologies,ergonomics

SoftwareProductivity

Reuse,improvedmethods

1. Re-engineering andEmpirical Studies of s/wPractice,

2. Tools andMethodologies, and DesignRepresentation,

3. Re-Use,

9. Testing

Softwareresuse, andmethodologiesexplicitlyincluding this,prescriptivemethodologies, s/warchitecture,improveddesignrepresentation,projecttracking

Methodologies generatingre-usablecomponents,maximisingre-use withinsingleprojects, andmaximinsingre-use of"artifacts",includingdesign

Designrecording,nature ofsoftwareengineering,s/warchitecture,evolvingsoftware

PerformancePredicatability

Appropriatemethods forincludingconstraints indesign

1. Re-engineering andEmpirical Studies ofs/w Practice,

2.Tools andMethodologies, andDesignRepresentation,9. Testing

Performanceengineering,methodologies, operationalmathematicalmethods

Methodologies incl. newmathematicalmodels, toolssuppportingthis,diagrammingschemes

Designrecording,nature ofsoftwareengineering,s/w architecture

SoftwareProductQualityCertification

Automaticandincrementalmeasurementof product

1.Re-engineering andEmpirical Studies of s/wPractice,

2.Tools and Methodologies,and Design Representation,

3. Re-Use,

4. Evolving Software,

7. Product Q.Measurement

9. Testing

Programstructure,metrics andlanguageprocessors

Tools forautomaticmeasurement

S/Warchitecture,designrecording,nature of SE

Time toMarket

ImprovedDevelopmenttechniques,Tool support,CASE

1.Re-engineering EmpiricalStudies of s/w Practice,

2.Tools and Methodologies,and Design Representation,

3. Re-Use,

4. Evolving Software,

6. Object Oriented Dev.

7. Product QualityMeasurement8. TTM9. Testing

As forproductivity,but specialemphasis onincrementaldelivery, andqualityenhancingmethodologies

Methodologies and tools,designrecording

s/warchitecture, re-use andevolvingsoftware

Page 32: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

32

Organisational ProposalOrganisational Proposal

Government

Industry

Academia

ResearchExperience

IndustryExperience

TechnicalSupport

Bus Man

CEOTechnical

Board

ManagementBoard

Stakeholders

Personnel

Page 33: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

33

Research Agendas Providing Research Agendas Providing SolutionsSolutionsOver-Arching GoalsOver-Arching Goals

Our research outcomes are methodologies with the following properties, these in fact become research objectives performance-based, predictable, development of

systems to stated performance requirements fine-grained-prescriptive, provide precise

prescriptions for steps in development improved technology and expertise for re-

engineering of existing systems study of existing systems and projects, using re-

engineering, design recording

Page 34: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

34

Research Agendas Providing Research Agendas Providing SolutionsSolutionsOver-Arching GoalsOver-Arching Goals

Issues of re-use, re-use intensive and re-use based methodologies evolving software (current agenda of DARPA) object oriented methodologies, will influence,

and be influenced engineering of interfaces, part of the

methodology program Plus, tools that reflect this!

Page 35: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

35

Characterising Time to MarketCharacterising Time to Market

Delivery schedules severely truncated compared to ‘normal’ (less than 50%)

How would we deal with this currently? RAD/JAD, prototyping, ‘super programmers’

What would the product be like? slow, unreliable, incomplete expensive!

Research goal convert this to a methodology capable of

delivering quality products

Page 36: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

36

Characterising Time to MarketCharacterising Time to Market

Research problems for a given project

a minimum feasible delivery time tdmin

cost = k tdmin

quality greatly reduced competitive position increased!

-n

Page 37: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

37

Time to Market Project AttributesTime to Market Project Attributes

Attribute Standard Development(under control)

Schedule controlledacceptable

Cost controlledacceptable

Quality high

Customer highsatisfaction

Runtime minimalresources

Design highquality

Time to Market(current situation)

truncatedunpredictable

uncontrollablehigh

usually low

usually resentful

excessive

poor

Time to Market(target situation)

truncatedpredictable

acceptablepredictable

high

high

predictable

high

Page 38: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

38

Research QuestionsResearch Questions

Schedule What is an optimal/reasonable project

schedule? Is it feasible to attempt a project within a

specific timeframe? Resources

How can available human resources best be allocated to ensure projects succeed?

Page 39: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

39

Research QuestionsResearch Questions

Factors determining schedules estimating staff quality and experience methodology re-use tools

Page 40: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

40

Research Activities & OutcomesResearch Activities & Outcomes Determine existing best practices

collaborative work with institute partners from industry and academia

Develop models, methods, tools and methodologies Assess models, methods and tools

field assessments using real projects internal assessments using institute projects

Disseminate knowledge gained field application of methods and tools with institute

partners, publication

Page 41: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

41

Research OverviewResearch Overview

Issue Factors Approach Outcomes

Schedule Impact of schedule Data collection Calibrated newreduction Process recording exemplar estimating

techniquesprojectsCodification of knownmodels (eg Microsoft)

Risk assessment Identification of riskindicators

Tool assessment

Resource allocation Impact on project Data collection Improved planningplanning Process recording methods

Impact of decompositionmodels and parallelimplementation

Staff Quality Skill identification, fine Improved selectiongrained classification techniques

ExperienceIdentification and recording Training needof experience identification

Project structure

Page 42: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

42

Research OverviewResearch Overview

Issue Factors Approach OutcomesMethodology Improved Analysis RAD/JAD High quality prototyping

productivity Conversion of prototyping toproduct developmentIdentify essential features ofusabilityApplication generatorsUltra high skill levels

Re-use Areas of How to achieve this? Componentsapplication What is re-use? Plans

Assess current re-user Designspractices Test plansImportance of experience

Tools CASE versus What do we really need here? Tool set selectionlightweight Tool integration New toolsProject management Analysis of existing tools Choiceand planning Identify processesLanguages Review and recommendationProcess/designrecording

Page 43: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

43

5. 5. Current State of Knowledge and Current State of Knowledge and Practice-MS vs the Rest..(cont’d) historyPractice-MS vs the Rest..(cont’d) history

Dijkstra and THE OS in the 70’s (the lesson?)... “Five people as smart as Edgar Dijkstra can do anything” Reed, 1981

The first Unix effort…(but what did it take for product versions)

OS/360, PL/I (the lesson?) (60’s).. Very large teams can build large systems very quickly..~ x1000 person years Total volumes of functionality (e.g. OS/360) may allow partitioning..TTM issue

obscured..

Page 44: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

44

“Extreme programming”?

System Test

Programming

Unit Test

Program Design

Systems Analysis

Feasibility Study

Requirements Analysis

System Integration

Optimal task allocation, observed <1970 one or two people

Waterfall S/W Process Model

No need for ‘third-party” readable work products!

Private s/w process? (PeSP compliant?)

Page 45: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

45

Time to Market ConclusionTime to Market Conclusion

Massive competitive advantage from time to market products with traditional high quality

Necessary elements of time to market focussed processes may be accessible

Detailed ‘research’ by experienced staff with access to current practice is most likely to be successful

Page 46: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

46

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

§ architectural styles

development of maintainability and evolvability classifications for --

development of maintainability and evolvability classifications for architectural styles

§ design methodologies

Page 47: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

47

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

Page 48: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

48

ConclusionConclusion

The proposal didn’t win..beaten by SEA.. (Problem ridden.. Consortium)

Is there a need for an SEI in the UK? Surely more than one)

Do the arguments “map”? How will the academic community react?

(SE research in the US did not stop because CMU got the SEI…)

Page 49: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

49

Technico-Commercial ProblemsTechnico-Commercial ProblemsFacing the Software IndustryFacing the Software Industry

Hardware-software run-time environments-adding GUI etc to legacy systems

‘Evolving’ software dynamically ‘Engineered’ user interfaces Software productivity Design to predicted performance Time to market Software quality Testing Object orientation ‘Net-centric’ systems- autonomous communicatings

"agents"

Page 50: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

50

Technico-Commercial Technico-Commercial ProblemsProblemsFacing the Software IndustryFacing the Software Industry

Developments in hardware-software run-time environments continuing improvements in price/performance +

GUI need to migrate legacy systems to these platforms need to add functionality to legacy systems on

existing platforms, e.g GUI, client-server Re-engineering of legacy systems to conform

to these constraints a major business opportunity

Page 51: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

51

Technico-Commercial Technico-Commercial ProblemsProblemsFacing the Software IndustryFacing the Software Industry

‘Evolving’ software dynamically software capable of rapid change to meet

existing customers changing needs software capable of rapid change to meet

needs of new customers New development methodologies which

yield ‘evolving’ software

Page 52: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

52

Technico-Commercial Technico-Commercial ProblemsProblemsFacing the Software IndustryFacing the Software Industry

‘Engineered’ user interfaces UI design derived from data presentation and

processing + ergonomics Methodology supporting improved UI

design

Page 53: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

53

Technico-Commercial Technico-Commercial ProblemsProblemsFacing the Software IndustryFacing the Software Industry

Software productivity increase productivity to produce PC shrink-

wrapped software reduce costs for NC/style delivery platforms, reduce maintenance costs

New diagramming systems design recording new methodologies enforcing re-use

Page 54: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

54

Technico-Commercial Technico-Commercial ProblemsProblemsFacing the Software IndustryFacing the Software Industry

Software Quality Testing and Certification Improve efficiency of specfication-based

testing Develop means of code-quality control and

asessment Improve design to simplify "testablity" of code

Page 55: 1 A Software Engineering Institute for the Victorian Software Industry A Re-useable Case Study*... Chair IEEE-Computer Society Tech. Council on Software.

55

Research Agenda Providing Research Agenda Providing SolutionsSolutionsMain ItemsMain Items

Our research agendas address the technico-commercial problems reengineering and empirical studies of software

practice tools, methodologies and design representations re-use evolving software engineering of user interfaces object oriented development product quality measures time to market