Internship requirements for Computer Science graduates.

Internship Period: Six Months

Topics to be covered during placement (At least 5 of these topics should be covered during the internship period)

 

  1. System Analysis and Requirements Specification
    • Analyse systems by interviewing, through questionnaires, etc
    • Study techniques of representation of existing system or part of the system
    • Develop user requirements
    • Prepare system specification document
  2. System Prototyping
    • Familiarize with prototyping tools and techniques: 4GLs
  3. Application Design
    • Design Methodologies:
      • Carry out data structure design and study techniques
      • Carry out process design and study techniques
      • Carry out I/O design
    • Approaches to Design:
      • Familiarize with top-down design
      • Familiarize with modularisation
      • Familiarize with design review
      • Structured walk-through
      • Familiarize with standards of design
      • Familiarize with OO design including UML
  4. Testing and Quality Assurance
    • Test for functionality, throughout and robustness
    • Prepare test data
    • Perform module/unit testing
    • Perform system testing
  5. Documentation
    • Familiarize with the preparation of feasibility report
    • Familiarize with the preparation of technical documentation
    • Familiarize with the preparation of user documentation
    • Understand the process of tender evaluation
    • Use of HTML and PowerPoint to produce on-line documentation and presentation material
  6. Aspects of Software Engineering
    • Use of automated development tools o Familiarise with CASE/IPSE tools
    • Familiarise with RAD/visual tools
  7. Software Development
    • Carry out program design and coding
    • Awareness of appropriate languages used as part of a development team, e.g. Java, C++, SQL, etc.
    • Web site design and coding
  8. Disaster Recovery Planning
    • Review the organizations disaster recovery plan
    • Participate in the testing of the disaster recovery plan
  9. Capacity Planning
    • Determine computer resource utilisation
    • Assist in the estimation of new system requirements
    • Familiarise with growth forecast of computing resources
  10. Project Management
    • Familiarise with identifying deliverables
    • Familiarise with measuring project productivity
    • Familiarise with project performance reporting
    • Familiarise with software project costing
    • Familiarise with project management tools and techniques (PERT/CPM, etc.)
  11. Data protection, security and risk analysis
    • Analysis of risk due to loss of data and unauthorized access
    • Familiarize with physical access control to information systems
    • Familiarize with hardware and software control methods for data and program protection
    • Familiarize with ancillary equipment for power supply, fire protection, temperature, humidity and dust control
  12. Legislation and standards
    • Understand the relationship between industrial activities and appropriate national and international standards in IT and quality assurance. e.g. ISO9000
    • Understand the impact on industrial activity of national and international legislation in areas such as:
    • Computer misuse
    • Data protection
    • Copyright, designs and patents
    • Health and Safety
    • Public and employee liability
    • E-commerce
  13. Systems Configuration
    • o Familiarise with Operating Systems and device drivers
    • Familiarise with OS installation, configuration and operation
    • Familiarise with network configuration and management
    • Familiarise with installation, customizing and operation of application packages
    • Familiarise with the implementation of file management systems
    • Carry out tailoring operating environment and command shell interpreters
    • Familiarise with systems and network security systems and monitoring
  14. Operational Procedures
    • Carry out diagnostics and resolution of error conditions
    • Carry out benchmarking activities
    • Familiarise with the tools and techniques for performance monitoring, analysis and tuning
    • Assist in user support through training, consultancy and advice