System Internal Controls Management Accountants
System Internal Controls Management Accountants
needed to manage organizations effectively [1]. Management information systems are regarded to
be a subset of the overall internal controls procedures in a business, which cover the application
of people, documents, technologies, and procedures used by management accountants to solve
business problems such as costing a product, service or a business-wide strategy.
Definition: Management Information Systems (MIS) is the term given to the discipline focused
on the integration of computer systems with the aims and objectives on an organisation.
The development and management of information technology tools assists executives and the
general workforce in performing any tasks related to the processing of information. MIS and
business systems are especially useful in the collation of business data and the production of
reports to be used as tools for decision making.
Applications of MIS
With computers being as ubiquitous as they are today, there's hardly any large business that does
not rely extensively on their IT systems.
However, there are several specific fields in which MIS has become invaluable.
* Strategy Support
While computers cannot create business strategies by themselves they can assist management in
understanding the effects of their strategies, and help enable effective decision-making.
MIS systems can be used to transform data into information useful for decision making.
Computers can provide financial statements and performance reports to assist in the planning,
monitoring and implementation of strategy.
MIS systems provide a valuable function in that they can collate into coherent reports
unmanageable volumes of data that would otherwise be broadly useless to decision makers. By
studying these reports decision-makers can identify patterns and trends that would have remained
unseen if the raw data were consulted manually.
MIS systems can also use these raw data to run simulations – hypothetical scenarios that answer
a range of ‘what if’ questions regarding alterations in strategy. For instance, MIS systems can
provide predictions about the effect on sales that an alteration in price would have on a product.
These Decision Support Systems (DSS) enable more informed decision making within an
enterprise than would be possible without MIS systems.
* Data Processing
Not only do MIS systems allow for the collation of vast amounts of business data, but they also
provide a valuable time saving benefit to the workforce. Where in the past business information
had to be manually processed for filing and analysis it can now be entered quickly and easily
onto a computer by a data processor, allowing for faster decision making and quicker reflexes for
the enterprise as a whole.
Management by Objectives
While MIS systems are extremely useful in generating statistical reports and data analysis they
can also be of use as a Management by Objectives (MBO) tool.
MBO is a management process by which managers and subordinates agree upon a series of
objectives for the subordinate to attempt to achieve within a set time frame. Objectives are set
using the SMART ratio: that is, objectives should be Specific, Measurable, Agreed, Realistic and
Time-Specific.
The aim of these objectives is to provide a set of key performance indicators by which an
enterprise can judge the performance of an employee or project. The success of any MBO
objective depends upon the continuous tracking of progress.
In tracking this performance it can be extremely useful to make use of an MIS system. Since all
SMART objectives are by definition measurable they can be tracked through the generation of
management reports to be analysed by decision-makers.
Benefits of MIS
The field of MIS can deliver a great many benefits to enterprises in every industry. Expert
organisations such as the Institute of MIS along with peer reviewed journals such as MIS
Quarterly continue to find and report new ways to use MIS to achieve business objectives.
Core Competencies
Every market leading enterprise will have at least one core competency – that is, a function they
perform better than their competition. By building an exceptional management information
system into the enterprise it is possible to push out ahead of the competition. MIS systems
provide the tools necessary to gain a better understanding of the market as well as a better
understanding of the enterprise itself.
Quick Reflexes
Further information about MIS can be found at the Bentley College Journal of MIS and the US
Treasury’s MIS handbook, and an example of an organisational MIS division can be found at the
Department of Social Services for the state of Connecticut
Question
Q.1) what are the features of a language which should be considered for its selection in the
design of a system? Explain your answer with special reference to online systems.
Q.2) what are the hardware requirements to get onto the communication media? What are the
main function of data communication structure?
Q.3) List the five problems which may motivate an organization to move toward the database
approach. Explain the significance of each one to a manager to an organization?
Q.4) Different among Trojans, Worsens, Viruses. Justify that "computer virus is a major treat to
computer security".
Answer
GURMEET,
HERE IS SOME USEFUL MATERIAL.
REGARDS
LEO LINGHAM
=============================
Q.2 What are the features of a language which should be considered for its selection in the
design of a system? Explain your answer with special reference to online systems.
The term computer language is sometimes used interchangeably with programming language.
However, the usage of both terms varies among authors, including the exact scope of each. One
usage describes programming languages as a subset of computer languages. In this vein,
languages used in computing that have a different goal than expressing computer programs are
generically designated computer languages. For instance, markup languages are sometimes
referred to as computer languages to emphasize that they are not meant to be used for
programming. Another usage regards programming languages as theoretical constructs for
programming abstract machines, and computer languages as the subset thereof that runs on
physical computers, which have finite hardware resources.
Elements
All programming languages have some primitive building blocks for the description of data and
the processes or transformations applied to them (like the addition of two numbers or the
selection of an item from a collection). These primitives are defined by syntactic and semantic
rules which describe their structure and meaning respectively.
Syntax
A language's surface form is known as its syntax. Most programming languages are purely
textual; they use sequences of text including words, numbers, and punctuation, much like written
natural languages. On the other hand, there are some programming languages which are more
graphical in nature, using visual relationships between symbols to specify a program.
The syntax of a language describes the possible combinations of symbols that form a
syntactically correct program. The meaning given to a combination of symbols is handled by
semantics . Since most languages are textual.
This grammar specifies the following:
an expression is either an atom or a list;
an atom is either a number or a symbol;
a number is an unbroken sequence of one or more decimal digits, optionally preceded by a plus
or minus sign;
a symbol is a letter followed by zero or more of any characters (excluding whitespace); and
a list is a matched pair of parentheses, with zero or more expressions inside it.
Static semantics
The static semantics defines restrictions on the structure of valid texts that are hard or impossible
to express in standard syntactic formalisms. For compiled languages, static semantics essentially
include those semantic rules that can be checked at compile time.
.
Type system
A type system defines how a programming language classifies values and expressions into types,
how it can manipulate those types and how they interact. The goal of a type system is to verify
and usually enforce a certain level of correctness in programs written in that language by
detecting certain incorrect operations. Any decidable type system involves a trade-off: while it
rejects many incorrect programs, it can also prohibit some correct, albeit unusual programs. In
order to bypass this downside, a number of languages have type loopholes, usually unchecked
casts that may be used by the programmer to explicitly allow a normally disallowed operation
between different types. In most typed languages, the type system is used only to type check
programs, but a number of languages, usually functional ones, perform type inference , which
relieves the programmer from writing type annotations.
DYNAMIC TYPING , also called latent typing, determines the type-safety of operations at
runtime; in other words, types are associated with runtime values rather than textual expressions.
As with type-inferred languages, dynamically typed languages do not require the programmer to
write explicit type annotations on expressions. Among other things, this may permit a single
variable to refer to values of different types at different points in the program execution.
However, type ERRORS cannot be automatically detected until a piece of code is actually
executed, making debugging more difficult.
strong typing prevents the above. An attempt to perform an operation on the wrong type of
value raises an error. Strongly typed languages are often termed type-safe .
Execution semantics
The execution semantics (also known as dynamic semantics) of a language defines how and
when the various constructs of a language should produce a program behavior. There are many
ways of defining execution semantics. Natural language is often used to specify the execution
semantics of languages commonly used in practice.
Core library
Most programming languages have an associated core library(sometimes known as the 'standard
library', especially if it is included as part of the published language standard), which is
conventionally made available by all implementations of the language. Core libraries typically
include definitions for commonly used algorithms, data structures, and mechanisms for input and
output.
Specification
The specification of a programming language is intended to provide a definition that the
language usersand the implementors can use to determine whether the behavior of a program is
correct, given its source code .
Implementation
An implementation of a programming language provides a way to execute that program on one
or more configurations of hardware and software. There are, broadly, two approaches to
programming language implementation: compilation and interpretation . It is generally possible
to implement a language using either technique.
Usage
Thousands of different programming languages have been created, mainly in the computing
field. Programming languages differ from most other forms of human expression in that they
require a greater degree of precision and completeness. When using a natural language to
communicate with other people, human authors and speakers can be ambiguous and make small
errors, and still expect their intent to be understood. However, figuratively speaking, computers
"do exactly what they are told to do", and cannot "understand" what code the programmer
intended to write. The combination of the language definition, a program, and the program's
inputs must fully specify the external behavior that occurs when the program is executed, within
the domain of control of that program.
####################################################################
Q.3 What are the Hardware requirements to get onto the communication media? What are the
main functions of data communication structure?
Hardware Requirements
Note You cannot mix T1 port adapters with E1 port adapters, but any other combination of port
adapters is supported.
•Module blank filler plate (WS-SVC-CMM-BLANK) for unused port adapter slots.
=======================
MAIN FUNCTIONS
1) Routine collection and dissemination service for time and operation-critical data and products
This service is based on real-time “push” mechanism including multicast and broadcast.
(2) Data Discovery, Access and Retrieval (DAR) service
This service is based on request/reply “pull” mechanism with sophisticated data management and
standardization.
(3) Timely delivery service for data and products
This service is based on delayed mode “push” mechanism with trigger functions such as
scheduling by time-table and monitoring the accumulation amount of required data.
Table 1 Required characteristics of WIS services
(1) Routine collection and dissemination service (2) DAR service (3) Timely delivery service
From the functional view, the WIS comprises three major components, i.e. National Centres
(NC), Data Collection or Product Centres (DCPC) and Global Information System Centres
(GISC). The components are linked together by the WIS data communication network.
At the fifth meeting of the Inter-Programme Task Team on Future WMO Information Systems in
2003, the roles of the components were summarized as Table 2. The table shows that the
fundamental services are realized by combination of all WIS components.
There is apprehension about inheritance of the GTS deficiencies as follows:
The WIS functional structure (i.e. GISC-DCPC-NC) is similar to the GTS one (i.e. WMC-RTH-
NMC or RTH on MTN-RTH not on MTN-NMC) in hierarchical design principle;
Thus the WIS may inherit the deficiencies of the current GTS such as garbling bulletins,
imperfect dissemination of global exchange data, undesirable message loop and serious delay.
However it should be clarified that the current GTS deficiencies are caused by not hierarchical
design but defects of implementation and operation. The WIS functional structure is appropriate
to map the WIS components through a smooth evolution from the current components.
It is slightly more complicate. Basically, a client posts n (n=1, 2, 3, .... or more) requests into a
buffer of the local client machine and is immediately released (non-blocking/asynchronous) for
processing other user requests. Socket stack sends all of requests to a buffer of a remote server at
a proper time, and later a server application uses the data inside the buffer to process all of
requests by distributing/assigning all of requests into different threads/queues. All of
threads/queues processes their assigned requests independently and in parallel. Whenever a
request is finished, the returned result is posted into a buffer of the server machine. Once the
buffer collects an enough number of binary data or at a specific time frame, the server socket
sends the buffer containing multiple returned results using one full packet back to the client. The
client is automatically singled when the returned results arrives at the client machine, and
retrieves returned results. As you can see with pattern 2, if the network is considered as a water
channel, the requests are continuously flowed to a server through one channel, the multiple
requests are processed in parallel, and returned results are continuously flowed back to a client
through the other channel. Sending and processing could happens concurrently at client and
server sides if multiple requests are available.
In average, a client call just sends about a binary data with size of 50 bytes to a server for a
request, and gets a returned binary result with size of 50 bytes too. On an Ethernet network, the
MTU (Maximum Transmission Unit) for TCP is 1460 bytes. If the pattern 1 is used with your
applications, each of round trip can't fully use one data packet. The net efficiency, which is
calculated from the size of transferred binary data divided by MTU, is less than 0.035, and most
of packet is empty and wasted. The efficiency is just too low, and far way from 1! As you can
see, if your server supports many clients, such a low net work efficiency will kill the whole
network system. However, if your applications use pattern 2, the situation could be different. If a
client sends multiple requests to a server,or your code is able to coalesce all of requests into a big
one with one full package (1460), and the server assigns multiples requests into different
threads/queues for processing. If all of requests are not lengthy actions, all of returned results can
be also sent back to the client with one full package. The client sending, server processing and
server sending could be happens at the same time and in parallel if enough requests originates
from a client. As you can see, the net efficiency can be a data between 1 and 0.035 with pattern
2. The more requests from a client, the higher the net efficiency with pattern 2.
Unlike in-process and in-machine calls, cross machine calls are much slower. The time of a
round trip is 2.5 ms at the best for most of net hardware. Usually, it is around 30 ms per call. If
your client has to send 30 calls to a server continuously, your client user interfaces could be
frozen and be dead for about one second. If a request is a lengthy action, the server has to spend
a long time to process. For example, your server application starts a MTS object, which typically
costs you 2 seconds or more. Many more examples can be given with authentication, database
accessing, email accessing, and others. As you can see, if you use the pattern 1 for moving data
over internet, your client application runs badly. In order to solve this problem, you must design
your project very carefully so that the number of round-trips must be minimized. If not, your
whole network system runs slow if many client applications are connected to the server
application. If your applications use the pattern 1, in many cases you must use threads to do
background work and send requests to a server for processing in order to prevent graphic user
interfaces from being frozen. It is a common way to do so with all of painful thread problems
such as data synchronization, dead lock, and messy in coding logical. If your client applications
have too many threads, these problems will certainly hurt you when an application becomes
large and complicate. Right? In comparison to the pattern 1, Pattern 2 releases a client
application immediately after the client posts a set of requests into a local buffer of the client
machine. All of graphic user interfaces functions immediately and correctly because the pattern 2
uses non-blocking mode. There are no stay-still and waiting between a sending and a returning.
The client application just picks up an event sent from a client socket if one or a set of returned
results arrive in the buffer of the client machine. This feature is actually very important for your
client application development. You don't have to use threads now. Actually, there is no
necessity at all to use a threads for data communication over network if your application uses the
pattern 2. As you can imagine, all of threads problems are avoided. The end result dramatically
reduces the complexity of your client codes, data synchronization and dead lock etc.
Coding logic
Pattern 1 is better in coding logical sometimes, but not always. If your client applications are not
windows, pattern 1 will give your better coding logical. However, if your clients are window
applications, pattern 2 is more proper to you because pattern 2 is naturally in accordance with
window events.
##############################################
Q.4 List the five problems which may motivate an organization to move toward the database
approach. Explain the significance of each one to a manager to an organization.
A Trojan , is non-self-replicating malware that appears to perform a desirable function for the
user but instead facilitates unauthorized access to the user's computer system.
===========
A computer virus is a computer program that can copy itself and infect a computer. A true
virus can only spread from one computer to another when its host is taken to the target
computer; for instance because a user sent it over a network or the Internet, or carried it on a
removable medium such as a disk or cd etc.Viruses can increase their chances of spreading to
other computers by infecting files on a network file system or a file system that is accessed by
another computer.
=========================
VIRUSES ARE A THREAT TO THE COMPUTER.
Viruses - A virus is a small piece of software that piggybacks on real programs. For example, a
virus might attach itself to a program such as a spreadsheet program. Each time the spreadsheet
program runs, the virus runs, too, and it has the chance to reproduce (by attaching to other
programs) or wreak havoc.
E-mail viruses - An e-mail virus travels as an attachment to e-mail messages , and usually
replicates itself by automatically mailing itself to dozens of people in the victim's e-mail address
book. Some e-mail viruses don't even require a double-click -- they launch when you view the
infected message in the preview pane of your e-mail software .
Trojan - A Trojan is simply a computer program. The program claims to do one thing (it may
claim to be a game) but instead does damage when you run it . Trojan have no way to replicate
automatically.
Worms - A worm is a small piece of software that uses computer networks and security holes to
replicate itself. A copy of the worm scans the network for another machine that has a specific
security hole. It copies itself to the new machine using the security hole, and then starts
replicating from there, as well.