14
Software Engineering Software Engineering

Software Engineering. Software Engineering is… Design Coding Testing Debugging Documentation Maintenance …of new software

Embed Size (px)

Citation preview

Software Engineering

Software Engineering

Software Engineering

Software Engineering is…

• Design

• Coding

• Testing

• Debugging

• Documentation

• Maintenance

…of new software.

Software Engineering

It may also include…

• Management of programming teams

• Scheduling

• Budget

Software Engineering

C.A.S.E.

• ..stands for Computer Assisted Software Engineering

• Programs that help you develop programs!

Software Engineering

CASE Toolkit…

• Graphics tool ….to help draw flowcharts, data flow diagrams etc…

Software Engineering

CASE Toolkit…

• Interface generator …to allow fast development of …– HCI (Human

Computer Interface), – Menus, – Screen dialogues.

Software Engineering

CASE Toolkit…

• Source code generator …Input the specifications and the program writes the code for you!

Software Engineering

CASE Toolkit…

• Data dictionary …for designing database systems.– Data structure– Entity relationships

Software Engineering

CASE Toolkit

• Project Management Tool …to help with the scheduling of tasks (who does what and when).

Software Engineering

Software Development Tools

• Text Editor – for entering the source code.

• Compiler – converts the source code into executable object code (machine code) program.

• Interpreter – converts each line of source code into executable machine code and executes it as it goes.

Software Engineering

Software Development Tools

• Linker – Links in previously compiled sections of code.

• Loader – Loads previously compiled sections of code into memory.

• A linking loader combines the above two…

Software Engineering

Software Development Tools

• Debugger – A program that helps track down errors (bugs) in a program.

• Program designer – A PDL (program design language) is used to create a program design and then an…

• Application generator … creates the program from the design.

Software Engineering

Debugging Tools

• Break point – Interrupts a program at a specific line.

• Trace – single steps through a program one line at a time.

• Variable watch – watch the value of a variable while single-stepping through the program

• Memory dump – contents of memory can be viewed.

• Error diagnostics – helpful error messages.

Software Engineering

• [5](a)A certain software tool includes a program trace facility and allows for break points to be set up.

•  (i)What name is given to this type of software tool?[1]  • (ii)Outline the role of a program trace facility.[1]  • (iii)Outline the role of a break point.[1]  • (iv)Name one other facility which this type of software tool is likely to

include.[1]  

• (b)Describe what is meant by a subprogram library and give an example of its use.[2]  

• (c)Give an example of an application which might use a special purpose language.[1]  

• (d)Describe two features of CASE tools which could be used during program development.[2]   

• (e)Explain what is meant by the term relocatable code.[1]