Software Engineering Flashcards
What does CASE stand for and what does it do, name some of the features
Computer aided software engineering
Software tools to help programmers
Some features are:
-form designer (interface generator) to create interfaces quickly and easily
-report generator to create reports
-source code generator (allows some code to be automatically written, possibly from dfd or form designer software)
-debugging tools
-project management tools
-version control
-repositories of reusable code
What are the two tools designed to help the software engineering process
CASE tools
Analysis and planning tools
What is included in analysis and planning tools?
Diagrams
Recording requirements
What do diagrams do in analysis and planning tools?
e.g. flow charts, data flow diagrams, UML, entity relationships etc.
Created by a software e.g. gliffy or Microsoft visio
Easy to move the elements around the screen and the arrows will automatically move and reroute the boxes they are attached to change location (intelligent connectors)
What do recording requirements do in analysis and planning tools?
Software that records user requirements, prioritise them, keep track of changes to requirements and version numbers:
Case complete
Jira
Used to produce complete planning and design documents for the end user or other developers
Allows test cases/scenarios to be created as requirements are entered, that can then be used during the coding and testing phases to ensure each step works as expected
What is interface design and what are examples of software used to do it
E.g. visio, gliffy
Used to draw UI, sometimes known as wire framing to give an idea of what the screens will look like and the flow between them
What is bug tracking and give examples of software used
E.g. bugzilla, Jira
Allows issues/bugs with software to be recorded and tracked
Programmers can add feedback to these issues and log their progress towards a solution
Once resolved the final solution is documented and the issue closed
What is unit testing
Unit tests - specify the tests that will need to be carried out and the expected results that will need to be achieved to prove that the code works correctly
Acts as quality assurance that will conform to expected requirements
These tests can be automated using software that carries out each of the tests, often daily and before any new versions are released
Unit testing is often built into IDEs (e.g. visual studio)
Why might test environments be used
To test the portability of software between different platforms such as Linux and windows
What is an IDE and what does it include
Integrated development environment
Consists of various tools that a programmer needs to create programs
And other tools to help them be more productive:
An editor to develop programming code
Automated error checking (highlighting code errors)
Tools for debugging code
Links to libraries of useful routines
Perhaps options to allow unit testing
What is a breakpoint
Used in debugging tools
The programmer can set a breakpoint on a line of code. When the line is reached the program will pause.
The user can check the current values of variables which can be examined and execution continued
Error reports in IDE tools
An error log is displayed when you try and run a program
Will include line numbers, details of errors, advice to the possible reason of the error
What is program trace/step through
Following a breakpoint the value of variables can be examined and then a button clicked to step through one line of code at a time
What is variable watch
Debugging tool
The programmer can specify a particular variable or variables to monitor and is informed when the value changes
What is a conditional breakpoint
Debugging tool
Breakpoint occurs when it is set to a particular value.