IT-111-Module-01-Industry-in-the-Profession.pdf

Full Transcript

1 IT 111 – Introduction to Computing I. Chapter 1: Industry in the Profession II. Introduction The industries that supply computer goods and services are in a cont...

1 IT 111 – Introduction to Computing I. Chapter 1: Industry in the Profession II. Introduction The industries that supply computer goods and services are in a continual state of change as new products appear and old products are discontinued; as corporations form, merge, and die; as corporate leadership shifts; as consumer’s buying habits evolve; and as prices steadily decrease. Before you venture out to buy computers, peripheral devices, or software; before you commit yourself to a computer career; or before you buy stock in computer companies, you should arm yourself with some basic knowledge about the computer and information technology industries. In this module, you will learn about the scope and economics of these dynamic industries. III. Learning Outcome By the end of this module, students will be able to: 1. Differentiate computer industry with information technology industry; 2. List the different companies included in the IT industry; and 3. Discuss and enumerate the different profession and careers in the computing fields, computing domains, computing discipline and computing knowledge areas. IV. Learning Content INDUSTRY OVERVIEW Computer Industry encompasses those companies that manufacture computers and computer components. includes software publishers and peripheral device manufacturers. Information Technology Industry (IT Industry) refers to the companies that develop, produce, sell or support computers, software and computer-related products. includes companies in the computer industry, software publishers, communications service vendors, information services and service companies The terms computer Industry and IT industry are sometimes used interchangeably. In addition, not every company that uses computer is part of the computer industry or IT Industry. An example, a bank that uses computers to track money flowing in and out of accounts rather it is classified as part of the banking industry. Another is a clothing store might use computers to monitor inventory, but it is classified as part of the apparel industry. Such businesses make use of information technology, but they are definitely not part of the computer industry and are not considered part of IT industry either. 2 Companies Included in the IT Industry Companies in the IT Industry can be separated into several broad categories, sometimes referred to as sectors or segment, including equipment manufacturers, chipmakers, software publishers, service companies and retailers. Equipment Manufacturers design and manufacture computer hardware and communications products, such as personal computers, mainframe computers, PDAs, mouse, monitors, storage devices, routers, scanners and printers. Examples of these companies include computer manufacturers IBM and Hewlett-Packard. Network hardware companies such as Cisco and its subsidiary Linksys are also examples of equipment manufacturers. Chipmakers design and manufacture computer chips and circuit boards, including microprocessors, RAM, system boards, sound cards and graphics cards. Intel, Transmeta, Texas Instruments and AMD are examples of chipmakers. Software Publishers create computer software, including applications, operating systems and programming languages. Examples of software companies include Microsoft, Adobe Systems, Electronic Arts (EA) and Computer Associates (CA). Service Companies provide computer-related services, including business consulting, Web site design, Web hosting, Internet connections, computer equipment repair, network security and product support. Classic examples of service companies include AOL and the computer consulting giant, EDS (Electronic Data Systems). Computer Retailers (sometimes called resellers) include companies that sell computer products through retail stores, direct sales representatives, mail-order catalogs and websites. Well-known computer resellers include CompUSA, which operates retails stores and mail-order retailer’s PC connection and CDW. Although some companies fit neatly into one of the above categories, other companies operate in two or more areas. For example, Dell manufactures hardware but also resells that hardware directly to individuals and businesses. Sun Microsystems is known for its Sun servers and workstations but also develops and sells software, such as operating systems and the Java programming language. IBM designs and manufactures computer chips and circuit boards as well as producing workstations, servers and mainframes. The IT industry also encompasses large conglomerates with one or more divisions devoted to computer hardware, software or services. As an example, Japanese-owned Hitachi produces a wide variety of electronic devices, but it is also one of the world’s largest chipmakers. Economic Factors The IT industry has been described as the most dynamic, most prosperous, most economically beneficial industry the world has ever known. That statement might be a bit of exaggeration, but the IT industry unquestionably has fueled the economies of many countries. 3 By dollar ($) value, the biggest computer hardware producing countries are the United States, Japan, Taiwan, Singapore and China. Despite the increasing globalization of the Industry, however, it remains dominated by the United States. The majority of IT workers are in the United States, even though about two-thirds of industry revenues are from non-US companies. What makes IT Industry successful? As with any situations involving the economy, the factors that account for the success of the IT Industry cannot be pinpointed with certainty. It is likely; however, that population growth and business globalization are two important factors that contribute to huge investments in information technology. Keeping track of the information relating to all people such as births, deaths, marriages, property ownership, taxes, purchases, banking records, and licenses and other more certainly seems impossible without the use of computers. Government and private businesses have discovered that they can become more efficient with a liberal application of computers and other information technologies. As a business globalizes, it encounters new competitors with technological advantages. Intense global competitive pressure keeps companies looking for ways to cut costs and raise productivity. Staying ahead of the competition becomes a priority for survival. If your business competitor offers automated online order tracking for example, you might lose customers unless you can offer the same service. Bottom line: if your business competitors turn to technology, so must you. In our highly populated global economy, information technology products are effective alternative to manual record-keeping systems. Marketing Channels Hardware manufacturers and software publishers try to reach consumers by making their products available through a variety of sources. Computer hardware and software are sold through marketing outlets called marketing channels. These channels include computer retail stores, mail-order/internet outlets, value-added resellers and manufacturers direct. Ø Computer Retail Stores purchases computer products from a variety of manufacturers and the sells those products to consumers. Computer retail stores are either small local shops or national wide chains. Computer retail stores employees are often knowledgeable about variety of computer products and can help you select a hardware and software product to fit your needs. Many computer retail stores also offers classes and training sessions, answer questions, provide technical support and repair hardware products. A computer retail store is often the best option for buyers who likely to need assistance after their purchase, such as beginning computer users or those who plans for complex computer networks. Ø Mail-order / Internet outlets is a type of retailing in which a vendor takes orders by telephone or from an Internet site and then ships the product directly to consumers. Mail-order suppliers, generally offer low prices but might provide only limited service and support. A mail-order supplier is often the best source of products for buyers who are unlikely to need support or who can troubleshoot problems by calling a help desk. 4 Ø Value added Reseller (VAR) combines commercially available products with specialty hardware or software to create a computer system designed to meet the needs of a specific industry. Although VARs charge for their expertise, they are often the only source for specialized computer systems. For example, if you own a video rental store and want to automate the rental process, the best type of vendor might be a VAR that offers a complete hardware and software package tailored to the video rental business. Otherwise, you must piece together the computer, scanner, printer and software components yourself. VARs are often the most expensive channel for hardware and software, but their expertise can be crucial to ensure that the hardware and software work correctly in a specific environment. Ø Manufacturers direct refers to hardware manufacturers that sell their products directly to consumers without a middleman, such as a retail store. IBM has a long tradition of direct sales and that model has been emulated by several hardware manufacturers and some software publishers. A company’s sales force, where large- volume sales can cover the sales representative’s costs and commissions. Industry Regulation Some aspects of the IT industry are regulated by government agencies, but many aspects are self-regulated. The IT industry encompasses many activities, however and consequently it is subject to regulation from a variety of broad-based government agencies. Many governments are enacting laws that restrict access to particular Internet activities and content. In many countries, export restrictions affect the type of technology that can be sold to foreign governments and individuals. For example, before being exported from the United States, software and hardware products that contain certain encryption algorithms must be registered with the U.S. government. Additional government regulations that pertain to law enforcement, national security, e-commerce and taxation can also affect the way the IT industry conducts its business and how it engineers products. Most IT industry leaders oppose further regulation of their industry. They remain skeptical of government regulations that might limit their ability to explore new technologies and offer them to the public. To avoid further government intervention, the IT industry has taken steps toward self-regulation. Several organizations provide a forum for the IT industry to examine issues, express views, work out self-governing policies and set standards. The Information Technology Industry Council has been one of the major trade associations for computer manufacturers, telecommunications suppliers, business equipment dealers, software publishers and IT service providers. As part of its mission, tis organization provides a powerful lobbying group, which works with lawmakers to minimize legislation that might curtail technology innovation and use. The software & Information Industry Association, formerly known as the Software Publishers Association, has 600 member companies and organizations. This organization focuses on protecting the intellectual property of members and lobbying for a legal and regulatory 5 environment benefits the entire IT industry. Its anti-piracy program is instrumental in identifying and prosecuting software and internet piracy cases. Organizations such as IEEE Standards Association help the IT industry standardize technology such as microprocessor architecture and network protocols, as well as programming languages and multimedia components. PROFESSION AND CAREERS IN THE COMPUTING FIELDS Computer professional is any person whose primary occupation involves the design, configuration, analysis, development, modification, testing or security of computer hardware or software. Preparing for a career in the computer industry To prepare for a career in the computer industry, you must first decide on the area in which you are interested and then become educated in that field. Attend a Trade School/Technical School/ Vocational School Attend College/Universities An IT department provides career opportunities for people with a variety of skills and talents. Usually, these jobs are divided into six main areas. 1. Management. Directs the planning, research, development, evaluation, and integration of technology. 2. System development and programming. Analyzes, designs, develops, and implements new information technology and maintains and improves existing systems. 3. Technical services. Evaluates and integrates new technologies, administers the organization's data resources, and supports the centralized computer operating system and servers. 4. Operations. Operates the centralized computer equipment and administers the network, including both data and voice communications. 5. Training. Teaches employees how to use components of the information system or answers specific user questions. 6. Security. Develops and enforces policies that are designed to safeguard an organization's data and information from unauthorized users. 6 CAREER JOB TITLE FUNCTION AREAS Management Chief information Directs the company's information officer (CIO) / chief service and communications functions technology officer (CTO) E-commerce director Network Supervises the development and administrator/wireless execution of Internet or e-commerce network systems; works with the company's administrator marketing and customer service divisions Installs, configures, and maintains LANs, WANs, wireless networks, intranets, and Internet systems; identifies and resolves connectivity issues Project leader/ Oversees all assigned projects; allocates manager resources selects teams; performs systems analysis and programming tasks; conducts performance appraisals System Computer games Designs computer games and translates development designer/programmer the design into a computer program and using an appropriate computer language programming Computer Researches, invents, and develops Scientist innovative solutions to complex software requirements or problems Database Uses data modeling techniques and analyst tools to analyze, tune, and specify data usage within an application area Desktop or mobile Converts the system design into the application appropriate computer language, such as programmer/ developer Visual Basic, Java, C#, F#, and C++ Web software Analyzes, designs, implements, and developer supports Web applications; works with HTML, Ajax, JavaScript, and multimedia 7 Technical Computer Technician Installs, maintains, and repairs Services hardware; installs, upgrades, and configures software; troubleshoots hardware problems Database Creates and maintains the data administrator dictionary; monitors database performance Desktop publisher/compositor Formats and combines text and graphics to produce publication-ready Digital Forensics materials examiner Collects and analyzes evidence found on computers and network Graphic designer/ Develops visual impressions of illustrator products for advertisements and marketing materials Quality assurance Reviews programs and documentation to ensure they meet the organization's specialist standards Storage Installs, maintains, and upgrades storage systems; analyzes an administrator/analyst organization's storage needs Develops graphical content using Web designer Photoshop, Flash, and other multimedia tools Maintains an organization's Web site; Webmaster/Web creates or helps users create Web pages; administrator oversees Web site performance Operations Computer Performs equipment-related activities operator such as monitoring performance, running jobs, backup, and restore Data communications Installs and monitors communications analyst / VoIP equipment and software; maintains specialist Internet/WAN connections 8 Training IT / IS / CS Teaches students computer science and Instructor Information technology education skills Teaches employees how to use Corporate software, design and develop systems, Trainer program, and perform other computer - related activities Help Desk Answers computer-related questions In Specialist person, on the telephone, or In a chat room Chief security Responsible for physical security of an organization's property and people; In officer (CSO) charge of securing computing resources Computer security Responsible for the security of data and specialist/mobile Information stored on computers and security specialist mobile devices within an organization Configures routers and firewalls; Network security specifies Web protocols and enterprise administrator technologies Security Administers network security access; administrator monitors and protects against unauthorized access COMPUTING DOMAINS 10 Domains in Computer Science 1. Computer Theory Computer Theory is the branch of computer science concerned with finding out how efficiently a given problem can be solved on a model computer using a given algorithm. Within Computer Theory are three main focuses: Computability Theory, Complexity Theory, and Formal Languages. Computability theory is concerned with finding out whether or not a problem is solvable with a finite number of computations. This is an important field in computer science because it saves time by determining if a problem is solvable. Complexity Theory deals with finding out how much time an algorithm will take to solve a problem based on how many elements are involved with the computation. The answer is usually written in “Big O” notation. There are generally two speeds at which 9 an algorithm works: polynomial time and exponential time. Polynomial time is good for most algorithms, exponential is completely impractical for any useful dataset. The details of polynomial and exponential algorithms are discussed in more detail in the section “Tractable vs. Intractable Problem.” Formal languages are a way of talking about languages in the abstract. They are called “formal” because “...all the rules for the language are explicitly stated in terms of what strings of symbols can occur”. Formal languages are defined using set theory. There is a fundamental set containing the acceptable characters in the language. Up from the basic set is another set containing all allowable combinations of characters, and beyond this is a set of all allowable sentences. This continues to the largest constructs in a given language. 2. Algorithms Algorithms are an explicitly described method for solving a problem. A great deal of work is done by computer scientists to find the most efficient algorithm to solve a problem. For example, the problem of sorting a list of integers can be solved in many ways. The most obvious one would be to compare each element to its neighbor and shift positions if they are out of the desired order. This routine, called Bubble Sort is terribly inefficient for all but the smallest of lists. A more appropriate algorithm for practical use is Merge Sort, which uses recursion and the Divide and Conquer method to efficiently sort long lists. Implementations of algorithms are the most common applications of computers. Computers excel at executing algorithms. Almost any simple task can be defined by an algorithm. When put together, a collection of algorithms creates a program. There are limitations to algorithms though. Many algorithms are very rigid and only correctly on a narrow range of inputs. A good example of this is Dijkstra's Algorithm (a shortest path graph algorithm). According to Weiss, this algorithm performs correctly only if there are no negative cost edges 3. Cryptography Cryptography is an ancient science concerned with secret writing. That is hiding a message in what appears to be an unintelligible sequence of symbols but which can through some transposition or substitution algorithm be converted back into a meaningful message. Cryptography is still a very important discipline, perhaps more than it ever was as a result of people and businesses storing sensitive information on remotely accessible computers. In the modern context of computers, cryptography is the science of encrypting data. Data encryption is necessary to keep information such as bank account numbers hidden from those with malicious intent. The importance of cryptography has increased greatly since the ubiquity of the Internet. In fact, one of the most common applications of cryptography is to protect data transmitted across networks. Older, more naïve, protocols such as telnet send unencrypted plain text across networks allowing user credentials to be easily intercepted. SSH is a secure substitute for telnet; It encrypts data 10 before transmitting it. Encrypting data at rest on a disk is just as important as encrypting transmitted data. If a malicious user obtains access to a disk either physically or electronically, file system and database encryption are the last line of defense. A simple method for encrypting data is to use the XOR bitwise operator on a key string and the message to be encrypted. The result is an encrypted message. The beauty of the XOR operator is that if the key string is then XORed against the encrypted data it will return the original message. This example could be considered a substitution encryption because it is only masking the bits of the message by XORing them with the key, nothing is moved around. Stephen Farrell's article, “Applications Directly using Cryptography”, published in IEEE Internet Computing, notes that in designing one's own encryption algorithm or by creating an implementation of a standard encryption algorithm many mistakes can be made. Chief among these is accidentally including bugs. Some of these bugs could even make it possible to subvert the security of the application. Farrell also warns that using another person's homegrown implementation leaves an application open to the same risks; it’s even possible the designer of the homegrown implementation intended for the bugs to be there for malicious purposes. To avoid these pitfalls, Farrell advises using only stable implementations of standard encryption algorithms. The article goes on to list many encryption options available to a developer. The wisdom in these words cannot be understated. Handmade encryption algorithms often fall prey to a variety of exploits that their better designed standard counterparts are built to avoid. In fact modern cryptography is so powerful that few systems are ever compromised by cryptanalysis, instead other more easily exploited flaws are the downfall of a system's security. Cryptography is an important field in computer science. It has applications everywhere because of the prevalence of private data stored on multi-user systems. Much research is done in trying to build better encryption keys and algorithms. Cryptography will continue to be a part of system security for as long as computers exist. 4. Distributed Computing Distributed computing is a means of breaking up a complex problem, distributing the pieces to various computers across a network (usually the Internet), and having them work on the problem concurrently until the problem is solved. The difference between distributed and parallel computing is that parallel computing is done on a single architecture with multiple processor cores and distributed computing is done over a network. According to Bill Godfrey, distributed computing is performed with a client-server model where the server sends out work packages and constructs the answer from the responses returned by the clients. The networked nature of distributed computing means that it is not suitable for all problems. For example an algorithm that requires all steps be completed in sequence cannot be distributed merely duplicated. Searches, encryption breaking, and other algorithms where each step does not rely on the previous one are ideal for distributed computing 11 because they could take much longer on a single computer. Another important feature of distributed computing is that it client machines only process data when the computer is idle. This minimizes the impact on the user and makes distributed computing more appealing to clients who may not directly benefit from their donated computing power. Distributed computing is most commonly applied to scientific and mathematical research projects with limited hardware resources. Folding@ home is a well-known distributed computing project that explores protein structures and helps researches understand cancer cells. Distributed computing is an excellent alternative to a super computer when it is not possible for researchers to use one. 5. Cloud Computing Cloud Computing is a popular and often misused buzz word in the IT industry. It is often used in conjunction with any Internet service or application regardless of whether or not that software actually implement a cloud infrastructure. Cloud Computing is more precisely defined than its colloquial usage would lead one to believe. According to Dikaiakos and others, “Cloud computing is a recent trend in IT that moves computing and data away from desktop and portable PCs into large data centers”. The most important part of this statement is that both data and computing power are being removed from end-user devices. Having software stored and run remotely allows for user devices to be ultra-portable, thus cloud computing is a very popular model for phones and tablets. There are three main ways in which a cloud is implemented: infrastructure as a service, platform as a service, and software as a service. The infrastructure level provides storage and computing power across the network. Further up is the platform level which allows higher abstractions usually for the purpose of software development to be shared across a network. The highest level, software provides an entire application to users over a network. Though cloud computing is promoted as a new idea, it is actually quite similar to an old one: the client-server model. In the client-server model a central server provides computing power and applications to multiple users connected to the server via terminals. Cloud computing is an update of this concept: instead of being limited to a terminal on the same network as a server, any device with an Internet connection can take advantage of the software and hardware of a remote server. 6. Computational Learning Computational learning, more commonly referred to as machine learning is a sub-field of artificial intelligence. More specifically, “Machine learning is the field that is dedicated to the design and development of algorithms and techniques that allow computers to 'learn'”. Learning, in the sense of computer s is the ability to adapt an algorithm based on inputs. This adaptability is often implemented with the use of neural networks. Neural networks will be discussed in more detail later in this paper. 12 There are several machine learning strategies. The ones described here are supervised, semi-supervised, unsupervised, and reinforcement learning. In supervised learning, the computer is given the correct outputs for many different inputs. Then it is expected to generalize the relationship and produce correct output for new, previously unseen inputs. Unsupervised learning machines are only given the input and then expected to “see” a structure in the inputs. This is useful when the desired output is not known to the user. Semi-supervised learning combines supervised and unsupervised techniques together. Finally, reinforcement learning is a broadly defined branch of learning concerned with how an intelligent agent ought to act in an environment to get the highest reward. Unlike supervised or unsupervised learning methods, reinforcement learning does not take any inputs it simply adapts to its environment. From searches on the IEEE Computer Society article databases it would seem that reinforcement learning is a popular framework for video game A.I. 7. Computer Vision Computer vision is the field of computer science in which the goal is to process video or still images and produce from them a representation of the world. This entails things such as recognition of objects, gestures, and motion. The purpose of recognizing these things is for decision making. For example, an automated security system equipped with computer vision software could alert the police if it recognizes humans in a restricted area. Because of computer vision’s use in decision making as well as the difficulty of creating a computer vision system by conventional means, it overlaps with artificial intelligence. Many techniques for implementing computer vision use one of the above learning methods. Just like in video games, reinforcement learning is popular for computer vision because of its focus on environment. Computer vision presents a challenging problem to computer scientists because there are so many different objects in a given image or video and it can be very hard to identify partly hidden ones or to recognize gestures correctly. Despite these problems, progress continues in part because of the proliferation of more powerful embedded systems such as the ARM multi-core processors found in many mobile phones and tablets. Future applications of computer vision may include helping visually impaired people, gesture-based user interfaces, advanced security systems, and better robot navigation systems. 8. Big Data The idea of big data is fairly self-explanatory, it is the collection and analysis of large amounts of data. It is usually associated with large Internet companies such as Facebook and Google. These companies collect vast amounts of data about users on their sites. They then organize it and use it as a means for targeted advertising. Since the proliferation of cloud computing platforms, big data has become very attractive to companies that previously did not see the benefit of storing and organizing huge amounts of user data. It is even creating new ways of providing services: instead of waiting for users to enter information, some businesses now just use web crawlers to aggregate data and then organize and build a site from that. In fact, some startups such 13 as TalentBin and Gild use big data to build meta-resume sites where they collect information on job candidates via various social media sites. Big data has other applications as well. Recently, the NSA got exposed for tracking people based on information obtained from companies using big data. According to Lesk, there is almost no regulation in the US for personal data collection or usage. Unfortunately, due to the power of the companies and government agencies behind big data, the lack of regulation is unlikely to change in the near term. Not all applications of big data are bad, however. Big data can be used by cooperating hospitals to keep medical records more current and accurate. Additionally it could be used to track the spread of disease through medical records. There are many applications for big data that benefit people. The availability of vast amounts of data is not always a bad thing. 9. Neural Networks Neural networks are artificial intelligence agents that simulate biological neuron structures to process inputs and produce outputs. Earlier, this paper mentioned machine learning. Neural networks require machine learning to function usefully. Neural networks are trained on inputs until they recognize patterns and produce useful outputs. Neural networks differ from normal algorithmic programs in that they do not follow a sequence of steps. They are not even programmable. Instead they learn from example inputs. However, as the article, “Neural Networks”, notes, “The examples must be selected carefully otherwise useful time is wasted or even worse the network might be functioning incorrectly”. Because neural networks cannot be programmed to perform tasks they are very hard to troubleshoot when malfunctioning. The operator of the network has no means by which to “fix a bug.” Despite this drawback of neural networks, they are still better suited than algorithms for some tasks, especially those where the task is not clearly defined or understood. The applications of neural networks are far reaching. They can perform tasks such as making predictions based on available data, interpreting visual data for f ace recognition, and other computer vision tasks, and even serve as expert systems such and perform medical diagnoses. 10. Tractable Problem vs. Intractable Problem A tractable problem are problems that can be solved in polynomial time (ex. O(n), O(n^k), O(nlog(n)) ). An intractable problem can currently only be solved by an algorithm taking exponential time (ex O(2^n), O(n!)). The tractable problems can be solved in a reasonable amount of time for most values of n while the intractable problems can only be solved in our lifetime if n is too small to be of any practical use. Because of the vast time difference between tractable and in tractable problems, much work is done in trying to find tractable solutions to intractable problems. A very pressing question to computer scientists looking for tractable solutions to difficult problems is the P vs. NP problem. P is the set of problems whose solutions can be found in polynomial time and NP is the set of problems whose solutions can be 14 verified in polynomial time. The distinction between P and NP is small but important, NP problems are intractable but the verification of their solution is tractable. If P =NP then all NP problems have tractable solutions and all that remains is to find the algorithm for each NP problem that works in polynomial time. If P≠ NP or the answer remains unknown, a lot of time may be wasted in looking for tractable solutions that do not exist. The P vs. NP problem has been open for quite sometime and still no one has proved or disproved the assertion P=NP. COMPUTING DISCIPLINES If you choose a computing major, what career options are open to you? We have provided information for each of the majors listed here: Ø Computer Engineering. Typically involves software and hardware and the development of systems that involve software, hardware, and communications. Ø Computer Science. Currently the most popular of the computing disciplines; tends to be relatively broad and with an emphasis on the underlying science aspects. Ø Information Systems. Essentially, this is computing in an organizational context, typically in businesses. Ø Information Technology. Focuses on computing infrastructure and needs of individual users; tends to involve a study of systems (perhaps just software systems, but perhaps also systems in support of learning, of information dissemination, etc.). Ø Software Engineering. Focuses on large-scale software systems; employs certain ideas from the world of engineering in building reliable software systems. Ø Mixed Disciplinary Majors Computing Disciplines & Majors Computer Engineering (CE) Computer engineering (CE) students study the design of digital hardware and software systems including communications systems, computers and devices that contain computers. For them, programming is focused on digital devices and their interfaces with users and other devices. An important area within computing engineering is the development of embedded systems. Devices such as cell phones, digital audio players, digital video recorders, alarm systems, x-ray machines, and laser surgical tools all require integration of hardware and embedded software, and are all the result of computer engineering. Computer engineering majors are offered by a fairly large number of universities, almost always within engineering. This major requires significant study of mathematics. Computer Science (CS) Computer science (CS) spans the range from theory through programming to cutting- edge development of computing solutions. Computer science offers a foundation that 15 permits graduates to adapt to new technologies and new ideas. The work of computer scientists falls into three categories: a) designing and building software; b) developing effective ways to solve computing problems, such as storing information in databases, sending data over networks or providing new approaches to security problems; and c) devising new and better ways of using computers and addressing particular challenges in areas such as robotics, computer vision, or digital forensics (although these specializations are not available in all computer science programs). Most computer science programs require some mathematical background. Let us consider what is involved in a career path in each area. Career Path 1: Designing and implementing software. This refers to the work of software development which has grown to include aspects of web development, interface design, security issues, mobile computing, and so on. This is the career path that the majority of computer science graduates follow. While a bachelor’s degree is generally sufficient for entry into this kind of career, many software professionals return to school to obtain a terminal master’s degree. (Rarely is a doctorate involved.) Career opportunities occur in a wide variety of settings including large or small software companies, large or small computer services companies, and large organizations of all kinds (industry, government, banking, healthcare, etc.). Degree programs in software engineering also educate students for this career path. Career Path 2: Devising new ways to use computers. This refers to innovation in the application of computer technology. A career path in this area can involve advanced graduate work, followed by a position in a research university or industrial research and development laboratory; it can involve entrepreneurial activity such as was evident during the dot- com boom of the 1990s; or it can involve a combination of the two. Career Path 3: Developing effective ways to solve computing problems. This refers to the application or development of computer science theory and knowledge of algorithms to ensure the best possible solutions for computationally intensive problems. As a practical matter, a career path in the development of new computer science theory typically requires graduate work to the Ph.D. level, followed by a position in a research university or an industrial research and development laboratory. Career Path 4: Planning and managing organizational technology infrastructure. This is the type of work for which the new information technology (IT) programs explicitly aim to educate students. Career paths 2 and 3 are undeniably in the domain of computer science graduates. Career paths 1 and 4 have spawned the new majors in software engineering and information technology, respectively, and information systems graduates often follow Career path 1, too. Computer scientists continue to fill these positions, but programs in 16 software engineering, information technology, and information systems offer alternative paths to these careers. Information Systems (IS) An information system (IS) is concerned with the information that computer systems can provide to aid a company, non-profit or governmental organization in defining and achieving its goals. It is also concerned with the processes that an enterprise can implement and improve using information technology. IS professionals must understand both technical and organizational factors, and must be able to help an organization determine how information and technology-enabled business processes can provide a foundation for superior organizational performance. They serve as a bridge between the technical and management communities within an organization. These are the important issues that businesses rely on IS people to address. What information does the enterprise need? How is that information generated? Is it delivered to the people who need it? Is it presented to them in ways that permit them to use it readily? Is the organization structured to be able to use technology effectively? Are the business processes of the organization well designed? Do they use the opportunities created by information technology fully? Does the organization use the communication and collaboration capabilities of information technologies appropriately? Is the organization capable of adapting quickly enough to changing external circumstances? A majority of IS programs are located in business schools; however, they may have different names such as management information systems, computer information systems, or business information systems. All IS degrees combine business and computing topics, but the emphasis between technical and organizational issues varies among programs. For example, programs differ substantially in the amount of programming required. Traditionally, many graduates of IS programs have functioned in roles that are similar to the roles for which IT programs explicitly prepare their students. Information systems graduates continue to fill these roles, but the new programs in information technology offer an alternative path to these positions. Information Technology (IT) Information technology (IT) is a label that has two meanings. In common usage, the term “information technology” is often used to refer to all of computing. As a name of an undergraduate degree program, it refers to the preparation of students to meet the computer technology needs of business, government, healthcare, schools, and other kinds of organizations. 17 IT professionals possess the right combination of knowledge and practical, hands-on expertise to take care of both an organization’s information technology infrastructure and the people who use it. They assume responsibility for selecting hardware and software products appropriate for an organization. They integrate those products with organizational needs and infrastructure, and install, customize and maintain those applications, thereby providing a secure and effective environment that supports the activities of the organization’s computer users. In IT, programming often involves writing short programs that typically connect existing components (scripting). Planning and managing an organization’s IT infrastructure is a difficult and complex job that requires a solid foundation in applied computing as well as management and people skills. Those in the IT discipline require special skills – in understanding, for example, how networked systems are composed and structured, and what their strengths and weaknesses are. There are important software systems concerns such as reliability, security, usability, and effectiveness and efficiency for their intended purpose; all of these concerns are vital. These topics are difficult and intellectually demanding. Software Engineering (SE) Software engineering (SE) is concerned with developing and maintaining software systems that behave reliably and efficiently, are affordable to develop and maintain, and satisfy all the requirements that customers have defined for them. It is important because of the impact of large, expensive software systems and the role of software in safety-critical applications. It integrates significant mathematics, computer science and practices whose origins are in engineering. Students can find software engineering in two contexts: computer science programs offering one or more software engineering courses as elements of the CS curriculum, and in separate software engineering programs. Degree programs in computer science and in software engineering tend to have many courses in common; however, as of Spring 2006 there are few SE programs at the bachelor’s level. Software engineering focuses on software development and goes beyond programming to include such things as eliciting customers’ requirements, and designing and testing software. SE students learn how to assess customer needs and develop usable software that meets those needs. Both computer science and software engineering curricula typically require a foundation in programming fundamentals and basic computer science theory. They diverge in their focus beyond these core elements. Computer science programs tend to keep the core small and then expect students to choose among more advanced courses (such as systems, networking, database, artificial intelligence, theory, etc.). In contrast, SE programs generally expect students to focus on a range of topics that are essential to the SE agenda (problem modeling and analysis, software design, software verification and validation, software quality, software process, software management, etc.). While both CS and SE programs typically require students to experience team project activity, SE programs tend to involve the students in significantly more of it, as effective team processes are essential to effective SE practices. In addition, a key requirement specified by the SE curriculum guidelines is that SE students should learn 18 how to build software that is genuinely useful and usable by the customer and satisfies all the requirements defined for it. Mixed Disciplinary Majors Because computing is such an important and dynamic field, many interdisciplinary majors, some very recent developments, exist at some schools. Here are just a few examples of these opportunities. Some of these programs are offered at a number of U.S. schools as of Spring 2006; some only at a handful of U.S. schools. Bioinformatics combines elements from at least biology, biochemistry, and computer science, and prepares students for careers in the biotechnology and pharmaceutical industries, or for graduate school in informatics. Some programs may also include elements from information systems, chemistry, mathematics, and statistics. Computational science means science done computationally, and serves as a bridge between computing technology and basic sciences. It blends several fields including computer science, applied mathematics, and one or more application sciences (such as physics, chemistry, biology, engineering, earth sciences, business and others). Some programs also include information systems. Computer Science and Mathematics combines computer science with mathematics of course. Some of these programs are found at schools that do not have a full major in computer science; some are found at universities with very large computer science departments. Gaming and Animation. Majors for students interested in creating computer games and computer animations are being developed at a number of schools. These majors have various flavors and may combine either or both of computer science and information technology work with either or both of art and (digital) media studies. Medical (or health) informatics programs are for students interested in students who want to work in a medical environment. Some students will work as technology experts for hospitals; some in public health; some students may be premed or pre-dental. Coursework may be drawn from any or all of computer science, information systems, or information technology in combination with biology, chemistry, and courses unique to this interdisciplinary field. Be aware that especially in the newer interdisciplinary areas, different schools use different names for the same subject. For example, one school’s “bioinformatics” may be another school’s “computational biology.” 19 COMPUTING KNOWLEDGE AREAS COMPUTER ENGINEERING (CE) CE2004, the current computer engineering curriculum, will soon be replaced by CE2016, as the ACM/IEEE steering committee produced its interim report for review by the computing community in October 2015. Some of the knowledge areas have been restructured. Like its companion reference curricula, CE2016 describes knowledge areas that will lead to a computer engineering program's desired learning outcomes. In addition, it discusses professionalism and the engineering projects’ effects on society. CE2016’s knowledge areas include: circuits and electronics, information security, computing algorithms, strategies for emerging technologies, computer architecture and organization, signal processing, digital design, systems and project engineering, embedded systems, systems resource management, and computer networks, software design. professional practice, COMPUTER SCIENCE (CS) A unique aspect of the current computer science curriculum (CS2013) is its inclusion of course exemplars from many diverse universities, which show different ways in which the curriculum recommendations can be implemented. The authors recognize that computer science programs should allow students to work across many disciplines because graduates go on to work in such diverse areas as: mathematics, fine arts, electrical engineering, linguistics, and psychology, physical and life sciences. statistics, CS2013 adds several new knowledge areas to those defined in its predecessors, reflecting the field's tremendous growth in complexity. The new knowledge areas are: information assurance and security, software development fundamentals, networking and communication, and platform-based development, systems fundamentals. parallel and distributed computing, SOFTWARE ENGINEERING (SE) The current software engineering curriculum (SE2014) includes a description of knowledge to be addressed in an undergraduate software engineering pro-gram's core, called the Soft-ware Engineering Education Knowledge (SEEK). SEEK covers the entire spectrum of content for the discipline: information, data, terminology, roles, artifacts, methods, 20 models, practices, procedures, processes, and techniques, literature. The 10 knowledge areas that make up SEEK are: computing essentials, software design, mathematical and engineering software verification and validation, fundamentals, software process, professional practice, software quality, and software modeling and analysis, security. requirements analysis and specification, INFORMATION TECHNOLOGY (IT) The current version of the information technology curriculum was issued in 2008 (IT2008), but a new edition will soon be available for review and is projected to be published in 2017. The task group responsible for this project established desired competencies for graduates. This curriculum's focus mirrors the work that consumes enterprise IT professionals: integrating different technologies and integrating technologies into organizations. The required skill set includes: user advocacy skills, information and communication the ability to address information technologies, assurance and security concerns, adaptability, outstanding interpersonal the ability to manage complexity skills, through abstraction, high ethical standards, and extensive capabilities for problem professional responsibility. solving across a range of integrated INFORMATION SYSTEMS (IS) The information systems curriculum (IS2010), created by ACM and the AIS and endorsed by the CS, builds on the foundation established in the two previous versions, providing guidance on the core curriculum recommended for information systems programs in universities and colleges worldwide. As with the other four curricula, IS2010 specifies learning outcomes to be achieved via the program. In this case, the high-level capabilities to be developed are: improving organizational processes; exploiting opportunities created by technology innovations; understanding and addressing information requirements; designing and managing enterprise architecture; identifying and evaluating solution and sourcing alternatives; securing data and infrastructure; and understanding, managing, and controlling IT risks. 21 V. Teaching and Learning Activities Conduct an interview with an IT Professional, whether a member of the family, friend, acquaintance, or someone you know from the neighborhood. Login to your Edmodo class, then search and download the “Interview with an IT Professional” documents as your guide in doing the interview. Accomplish and fill up the necessary information needed. Deadline of submission and where to submit will be announced by your Instructor. VI. Recommended Learning Materials and Resources for Supplementary Reading Browse, search and read the Information Technology Curriculum issued by ACM (2008). VII. Flexible Teaching Learning Modality (FTLM) Adopted In this module, the online and remote FTLM is adapted using Edmodo and Zoom application. For the online modality, the Zoom video conferencing application shall be used for the purpose of delivering a lecture and allowing a synchronous discussion with the students. For the remote modality, Edmodo shall be used to upload and download the module, and to allow asynchronous discussion with the students. This will also be used as a platform for the submission of the requirements. VIII. Assessment Task Please visit your Edmodo class and take the quiz pertaining to this module. IX. References Books William Stalling (2015). Computer Organization and Architecture, 10th Edition; Published by Pearson Reema Thareja (2014), Fundamentals of Computers, Published by Oxford Linda Null and Julia Lobur Jones (2014). The Essential of Computer Organization and Architecture 2nd, 4th edition,; Published by Bartlett Publishers Inc. Computer Fundamentals , Anita Goel, Pearon Education India ,2010 Aronson, L. (2011). HTML Manual of Style: A Clear, Concise, Reference for Hypertext Markup Language, 4th edition, Addison-Wesley Pearson Education. Bradford, A. & Haine P. (2011). HTML 5 Mastery Semantics, Standard and Styling. Springer Science+Business Media LLC. Gosselin, Kokoska & Easterbrooks (2011). PHP with MySQL. Cengaga Learning Mhery-Ann Andes, Joyce Anne Sufficiencia (2009), Simple Powerpoint 2007

Use Quizgecko on...
Browser
Browser