1) .What Are The Elements & Characteristics of System
1) .What Are The Elements & Characteristics of System
1) .What Are The Elements & Characteristics of System
Input: Input is what data the system receives to produce a certain output.
Output: What goes out from the system after being processed is known as Output.
Control: In order to get the desired results it is essential to monitor and control the input,
Processing and the output of the system. This job is done by the control.
Feedback: The Output is checked with the desired standards of the output set and the
necessary steps are taken for achieving the output as per the standards, this process is
called as Feedback. It helps to achieve a much better control in the system.
Boundaries: The boundaries are nothing but the limit of the system. Setting up
boundaries helps for better concentration of the actives carried in the system.
Environment: The things outside the boundary of the system are known as
environment. Change in the environment affects the working of the system.
As discussed above, a system is a set of components working together to achieve some goal. The
basic elements of the system may be listed as:
Resources
Procedures
Data/Information
Intermediate Data
Processes
Resources
Every system requires certain resources for the system to exist. Resources can be hardware,
software or liveware. Hardware resources may include the computer, its peripherals, stationery
etc. Software resources would include the programs running on these computers and the liveware
would include the human beings required to operate the system and make it functional.
Thus these resources make an important component of any system. For instance, a Banking
system cannot function without the required stationery like cheque books, pass books etc. such
systems also need computers to maintain their data and trained staff to operate these computers
and cater to the customer requirements.
Procedures
Every system functions under a set of rules that govern the system to accomplish the defined
goal of the system. This set of rules defines the procedures for the system to Chapter 1 -
Introduction to Systems operate. For instance, the Banking systems have their predefined rules
for providing interest at different rates for different types of accounts.
Data/Information
Every system has some predefined goal. For achieving the goal the system requires certain
inputs, which are converted into the required output. The main objective of the System is to
produce some useful output. Output is the outcome of processing. Output can be of any nature
e.g. goods, services or information.
However, the Output must conform to the customer's expectations. Inputs are the elements that
enter the system and produce Output. Input can be of various kinds, like material, information,
etc.
Intermediate Data
Various processes process system's Inputs. Before it is transformed into Output, it goes through
many intermediary transformations. Therefore, it is very important to identify the Intermediate
Data. For example, in a college when students register for a new semester, the initial form
submitted by student goes through many departments. Each department adds their validity
checks on it.
Finally the form gets transformed and the student gets a slip that states whether the student has
been registered for the requested subjects or not. It helps in building the System in a better way.
Intermediate forms of data occur when there is a lot of processing on the input data. So,
intermediate data should be handled as carefully as other data since the output depends upon it.
Processes
The systems have some processes that make use of the resources to achieve the set goal under
the defined procedures. These processes are the operational element of the system.
For instance in a Banking system there are several processes that are carried out. Consider for
example the processing of a cheque as a process. A cheque passes through several stages before
it actually gets processed and converted. These are some of the processes of the Banking system.
All these components together make a complete functional system.
Every system has a predefined goal or objective towards which it works. A system cannot exist
without a defined objective. For example an organization would have an objective of earning
maximum possible revenues, for which each department and each individual has to work in
coordination.
Standards
It is the acceptable level of performance for any system. Systems should be designed to meet
standards. Standards can be business specific or organization specific.
For example take a sorting problem. There are various sorting algorithms. But each has its own
complexity. So such algorithm should be used that gives most optimum efficiency. So there
should be a standard or rule to use a particular algorithm. It should be seen whether that
algorithm is implemented in the system.
Environment
Every system whether it is natural or man made co-exists with an environment. It is very
important for a system to adapt itself to its environment. Also, for a system to exist it should
change according to the changing environment. For example, we humans live in a particular
environment. As we move to other places, there are changes in the surroundings but our body
gradually adapts to the new environment. If it were not the case, then it would have been very
difficult for human to survive for so many thousand years.
Another example can be Y2K problem for computer systems. Those systems, which are not Y2K
compliant, will not be able to work properly after year 2000. For computer systems to survive it
is important these systems are made Y2K compliant or Y2K ready.
Feed Back
Feedback is an important element of systems. The output of a system needs to be observed and
feedback from the output taken so as to improve the system and make it achieve the laid
standards. In fig 1.1, it is shown that a system takes input. It then transforms it into output. Also
some feedback can come from customer (regarding quality) or it can be some intermediate data
(the output of one process and input for the other) that is required to produce final output.
Every system has defined boundaries within which it operates. Beyond these limits the system
has to interact with the other systems. For instance, Personnel system in an organization has its
work domain with defined procedures. If the financial details of an employee are required, the
system has to interact with the Accounting system to get the required details.
Interfaces are another important element through which the system interacts with the outside
world. System interacts with other systems through its interfaces. Users of the systems also
interact with it through interfaces. Therefore, these should be customized to the user needs.
These should be as user friendly as possible.
Good user interface design facilitates finishing the task at hand without drawing
unnecessary attention to itself. Graphic design and typography are utilized to
support its usability, influencing how the user performs certain interactions and
improving the aesthetic appeal of the design; design aesthetics may enhance or
detract from the ability of users to use the functions of the interface.[1] The design
process must balance technical functionality and visual elements (e.g., mental
model) to create a system that is not only operational but also usable and adaptable
to changing user needs.
Processes
User interface design requires a good understanding of user needs. There are
several phases and processes in the user interface design, some of which are more
demanded upon than others, depending on the project.[2] (Note: for the remainder
of this section, the word system is used to denote any project whether it is a
website, application, or device.)
Suitability for the task: the dialogue is suitable for a task when it supports
the user in the effective and efficient completion of the task.
Self-descriptiveness: the dialogue is self-descriptive when each dialogue
step is immediately comprehensible through feedback from the system or
is explained to the user on request.
Controllability: the dialogue is controllable when the user is able to initiate
and control the direction and pace of the interaction until the point at
which the goal has been met.
Conformity with user expectations: the dialogue conforms with user
expectations when it is consistent and corresponds to the user
characteristics, such as task knowledge, education, experience, and to
commonly accepted conventions.
Error tolerance: the dialogue is error tolerant if despite evident errors in
input, the intended result may be achieved with either no or minimal action
by the user.
Suitability for individualization: the dialogue is capable of individualization
when the interface software can be modified to suit the task needs,
individual preferences, and skills of the user.
Suitability for learning: the dialogue is suitable for learning when it supports
and guides the user in learning to use the system.
The information presentation is described in Part 12 of the ISO 9241 standard for
the organization of information (arrangement, alignment, grouping, labels,
location), for the display of graphical objects, and for the coding of information
(abbreviation, color, size, shape, visual cues) by seven attributes. The "attributes of
presented information" represent the static aspects of the interface and can be
generally regarded as the "look" of the interface. The attributes are detailed in the
recommendations given in the standard. Each of the recommendations supports
one or more of the seven attributes. The seven presentation attributes are:
The user guidance in Part 13 of the ISO 9241 standard describes that the user
guidance information should be readily distinguishable from other displayed
information and should be specific for the current context of use. User guidance
can be given by the following five means:
Research
User interface design has been a topic of considerable research, including on its
aesthetics.[5] Standards have been developed as far back as the 1980s for defining
the usability of software products. One of the structural bases has become the IFIP
user interface reference model. The model proposes four dimensions to structure
the user interface:
This model has greatly influenced the development of the international standard
ISO 9241 describing the interface design requirements for usability. The desire to
understand application-specific UI issues early in software development, even as
an application was being developed, led to research on GUI rapid prototyping tools
that might offer convincing simulations of how an actual application might behave
in production use.[6] Some of this research has shown that a wide variety of
programming tasks for GUI-based software can, in fact, be specified through
means other than writing program code.[7]
Conceptual supervisors – People who envision the project. They know what
they want the interface to be able to do and they are responsible for guiding
the other members of the team to ensure that their vision is realized.
Visual Designers – Professionally trained in the art of information design. They
help conceptual supervisors visualize the interface.
Programmers/Implementers – They are responsible for functionality; they
interpret an interface design by writing the code to transform it into a
functioning tool.
User – They test the interface and verify that they find it usable. They give
input that helps the Programmers/Implementers fine tune the interface,
making the interface behave in a manner that is more familiar and easy to use.
User study was invaluable in helping refine interface design. Thanks to user
feedback, the interface design is now visually connected to the rest of the
interface and behaves in a manner that users find more familiar and easy to
use.
Each type of contributor is invaluable and the most successful projects will have at
least one representative of each category involved throughout implementation. .[8]
5. Negative Entropy: Entropy is the law of nature which suggests that all
organized forms move towards disorganization and demise. In order to
survive, open systems must move to arrest the entropic process; they must
acquire negative entropy. This is possible by importing more energy from the
environment than what a system spends. For example, a business organization
must earn profit in order to survive on long-term basis.
successful. .
There are three general approaches for getting information regarding the users requirements.
They are
Asking
Getting information from the existing information system
Prototyping.
ASKING
This strategy obtains information from users by simply asking them about the requirements. It
assumes a stable system where users are well informed and can overcome biases in defining
their problem. There are three key asking methods.
2. Brainstorming: Brainstorming is a technique used for generating new ideas and obtaining
general information requirements. This method is appropriate for getting non conventional
solutions to problems. A guided approach to brainstroming asks each participant to define ideal
solutions and then select the best one. It works well for users who have sound system
knowledge but have the difficulty of accepting new ideas.
3.Group consensus: This method asks participants for their expectations regarding specific
variables. Each participant fills out a questionnaire. The results are summarized and given to
participants along with a follow-up questionnaire. Participants are invited to change their
responses. The results are again summarized and given back to the participants. This debate
by questionnaire continues until participants responses have converged enough. This method is
advantageous than brainstorming because the participants are not subjected to psychological
pressure.
GETTING INFORMATION FROM EXISTING INFORMATION SYSTEM
There are two methods in extracting information from an already existing system
2. Decision Analysis
This method breaks down a problem into parts, which allows the user to focus
separately on the critical issues.
It also determines policy and organizational objectives relevant to complete each major
decision.
The analyst and the user then refine the decision process and the information
requirements for a final statement of information requirements.
In this method information needs are clearly linked to decision and organizational
objectives.
It is useful for unstructured decisions and information tailored to the user’s decision-
making style.
5).What is System Testing? Explain various typing of system Testing?
System testing of software or hardware is testing conducted on a complete, integrated system to
evaluate the system's compliance with its specified requirements. System testing falls within the
scope of black-box testing, and as such, should require no knowledge of the inner design of the
code or logic. [1]
As a rule, system testing takes, as its input, all of the "integrated" software components that have
passed integration testing and also the software system itself integrated with any applicable
hardware system(s). The purpose of integration testing is to detect any inconsistencies between
the software units that are integrated together (called assemblages) or between any of the
assemblages and the hardware. System testing is a more limited type of testing; it seeks to detect
defects both within the "inter-assemblages" and also within the system as a whole.
The following examples are different types of testing that should be considered during System
testing:
Structured Programming
In the process of coding, the lines of code keep multiplying, thus, size of the software
increases. Gradually, it becomes next to impossible to remember the flow of program.
If one forgets how software and its underlying programs, files, procedures are
constructed it then becomes very difficult to share, debug and modify the program.
The solution to this is structured programming. It encourages the developer to use
subroutines and loops instead of using simple jumps in the code, thereby bringing
clarity in the code and improving its efficiency Structured programming also helps
programmer to reduce coding time and organize code properly.
Functional Programming
Functional programming is style of programming language, which uses the concepts of
mathematical functions. A function in mathematics should always produce the same
result on receiving the same argument. In procedural languages, the flow of the
program runs through procedures, i.e. the control of program is transferred to the
called procedure. While control flow is transferring from one procedure to another, the
program changes its state.
Pure functions - These functions do not include destructive updates, that is,
they do not affect any I/O or memory and if they are not in use, they can easily
be removed without hampering the rest of the program.
Common Lisp, Scala, Haskell, Erlang and F# are some examples of functional
programming languages.
Programming style
Programming style is set of coding rules followed by all the programmers to write the
code. When multiple programmers work on the same software project, they frequently
need to work with the program code written by some other developer. This becomes
tedious or at times impossible, if all developers do not follow some standard
programming style to code the program.
An appropriate programming style includes using function and variable names relevant
to the intended task, using well-placed indentation, commenting code for the
convenience of reader and overall presentation of code. This makes the program code
readable and understandable by all, which in turn makes debugging and error solving
easier. Also, proper coding style helps ease the documentation and updation.
Coding Guidelines
Practice of coding style varies with organizations, operating systems and language of
coding itself.
Indenting - This is the space left at the beginning of line, usually 2-8
whitespace or single tab.
Line length and wrapping - Defines how many characters should be there in
one line, mostly a line is 80 characters long. Wrapping defines how a line should
be wrapped, if is too long.
Functions - This defines how functions should be declared and invoked, with
and without parameters.
Variables - This mentions how variables of different data types are declared
and defined.
Software Documentation
Software documentation is an important part of software process. A well written
document provides a great tool and means of information repository necessary to
know about software process. Software documentation also provides information about
how to use the product.
Source of this document can be previously stored data about the software,
already running software at the client’s end, client’s interview, questionnaires
and research. Generally it is stored in the form of spreadsheet or word
processing document with the high-end software management team.
Software maintanance
Software maintenance in software engineering is the modification of a software product after
delivery to correct faults, to improve performance or other attributes.[1]
A common perception of maintenance is that it merely involves fixing defects. However, one
study indicated that over 80% of maintenance effort is used for non-corrective actions.[2] This
perception is perpetuated by users submitting problem reports that in reality are functionality
enhancements to the system. More recent studies put the bug-fixing proportion closer to 21%.[3]
Software maintenance and evolution of systems was first addressed by Meir M. Lehman in 1969.
Over a period of twenty years, his research led to the formulation of Lehman's Laws (Lehman
1997). Key findings of his research include that maintenance is really evolutionary development
and that maintenance decisions are aided by understanding what happens to systems (and
software) over time. Lehman demonstrated that systems continue to evolve over time. As they
evolve, they grow more complex unless some action such as code refactoring is taken to reduce
the complexity.
Adaptive – modifying the system to cope with changes in the software environment (DBMS, OS)
[4]
The key software maintenance issues are both managerial and technical. Key management issues
are: alignment with customer priorities, staffing, which organization does maintenance,
estimating costs. Key technical issues are: limited understanding, impact analysis, testing,
maintainability measurement.
Software maintenance is a very broad activity that includes error correction, enhancements of
capabilities, deletion of obsolete capabilities, and optimization. Because change is inevitable,
mechanisms must be developed for evaluation, controlling and making modifications.
So any work done to change the software after it is in operation is considered to be maintenance
work. The purpose is to preserve the value of software over the time. The value can be enhanced
by expanding the customer base, meeting additional requirements, becoming easier to use, more
efficient and employing newer technology. Maintenance may span for 20 years, whereas
development may be 1-2 years.
An integral part of software is the maintenance one, which requires an accurate maintenance plan
to be prepared during the software development. It should specify how users will request
modifications or report problems. The budget should include resource and cost estimates. A new
decision should be addressed for the developing of every new system feature and its quality
objectives. The software maintenance, which can last for 5–6 years (or even decades) after the
development process, calls for an effective plan which can address the scope of software
maintenance, the tailoring of the post delivery/deployment process, the designation of who will
provide maintenance, and an estimate of the life-cycle costs. The selection of proper enforcement
of standards is the challenging task right from early stage of software engineering which has not
got definite importance by the concerned stakeholders.
1. The implementation process contains software preparation and transition activities, such as the
conception and creation of the maintenance plan; the preparation for handling problems
identified during development; and the follow-up on product configuration management.
7).Explain the SAD-Forms Design
People read from forms, write on forms and spend hours handling forms and filing forms. The data
the forms carry come from people and the informational output goes to people. Form is a tool with a
message. It is the physical carrier of data-of information. It is an either an authority for action or a
request for action.
Classification of forms:
A printed form is generally classified by what it does in the system. There are three primary
classifications
2.Memory: This form is a record of historical data that remains in a file, is used for reference, and serves
as control on key details.
3.Report: This form guides supervisors and other administrators in the activities. It provides data on a
project or a job.
Form design follows analyzing forms. Since the purpose of a form is to communicate effectively
through forms design, there are several major requirements.
1.Identification and wording: The form title must clearly identify its purpose. Columns and rows should
be labeled to avoid confusion. The form should also be identified by firm name or code number to make
it easy to reorder.
2.Maximum readability and use: The form must be easy to use and fill out. It should be legible,
intelligible and uncomplicated. Ample writing space must be provided for inserting data.
3.Physical factors: The forms composition, color, layout and paper stock should lend themselves to easy
reading. Pages should be numbered when multipage reports are being generated for the user.
4.Order of data items: The data requested should reflect a logical sequence. Related data should be in
adjacent positions. Data copied from source documents should be in the same sequence on both forms.
5.Ease of data entry: If used for data entry, the form should have field positions indicated under each
column of data and should have some indication of where decimal points are.
6.Size and arrangement: The form must be easily stored and filed. It should provide for signatures.
Important items must be in a prominent action on the form.
7.Use of instructions: The instructions that accompany a form should clearly show how it is used and
handled.
8.Efficiency considerations: The form must be cost effective. This means eliminating unnecessary data
and facilitating reading lines across the form.
9.Type of report: Forms design should also consider whether the content is executive summary,
intermediate managerial information, or supporting data. The user requirements for each type
determine the final form design.
Carbon paper as form copier:
Carbon paper is one way of duplicating information in a form. There are two types of carbon,
classified by the action they encounter
1.Glide action carbon is inserted between a set of forms. It allows the glide action of the pencil to
transfer dye to the surface of the sheet beneath.
2.Hammer action carbon is used in typewriters and line printers of computers. The hammer action of
the keys transfers the carbon coating to the sheet beneath.
1.One time carbon: It is made of inexpensive Kraftex paper. It is interleaved between two sheets in the
form. It is used once and then thrown away. It is the most cost-effective for multipart forms.
2.Carbon backed paper: The back of each form copy is coated with carbon, which transfers data to the
copy beneath.
3.NCR ( No Carbon Required) paper: The top sheet is chemically treated with invisible dye, that allows
impressions to be transferred to the next lower copy. It is the cleanest and the costliest method. Erasing
removes the coating permanently.
The readability of the carbon copies depends on the color and outline. In multiple copies, the copies
below the original should be lighter in weight for easy transfer of the carbon. Generally, one time carbon
is preferred when a small number of copies are required. If carbon is unacceptable, NCR can be used
8).Explain the different levels of quality
Assurance?
Quality assurance (QA) is a way of preventing mistakes or defects in
manufactured products and avoiding problems when delivering solutions or services to
customers; The terms "quality assurance" and "quality control" are often used interchangeably to
refer to ways of ensuring the quality of a service or product.[3] For instance, the term "assurance"
is often used as follows: Implementation of inspection and structured testing as a measure of
quality assurance in a television set software project at Philips Semiconductors is described.[4]
The term "control", however, is used to describe the fifth phase of the DMAIC model. DMAIC is
a data-driven quality strategy used to improve processes.[5]
Two principles included in quality assurance are: "Fit for purpose" (the product should be
suitable for the intended purpose); and "right first time" (mistakes should be eliminated). QA
includes management of the quality of raw materials, assemblies, products and components,
services related to production, and management, production and inspection processes.[citation needed]
Suitable quality is determined by product users, clients or customers, not by society in general. It
is not related to cost, and adjectives or descriptors such as "high" and "poor" are not applicable.
For example, a low priced product may be viewed as having high quality because it is
disposable, whereas another may be viewed as having poor quality because it is not
disposable.[citation needed]
There are four levels of software testing: Unit >> Integration >> System
>> Acceptance.
Level Summary
A level of the software testing process where individual units are combined and
Integration
tested as a group. The purpose of this level of testing is to expose faults in the
Testing
interaction between integrated units.
A level of the software testing process where a system is tested for acceptability.
Acceptance
The purpose of this test is to evaluate the system’s compliance with the business
Testing
requirements and assess whether it is acceptable for delivery.