BIT 100 Assignment 1
BIT 100 Assignment 1
BIT 100 Assignment 1
Course: BIT100
Assignment 1
2
Define a Computer
A computer is an electronic machine that gathers information, stores it, processes it according to
user instructions, and then returns the result.
History of Computer
In the history of computer development, the advancement of modern computers is always
referred to as generations of computing devices.
First Generation of Computers
This was from the period 1942-1955. They relied machine language to perform operations and
could only solve one problem at a time. They used vacuum tubes for circuitry and magnetic
drums for memory, and were often enormous, taking up entire rooms.
Second Generation of Computers
This was from the period 1955-1964. They relied on assembly languages (COBOL and
FORTRAN) to perform operations. They advanced from vacuum tubes to transistors. This made
the computers smaller, faster and more energy-efficient.
Third Generation of Computers
This was from the period 1964-1975. They developed integrated circuit which increased the
speed and efficiency of computers. High-level programming languages such as FORTRON-II to
IV, COBOL, and PASCAL PL/1 were employed here.
Fourth Generation of Computers
This was from the period 1975-Present. The invention of the microprocessors brought along the
fourth generation of computers. Programming languages such as Java, C++, C were used in this
generation.
Fifth Generation of Computers (Present and Beyond)
The defining aspect of this generation is artificial intelligence. The utilization of parallel
processing and superconductors is helping to make artificial intelligence a reality. Fifth-
generation computers use ULSI (Ultra Large-Scale Integration) technology.
3
Components of a Computer
A computer device is made-up of various components which aid in its effective processing and
functioning. The computer system contains three main components which include; Input Unit,
Output Unit and Central Processing Unit.
Memory Unit
Input Unit Output Unit
Control Unit
Arithmetic
and Logic
Unit
Input Unit
Input Unit is used to transmit control signals and raw data into the information processing system
by the user before computation and processing. All the instructions and data received from the
input unit devices are transformed into binary code (primary memory acceptable format). Some
of the important input devices;
a) Keyboard- It contains keys to help input data to the computer. The keys are
subdivided into:
Function keys- they are labelled as F1 to F12 and each function is used to
perform a specific task.
Typing keys- they include numbers, letters, punctuation and symbol keys.
Numeric keypad- They contain number keys
Control keys-They are used in combination with other keys or alone to
perform specific tasks.
b) Mouse-It sends corresponding signals to the Central Processing Unit when the mouse
buttons are clicked. Mouse devices can be further categorized into three groups which
include, mechanical, optomechanical, and optical.
c) Light pen-It is used to draw pictures or select an item from a menu item on the
monitor screen. It consists of a photocell and optical system placed in a small tube
that detects the screen location and transmits the corresponding signal to the central
processing unit.
d) Scanner- It is a device that captures images from the source and converts them into
digital form which are then stored in a computer.
4
Output Unit
Output unit collects information from the central processing unit and then transmits it to a device
or an external storage in hard or soft processed form. The output unit provides the final result
once all the processing is done within the mechanism of a device. Some of the common output
devices are:
a) Monitor- It displays information in text or pictorials form. The flat-panel display
monitor is categorized into emissive and non-emissive displays.
b) Printer- it is utilized to print information on paper.
c) Speaker- It receives audio signals from the processor and outputs it as sound waves.
In this phase, project managers examine the terms of the project. This can include selecting a
particular project to work on, creating a schedule with target goals, creating the project’s team
and leadership structure or calculating labor and material costs. During this stage, an
organization decides whether to allocate resources should be allocated to the development
Also, at this stage, the scope of the proposed system is determined, the project manager and the
initial team of system analysts produce a specific plan.
2. System Analysis
System analysis involves studying the organization’s information systems and current procedures
used to perform organizational tasks.
System analysis contains two subphases, which include;
I. Requirement Determination
It includes a thorough study of any systems in the organization that might be
improved or replaced as part of the project.
II. Requirements Structuring
It involves analysts studying the requirements and structuring them according to
inter-relationships and eliminate any redundancies (Radack, 2009).
At the end of this phase a Software Requirement Specification (SRS) document
that specifies the hardware, software, functional and network requirement of the project is
prepared.
3. System Design
During this phase, analysts transform the description of the recommended solutions into a logical
structure. For example, the SRS document developed in the previous phase is transformed into a
logical design in this phase. The proposed design is then reviewed to ensure that the final design
meets all the requirements stated in the SRS document. After the design is reviewed, a design
document which be utilized in the next phase is prepared.
4. Systems Implementation
During this phase, analysts turn the design document into a working system that is tested and
then put to use.
System implementation includes:
I. Coding
During coding, programmers develop programs that make up a system.
7
II. Testing
During testing, analysts and programmers tests the systems to identify defects and
errors and correct them before the software is released. A test report which includes test
tasks such as testing criteria and case generation is prepared.
III. Installation
During installing, the system becomes part of the organization.
introduced in 1993.
1994 The concept of CSS was started by Håkon
Wium Lie in 1994. W3C introduced the
specification for CSS in 1996.
1995 Java was developed by James Gosling and
other developers at Sun Microsystems, and
was first introduced to the public in 1995.
1995 The object-oriented programming language
Ruby developed by Yukihiro Matsumoto was
first released in 1995.
1995 The experimental, multi-paradigm Curry
programming language was introduced by
Michael Hanus, Herbert Kuchen, and Juan
Jose Moreno-Navarro in 1995.
1995 Racket is a general purpose programming
language developed by Matthias Felleisen in
1995.
1995 A server-side interpreted scripting language,
PHP was developed by Rasmus Lerdorf
starting in 1994 and released on June 8, 1995.
1995 Originally named LiveScript when released in
November 1995, JavaScript was developed by
Brendan Eich and renamed as such in
December 1995.
1996 Introduced in 1996, OCaml is an object-
oriented version of the Caml programming
language.
1998 XML is a markup language, with the
specification for XML being developed by
W3C and recommended on February 10,
1998.
1999 Development of the D programming language
started in December 1999. D is a higher level
language compared to C++.
2000 Based on C++ and Java, the C# programming
language was developed by Microsoft and
introduced in June 2000. C# became an ISO
standard in 2003.
2003 The object-oriented programming language
Scala was introduced in 2003.
2005 Don Syme developed the F# programming
language and Microsoft first introduced it in
2005.
2007 The Go programming language was
developed at Google starting in 2007. It was
completed and introduced to the public in
11
2009.
2007 Rich Hickey developed the Clojure
programming language and released the first
version in 2007.
2008 Introduced in 2008, Nim is a programming
language used to develop software requiring
strict limits on how system memory is used.
2008 The object-oriented programming language
Reia was introduced in 2008.
2010 The multi-paradigm CoffeeScript
programming language, capable of being
compiled into JavaScript, was officially
released in 2010.
2011 Google developed the open source web-based
Dart programming language, introducing it to
the public in October 2011.
2012 Julia was developed by Jeff Bezanson, Alan
Edelman, Stefan Karpinski, and Viral B. Shah
and released in 2012. It is a high-level
programming language used for scientific
computing.
2014 Babel is a general-purpose programming
language developed in 2014 and used to
create programs for conserving battery life
and system resources on devices.
2014 Created by Apple and released on June 2,
2014, the Swift programming language helps
create programs and apps for iOS, macOS, the
Apple Watch, and AppleTV.
2015 Graydon Hoare started development of the
Rust programming language around 2010.
After contributions from hundreds of people,
it was officially released as version 1.0.0
alpha by Mozilla research on January 9, 2015.