Application
This unit addresses the knowledge and processes necessary for debugging and monitoring software applications.
This unit is relevant to those who work as developers, testers and support engineers who use logging and tracing techniques to identify software problems and monitor systems.
Prerequisites
Not applicable.
Elements and Performance Criteria
1. Implement a framework for logging and error handling | 1.1 Determine the logging framework for writing text messages at a certain level or priority to log files or sending data to monitoring applications 1.2 Create a custom event log for an application 1.3 Analyse the logs to check the state of the running application |
2. Debug and trace an application | 2.1 Apply basic debugging techniques such as breakpoints and stepping through and over code and stack trace 2.2 Identify and use tools to debug software applications 2.3 Write code for debugging (print, assert and stop statements) |
3. Monitor the application performance | 3.1 Identify and use profiling tools to verify the parts of the system that consume the most resources, such as random access memory (RAM), central processing unit (CPU) and time 3.2 Analyse performance issues and apply changes to improve the performance of the application |
Required Skills
Required skills
analytical skills to:
evaluate and compare results from different profiling tools
evaluate log file information and develop solutions as a result of analysis
communication skills to recommend an approach to debugging and performance issues
initiative and enterprise skills to identify potential improvements to the application performance
literacy skills to:
read log files
write log messages
numeracy skills to read and interpret the monitoring applications data
research skills to keep up-to-date with monitoring and debugging technologies and tools
technical skills to:
use software development tools
write code to create custom event log.
Required knowledge
basic knowledge of:
computer hardware, networking and components
database-management systems
object-oriented programming
open-source development tools
maths at a basic level
procedures for developing small-size applications
software development life cycle (SDLC).
Evidence Required
The evidence guide provides advice on assessment and must be read in conjunction with the performance criteria, required skills and knowledge, range statement and the Assessment Guidelines for the Training Package.
Overview of assessment | |
Critical aspects for assessment and evidence required to demonstrate competency in this unit | Evidence of the ability to: create error logging framework to use debugging techniques and tools, and profiling tools and analyse performance issues. |
Context of and specific resources for assessment | Assessment must ensure access to: client and server system sufficient privileges to access and use performance monitoring tools in client and server systems debugging tools specific tools and licences, depending on particular platform appropriate learning and assessment support when required modified equipment for people with special needs. |
Method of assessment | A range of assessment methods should be used to assess practical skills and knowledge. The following examples are appropriate for this unit: written or verbal questioning of debugging, diagnostics and monitoring strategy evaluation of candidate’s logging framework and custom event log for an application direct observation of candidate using an integrated development environment (IDE) for code development and debugging and the monitoring applications. |
Guidance information for assessment | Holistic assessment with other units relevant to the industry sector, workplace and job role is recommended, where appropriate. Assessment processes and techniques must be culturally appropriate, and suitable to the communication skill level, language, literacy and numeracy capacity of the candidate and the work being performed. Indigenous people and other people from a non-English speaking background may need additional support. In cases where practical assessment is used it should be combined with targeted questioning to assess required knowledge. |
Range Statement
The range statement relates to the unit of competency as a whole. It allows for different work environments and situations that may affect performance. Bold italicised wording, if used in the performance criteria, is detailed below. Essential operating conditions that may be present with training and assessment (depending on the work situation, needs of the candidate, accessibility of the item, and local industry and regional contexts) may also be included.
Logging framework may include: | Java logging framework: Apache Commons Logging Java Logging application programming interface (API) Log4J SLF4J .NET logging and tracing tools: C# Logger DebugWriter Log4net LogThis Logview4net Microsoft’s Enterprise Library NetTrace TrafficMonitor. |
Level may include: | debug error fatal information trace warning. |
Tools may include: | Eclipse debugger Firebug (JavaScript debugger) Java debugger NetBeans debugger Visual Studio debugger WinDBG, NTSD, and CDB to debug .NET applications. |
Profiling tools may include: | CLR profiler Microsoft operations manager open-source profilers in Java: Cougaar Memory Profiler Extensible Java Profiler JMP NetBeans Profiler TomcatProbe structured query language (SQL) profiler system monitor Visual Studio profiler. |
Sectors
Programming and software development
Employability Skills
This unit contains employability skills.
Licensing Information
No licensing, legislative, regulatory or certification requirements apply to this unit at the time of endorsement but users should confirm requirements with the relevant federal, state or territory authority.