Foundations of Computing
Section outline
-
-
This course provides an introduction to the foundational concepts of computing, exploring its evolution, theoretical underpinnings, and practical applications. It covers the organization and structure of computer systems, software types and applications, programming methodologies, and data structures. Students will gain insight into machine architecture, operating systems, communication systems, and the role of information technology in modern society.
Course Objectives
The objectives of this course are to:
- Introduce the basic principles and history of computing.
- Familiarize students with the theoretical and practical aspects of computer systems and software.
- Provide foundational knowledge in programming and algorithm design.
- Highlight the role of operating systems, human-computer interaction, and the internet in computing.
Overall Learning Outcomes
Upon successful completion of this course, students should be able to:
- Describe the foundational concepts of computing.
- Demonstrate an understanding of the basic theory of digital computers.
- Demonstrate an understanding of the organization and structure of a computer system.
- Differentiate between system and application software.
- Describe the concepts of hardware, software, and the role of an operating system.
- Apply application development tools and methods to problem-solving.
- Explain the components of communication systems.
- Explain the purpose and significance of a management information system.
-
-
-
IFT 201 QUIZ
-
IFT 201 TEST
-
FOUNDATION
-
FOUNDATION
-
-
Computer organization
Give a detail explanation on computer organization and it's application in real life
-
-
FOUNDATION
-
-
-
Define Human–Computer Interaction (HCI) and explain its primary purpose.
-
List and briefly describe the three main components involved in HCI.
-
Explain the difference between usability and user experience (UX).
-
What is the significance of user-centered design (UCD) in HCI?
-
Define affordance and provide one example from a digital interface.
Part B: Usability Principles
-
State and explain five usability principles proposed by Jakob Nielsen.
-
Describe the concept of mental models and explain why they matter in interface design.
-
What is cognitive load? Provide an example of how interface designers can reduce it.
Part C: Interaction Design & Prototyping
-
Identify and describe three types of prototyping used in HCI.
-
Explain the importance of consistency in interface design. Provide two examples.
-
What is Fitts’s Law? Give an example of how it can be applied to interface layout decisions.
Part D: Evaluation Methods
-
Describe the difference between formative and summative evaluation.
-
List and briefly explain three HCI evaluation techniques (e.g., heuristic evaluation, user testing, cognitive walkthrough).
-
In what situations is heuristic evaluation more effective than user testing? Explain.
Part E: Case Study / Practical Application
-
Consider a mobile banking app. Identify at least three usability issues that might occur and suggest improvements for each.
-
Sketch (or describe) a simple improved login screen for the app, applying at least three HCI principles.
-
Describe how you would conduct a user test for this redesigned login screen. Include:
-
Number of users
-
Tasks
-
Metrics you would measure (e.g., time, errors, satisfaction)
-
Part F
-
In your opinion, what emerging technologies (e.g., VR, voice assistants, AI interfaces) will significantly impact the future of HCI? Explain why.
-
Reflect on a digital product you use daily. Identify one aspect with good HCI design and one aspect with poor HCI design, explaining your reasoning.
-
-