UNIVERSIDAD
EVANGELICA DE EL SALVADOR
FACULTAD
DE INGENIERIAS
INTEGINIERIA
EN SISTEMAS COMPUTACIONALES
TRABAJO FINAL INGLES CALL CENTER
PRESENTADO
POR:
Oscar Henríquez
DOCENTE:
Mauricio Muñoz Ortiz
ASIGNATURA:
Ingles Call Center
San Salvador, 21 de Mayo
de
2014
---------------------------------------------------------------------------------------------------------
INDEX
PARTE – I
Introduction
Personal
Presentation
CoverLetter
Resume
PARTE – II.
Enterprise Profile
Executive Summary
Mision/Vision/Values
Strengths,Weaks,Opportunities,Threats
Inbound calls Flow chart
PARTE – III
e-Translation ; Spanish into English
Conclusions
---------------------------------------------------------------------------------------------------------
PARTE – I
Introduction
The
present work aims to give a summary of everything seen and learned in English
call center stuff in the semester 01 2014 among these contents will see the
realization of a resume, the cover letter, translations of texts, the use of
tools online etc.
The
development of this document took place with documents and texts of the
collected during the cycle and will serve as a demonstration of the learning
achieved.
Personal Presentation
My
name is Oscar Henriquez, was born in San Salvador, El Salvador. I am
engineering student in computer science at the Evangelical University of El
Salvador. I previously studied at the ITCA and got a technical networks, which
I was to get my current job.
Between
my hobie this surf the internet, listen to music, read computer manuals and go
to the movies with my girlfriend.
I
work in the telecommunication company Tigo El Salvador as a NOC (network
operation center) Engineer, this work I absorbs long enough because the shifts
are rotating and work besides weekend.
I
really like the subject of English because much of material study of career in
English and see which is of vital importance also in my work... today all
platforms and computer systems are in this language which is considered the
universal language.
---------------------------------------------------------------------------------------------------------
CoverLetter
San Salvador, May 21
, 2014
Dear
Mr. Mauricio Funes
IT
Department IBM of LATAM , El Salvador.
San
Salvador, El Salvador Postal code 196756-5
Dear
Mr. Mauricio Funes:
In
regard to the position of ” Computer Engineer ” in the
newspaper of La Prensa Grafica de El Salvador , I am very
interested in this opportunity. Perhaps after reading this letter and enclosed
Résumé, you will agree that we have a mutually beneficial
reason
to meet. My credentials include:
*2 +years experience working in Programmer.
*I
have a track record of skills in computing and statistical data.
*Respected
leadership skills with training and work esperience in the field of Desktop Support
atmosphere and motivated people to work together.
*Experience
for archiving documents and carry statistical graphs
*The
emphasis on ordering and detail of my perfomance. The mission as a worker is to
adapt as quickly as possible and give all my best for the good of the
company.
I
maintained an excellent performance record (using only two sick days throughout
my 2-years ternure with the company and earned a reputation for dedication,
team work.
The
Computer Programmer sounds like an outstanding opportunity, and I would
welcome the chance for an interview to discuss your needs and outline my
strengths in person. You may reach me at (503) 7890-8947
Thank
you for your time and considerate of my RÉSUMÉ. And I look forward to speaking
with you.
Sincerely,
Yo
Oscar Henriquez
---------------------------------------------------------------------------------------------------------
Résumé
Oscar Armando Henriquez
Summary of skills
Informática
Server administration: Linux: Server configuration FTP, DNS, DHCP, Proxy,
Firewall, Iptables, Web server, Monitoring system Nagios/nagiosql, routing
static and dinamic Windows Server s FTP, DNS, DHCP, WEB server, Network
Monitoring system PRTG, SolarWinds, Whats Up, Traffic analisys, ISA Server
2004, active directory. Aplications Dreamweaver, firestarter, Microsoft Visio,
Microsoft Office, OpenOffice, virtualizacion.
Technical Skills
Network
administration::
2.
Configuring VLANs, static and dynamic routing with different protocols (RIP,
RIP v2, OSPF, IGRP and EIGRP), configuring WAN interfaces, Spanning Tree
Protocol, Multiple Spaning Tree, ACL settings, GRE tunnels, tunnels Cypto, VPN
site to site, Relay VPNs, HSRP, Etherchannels, basic MPLS, OSPF inter-area,
intra-area OSPF, Configuring BGP iBGP / eBGP, filtering routes based on
AS-Path, Prefix-lists, Route-map.
3.
Corporate Support of ADSL links, TDM, FR, ISDN, administration tools for TDM
devices, DSLAMS. 4. Extensive knowledge of outside plant with different
technologies, copper, FO, radio links.. 5. Installation and configuration of OS
Windows and GNU / Linux, etc. utility packages. support and email
configuration, Internet, Web hosting, email hosting. Packet utilization
Microsoft Office, Openoffice.org, Access, Publisher. 6. PHP programming language
(Bsico), configuration of VoIP equipment
Professional Experience
Company:
ITS Infocomunicacin, S.A.
Puesto:
Tcnico en Telecomunicaciones Funciones: Telecommunications Technician, Claro El
Salvador project.
Company:
ITS Infocomunicación, S.A.
Puesto:
Técnico en Telecomunicaciones Funciones: Telecommunications Technician, Claro
El Salvador project.
Company:
GSK Holdings
Puesto:
Soporte Técnico Funciones: International connections configuration
Company:
El Salvador Telecom
Puesto:
Supervisor CallCenter de soporte técnico Funciones: Supervisor Support Internet
and other services.
Company:
Squid Computers
Puesto:
Soporte técnico Funciones: Support and maintenance of computers, hardware sales
Company:
Atento El Salvador
Puesto:
Teleoperador de CallCenter Funciones: Telemarketer
EDUCATION
2012
– At the date
Systems
Engineer – 4er año - Universidad Evangélica de El Salvador, San Salvador
2011
– a la fecha
Technical
Engineering in Computer Systems - ITCA-FEPADE, Santa Tecla
2009
– 2010
Technical
Engineering in Computer Networks - ITCA-FEPADE, Santa Tecla
2006
- 2007
Systems
Engineering – 2º año - Universidad Francisco Gavidia, San Salvador
1998
- 1999
Instituto
Técnico EXSAL - Baccalaureate General Computer option
---------------------------------------------------------------------------------------------------------
PARTE – II. Enterprise Profile
Executive Summary
TIGO
El Salvador is a mobile phone service provider company owned by the
international mobile phone company Millicom International Cellular or just MIC.
On 2003 Telemovil changed their name to TIGO introducing their GSM Technology,
new mobile phone sources, new mobile phones, more coverage, new fresh look and
also new plans.
Right
now it is the number one mobile phone provider in El Salvador. There are also
other TIGO's in Latin America, in the Central American countries of Guatemala,
Honduras, and also in the South American nations of Colombia, Paraguay,and
Bolivia.
TIGO
Colombia is the biggest subsidiary of TIGO in the world with a base of 3
million subscribers
In
El Salvador's competitive mobile phone market TIGO's main rivals are:
The Spanish movistar
The Mexican Claro
The Caribbean Digicel
The American RED[disambiguation needed]
(this one does not offer GSM services. Just iDEN)
TIGO
offers the following cellphone brands in El Salvador.
Alcatel
/ i-mate / LG / Motorola
/ Nokia / SAMSUNG / Siemens / Sony
Ericsson / Palm Treo / VK Mobile
Mision/Vision/Values
Mission
We
are a cheerful and dynamic company and committed to approaching people through
timely, efficient and accessible communication.To this end we strive to have
the best human resources with greater attitude and the more high values.
Vision
We
are and we will continue to be the # 1 telecommunications company to exceed the
expectations of our users.
Values:
Integrity
in everything we do and how we do it.
Respect,
our customers, our employees, institutions, to our suppliers and
environment-friendly.
Passion,
in everything we do and all the services we offer
Strengths,Weaks,Opportunities,Threats
Inbound calls Flow
chart
---------------------------------------------------------------------------------------------------------
PART – III
e-Translation / panish into English
1.4 evolution of operating systems
The
first computers were capable of performing only a task or work at the same time.
This form of the computer operation often referred to as processing batch
(batch) of single-user.
Computer
running one program at a time, while processing the data in batches or groups.
In these first systems, users usually assigned their jobs to a computer center
introducing them in packages of punched cards. Often had to wait for hours, and
even days, before their results printed return to their desks.
Software
systems known as operating systems were developed to make easier the use of the
computer. The first operating systems managed the smooth transition between
tasks. This it minimized the time necessary so computer operators to pass a
task to another, and therefore It increased the amount of work, or the flow of
data that computers could process.
As
computers became more powerful, it became evident that a process batch for a single
user rarely uses computer resources efficiently, due to the time that is offloading
waiting for slow input/output devices to complete their tasks. It was thought
that it was possible to carry out many tasks or jobs which could share the
resources of the computer and use more efficient for this. This is known as
multiprogramming. Multiprogramming means operation "simultaneous" of
many tasks inside the computer (computer shares its resources between the) jobs
that compete for your attention). The first operating systems with
multiprogramming, users had yet to submit their papers by punch-card packs and
wait hours or days for their results.
In
the Decade of the 1960s, many universities and industry groups marked the
directions of time-sharing operating systems. Timeshare is a special case of
multiprogramming, in which, users accessing the computer through Terminal; in
general, devices composed of a keyboard and a monitor. In a typical computer
time-sharing system there can be dozens or even hundreds of users sharing the
computer at the same time. The computer actually does not execute the processes
of all users at the same time. This makes the work so fast that it may provide the
service several times per second to each user. As well, the users programs
apparently run simultaneously. An advantage of the timeshare is that the user
receives answers almost immediate requests, instead of having to wait for the
results for long periods, as in the beginning of computing.
1.5 computing, distributed and
client/server
In
1977, Apple Computers popularized the phenomenon of personal computing. At the eginning it was the dream of all amateur.
Computers became economic enough so people could buy them for your personal use
or for business. In 1981, IBM, the world's largest seller of computers, He
introduced the IBM PC. Literally, from the evening to the morning, the personal
computer was positioned in businesses, in industry and in government
institutions.
These
computers were "independent" (people made their work on your own
machine and) transporting your disks from one side to another to share
information). Although the first personal computers they were not powerful
enough to share the time between many users, these machines they could be
interconnected through networks, sometimes through telephone lines and other
networks local area (LANs) within the company. This resulted in the phenomenon
known as distributed computing, in which the computer of the company, rather
than be performed inside a computer center, is
It
is distributed through networks to sites where the work takes place. Personal
computers they were powerful enough to handle the requirements of computation
of individual users, and manage electronically the basic tasks of communication
that involved the transfer of information from one computer to another.
Current
personal computers are so powerful as a million-dollar machines of just a
decade. Provide the most powerful desktop machines (called workstations) the
user enormous capacities. The information is shared easily across networks computers,
where some computers called file servers provide a place common storage for
programs and data that can be used by client computers distributed through the
network; Hence the term of client-server computing. C, C++ and Java are
languages of programming widely used to create software for operating systems,
computer networks and for distributed client/server applications. The most
popular operating systems such as UNIX, Linux, OS X Mac and Windows provide the
kinds of capabilities that we explain in this section.
1.6 machine languages, languages
assemblers and high level languages
Programmers
write instructions in different programming languages, some of these languages computer,
includes them directly while others require intermediate steps of translation.
In currently used hundreds of languages of computing, which are divided into
three general types:
1. machine
languages.
2. languages
assemblers.
3. high
level languages.
Any
computer can be understood directly only their own language machine. Language machine
is the 'natural language' of a computer in particular, and is defined by the
hardware design
This
computer. In general, machine languages consist of strings of numbers [that
finally] [are reduced to a few (1) and zeros (0)] that instruct the computer to
perform its most basic perations, one by one. Machine languages are dependent
on the machine, i.e. a machine language in particular it can be used only on
one type of computer. Machine languages are difficult of understand for humans,
as you can see in the following section machine language programs, the which
adds the payment of overtime to a base salary, and stores it in a gross salary:
+
1300042774
+
1400593419
+
1200274027
Programming
in machine language was too slow and tedious for most developers. Instead of
using strings of numbers that computers could understand directly, the programmers
began to use English abbreviations to represent the basic operations of the computer.
These English abbreviations formed the basis of the languages assemblers.
Programs translators called assemblers were developed to convert programs in
Assembly language to language machine at the speed of the computer. The next
section shows a program in Assembly language that also adds payment per hour
extras a base salary and stores the result in a salary gross, but more clearly
than its equivalent in machine language:
LOAD
SUELDOBASE
ADD
SUELDOEXTRA
STORE
SUELDOBRUTO
Although
this code is clearer to humans, will be incomprehensible to computers, until
the assemblers translate it into machine language. The use of computers grew
rapidly with the arrival of the assemblers languages, but These still require
many instructions to carry out easier tasks them. To speed up the process programming
languages of high level, where individual instructions have been developed to perform
important tasks. Alos programs translators that convert programs written in
high level languages call machine language, compilers. High level languages
allow developers write instructions that are very similar to the common
English, and contain common mathematical notation. A Payroll program written in
a high-level language may contain a statement such as the following:
sueldoBruto
= sueldoBase + sueldoExtra
Obviously,
high-level languages are much more advisable, from the point of view of the
programmer, that languages machine and assembler. C, C++ and Java are the most
powerful high level languages, and more widely used.
process
of a program written in high level language machine language can take a
considerable time. Programs interpreters were developed so that they could run
programs high level without having to compile these programs to machine
language. Although the execution of the compiled programs is faster that
interpreted programs, performers are popular in environments development of
programs, in which programs are recompilan as frequently is They added new
features and correcting the errors. Once it develops a program, a version compiled
you can run more efficiently.
1.7 FORTRAN, COBOL, Pascal and Ada
Hundreds
of high-level languages have been developed, but only some have achieved wide
acceptance. In the 1950s, IBM Corporation developed FORTRAN (FORmula
TRANslator, translator of formulas) to be used in scientific applications and
engineering that required complex mathematical calculations.
Currently,
FORTRAN is used widely, particularly in engineering applications.
COBOL
(COmmon Business Oriented Language, common business-oriented language) was
developed in 1959 by computer manufacturers, the Government and the users of
computers in the industry. COBOL used for commercial applications that require
a precise and efficient handling of large quantities data. A considerable
amount of business software is still programmed in COBOL.
During
the 1960s, many of the major initiatives for development of software found severe
difficulties. The itineraries of software is usually delayed, costs went to a
large measure the budgets, and the finished products were not reliable. People
began to realize of that software development was a much more complex activity
than they had imagined. Activities research over the past decade they resulted
in the evolution of structured programming (a disciplined method to write
clear, easy-to-fix programs, and more easy-to-modify).
One
of the most tangible results of this research was the development of the
programming language Pascal by Professor Niklaus Wirth, in 1971. Pascal, whose
name is due to the anniversary of the eighteenth century anniversary of the
birth of the philosopher and mathematician Blaise Pascal, was designed for the
teaching of programming structured in academic environments, and immediately
became the favorite programming language at several universities.
Unfortunately, the language lacked many of the features needed
for
use in commercial, industrial and Government applications, so it has not been
very
accepted
in these environments.
The
Ada programming language was developed under the auspices of the Department of
Defense of the United States (DoD) during the Decade of the seventies and the
early eighties. Hundreds of languages were used to produce the sets of software
for command and massive control of the Department of Defense. The Department of
Defense wanted a single language which could cover most of their needs. The
name of the language is in honor of Lady Ada Lovelace, daughter of the poet
Lord Byron. To Lady Lovelace He is credited with having written the first
computer program in the world, in the early 1800s (for the analytical engine, a
computer created by Charles Babbage device). One of the important
characteristics ADA is known as multitasking; This allows developers to specify
that several will occur tasks in parallel. Some of the most popular high-level
languages that we have explained (including C and C++) usually allow the
programmer write programs that perform only an activity at the same time. Java,
using a technique called multithreading, allows programmers to write programs activities
in parallel.
1.8 C history
C
evolved from two previous programming languages, BCPL, and B. In 1967, Martin
Richards developed BCPL as a language to write software for operating systems
and compilers. Ken Thompson, in his language B, modeled many of the features of
C, following the development of its counterpart in BCPL, and 1970, used B to
create early versions of the UNIX operating system at Bell Labs, on a DEC PDP-7
computer. BCPL and B were both "untyped" languages (each piece of
information was a "word" in memory and, for example, the work of
processing an element as a whole number or a number real, was responsible for
the programmer). The C language evolved from B; This evolution was conducted by
Dennis Ritchie in the laboratories Bell and, in 1972, was implemented on a DEC
PDP-11 computer. C uses many important concepts BCPL and B when you add data
types and other characteristics. Initially, C became popular as language
development for the UNIX operating system. Currently, the majority of operating
systems they are written in C or C++. C is available for the majority of
computers, and is independent hardware. With a careful design, it is possible
to write programs in C that are portable to most computers. End of the 1970s, C
evolved into what is now known as "Traditional C", "C classic",
or"Kernigham and Ritchie C". The publication that in 1978 Prentice
Hall did Kernigham book and Ritchie, the C programming language, attracted much
attention of the people to that language. This publication became one of the
texts of computing most successful of all time. The extensive use of C for
different types of computers (sometimes called platforms of) hardware)
resulted, unfortunately, in many variants. These were similar, but often
inconsistent, the It became a serious problem for developers who need to write
programs that it could run on different platforms. Then it became apparent the
need for a standard version of C. In 1983, the X3J11 Technical Committee under
the supervision of the American National Standards Committee was created on
Computers and Information Processing (X 3), to "provide a clear language
and independent definition of the" computer". In 1989, the standard
was approved; This standard was updated in 1999. The standard document It is
known as INCITS/ISO/IEC 9899-1999. You may request a copy of this document to
the American National Standards Institute (www.ansi.org) in
webstore.ansi.org/ansidocstore.
Tip
of portability 1.1
Since
C is a widely available, platform-independent, and standardized, language
applications written in C often can run on a wide range of computer systems
with very few or no modification.
[Note: many of these Tips of portability to highlight techniques that will help you write will include] programs that can run, with little or no modification, on a variety of computers. Also We highlight the best practices of programming (practices that can help you write programs (more clear, understandable, easy to maintain and easy to test and debug, i.e., debug), errors common programming (errors that are careful, so that it does not commit them in their programmes), Performance tips (techniques that will help you to write programs that run faster and who) use less memory), Tips to prevent errors (techniques that will help you to debug your programs,and most importantly, techniques that will help you to write error-free programs from the beginning) and observations of software engineering (concepts that affect and improve the overall architecture and the) quality of a system software, and in particular, a large number of systems). Many of these techniques and practices are only guides; without a doubt, you should develop your own style of programming.]
1.9. the standard C library
As
we see in Chapter 5, in C programs consist of modules or parts called
functions. You can programming all the functions you need to form a program in
C, but the majority of programmers they take advantage of the rich collection
of existing functions within the called c standard library In addition actually
there are two keys to learn how to program in C. The first is to learn the C
language itself, and the second is to learn how to use the functions in the
standard library. Through the text, we will explain many of these features. P.
J. Plauger, The Standard C Library, book a reading is a must for those
programmers who need to deeply understand the functions of the library, how to
implement them and how to write code that is portable.
The
text encourages a method of construction by blocks to create programs. Avoid
reinventing the wheel.
Use
existing parts, this is called software reuse, and is key to the field of
programming object-oriented, as we will see in chapters 15 to 30. When set in
C, usually you will use the following building blocks:
•
Functions of the standard c library
•
Functions created by yourself.
•
Functions created by others and available to you.
The
advantage of creating your own functions is that you will know exactly how they
work. It will be capable of examine the code in C. The disadvantage is the time
and effort that involves the design and development of the new functions.
If
you are using existing features, you can avoid the reinvention of the wheel. In
the case of standard functions ANSI, you know that they are written with great
care, and knows that, because who uses functions that they are available
virtually in all implementations of ANSI C, their programs will have large chance
of being portable.
1.1
performance tip
Use
the ANSI standard library functions, instead of writing their own similar
functions, can improve the performance of the program, since these functions
are written carefully to an execution efficient.
Portability
1.2 tip
Use
the ANSI standard library functions, instead of writing their own similar
functions, can improve portability, due to which these functions are virtually
used in any ANSI C implementation.
1.10 C++
C++
is a C improved, developed by Bjarne Stroustrup at Bell Labs. C++ provides a set
of characteristics that "Polish" to the C language; However, the most
important thing is that it provides capabilities for object-oriented
programming. C++ has become the dominant language in the industry and
universities.
Objects
are, essentially, reusable software components that model real elements. A revolution
is brewing in the software community. Write fast software, correct and
economically It is still an elusive goal, in an era in which demand new and
more powerful software is to the upside.
Software
developers are discovering that using a methodology of design and
implementation modular and object oriented can make more productive groups of
software development, that using popular previous programming techniques. Many
people think that the best current educational strategy is to master C, and
later studying C++. Therefore, chapters 15 to 23 of this booklet, we will
present a summary explanation of C++, which drew from our book C++ how to
program. We hope that you find it valuable and it motivates you so at the end
of this text study C++.
1.12 BASIC, Visual Basic, Visual
C++, C# and .NET
The
BASIC (Beginner´s all-purpose Symbolic Instruction Code) programming language
was developed to mid-1960s by professors of the Dartmouth College John Kemeny
and Thomas Kurtz, as a language for writing simple programs. The main purpose
of BASIC was to familiarize the beginners with programming techniques. Visual
Basic was introduced in 1991 by Microsoft to simplify the process of developing
applications for Windows.
Visual
Basic. NET, Visual C++ .NET and C# were designed for the new platform of rogramming
call Microsoft. NET. These three languages use the powerful library of reusable
components of software called Framework Class Library (FCL).
In
a way comparable to Java, .NET platform allows the distribution of applications
based on the Web to many devices (including mobile phones) and desktop. The
programming language C# was designed specifically for the platform .NET as
language that would allow to developers migrate easily to. NET. C++, Java and
C# are all rooted in the language of C. programming
1.13. the key trend of software:
object technology
One
of the authors of this book, HMD, recalls the great frustration that felt the
companies in development of software, especially those carried out projects on
a large scale. During the summers of his years student, HMD had the privilege
of working in a leading company in the manufacture of computers as part of the
time-sharing and virtual memory operating systems development teams. This It
was a great experience for a college student. However, in the summer of 1967,
the reality became When the company "decided" to produce commercial
system in which hundreds of people had worked for many years. It was difficult
to fine-tune the software. The software is a "complex affair".
Improvements
to software technology began to appear with the benefits of the so-called
programming structured (and disciplines including analysis and structured
systems design) It was performed in the 1970s. But it was until oriented
programming technology to objects became popular in the 1990s, that software
developers felt that they had the tools needed to make major advances in the
software development process.
In
fact, object technology dates from the mid of the 1970s. The programming
language C++, developed in AT & T by Bjarne Stroustrup at the beginning
of the Decade of the eighties, is based in two languages: C, which was
initially developed at AT & T in the early 1960s for implementar the
operating system UNIX, and Simula 67, a programming language for simulation
developed in Europe and released in 1967. C++ absorbed the characteristics of C
and added capabilities to simulate for create and manipulate objects. Neither C
nor C++ was created originally to be used outside laboratories AT & T
research. However, they developed quickly. What objects are and why they are so
special? Object technology is actually a scheme of compaction that creates
useful units of software. These are large and highly focused areas particular
application. There are objects of date, time, checks, invoices, audio, video,
of file, registry and more. In fact, almost any noun can be reasonably as an
object.
We
live in a world of objects. Just look to your around. There are automobiles,
aircraft, animals, people, buildings, traffic lights, elevators, and other
things. Before the emergence of the languages oriented to objects, the languages
of programming (such as FORTRAN, Pascal, Basic, and C) were based on actions
(verbs), instead things or objects (nouns). Programmers, who live in a world of
objects, primarily scheduled through the use of verbs. This paradigm shift
complicated writing programs. Now, with the availability of languages such as
Java and C++ object-oriented programmers still living in a world that is
object-oriented and can be programmed in an object-oriented manner. This is a process
more natural programming, and it has resulted in a higher level of
productivity.
A
fundamental problem with procedural programming is programming units It does
not reflect in a simple and effective real-world entities; Thus, these units
are not particularly reusable. Very often, programmers should start
"over" each new project and write similar code 'from scratch'. This
means an expenditure of time and money, since people have to "reinvent the
wheel" repeatedly. Through objects, created institutions of software
technology (called classes), if designed properly, tend to be far more reusable
in future projects. With the libraries of reusable components, such as the MFC
(Microsoft Foundation Classes) and the created by Rogue Wave and many other
software development companies, you can reduce the effort required to implement
certain kinds of systems (compared to the effort that would have required for) Reinventing
these capabilities in new projects).
Some
companies indicate that the reuse of software is not, in fact, the main benefit
obtained object-oriented programming. Rather, mentioned that the object
oriented programming It tends to produce software that is more understandable,
better organized and easy to maintain, modify and correct. This may be
important since it is estimated that 80% of the costs of software are not
associated with the efforts of the original to develop software, but which are
associated with the continuous evolution and maintenance of the software during
its useful life.
Any
that are benefits received from object-oriented programming is clear that This
will be the key programming methodology in the following decades.
1.14. basic concepts of a typical C
programming environment
In
general, c systems consist of three parts: a program development environment,
language and the standard c library The following explanation defines a typical
development in C as shown in Figure 1.1.
Programs
in C usually go through six phases to run (Figure 1.1). These are: editing, pre-processing,
compile, link, loading and execution. Although this is a generic text of C
(written for) independently of the details of an operating system in
particular), in this section we focus in a C based on UNIX system. [Note: this
book programs will run with little or no modification] some in the most common
systems of C, which include Windows-based systems Microsoft.] If you do not use
a UNIX system, refer to the manuals of your system, or ask your teacher How to
carry out these tasks in your environment. The first phase is to edit a file.
This is carried out using an editing program. Two widely used on UNIX systems
editors are vi and emacs. The software packages for environments integrated
programming c++, such as Microsoft Visual Studio and Borland C++ Builder, they
contain editors that are integrated within the programming environment. We
assume that the reader knows How to edit a program. The programmer writes a
program in C using an editor, makes corrections if It is necessary, and then
stores the program in secondary storage, such as a disk device. Programs in C
names must end with the extension. c. Then the programmer introduces the
command to compile the program. The compiler translates the program in C code
in machine language (also known as object code). In a system of C, is automatically
run a preprocessor program before the start of the stage of translation of the
compiler. The C preprocessor is due certain special command called the
preprocessor directives, the which indicate that certain manipulations to be
performed in the program before compiling. In general, these manipulations are
to include other files within the file so that they are compiled, and to
perform various text replacements. In the first chapters we will explain the
most common directives the preprocessor, and give a detailed explanation of the
characteristics of the preprocessor in chapter 13 The compiler invokes the
preprocessor automatically, until the program is converted to language machine.
The next phase is called a link. Usually in C programs contain references to
functions and data defined somewhere, such as standard libraries or libraries,
private groups developers working on a project in particular. In general, the
code object produced by the C compiler contains "holes", due to these
missing parts. A linker binds the object code with the code corresponding to
the missing functions to produce an executable image (no missing parts). In a
typical UNIX system, the command to compile and link a program is cc. To
compile and link a program called bienvenido.c type:
CC
bienvenido.c
at
the UNIX prompt, and press enter (Intro) (or return). [Note: the UNIX commands
are sensitive] case-sensitive, make sure you type the cs how tiny and that the
letters of the name file they are uppercase or lowercase, as the case may be.]
If the compilation and the link of the program take place successfully creating
an a.out file This is an executable image of our bienvenido.c program.
The
next phase is called load. Until the program can run, it must be loaded in memory.
This is carried out by means of the charger, which takes the executable image
of the disk and transfer it to the memory. Also the additional components of
the shared libraries that support are loaded the program.
Finally,
computer, under the control of the CPU, run the program, an instruction at the
same time. For load and run the program on a UNIX system, type a.out at the
UNIX prompt, and press ENTER.
Programs
do not always work the first time. Each of the procedures may fail due to
different errors, which we will explain. For example, a running program could
try a division between zero (an illegal operation on computers, as well as
arithmetic). This would cause that computer will display an error message. The
programmer would then return to the editing phase, would make the necessary
corrections and would proceed with the remaining phases to verify that
corrections work properly.
Most
of the programs in C introduced and/or throw data. Certain functions in C take
your input from stdin (standard input flow) which is, in general, the keyboard,
but the stdin can be connected to another device. Most data are dumped to
stdout (standard output stream) the which is usually the monitor, but the
stdout can be connected to another device. When we say that a program prints a
result, we usually mean that the result is displayed on the monitor. The data
can be thrown to other devices such as disks and printers of high speed. It
exists also a standard flow of errors known as stderr. The stderr stream
(usually associated with) the monitor) is used to display the error messages.
It is common for users to allocate the output data normal, i.e. the stdout to a
device other than the monitor and maintain the assigned stderr to the monitor,
so that the user can be informed of errors immediately.
1.15 hardware trends
The
community of programmers develops along with the continuous flow of dramatic
advances in hardware, software and communication technologies. In general,
every year people expect to pay more for the most of the services and products.
The opposite has been the case in the fields of computers and communications, especially
with regard to the costs of maintenance of these technologies. For many
decades, and without expectations of change one in the near future, hardware
costs have decreased from quickly, if not as precipitous. This is a phenomenon
of technology. Every one or two years, coatcities of computers tend to double
while computer prices continue to fall. The decrease in bite of the computer
systems cost/performance ratio is due to the growing speed and memory capacity
in which the computer executes its programs, the exponential increase the
amount of secondary memory (such as the disk storage) which have to store programs
and data for a long time, and to the continuous increase in the speed of
process (speed to which run the programs on computers, i.e. the speed which do
their job).
The
same growth has occurred in the communications, and its costs have also gone
into a tailspin, especially in recent years with the enormous demand for
communications bandwidth, which attracts a huge competition. We do not know
other fields in which technology moves so quickly and the costs decrease in the
same way. When in the decades of the sixties and seventies exploded the use of
the computers, spoke of the great improvements in human productivity that computers
and communications they would bring with them. However, these improvements have
not materialized. Companies spent big sums of money on computers, and certainly
used them efficiently, but were not made their expectations in terms of
productivity. It was the invention of the microprocessor in chip technology and
its wide use at the end of the Decade of the seventies and the eighties, which
laid the basis for the the current productivity improvements.
1.16 history of Internet
At
the end of the 1960s, one of the authors (HMD) of this book was a graduate
student of the MIT. His research within the project Mac at MIT (now the
computer science lab) the House of the World Wide Web Consortium), were
sponsored by ARPA (Advanced Research Projects Agency of the Department of
Defense). ARPA sponsored a Conference in which some dozens of students of the project
met at the University of Illinois at Urbana-Champaign, to meet and share their
ideas.
During
this Conference, harp released the draft connected network to the main computer
of a dozen universities and research institutes sponsored by ARPA. They are
connecting through lines of communication operating, then, at the incredible
speed of 56 KB (i.e. 56,000 bits per second), this in a time when most of the
people (of the few that could be him) connected through telephone lines to
computers to a range of 110 bit rate per second. HMD remember vividly the
excitement at that Conference. Harvard researchers talked about communicating the
Univac 1108, "a supercomputer" of the University of Utah, with
nationwide, to handle the calculations related to inquiries about graphics
computer. They said many others intriguing possibilities. Academic research was
about to take a giant step forward. Shortly after this Conference, harp
proceeded with the implementation of what soon turned into ARPAnet, the
grandfather of the current Internet.
Things
were different from what they had originally planned. Instead of that the main
benefit It was that researchers could share their computers, it became evident
that the main benefit of ARPAnet was going to be allow researchers to
communicate is a quick and easy way among them, through what is called
electronic mail (e-mail). This is true even in the current Internet, where
email facilitates the communication of all kinds of people around the world. One
of the main goals of harp, with respect to the network, was to allow multiple
users to send and receive information at the same time and on the same routes
of communication (such as a telephone line). The network operated by a
technique called packet exchange, in which digital data It was sent in small
packages. These packages contained data, address information, information for
error handling and the sequence information. The address information used for set
the path of packets to their destination. The sequence information was used to
help to accommodate packets in their original order (which, due to the complex
mechanisms of routing, in reality You can ride on disorder). Many packages were
mixed in the same lines of communication. The technique of packet exchange
significantly reduced transmission costs, compared with the costs of dedicated
communication lines.
The
network is designed to operate without central control. This meant that if a Protocols
for communication via ARPAnet became known as TCP (Transmission Control
Protocol). TCP guaranteed that messages enrutaran properly from the sender to
the recipient, and that the message arrived intact. In parallel with the first
evolution of the Internet, companies from around the world were installing your
own both intra-firm (within the company), and inter-company communication
networks (between enterprises). Then appeared a large number of hardware and
software for networks. One of the challenges was to achieve intercommunication.
HARP attained it by means of the developed IP (Internet Protocol), and This
created the real "network of networks"; the current architecture of
Internet. The combination of both protocols It is called TCP/IP.
Initially,
the use of the Internet was limited to universities and research institutes; later,
the militia became an important user. At some point, the Government permitted
access to Internet for commercial purposes. Input, there was suspicion on the
part of military communities and research, they thought that response time
would be poor, as "the network" loading of users.
In
fact, has happened otherwise. Business people quickly realized that if used Indeed
the Internet could refine their operations and provide new and better services
to their customers. As a result, business executives spent large amounts of
money to develop and improve Internet. This generated a fierce competition
among providers of communication, hardware devices and software to meet the
demand. The result is that the bandwidth (i.e., transmission capacity the lines
of communication information) over the Internet has grown tremendously and
costs have gone into a tailspin. At present, countries around the world know
that the Internet is crucial for their prosperity Economic and competitiveness.
1.17 history of the World Wide Web
The
World Wide Web enables computer users, locate and view documents based on
multimedia (i.e. documents with text, graphics, animation, audio, or video) on
almost any topic. Although Internet It was developed more than three decades
ago, the introduction of the World Wide Web is a relatively recent event. In
1990, Tim Berners-Lee, Member of the CERN (European Organization for Nuclear
Research) developed the World Wide Web and other communication protocols that
form its skeleton. Both the Internet and the World Wide Web will be on the list
of the most important creations of mankind. In the past, the majority of
computer applications ran on 'independent' computers, i.e., computers that were
not connected among themselves. Current applications can be written to
communicate to hundreds of thousands of computers around the world. Internet
combines the technologies of communication and computing. Makes our work
easier. It makes information available in a way Instant and convenient
worldwide. It enables individuals and small businesses can exposed to the
world. It is changing the nature of the way in which businesses are conducted.
The people can find the best prices and virtually any product or service.
Communities with special interests can keep in contact with each other.
Researchers may give notice instantly the latest developments around the world.
Conclusiones
The achievement with the
apparently content has improved our skills in the English-speaking, both the
teaching material such as the use of technological tools we allowed achieve the
objective at the beginning of the cycle.
We understood the utility
that we must give this language throughout our career and in the professional
world to which we have as a goal.