The computer science discipline concerned with developing large applications. Software engineering covers not only the technical aspects of building software systems, but also management issues, such as directing programming teams, scheduling, and budgeting. Software Engineer:
A software engineer is in charge of assembling extensive amounts of code into working applications, as well as updating and fixing problems in existing software. A software engineer is also referred to as a programmer, because the main duties of a software engineer involve programming computers. Software engineering may be compared with computer science. While a software engineer works on actually developing working software solutions, a computer scientist focuses on the theoretical construct of software and hardware development. |
Because computers are so important to our lives, there is a constant need to develop new software. Computer software engineers apply computer science, engineering, and math to design, develop, and test software. (Computer hardware engineers design computer chips, boards, systems, modems, and printers.) Software engineers first analyze users' needs. Then they design, construct, test, and maintain the needed software or systems. In programming, or coding, they tell a computer, line by line, how to function. They also solve any problems that arise. They must possess strong coding skills, but are more likely to develop algorithms and solve problems than write code. Networks:
The networks are computer networks, both public and private, that are used every day to conduct transactions and communications among businesses, government agencies and individuals. The networks are comprised of "nodes", which are "client" terminals (individual user PCs) and one or more "servers" and/or "host" computers. They are linked by communication systems, some of which might be private, such as within a company, and others which might be open to public access. The obvious example of a network system that is open to public access is the Internet, but many private networks also utilize publicly-accessible communications. Today, most companies' host computers can be accessed by their employees whether in their offices over a private communications network, or from their homes or hotel rooms while on the road through normal telephone lines.
Network security involves all activities that organizations, enterprises, and institutions undertake to protect the value and ongoing usability of assets and the integrity and continuity of operations. An effective network security strategy requires identifying threats and then choosing the most effective set of tools to combat them. Threats to network security include:
Viruses : Computer programs written by devious programmers and designed to replicate themselves and infect computers when triggered by a specific event Trojan horse programs : Delivery vehicles for destructive code, which appear to be harmless or useful software programs such as games Vandals : Software applications or applets that cause destruction Attacks : Including reconnaissance attacks (information-gathering activities to collect data that is later used to compromise networks); access attacks (which exploit network vulnerabilities in order to gain entry to e-mail, databases, or the corporate network); and denial-of-service attacks (which prevent access to part or all of a computer system) Data interception : Involves eavesdropping on communications or altering data packets being transmitted Social engineering : Obtaining confidential network security information through nontechnical means, such as posing as a technical support person and asking for people's passwords Network security tools include:
Antivirus software packages : These packages counter most virus threats if regularly updated and correctly maintained. Secure network infrastructure : Switches and routers have hardware and...