Final Project Analysis Report
Final Project Analysis Report
Abstract
Human computer problem solving had a big contribution to humanity in the past years, it
become much more -easier to people to solve complex problem using computer.
In this paper, we take a visual analytics approach towards an operational model of the human-
computer system. In particular, the approach combines ideas from (human-centered) interactive
visualization and cognitive science. The model we derive is a first step on the path to a more complete
evaluated and validated model. However, even at this stage important design principles can be
extracted for visual analytics systems that closely couple automated analyses with human analytic
reasoning and decision-making. These improved systems can then be applied effectively to difficult,
open-ended problems involving complex data. Another advantage of this approach is that specific gaps
are revealed in both visual analytics methods and cognitive science understanding that must be filled in
order to create the most effective systems. Related to this is that the resulting visual analytics systems
built upon the well-developed human-computer model will provide testbeds to further evaluate and
Introduction
This paper presents a visual analytics approach towards a new human-computer model that
considers both the human and the computer working together as an integrated system. In particular,
the human-computer model embeds human cognition, including analytic reasoning and decision-
making, within a computational framework that includes automated analyses. Previous work has
considered the human-computer system without much detail on the computing side. Further, more
insight from cognitive science is required. This paper addresses both these issues and in doing so brings
together insights from interactive visualization, analytics, and cognitive science into a new model. The
new model leads to important design principles that can then be used to implement systems to attack
open-ended, challenging problems involving complex data. These systems and their applications can
then be evaluated, and the approaches tuned and improved. Since the connection is made to some
Republic of the Philippines
CAMARINES SUR POLYTECHNIC COLLEGES
Nabua, Camarines Sur
fundamental cognitive science principles, the systems also provide testbeds to further evaluate and
extend these principles. The next sections of the paper provide an overview of some main ideas from
cognitive science that are relevant to the human-computer model. This is followed by a discussion of the
new human-computer model derived from these insights. Design principles can be derived and enacted
based on this model. The new model also defines an enhanced approach to problem-solving through
externalizing knowledge and keeping the investigator in the cognitive zone. Finally, the discussion
reveals important next steps that should be pursued in order to operationalize the model.
Methodology
The methodological approach we used in our analysis report is qualitative. We used this
approach to discuss and make an analysis report about Human-computer problem-solving. Qualitative
research involves collecting and analyzing non-numerical data (e.g., text, video, or audio) to understand
concepts, opinions, or experiences. It can be used to gather in-depth insights into a problem or generate
Computer based problem solving is a systematic process of designing, implementing and using
programming tools during the problem solving stage. This method enables the computer system to be
more intuitive with human logic than machine logic. Final outcome of this process is software tools
which is dedicated to solve the problem under consideration. Software is just a collection of computer
programs and programs are a set of instructions which guides computer’s hardware. These instructions
need to be well specified for solving the problem. After its creation, the software should be error free
and well documented. Software development is the process of creating such software, which satisfies
The following six steps must be followed to solve a problem using computer.
Republic of the Philippines
CAMARINES SUR POLYTECHNIC COLLEGES
Nabua, Camarines Sur
Problem Analysis, Program Design - Algorithm, Flowchart and Pseudocode, Coding, Compilation and
Problem Analysis Problem analysis is the process of defining a problem and decomposing overall system
into smaller parts to identify possible inputs, processes and outputs associated with the problem. This
First, we need to know what problem is actually being solved. Making a clear statement of the
problem depends upon the size and complexity of the problem. Smaller problems not involving multiple
subsystems can easily be stated and then we can move onto the next step of “Program Design”.
However, a problem interacting with various subsystems and series of programs require complex
analysis, in-depth research and careful coordination of people, procedures and programs.
Before identifying inputs required for the system, we need to identify what comes out of the
system. The best way to specify output is to prepare some output forms and required format for
displaying result. The best person to judge an output form is the end user of the system i.e. the one who
uses the software to his benefit. Various forms can be designed by the programmer which must be
After having specified the outputs, the input and data required for the system need to be
specified as well. One needs to identify the list of inputs required and the source of data. For example, in
a simple program to keep student’s record, the inputs could be the student’s name, address, roll-
numbers, etc. The sources could be the students themselves or the person supervising them.
When output and inputs are specified, we need to specify process that converts specified inputs
into desired output. If the proposed program is to replace or supplement an existing one, a careful
evaluation of the present processing procedures needs to be made, noting any improvements that could
Republic of the Philippines
CAMARINES SUR POLYTECHNIC COLLEGES
Nabua, Camarines Sur
made. If the proposed system is not designed to replace an existing system, then it is well advised to
After the successful completion of all the above four steps one needs to see whether the things
accomplished so far in the process of problem solving are practical and feasible. To replace an existing
system one needs to determine how the potential improvements outperforms existing system or other
similar system. Problem Analysis Documentation Before concluding the program analysis stage, it is best
to record whatever has been done so far in the first phase of program development. The record should
contain the statement of program objectives, output and input specifications, processing requirements
and feasibility.
Program Design
The second stage in problem solving using computer cycle is program design. This stage consists
of preparing algorithms, flowcharts and pseudocodes. Generally, this stage intends to make the program
more user friendly, feasible and optimized. Programmer just requires a pen and pencil in this step in
which the tasks are first converted into a structured layout without the involvement of computer. In
structured programming, a given task is divided into number of sub-tasks which are termed as modules.
Each process is further divided until no further divisions are required. This process of dividing a program
into modules and then into sub-modules is known as “top down” design approach. Dividing a program
into modules (functions) breaks down a given programming task into small, independent and
graphical representation that explains the sequence of operations to be performed in order to solve a
problem under consideration. Standard Flowchart Symbols to express different operations in the
flowchart various standard symbols are used. All symbols are connected among themselves in order to
show the flow of information and processing. Flowchart Symbols Guidelines for Preparing Flowchart
Following guidelines must be followed while preparing the flowcharts: Standard symbols should be used
Republic of the Philippines
CAMARINES SUR POLYTECHNIC COLLEGES
Nabua, Camarines Sur
while drawing flowchart. Ensure that flowchart has START (or BEGIN) and STOP (or END). Flowchart
should be neat, clean and easy to follow. There should be no any ambiguity. The usual direction of
flowchart is from top to bottom or from left to right. The terminal symbol, that is, START/BEGIN or
STOP/END should have only one flow line. Only one flow line should come out from process symbol.
Only one flow line should enter a decision symbol, but two or three flow-lines, one for each possible
answer, can leave the decision symbol. If the flowchart is lengthy and complex connector symbol should
be used to reduce the number of flow lines. Avoid intersection of flow lines. Use annotation symbol to
Coding (Programming)
In this stage, process of writing actual program takes place. A coded program is most popularly
referred to as a source code. The coding process can be done in any language (high level and low level).
The actual use of computer takes place in this stage in which the programmer writes a sequence of
instructions ready for execution. Coding is also known as programming. Good program possess following
characteristics: Comment clauses in the program help to make the program readable and
understandable by people other than the original programmer. It should be efficient. It must be reliable
enough to work under all reasonable conditions to provide a correct output. It must be able to detect
unreasonable error conditions and report them to the end user or programmer without crashing the
Process Generally coding is done in high level language or low level language (assembly
language). For the computer to understand these languages, they must be translated into machine level
language. The translation process is carried out by a compiler/interpreter (for high level language) or an
assembler (for assembly language program). The machine language code thus created can be saved and
run immediately or later on. In an interpreted program, each program statement is converted into
machine code before program is executed. The execution occurs immediately one statement at a time
sequentially. BASIC is one of the frequently used interpreted language. In contrast to interpreter, a
compiler converts a given source code into object code. Once an object code is obtained, the compiled
programs can be faster and more efficient than interpreted programs. Compilation Process A source
Republic of the Philippines
CAMARINES SUR POLYTECHNIC COLLEGES
Nabua, Camarines Sur
code must go through several steps before it becomes an executable program. In the first step the
source code is checked for any syntax errors. After the syntax errors are traced out a source file is
passed through a compiler which first translates high level language into object code (A machine code
not ready to be executed). A linker then links the object code with pre-compiled library functions, thus
creating an executable program. This executable program is then loaded into the memory for execution.
The program documentation is the process of collecting information about the program. The
documentation process starts from the problem analysis phase to debugging and testing.
Conclusion
Human-computer interaction (HCI) is a multidisciplinary subject that focuses on computer design and
user experience. It brings together expertise from computer science, cognitive psychology, behavioural
science, and design to understand and facilitate better interactions between users and machines. Why is
it important? Employers like to see good problem solving skills because it also helps to show them you
have a range of other competencies such as logic, creativity, resilience, imagination, lateral thinking and
determination. It is a vital - skills for your professional and personal life. Solving problems means making
choices. Typically, effective problem-solving skills result in “happier, more confident, and more
independent” individuals. When children tackle problems on their own, or in a group, they become
resilient. They learn to look at challenges from a fresh perspective. Human-computer interaction allows
designers and other professionals understand every user's needs relating to technology. It shows that
not all users interact with technology in the same way. Complex problems A complex problem is one
that, at first glance, does not have an obvious, immediate solution. Computational thinking involves
taking that complex problem and breaking it down into a series of small, more manageable problems.
Each of these smaller problems can then be looked at individually. Next, simple steps to solve each of
the smaller problems can be designed. Finally, these simple steps are used to program a computer to
help solve the complex problem in the best way. Computers can be used to help solve problems.
However, before a problem can be tackled, the problem itself - and the ways in which it could be solved
Republic of the Philippines
CAMARINES SUR POLYTECHNIC COLLEGES
Nabua, Camarines Sur
- needs to be understood. Computational thinking helps with this. It allows us to take a complex
problem, understand what the problem is and develop possible solutions. These solutions can then be
References
[1] William Ribarsky. 20016. The Human-Computer System: Towards an Operational Model for Problem
Solving. Retrieved November 25, 2022 from
https://www.researchgate.net/publication/300408988_The_HumanComputer_System_Towards_an_Op
erational_Model_for_Problem_Solving
List of Collaborators
Johnlery E. Mirandilla
Abstract
Methodology