TESDA TRAINING REGULATIONS FOR PROGRAMMING (JAVA) NC III COURSE
The Programming (Java) NC III Qualification consists of competencies that a person must achieve to develop or write program codes using a personal computer or workstation as part of a systems development team. It includes core competencies on performing object-oriented analysis and design in Java technology and to create and fine-tune Java technology applications using object-oriented programming concepts.
At the end of the course, participants should be equipped with sufficient knowledge to take and pass the internationally acknowledged Oracle Java SE Certified Associate and participant will be awarded with an Oracle Certified Associate Java Programmer.
This Qualification is packaged from the competency map of the Information and Communication Technology Industry (Service sector)
A trainee or student person who has achieved this Qualification can be employed in any or more of the following:
- Java Programmer
- Java Programming support staff
- Software developer
- Application developer
- User Interface Developer
TRAINEE ENTRY REQUIREMENTS
Trainees or students wishing to gain entry into this course should possess the following requirements:
- Must have completed at least 10 yrs. basic education or an ALS grade 10 certificate of rating holder Must have completed at least 10 yrs. basic education or an ALS grade 10 certificate of rating holder
- can communicate either oral or written;
- with basic computer skills
This list does not include specific institutional requirements such as educational attainment, appropriate work experience and others that may be required from the trainees by the school or training center delivering the TVET program.
Benefits of Taking this course and Oracle Certification
- Oracle’s Java Programmer certification is critical to maximizing your potential and progressing your Java career.
- Over 30, 000 Java Developers per year become certified on Java.
- More than 800,000 of these Java developers are using the knowledge, skills and recognition learned through Java Certifications to improve their job prospects, earn more money* and become more valuable employees.
With 3 billion devices running Java worldwide, the world’s top companies rely on experienced Java Programmers to build and maintain these critical applications.
- Java is the number one development platform.
- 97% of desktops run Java.
- Java is the number one language for enterprise development.
Java Programmers Are In Demand Because of the prevalence of Java, there is a continued demand for well-trained, highly-skilled Java programmers to create and maintain critical applications.
Becoming Java Certified
The process of becoming Java certified broadens your knowledge and deepens your skills through exposure to a wide array of important features, functions and tasks.
As you prepare for these certification exams, you’ll work your way through hands-on exercises and labs using real Java code, which expands your capabilities as a Java developer. Additionally, the certification exams validate your capabilities using real-world, scenario-based questions that assess and challenge your ability to think and perform.
Accelerate Your Development Career
Ultimately, becoming Oracle Certified makes you a better Java developer. You’ll become more valuable to your current and/or future potential employer, increase job security and improve your future prospects.
Get started today by reviewing the Java Certification levels and requirements below.
According to Oracle’s 2012 Salary and Satisfaction Survey, 100% of Programmers and Developers surveyed reported receiving a promotion, compensation increase or other improvements to their careers as a result of becoming certified.
Oracle Certification Explanations:
The Oracle Certified Associate (OCA) credential is typically the first step toward achieving the flagship Oracle Certified Professional certification. The OCA credential ensures that the individual is equipped with fundamental skills, providing a strong foundation for supporting Oracle products. An OCA credential is available for several of today’s most in-demand technology job roles.
PROGRAMMING (JAVA) NC III TESDA COURSE MODULE
Course Title: PROGRAMMING (JAVA)
Level: NC III
Nominal Training Duration :
- (Basic Competency) 64 hours
- (Common Competency) 16 hours
- (Core Competency) 160 hours
TOTAL DURATION: 240 Hours
This course is designed to develop & enhance the knowledge, skills, & attitudes of a programmer in accordance with industry standards. It covers the basic, common & core competencies on programming language, specifically Java. The nominal duration of 240 hours covers the required units at Java Programming NC III. TVET providers can however, offer a longer, ladderized course covering the basic, common and core plus specialized competency unit/s.
COMPETENCIES REQUIRED IN PROGRAMMING (JAVA) NC III
This units of competency comprising this qualification include Basic, Common and Core Competencies.
To obtain this TESDA Course in PROGRAMMING (JAVA) NC III, all units prescribed below for this qualification must be achieved.
These units of competency comprising this qualification include the following:
|UNIT CODE||CORE COMPETENCIES (160 hours)|
|ICT313359||Perform object-oriented analysis and design in Java technology|
|ICT313360||Create and fine-tune Java technology applications using object-oriented programming concept|
|UNIT CODE||COMMON COMPETENCIES (16 hours)|
|ICT315202||Apply quality standards|
|ICT311203||Perform computer operations|
|UNIT CODE||BASIC COMPETENCIES (64 hours)|
|500311109||Lead Workplace Communication|
|500311110||Lead Small Teams|
|500311111||Develop and Practice Negotiation skills|
|500311112||Solve Problems Related to Work Activities|
|500311113||Use Mathematical Concepts and Techniques|
|500311114||Use Relevant Technologies|
These guidelines are set to provide the Technical Vocational Education and Training (TVET) providers with information and other important requirements to consider when designing training programs for PROGRAMMING (JAVA) NC III.
UNIT OF COMPETENCY: PERFORM OBJECT-ORIENTED ANALYSIS AND DESIGN IN JAVA TECHNOLOGY
UNIT CODE: ICT313359
This unit covers the knowledge, skills and attitude needed to use various Java programming language constructs to create several Java technology applications. Specifically, it consist of competencies in applying basics of Java language, working with methods and encapsulation, and working with inheritance and handling exceptions.
It also focuses on effectively using object-oriented technologies and the use of software modeling, as applied to a software development process. Students will learn to present one practical & complete object-oriented analysis and design (OOAD) roadmap, and will get hands-on experience, from requirements gathering to system design.
- Apply Basics of Java language
- Executable Java applications are created in accordance with Java framework
- Java packages are imported to make them accessible in the code
- Working with Java Data types is demonstrated in accordance with Java framework
- Using Operators and Decision Constructs is demonstrated in accordance with Java framework
- Creating and Using Arrays is demonstrated in accordance with Java framework
- Using Loop Constructs is demonstrated in accordance with Java framework
- Work with Methods and Encapsulation
- Methods with arguments and return values are created in accordance with Java framework
- Static keywords are applied to methods and fields in accordance with Java framework
- Overloaded method is created in accordance with Java framework
- Access modifiers are applied in accordance with Java framework
- Encapsulation principled are applied to a class in accordance with Java framework
- Work with Inheritance and Handling Exceptions
- Inheritance is implemented in accordance with Java framework
- Code that demonstrates the use of polymorphism is developed in accordance with Java framework
- Super and this syntax are used to access objects and constructors in accordance with Java framework
- Abstract classes and interfaces are used in accordance with Java framework
- How exceptions alter normal program flow are determined by creating a try-catch block.
- Examine Object-Oriented Concepts and Terminology
- Important object-oriented (OO) concepts are described in accordance with Java framework
- Fundamental OO terminology are defined in accordance with Java framework
- Explain Modeling and Software Development Process
- Object-Oriented Software Development (OOSD) process is explained in accordance with Java framework
- Benefits of modeling software are explained in accordance with Java framework
- Purpose, activities, and artifacts of the following OOSD workflows (disciplines) are explained
- Create Use Case Diagrams and Use Case Scenarios
- The need for a Use Case Diagram is justified in accordance with Java framework
- Use Case Diagram for a software system is developed based on the goals of the business owner
- Use Case Diagrams is developed based on the goals of all the stakeholders
- Use Case form is created describing a summary of the scenarios in the main and alternate flows
- Transition Analysis to Design using Interaction Diagrams
- Purpose and elements of the Design model are explained in accordance with Java framework
- Essential elements of a UML Communication diagram are identified in accordance with Java framework
- Communication diagram view of the Design model is created in accordance with Java framework
- Sequence diagram view of the Design model is created in accordance with Java framework
- Introduce Architectural Concepts and Architecture Tiers Diagrams
- Difference between architecture and design is distinguished in accordance with Java framework
- Tiers, layers, and systemic qualities are described in accordance with Java framework
- Architecture workflow is described in accordance with Java framework
- Architecture Tiers are defined in accordance with Java framework
UNIT OF COMPETENCY: CREATE AND FINE TUNE JAVA TECHNOLOGY APPLICATIONS USING OBJECT-ORIENTED PROGRAMMING CONCEPT
UNIT CODE : ICT313360
This unit covers the core Application Programming Interfaces (API) used to design object-oriented applications with Java. Students will learn how to write database programs with JDBC.
This unit also covers performance-tuning methodologies, performance tuning theories and practical tips on solving difficult performance problems for Java applications. It also covers how to implement interfaces and handle Java programming exceptions, while using object-oriented programming techniques.
- Apply Basics of Java Class Design
- Access modifiers are used in accordance with Java framework
- Instance of operator and casting are used in accordance with Java framework
- Virtual method invocation is used in accordance with Java framework
- Override methods from the Object class are used to improve the functionality of class
- Package and import statements are used in accordance with Java framework
- Apply Java Advanced Class Design and Object Oriented Design Principles
- Proper use of when and how to apply abstract classes is identified
- Abstract Java classes and subclasses are constructed in accordance with Java framework
- Static and final keywords are used in accordance with Java framework
- Top-level and nested classes are created in accordance with Java framework
- Enumerated types are used in accordance with Java framework
- Write code that declares, implements, and/or extends interfaces
- Object Oriented Design Principles are applied in accordance with Java framework
- Generics and Collections Principles are used in accordance with Java framework
- Apply String Processing, Exceptions and Assertions
- Search, parse, and build strings are used in accordance with Java framework
- String formatting is used in accordance with Java framework
- Throw and throws statements are used in accordance with Java framework
- Try statement with multi-catch is used in accordance with Java framework
- Autoclose features with a try-with-resources statement are used in accordance with Java framework
- Custom exceptions are created in accordance with Java framework
- Invariants by using assertions are tested in accordance with Java framework
- Build Database Applications with JDBC
- Layout of the JDBC API is defined in accordance with Java framework
- JDBC driver is used to connect to database in accordance with Java framework
- JDBC RowSetProvider, RowSetFactory, and RowSet interfaces are used in accordance with Java framework
- PreparedStatement and CallableStatement objects are created and used
- Monitor Operating System Performance
- Monitoring CPU Usage is demonstrated in accordance with Java framework
- Monitoring Network I/O is demonstrated in accordance with Java framework
- Monitoring Disk I/O is demonstrated in accordance with Java framework
- Monitoring Virtual Memory Usage is Demonstrated in accordance with Java framework
- Monitoring Java Virtual Machine is demonstrated in accordance with Java framework
- Garbage Collection Tuning is demonstrated in accordance with Java framework
- Work with Language Level Concerns and Garbage Collection
- Garbage Collection Algorithms are created in accordance with Java framework
- Types of Garbage Collectors are demonstrated in accordance with Java framework
- JVM Ergonomics are demonstrated in accordance with Java framework
- Garbage Collection is tuned in accordance with Java framework
- Correct Garbage Collector is selected in accordance with Java framework
- Garbage Collection Output is interpreted in accordance with Java framework
- Work with Performance Tuning at the Language Level
- Reference Types in Java are demonstrated in accordance with Java framework
- The use of Finalizers is demonstrated in accordance with Java framework
- String-efficient Java Applications are demonstrated in accordance with Java framework
- Collection Classes are demonstrated in accordance with Java framework
- Threads are used in accordance with Java framework
- I/O is efficiently used in accordance with Java framework
UNIT TITLE : APPLY CRITICAL THINKING AND THOUGHT ORGANIZATION
UNIT CODE : ICT315203
This unit covers the knowledge, skills, attitudes and values needed to develop the ability to extract and use relevant data. This unit will enhance the ability to critically assess the data or information gathered in order to make sound arguments, informed decisions and problem solving.
- Identify the theoretical foundations of critical thinking
- Assess and choose one of the study methods to effective data gathering, decision-making and problem solving.
- Identify the components of critical thinking.
- Identify the impediments of critical thinking to avoid them in data gathering and decision making situations.
- Identify the types of claims.
- Develop constructive arguments
- Establish the premise and possible conclusion based on the information provided from a job or industry scenario.
- Use methods of careful analysis to make constructive arguments based on a job or industry scenario.
- Apply methods of reasoning
- Analogies are used to support reasoning.
- Identify the cause and effects based on the criteria or information provided to support reasoning.
- Identify and avoid the common mistakes in reasoning about causes.
- Make evaluations based on the criteria or information provided.
- Affirm generalization
- Use past experiences to come up with a good generalization.
- Use appropriate samples to support generalization.
- Validate the generalization with margin of errors, variation in population and risk.
- Arrive at a conclusion
- Make rational arguments using the elements of reasoning.
- Clarify conceptual ideas using organized gathered data and evidences
- Alternatives are worked out to place argument in the context of study.
- Challenge or validate the position of the conclusion and make counter responses to emphasize a viewpoint.
UNIT TITLE : APPLY QUALITY STANDARDS
UNIT CODE : ICT315202
This unit covers the knowledge, skills, attitudes and values needed to apply quality standards in the workplace. The unit also includes the application of relevant safety procedures and regulations, organization procedures and customer requirements.
- Assess quality of received materials
- Work instruction is obtained and work is carried out in accordance with standard operating procedures.
- Received materials are checked against workplace standards and specifications.
- Faulty materials related to work are identified and isolated.
- Faults and any identified causes are recorded and/or reported to the supervisor concerned in accordance with workplace procedures.
- Faulty materials are replaced in accordance with workplace procedures.
- Assess own work
- Documentation relative to quality within the company is identified and used.
- Completed work is checked against workplace standards relevant to the task undertaken.
- Errors are identified and isolated.
- Information on the quality and other indicators of production performance are recorded in accordance with workplace procedures.
- In cases of deviations from specific quality standards, causes are documented and reported in accordance with the workplace’ s standards operating procedures.
- Engage in quality improvement (Produce)
- Process improvement procedures are participated in relative to workplace assignment.
- Work is carried out in accordance with process improvement procedures.
- Performance of operation or quality of product of service to ensure customer satisfaction is monitored.
UNIT TITLE : PERFORM COMPUTER OPERATIONS
UNIT CODE : ICT 311203
This unit covers the knowledge, skills, attitudes and values needed to perform computer operations which include inputting, accessing, producing and transferring data using the appropriate hardware and software.
- Plan and prepare for task to be taken undertaken
- Requirements of task are determined in accordance with the required output.
- Appropriate hardware and software are selected according to task assigned and required outcome.
- Task is planned to ensure that OH & S guidelines and procedures are followed.
- Client -specific guidelines and procedures are followed.
- Required data security guidelines are applied in accordance with existing procedures.
- Input data into computer
- Data are entered into the computer using appropriate program/application in accordance with company procedures.
- Accuracy of information is checked and information is saved in accordance with standard operating procedures.
- Inputted data is stored in storage media according to requirements.
- Work is performed within ergonomic guidelines.
- Access information using computer
- Correct program/application is selected based on job requirements.
- Program/application containing the information required is accessed according to company procedures.
- Desktop icons are correctly selected, opened and closed for navigation purposes.
- Keyboard techniques are carried out in line with OH & S requirements for safe use of keyboards.
- Produce output/data using computer system
- Entered data are processed using appropriate software commands.
- Data are printed out as required using computer hardware /peripheral devices in accordance with standard operating procedures.
- Files and data are transferred between compatible systems using computer software, hardware/peripheral devices in accordance with standard operating procedures.
- Use basic functions of a www-browser to locate information
- Information requirements for internet search are established.
- Browser is launched.
- Search engine is loaded.
- Appropriate search criteria/or URL of site is entered.
- Relevant links are followed to locate required information.
- Useful pages are bookmarked or printed as required
- Maintain computer equipment and systems
- Procedures for ensuring security of data, including regular back-ups and virus checks are implemented in accordance with standard operating procedures.
- Basic file maintenance procedures are implemented in line with the standards operating procedures.
The BASIC COMPETENCIES refer to non-technical skills (knowledge, skills and attitudes) that everybody will need in order to perform satisfactorily at work and in society and are considered portable and transferable irrespective of jobs and industrial settings.
UNIT OF COMPETENCY : LEAD WORKPLACE COMMUNICATION
UNIT CODE : 500311109
This unit covers the knowledge, skills and attitudes required to lead in the dissemination and discussion of ideas, information and issues in the workplace.
- Communicate information about workplace processes
- Appropriate communication method is selected
- Multiple operations involving several topics areas are communicated accordingly
- Questions are used to gain extra information
- Correct sources of information are identified
- Information is selected and organized correctly
- Verbal and written reporting is undertaken when required
- Communication skills are maintained in all situations
- Lead workplace discussions
- Response to workplace issues are sought
- Response to workplace issues are provided immediately
- Constructive contributions are made to workplace discussions on such issues as production, quality and safety
- Goals/objectives and action plan undertaken in the workplace are communicated
- Identify and communicate issues arising in the workplace
- Issues and problems are identified as they arise
- Information regarding problems and issues are organized coherently to ensure clear and effective communication
- Dialogue is initiated with appropriate personnel
- Communication problems and issues are raised as they arise
UNIT OF COMPETENCY : LEAD SMALL TEAMS
UNIT CODE : 500311110
This unit covers the knowledge, skills and attitudes to lead small teams including setting and maintaining team and individual performance standards.
- Provide team leadership
- Work requirements are identified and presented to team members
- Reasons for instructions and requirements are communicated to team members
- Team members’ queries and concerns are recognized, discussed and dealt with
- Assign responsibilities
- Duties, and responsibilities are allocated having regard to the skills, knowledge and aptitude required to properly undertake the assigned task and according to company policy
- Duties are allocated having regard to individual preference, domestic and personal considerations, whenever possible
- Set performance expectations for team members
- Performance expectations are established based on client needs and according to assignment requirements
- Performance expectations are based on individual team members duties and area of responsibility
- Performance expectations are discussed and disseminated to individual team members
- Supervised team performance
- Monitoring of performance takes place against defined performance criteria and/or assignment instructions and corrective action taken if required
- Team members are provided with feedback, positive support and advice on strategies to overcome any deficiencies
- Performance issues which cannot be rectified or addressed within the team are referenced to appropriate personnel according to employer policy
- Team members are kept informed of any changes in the priority allocated to assignments or tasks which might impact on client/customer needs and satisfaction
- Team operations are monitored to ensure that employer/client needs and requirements are met
- Follow-up communication is provided on all issues affecting the team
- All relevant documentation is completed in accordance with company procedures
UNIT OF COMPETENCY : DEVELOP AND PRACTICE NEGOTIATION SKILLS
UNIT CODE : 500311111
This unit covers the skills, knowledge and attitudes required to collect information in order to negotiate to a desired outcome and participate in the negotiation.
- Plan negotiations
- Information on preparing for negotiation is identified and included in the plan
- Information on creating non verbal environments for positive negotiating is identified and included in the plan
- Information on active listening is identified and included in the plan
- Information on different questioning techniques is identified and included in the plan
- Information is checked to ensure it is correct and up-to- date
- Participate in negotiations
- Criteria for successful outcome are agreed upon by all parties
- Desired outcome of all parties are considered
- Appropriate language is used throughout the negotiation
- A variety of questioning techniques are used
- The issues and processes are documented and agreed upon by all parties
- Possible solutions are discussed and their viability assessed
- Areas for agreement are confirmed and recorded
- Follow-up action is agreed upon by all parties
UNIT OF COMPETENCY : SOLVE PROBLEMS RELATED TO WORK ACTIVITIES
UNIT CODE : 500311112
This unit of covers the knowledge, skills and attitudes required to solve problems in the workplace including the application of problem solving techniques and to determine and resolve the root cause of problems.
- Identify the problem
- Variances are identified from normal operating parameters; and product quality
- Extent, cause and nature are of the problem are defined through observation, investigation and analytical techniques
- Problems are clearly stated and specified
- Determine fundamental causes of the problem
- Possible causes are identified based on experience and the use of problem solving tools / analytical techniques.
- Possible cause statements are developed based on findings
- Fundamental causes are identified per results of investigation conducted
- Determine corrective action
- All possible options are considered for resolution of the problem
- Strengths and weaknesses of possible options are considered
- Corrective actions are determined to resolve the problem and possible future causes
- Action plans are developed identifying measurable objectives, resource needs and timelines in accordance with safety and operating procedures
- Provide recommendation/s to manager
- Report on recommendations are prepared
- Recommendations are presented to appropriate personnel.
- Recommendations are followed-up, if required
UNIT OF COMPETENCY : USE MATHEMATICAL CONCEPTS AND TECHNIQUES
UNIT CODE : 500311113
This unit covers the knowledge, skills and attitudes required in the application of mathematical concepts and techniques.
- Identify mathematical tools and techniques to solve problem
- Problem areas are identified based on given condition
- Mathematical techniques are selected based on the given problem
- Apply mathematical procedure/solution
- Mathematical techniques are applied based on the problem identified
- Mathematical computations are performed to the level of accuracy required for the problem
- Results of mathematical computation is determined and verified based on job requirements
- Analyze results
- Result of application is reviewed based on expected and required specifications and outcome
- Appropriate action is applied in case of error
UNIT OF COMPETENCY : USE RELEVANT TECHNOLOGIES
UNIT CODE : 500311114
This unit of competency covers the knowledge, skills, and attitude required in selecting, sourcing and applying appropriate and affordable technologies in the workplace.
- Study/select appropriate technology
- Usage of different technologies is determined based on job requirements
- Appropriate technology is selected as per work specification
- Apply relevant technology
- Relevant technology is effectively used in carrying out function
- Applicable software and hardware are used as per task requirement
- Management concepts are observed and practiced as per established industry practices
- Maintain/enhance relevant technology
- Maintenance of technology is applied in accordance with the industry standard operating procedure, manufacturer’s operating guidelines and occupational health and safety procedure to ensure its operative ability
- Updating of technology is maintained through continuing education or training in accordance with job requirement
- Technology failure/ defect is immediately reported to the concern/responsible person or section for appropriate action
DEFINITION OF TERMS
- Certification – is the process of verifying and validating the competencies of a person through assessment
- Certificate of Competency (COC) – is a certification issued to individuals who pass the assessment for a single unit or cluster of units of competency
- Common Competencies – are the skills and knowledge needed by all people working in a particular industry
- Competency – is the possession and application of knowledge, skills and attitudes to perform work activities to the standard expected in the workplace
- Competency Assessment – is the process of collecting evidence and making judgments on whether competency has been achieved
- Competency Standard (CS) – is the industry-determined specification of competencies required for effective work performance
- Context of Assessment – refers to the place where assessment is to be conducted or carried out
- Core Competencies – are the specific skills and knowledge needed in a particular area of work – industry sector/occupation/job role
- Critical aspects of competency – refers to the evidence that is essential for successful performance of the unit of competency
- Elective Competencies – are the additional skills and knowledge required by the individual or enterprise for work
- Elements – are the building blocks of a unit of competency. They describe in outcome terms the functions that a person perform in the workplace
- Evidence Guide – is a component of the unit of competency that defines or identifies the evidences required to determine the competence of the individual. It provides information on critical aspects of competency, required knowledge, required skills, resource implications, assessment method and context of assessment
- Level – refers to the category of skills and knowledge required to do a job
- Method of Assessment – refers to the ways of collecting evidence and when evidence should be collected
- National Certificate (NC) – is a certification issued to individuals who achieve all the required units of competency for a national qualification defined under the Training Regulations. NCs are aligned to specific levels within the PTQF
- Performance Criteria – are evaluative statements that specify what is to be assessed and the required level of performance
- Qualification – is a cluster of units of competencies that meets job roles and is significant in the workplace. It is also a certification awarded to a person on successful completion of a course in recognition of having demonstrated competencies in an industry sector
- Range of Variables – describes the circumstances or context in which the work is to be performed
- Recognition of Prior Learning (RPL) – is the acknowledgement of an individual’s skills, knowledge and attitudes gained from life and work experiences outside registered training programs
- Resource Implications – refers to the resources needed for the successful performance of the work activity described in the unit of competency. It includes work environment and conditions, materials, tools and equipment
- Basic Competencies – are the skills and knowledge that everyone needs for work
- Training Regulations (TR) – refers to the document promulgated and issued by TESDA consisting of competency standards, national qualifications and training guidelines for specific sectors/occupations. The TR serves as basis for establishment of qualification and certification under the PTQF. It also serves as guide for development of competency-based curricula and instructional materials including registration of TVET programs offered by TVET providers
- Required Knowledge – refers to the competency that involves in applying knowledge to perform work activities. It includes specific knowledge that is essential to the performance of the competency
- Required Skills – refers to the list of the skills needed to achieve the elements and performance criteria in the unit of competency. It includes generic and industry specific skills
- Unit of Competency – is a component of the competency standards stating a specific key function or role in a particular job or occupation; it is the smallest component of achievement that can be assessed and certified under the PTQF
- Algorithm – is a type of effective method in which a list of well-defined instructions for completing a task will, when given an initial state, proceed through a well-defined series of successive states, eventually terminating in an end-state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as probabilistic algorithms, incorporate randomness.
- Artificial intelligence programmer – develops the logic the game uses to carry out a large number of actions. An AI programmer may program pathfinding, strategy and enemy tactic systems. This is one of the most challenging aspects of game programming and its sophistication is developing rapidly.
- Browser – a software package that provides the user interface for accessing Internet, intranet and extranet Web sites.
- Compiler – is a computer program (or set of programs) that translates text written in a computer language (the source language) into another computer language (the target language). The original sequence is usually called the source code and the output called object code. Commonly the output has a form suitable for processing by other programs (e.g., a linker), but it may be a human-readable text file.
- Computer – a device that has the ability to accept data; internally store and execute a program of instructions; perform mathematical, logical, and manipulative operations on data; and report the results.
- Computer Terminal – any input/output device connected by telecommunications links to a computer.
- Data – objective measurements of the attributes (characteristics) of entities such as people, places, things, and events.
- Documentation – a collection of documents or information.
- Eclipse – is an integrated development environment (IDE) written primarily in Java. The initial codebase originated from Visual Age. In its default form it is meant for Java developers, consisting of the Java Development Tools (JDT). Users can extend its capabilities by installing plug-ins written for the Eclipse software framework, such as development toolkits for other programming languages, and can write and contribute their own plug-in modules.
- Edit – to modify the form or format of data
- Encryption – to scramble data or convert it, prior to transmission, to a secret code that masks the meaning of he data to unauthorized recipients.
- End user – anyone who uses an information system or the information it produces.
- Ergonomics – the science and technology emphasizing the safety, comfort, and ease of use of human-operated machines. The goal of ergonomics is to produce systems that are user-friendly: safe, comfortable and easy to use.
- Flash – can manipulate vector and raster graphics and supports bi-directional streaming of audio and video. It contains a scripting language called ActionScript. It is available in most common web browsers and some mobile phones and other electronic devices (using Flash Lite). Several software products, systems, and devices are able to create or display Flash, including the Adobe Flash Player. The Adobe Flash Professional multimedia authoring program is used to create content for the Adobe Engagement Platform, such as web applications, games and movies, and content for mobile phones and other embedded devices.
- Game programming – a subset of game development, is the programming of computer, console or arcade games. Though often engaged in by professional game programmers, many novices may program games as a hobby.
- Game loop – the key component of any game, from a programming standpoint. The game loop allows the game to run smoothly regardless of a user’s input or lack thereof.
- Game programmer – is a programmer who primarily develops video games or related software (such as game development tools). Game programming has many specialized disciplines; practitioners of any may regard themselves as “game programmers”. A game programmer should not be confused with a game designer; many designers are also programmers, but not all are, and it is rare for one person to serve both roles in modern professional games
- Graphics programmer – historically, this title usually belonged to a programmer who developed specialized blitter algorithms and clever optimizations for 2D graphics. Today, however, it is almost exclusively applied to programmers who specialize in developing and modifying complex 3D graphic renderers. Some 2D graphics skills have just recently become useful again, though, for developing games for the new generation of cell phones, PDAs and handheld game consoles. A 3D graphics programmer must have a firm grasp on advanced mathematical concepts such as vector and matrix math, quaternions and linear algebra.
- Game physics programmer – is dedicated to developing the physics a game will employ. Typically, a game will only simulate a few aspects of real-world physics. For example, a space game may need simulated gravity, but would not have any need for simulating water viscosity.
20. Gameplay programmer – Though all programmers add to the content and experience that a game provides, a gameplay programmer focuses more on a game’s strategy and the “feel” of a game. This is usually not a separate discipline, as what this programmer does usually differs from game to game, and they will inevitably be involved with more specialized areas of the game’s development such as graphics or sound.
- Information – data placed in a meaningful and useful context for an end user.
- Information and Communication Technology (ICT) – refers to technologies associated
with the transmission and exchange of data in the form of sound, text, visual images, signals or any combination of those forms through the use of digital technology. It encompasses such services as telecommunications, posts, multimedia, electronic commerce, broadcasting, and information technology.
- Integrated development environment (IDE) – is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editor, a compiler and/or interpreter, build automation tools, and (usually) a debugger. Typically an IDE is dedicated to a specific programming language, so as to provide a feature set which most closely matches the programming paradigms of the language. However, some multiple-language IDEs are in use, such as Eclipse, ActiveState Komodo, recent versions of NetBeans, and Microsoft Visual Studio.
- Key frame – is a single still image in an animated sequence that occurs at an important point in that sequence; key frames are defined throughout an animated sequence, in order to define pivotal points of motion before the frames in between are drawn or otherwise created to “tween” the motion between the two key frames.
- Local Area Network (LAN) – a communications network that typically connects computers, terminals, and other computerized devices within a limited physical area such as an office, building, manufacturing plant and other work sites.
- Microsoft DirectX – is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms.
- Object code – or an object file, is the representation of code that a compiler or assembler generates by processing a source code file. Object files contain compact code, often called “binaries”. A linker is typically used to generate an executable or library by linking object files together. The only essential element in an object file is machine code (code directly executed by a computer’s CPU). Object files for embedded systems might contain nothing but machine code. However, object files often also contain data for use by the code at runtime, relocation information, program symbols (names of variables and functions) for linking and/or debugging purposes, and other debugging information.
- Outsourcing – turning over all or part of an organization’s information systems operation to outside contractors, known as systems integrators or facilities management companies.
- Quality Assurance – methods for ensuring that information systems are free from errors and fraud and provide information products of high quality.
- Production. During production, programmers churn out a great deal of source code to create the game described in the game’s design document. Along the way, the design document is modified to meet limitations or expanded to exploit new features. The design document is very much a “living document” much of whose life is dictated by programmer’s schedules, talent and resourcefulness.
- Prototyping – Writing prototypes of gameplay ideas and features is an important activity that allows programmers and game designers to experiment with different algorithms and usability scenarios for a game. A great deal of prototyping may take place during preproduction before the design document is complete and may, in fact, help determine what features the design specifies. Prototyping may also take place during active development to test new ideas as the game emerges.
- Simulation – the process of imitating a real phenomenon with a set of mathematical formulas. Advanced computer programs can simulate weather conditions, chemical reactions, atomic reactions, even biological processes.
- Software – computer programs and procedures concerned with the operation of an information system.
- Sound programmer – Not always a separate discipline, sound programming has been a mainstay of game programming since the days of Pong. Most games make use of audio, and many have a full musical score. Computer audio games eschew graphics altogether and use sound as their primary feedback mechanism.
- Source code – is the collection of files needed to convert from human-readable form to some kind of computer-executable form. The source code may be converted into an executable file by a compiler, or executed on the fly from the human readable form with the aid of an interpreter.
- Standards – measures of performance developed to evaluate the progress of a system toward its objectives
- System – an assembly of methods, procedures, or techniques unified by regulated interaction to form an organized whole
- Vector – is a line or a movement defined by end-points or, essentially, the distance between point A and point B. Vectors can be used to calculate animated motion mathematically instead of through the use of manual key frames; vectors can also be used to define computer-animated shapes.
- Video game – is a game that involves interaction with a user interface to generate visual feedback on a video device. The word video in video game traditionally referred to a raster display device. However, with the popular use of the term “video game”, it now implies any type of display device. The electronic systems used to play video games are known as platforms; examples of these are personal computers and video game consoles. These platforms are broad in range, from large computers to small handheld devices. Specialized video games such as arcade games, while previously common, have gradually declined in use.
- User- friendly – a characteristic of human-operated equipment and systems that makes them safe, comfortable, and easy to use.