Focus Area Level Report Including Knowledge and Skills, and Performance Indicators

Size: px
Start display at page:

Download "Focus Area Level Report Including Knowledge and Skills, and Performance Indicators"

Transcription

1 Including Knowledge and Skills, and ICPB01.01 Identify and analyze customer software needs and requirements. ICPB Gather data to identify customer requirements. ICPB Gather information using interviewing strategies. ICPB Identify input and output requirements. ICPB Identify system processing requirements. ICPB Clarify specifications using questioning techniques. ICPB Identify hardware, networking, and software system functional requirements. ICPB Demonstrate knowledge of nonfunctional requirements (e.g., security, integrity response, time, reliability, support, and documentation). ICPB Conduct needs analysis. ICPB Gather information on problems from users. ICPB Perform workflow analysis to determine user needs. ICPB Analyze existing procedures. ICPB Define business problem to be solved by the application. ICPB Development software requirements specification. ICPB Demonstrate knowledge of the use, structure, and contents of a requirements specification document. ICPB Define system and software requirements. ICPB Develop informal specifications. ICPB Develop formal specification. ICPB Resolve conflicting requirements. ICPB Review and verify specification with customer. ICPB Analyze requirements/specifications using current approaches. ICPB Demonstrate knowledge of how to use software methodologies to analyze a real-world problem. ICPB Identify constraints. ICPB Demonstrate knowledge of modeling and analyzing functional requirements (e.g., dataflow diagrams, process specifications, and a data dictionary). ICPB Demonstrate knowledge of modeling and analyzing data requirements (e.g., Jackson diagrams, entity relationship diagrams, and relations). ICPB Use available reference tools as appropriate. ICPB Access needed information using company and manufacturers' references (e.g., procedural manuals, documentation, standards, work flowcharts). ICPB01.02 Produce IT-based strategies and project plan to solve the specific problem. ICPB Define scope of work for the programming project. ICPB Define scope of work to meet customer needs. ICPB Demonstrate knowledge of the key functions and subsystems of the software product. ICPB Demonstrate knowledge of software development process and issues. ICPB Demonstrate knowledge of the system life-cycle approach. Page 1 of 6

2 Including Knowledge and Skills, and ICPB Demonstrate knowledge and skills of working in a software development team. ICPB Identify resources and risks. ICPB Demonstrate knowledge of cross-functional team structures and team members roles. ICPB Design project plan. ICPB Demonstrate knowledge of project budgeting, scheduling, and control issues related to software development. ICPB Demonstrate knowledge of software development methodology. ICPB Develop implementation plan. ICPB01.03 Define and analyze system and software requirements. ICPB Identify new IT technologies and assess their potential importance and impact in the future. ICPB Identify new technologies relevant to information technology. ICPB Assess the importance of new technologies to future developments. ICPB Identify system processing requirements. ICPB Identify data communication trends and major current issues. ICPB Explain new and emerging classes of software. ICPB Identify new and emerging classes of software. ICPB Determine compatibility of hardware and software. ICPB Understand elements and types of information processing. ICPB Identify the elements of the information processing cycle (e.g., input, process, output, and storage). ICPB Explain measurement techniques for increased productivity due to information systems implementation. ICPB Identify metrics for measurements. ICPB Measure increases in productivity realized by the implementation of information systems. ICPB Identify new and emerging drivers and inhibitors of information technology change. ICPB01.04 Demonstrate the effective use of tools for software development. ICPB Apply tools for developing software applications. ICPB Demonstrate knowledge of software development environment. ICPB Use prototyping techniques. ICPB Use appropriate Configuration Management tools. ICPB Use appropriate issues tracking tools. ICPB Demonstrate knowledge of reuse and components. ICPB Apply language specific programming tools/techniques. ICPB Develop programs using appropriate language. ICPB Use appropriate development environment for the selected language (e.g., compilers, debuggers, test generation, static analyzer). ICPB Use user interface development tools. ICPB Demonstrate knowledge of how to use computer-aided software engineering (CASE) tools. Page 2 of 6

3 Including Knowledge and Skills, and ICPB Use appropriate requirement analysis tools. ICPB Use appropriate modeling and analysis tools. ICPB Use requirement tracking tools. ICPB Demonstrate knowledge of software reuse, design pattern, and components. ICPB01.05 Demonstrate knowledge of the software development process. ICPB Demonstrate knowledge of software development methodology. ICPB Demonstrate knowledge of the information system life cycle. ICPB Demonstrate knowledge of system analysis issues related to design, testing, implementation, and maintenance. ICPB Record and analyze process. ICPB Identify the use of program design tools in a software development process. ICPB Identify roles on team members/customers in the software development process. ICPB Identify current information life cycle models. ICPB01.06 Design a software application. ICPB Create design specification for a computer application. ICPB Demonstrate knowledge of the principles of program design (e.g., structured, object oriented, event-driven) to analyze real-world problems. ICPB Perform a logical design. ICPB Document design specification according to defined procedures. ICPB Design system input, output, processing, and interfaces. ICPB Review system design with management and users. ICPB Use current computer-aided software engineering (CASE) tools. ICPB Demonstrate comprehension of the trade-off involved in design choices. ICPB Demonstrate knowledge of the characteristics and the uses of processing (e.g., batch, interactive, event-driven, object-oriented). ICPB Identify basic concepts of algorithm and data structure development. ICPB Demonstrate knowledge of different data types (e.g., numeric, alphanumeric, tables). ICPB Identify constraints. ICPB Demonstrate knowledge of nonfunctional requirements (e.g., security, integrity, response time, cost, dependability, migration). ICPB Demonstrate knowledge of modular design concepts. ICPB Demonstrate knowledge of the features, functions, and architectures of client/server computing. ICPB Apply the principles of effective information management, information organization, and information-retrieval skills. ICPB Demonstrate knowledge of database management concepts. ICPB Define the objectives of a client/server application. ICPB Implement online transition processing. ICPB Design static and dynamic online processing systems. Page 3 of 6

4 Including Knowledge and Skills, and ICPB Employ interface techniques. ICPB Demonstrate knowledge of computing/networking hardware and software architecture. ICPB Demonstrate knowledge of how data is stored, organized, managed and retrieve in various computer and network architecture. ICPB Demonstrate knowledge of software architectures for different classes of applications. ICPB01.07 Produce (code) a computer application. ICPB Demonstrate knowledge of programming language concepts. ICPB Demonstrate knowledge of the hardware-software connection. ICPB Demonstrate knowledge of the concepts of data and procedural representation. ICPB Demonstrate knowledge of the basic principles for analyzing a programming language. ICPB Demonstrate knowledge of the basics of structured, object-oriented, and event-driven programming. ICPB Demonstrate knowledge of how a programming language can support multitasking and exception-handling. ICPB Demonstrate proficiency in developing an application using an appropriate programming language. ICPB Demonstrate knowledge of current key programming languages and the environment they are used in (e.g., C, C++, Visual Basic, Java, RPG, COBOL, Assembler). ICPB Translate data structure and program design into code in an appropriate language. ICPB Demonstrate knowledge of key constructs and commands specific to a language. ICPB Understand the range of languages used in software development. ICPB Demonstrate knowledge of the range of languages used in software development. ICPB Demonstrate knowledge of program development methodology. ICPB Demonstrate knowledge of how to resolve program implementation issues (e.g., debugging, documentation, auditing). ICPB Demonstrate knowledge of software development issues (e.g., correctness, reliability, and productivity). ICPB Demonstrate knowledge of code analysis issues related to design, testing, implementation, and maintenance. ICPB Demonstrate knowledge of how to design and implement programs in a top-down manner. ICPB Demonstrate knowledge of how to translate algorithmic and modular design to develop a program. ICPB Demonstrate knowledge of structured/modular programming. ICPB Demonstrate knowledge of how programming control structures are used to verify correctness. ICPB Use code development tools (debugger, integrated development environments). ICPB Demonstrate knowledge of basic software systems implementation. ICPB Use appropriate programming language. Page 4 of 6

5 Including Knowledge and Skills, and ICPB Analyze and prepare logic using program flowchart. ICPB Review design (e.g., peer and/or user walk though). ICPB Compile and debug code. ICPB Prepare code documentation. ICPB Prepare unit testing plan. ICPB Conduct unit testing and bug fixes. ICPB Develop software requirements/specifications. ICPB Access needed information using company and manufacturers' references (e.g., procedural manuals, documentation, standards, word flowcharts). ICPB Divide design specifications into logical process blocks. ICPB Identify parameters. ICPB Follow specifications or drawings. ICPB Record process (e.g., using flowchart, step-by-step narrative). ICPB Record data. ICPB Resolve problems with integration if they occur. ICPB Troubleshoot unexpected results. ICPB Fix code. ICPB01.08 Demonstrate knowledge of software testing. ICPB Develop test plan. ICPB Access needed information using appropriate reference materials. ICPB Define test procedures. ICPB Analyze requirement and design specifications. ICPB Development test cases using requirements and design specification. ICPB Perform testing & validation. ICPB Perform integration testing. ICPB Perform regression testing. ICPB Help with user-acceptance test. ICPB Validate user documentation. ICPB Document discovered errors. ICPB Document test results. ICPB Document errors discovered. ICPB Perform defect tracking. ICPB Develop software testing audit trails. ICPB Record error correction procedures and actions. ICPB01.09 Perform quality assurance tasks to produce quality products. ICPB Demonstrate knowledge of software quality assurance. ICPB Demonstrate knowledge of Software QA process. ICPB Demonstrate knowledge of the standards/requirements for Software QA. ICPB Develop team relationships to support software quality assurance tasks. ICPB Perform software quality assurance tasks to produce a quality software product. Page 5 of 6

6 Including Knowledge and Skills, and ICPB Identify standards and issues related to I/O programming and design of I/O interfaces. ICPB Use customer satisfaction in determining product characteristics (e.g., cost, user-friendliness). ICPB Recognize the relationship between dependability, functionality, ease of use, etc. ICPB Conduct code walkthrough and/or inspection. ICPB Follow established procedures for testing, identifying problems, and tracking resolutions. ICPB01.10 Perform maintenance and customer support functions. ICPB Analyze software technical support needs. ICPB Identify maintenance and support requirements. ICPB Apply information and data analysis techniques. ICPB Define scope of work to meet customer support needs. ICPB Perform customer service. ICPB Access needed information using appropriate reference materials. ICPB Provide help to first line user-support personnel to answer user questions. ICPB Provide troubleshooting for software. ICPB Perform system-tuning function. ICPB Diagnose problems within system. ICPB Perform technical functions required by customer/user. ICPB Communicate and document technical support provided. ICPB Perform software maintenance activities. ICPB Follow organizational procedures to communicate and document maintenance tasks. ICPB Identify and analyze problem. ICPB Analyze and propose solutions. ICPB Implement solutions in code and documentation. ICPB Release software and documentation updates according to procedures. Page 6 of 6