Software Engineering is nothing but a disciplined and systematic approach to software development. The major applications of software based on types of software used in different field of computer are:
1. Application software
These are the programs employed by the user to perform some specific function. This software is required to make the computer useful for the people.
The term application software describes program that helps people to accomplish their specific tasks. Application software has been written to do almost every thing ranging from word processing to reserving a train seat.
2. System software
It is a collection of programs written to service other programs. The system software consists of all the programs, language and documentation supplied by the manufacture along with the computer. They are also known as the system packages as they are set of one or more programs designed to control the operation of a computer system. This software perform essential support functions and consists of program to start up the computer, read store and execute the application programs.
For example a compiler is a computer program (or set of programs) that translates text written in a computer language (the source language) into another computer language (the target language). The original sequence is usually called the source code and the output called object code. Commonly the output has a form suitable for processing by other programs (e.g., a linker), but it may be a human-readable text file.
The most common reason for wanting to translate source code is to create an executable program. The name “computer” is primarily used for programs that translate source code from a high-level programming language to a lower level language (e.g., assembly language or machine language). A program that translates from a low level language to a higher level one is a de-compiler. A program that translates between high-level languages is usually called a language translator, source to source translator, or language converter. A language rewriter is usually a program that translates the form of expressions without a change of language.
A computer is likely to perform many or all of the following operations; lexical analysis’ preprocessing, parsing, semantic analysis, code generation, and code optimization. Software for early computers was exclusively written in assembly language for many years. Higher level programming languages were not invented until the benefits of being able to reuse software on different kinds of CPUs started to become significantly greater than the cost of writing a computer. The very limited memory capacity of early computers also created many technical problems when implementing a compiler.
Early compilers were written in assembly language. The first self-hosting compiler – capable of compiling its own source code in a high-level language – was created for Lisp by Hart and Levin at MIT in 1962. Since the 1970s it has become common practice to implement a compiler in the language it compiles, although both Pascal and C have been popular choices for implementation language. Building a self-hosting compiler is a bootstrapping problem – the first such compiler for a language must be compiled either by a compiler written in a different language, or compiled by running the compiler in an interpreter.
3. Business software
Business software is generally any software program that helps a business increase productivity or measure their productivity. The term covers a large variation of uses within the business environment, and can be categorized by using a small, medium and large matrix:
- The small business market generally consists of home accounting software, and office suites such as Microsoft
Office and OpenOffice.org.
- The medium size, or SME, has a broader range of software applications, ranging from accounting, groupware, customer relationship management, human resources software, outsourcing relationship management, loan origination software, shopping cart software, field service software, and other productivity enhancing applications.
- The last segment covers enterprise level software applications, such as those in the fields of enterprise resource planning, enterprise content management (ECM), business process management and product lifecycle management. These applications are extensive in scope, and often come with modules that either add native functions, or incorporate the functionality of third-party software programs.
Types of business software tools:
Various tools for business software are discussed as below:
- Digital Dashboards – Also known as Business Intelligence Dashboards, Enterprise Dashboards, or Executive Dashboards, these are visually-based summaries of business data that show at-a-glance understanding of business conditions through metrics and Key Performance Indicators (KPIs), A very popular BI tool that has arisen in the last few years.
- Online Analytical Processing – commonly known as OLAP (including HOLAP, ROPLAP and MOLAP) – a capability of some management, decision support, and executive information systems that supports interactive examination of large amounts of data from many perspectives. Reporting software generates aggregated views of data to keep the management informed about the state of their business.
- Data mining – extraction of consumer information from a database by utilizing software that can isolate and identify previously unknown patterns or trends in large amounts of data. There are a variety of data mining techniques that reveal different types of patterns. Some of the techniques that belong here are Statistical methods (particularly Business statistics) and Neural networks as very advanced means of analyzing data.
- Business performance management (BPM) – The essential motivation for business software is to increase profits by cutting costs or speeding the productive cycle. In the earliest days of white-collar business automation, large mainframe computers were used to tackle the most tedious jobs, like bank cheque clearing and factory accounting.
The early use of software to replace manual white-collar labor was extremely profitable, and caused a radical shift in white-collar labor. One computer might easily replace 100 white-collar ‘pencil pushers,’and the computer would not require any Health or Retirement Benefits.
Building on these early successes with IBM, Hewlett-Packard and other early suppliers of business software solutions, corporate consumers demanded business software to replace the old-fashioned drafting board. CAD-CAM software (or computer-aided-drafting for computer-aided-manufacture) arrived in the early 1980s.
In the early days, perhaps the most noticeable, wide-spread change in business software was the World Processor. Because of its rapid rise, the ubiquitous IBM typewriter suddenly vanished in the 1980s as millions of companies worldwide shifted to the use of Word Perfect business software, for business was Lotus 1-2-3, a mathematical spreadsheet, and later, Microsoft Excel.
4. Artificial intelligence software
The software that are based on the non-numerical algorithm to salve the complex problem. Expert system, robotics, neural network and human-computer interaction programs are the application of artificial intelligence software.
5. Real-time software
Software that monitor/analyze/control real world events as they occur (control of machine through software program).
6. Embedded software
Embedded software is pertaining to the code or a command that is built into its carrier. That software resides within the system and used to implement and control the functions for the end user. These software resides in read-only memory and is used to control products and systems for the consumer and industrial market.
7. Engineering and scientific software
This software is characterized by ‘number crunching’ algorithms E.g. software for astronomy, automobile, organic chemistry, etc.
It is a set of client and servers that co-operate to provide the solution for the problem. The client request to server and server provides back response to the client.
9. Banking Software
Banks have influenced economies and politics for centuries. Historically, the primary purpose of a bank was to provides loans to trading companies. Banks provided funds to allow businesses to purchase inventory, and collected those funds back with interest when the goods were sold.
The “banking business” means the business of receiving money on current or deposit account, paying and collecting cheques drawn by or paid in by customers, the making of advances to customers etc.
Since the advent of EFTPOS (Electronic Funds Transfer at Point Of Sale), direct credit, direct debit and internet banking, the cheque has lost its primacy in most banking systems as a payment instrument. This has lead legal theorists to suggest that the cheque based definition should be broadened to include financial institutions that conduct current accounts for customers and enable customers to pay and be paid by third parties, even if they do not pay and collect cheques.
The changing economic environment has a significant impact on banks and thrifts as they struggle to effectively manage their interest rate spread in the face of low rates on loans, rate competition for deposits and the general market changes, industry trends and economic fluctuations. It has been a challenge for banks to effectively set their growth strategies with the recent economic market. A rising interest rate environment may seem to help financial institutions, but the effect of the changes on consumers and businesses is not predictable and the challenge remains for banks to grow and effectively manage the spread to generate a return to their shareholders.
10. Personal computer software
This software includes applications like word processing, computer graphics, database management, etc.
The term computer graphics includes almost everything on computers that is not text or sound. Today almost every computer can do some graphics, and people have even come to expect to control their computer through icons and pictures rather than just by typing. The term Computer graphics has more meaning:
- The representation and manipulation of pictorial data by a computer.
- The various technologies used to create and manipulate such pictorial data
- The images so product, and
- A sub-field of computer science which studies methods for digitally synthesizing and manipulating visual content.
Today much of our life is affected by computers, and by computer graphics. Whether you see them on television in newspapers, in weather reports or while at the doctor’s surgery, computer images are all around you. A well chosen graph is able to transform a complex table of numbers into meaningful results.
Such graphs are used to illustrate papers, reports, and theses, as well as providing the basis for presentation material in the form of slides and overhead transparencies. A range of tools and facilities are available to enable users to visualize their data, and computer graphics are used in many disciplines.