k. ingram 1 oct 2001 software development tools. k. ingram 2 oct 2001 contents l tools – what are...

22
K. Ingram 1 Oct 2001 Software Development Tools

Upload: phillip-barton

Post on 20-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 1 Oct 2001

Software Development Tools

Page 2: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 2 Oct 2001

Contents

Tools – what are they, why are they needed?

Software Development Tools – why are they needed

Existing Toolkits Integration CASE

Page 3: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 3 Oct 2001

ToolsRef. Longman’s dictionary: An implement that is used, .., to carry out work of a

mechanical nature Something used in performing an operation or

necessary in the practice of a vocation or professionWhy use tools? To make tasks easier To increase productivity (volume, strength or quality

of outputs) Allow larger or more complex products to be produced

Page 4: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 4 Oct 2001

The need for Software development tools

1960s – Wages were low,hardware costs high

1990s – Wages extremely high,hardware costs low

Thus need to make software development efficient, so reducing costs

Advent of more complex and more critical software

Page 5: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 5 Oct 2001

Costs in Software Development

Analysis and Design time-consuming Systems are complex to comprehend Coding may be tedious Testing can be all of the above Documentation may become out-of-date Fast turn-over of staff

Page 6: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 6 Oct 2001

Aims of Software Development Tools

To increase:– Productivity– Product quality– Use of less skilled

staff– Staff satisfaction

To reduce:– Software

development time– Amount of testing– Training– Errors– Costs

Page 7: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 7 Oct 2001

Programmer’s Toolkit

Basic needs: Operating system utilities, Editors, Translators

Further assistance: language sensitive editors, debuggers, utility programs (e.g. sorts), component libraries

Extra: test data generators, code generators, report generators, configuration managers

Page 8: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 8 Oct 2001

Designer’s Toolkit

Screen painters, data dictionary, wizards for table/form/report/query design, diagram manipulators for flowcharts

Page 9: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 9 Oct 2001

Analyst’s Toolkit

Diagram manipulators for models, model consistency checkers, word processors

Page 10: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 10 Oct 2001

Computer Aided Software Engineering Tools

Classified by function: (ref. Appendix)– Project management

– Support

– Analysis and design

– Programming

– Integration and testing e.g. simulation e.g. test management

– Prototyping e.g. 4GLs

– Maintenance e.g. reverse engineering

Page 11: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 11 Oct 2001

Computer Aided Software Engineering Tools

Classified by level:– Lower-CASE: specific to an architecture– Upper-CASE: architecture-independent– Integrated-CASE

Planning

System investigation

Systems analysis

System design

Implementation

Review and maintenance

Page 12: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 12 Oct 2001

Integration

Most people do not work alone these days – tools must incorporate group work, job overlaps and flow between tasks

Integrated tools have been available since 1980s e.g. Cradle e.g. Select SSADM e.g. Select Enterprise - Any problems??

Groupware Process-centred software engineering environments

Page 13: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 13 Oct 2001

Summary: Software Engineers as Producers

Engineers use their skills and a toolset, at a workbench, in a workshop, to make products

Software engineers:– The skills = analysis, design, programming, etc.– The tools = useful facilities e.g. program editor– The workbench = the environment in which the

tool sits e.g.Microsoft’s Visual Basic software– The workshop = an Integrated Project Support

Environment

Page 14: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 14 Oct 2001

Conclusion

Software engineering: A technological and managerial discipline concerned with the systematic production and maintenance of high quality software products that are developed and modified on time and within cost estimates

Software development tools aim to increase the chances of success in an ever-changing discipline, with ever-changing technology.

Page 15: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 15 Oct 2001

Appendix 1

Page 16: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 16 Oct 2001

Project Management Tools cost estimating e.g. Cocomo, Putnam time/resource scheduling e.g. Pert, Network

Analysis metrics for productivity, quality,

complexity e.g. McCabe method, e.g. Halstead method

Page 17: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 17 Oct 2001

General Support Tools documentation infrastructure configuration, traceability, re-use

repositories

Page 18: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 18 Oct 2001

Analysis and Design Tools for diagrams and their attributes consistency checking - between levels,

between diagrams

Page 19: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 19 Oct 2001

Programming Tools 3GL coding tools 4GL tools object oriented tools

Page 20: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 20 Oct 2001

Integration and Testing Tools data collection static measurement dynamic measurement simulation test management

Page 21: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 21 Oct 2001

Prototyping Tools executable language specifications very HLLs 4GLs operating system utilities

Page 22: K. Ingram 1 Oct 2001 Software Development Tools. K. Ingram 2 Oct 2001 Contents l Tools – what are they, why are they needed? l Software Development Tools

K. Ingram 22 Oct 2001

Maintenance Tools reverse engineering code restructuring and analysis