System Analysis and Design Notes
System Analysis and Design Notes
Chapter 1
Overview of Systems Analysis and Design
What is System?
A system is a collection of components (subsystems) that work together to realize some
objective. For example, the library system contains librarians, books, and periodicals as
components to provide knowledge for its members.
Subsystem Subsystem
Inputs Outputs
Subsystem
Feedback
System boundary
System environment
when reassigning salespersons to new sales territories after evaluating feedback about
their sales performance.
Theoretical approaches to systems have introduced many generalized principles. Goal
setting is one such principle. It defines exactly what the system is supposed to do. There
are principles concerned with system structure and behavior. System boundary is one
such a principle. This defines the components that make up the system. Anything outside
the system boundary is known as system environment. A system can be made up of any
number of subsystems. Each subsystem carries out part of the system function i.e. part of
the system goal. The subsystems communicate by passing messages between themselves.
Several systems may share the same environment. Some of these systems may be
connected to one another by means of a shared boundary, or interface. A system that
interacts with other systems in its environment is called open system. Finally, a system
that has the ability to change itself or environment in order to survive is called an
adaptive system.
job roles associated with the overall system, controls and the people who use the software
along with their work methods.
In systems analysis and design, we use various methodologies, techniques and tools
that have been developed, tested, and widely used over the years to assist people during
system analysis and design.
Methodologies are comprehensive, multistep approaches to systems development that
will guide your work and influence the quality of your final product: the information
system. Methodologies use a standard set of steps. A methodology adopted by an
organization will be consistent with its general management style. Most methodologies
incorporate several development techniques.
Techniques are particular processes that will help to ensure that your work is well
thought-out, complete, and comprehensible to other on the project team. Techniques also
provide support for a wide range of tasks like conducting interviews, planning and
managing the activities in a system development project, diagramming the system’s
logic, and designing the reports that the system will generate.
Tools are typically computer programs that make it easy to use and benefit from the
techniques and to faithfully follow the guidelines of the overall development
methodology.
To be effective, both techniques and tools must be consistent with an organizations
system development methodology. These make easy for system developers to conduct the
steps in methodology.
Character and Ethics: The system analyst should have strong character and a sense
of right and wrong. This is needed to hide the sensitive and confidential facts and
information of an organization.
System Analysis and Design Skill: All systems analysts should know concepts and
principles, tools, and techniques of information systems development.
studies the organization’s current procedures and the information systems used to
perform organizational tasks. The analyst work with users to determine what the users
want from a proposed system. The analyst carefully studies any current systems, manual
and computerized, that might be replaced or enhanced as part of this project. The analyst
studies the requirements and structures them according to their interrelationships and
eliminates any redundancies; generates alternative initial designs to match the
requirements; compare these alternatives to determine which best meets the requirements
within the cost, labor, and technical levels the organization is willing to commit to the
development process. The output of this phase is a description of the recommended
alternative solution. Once the recommendation is accepted by owners, you can begin to
make plans to acquire any hardware and system software necessary to build or operate
the system as proposed.
The next phase is called design. During this phase, you convert the description of
the recommended alternative solution into logical and then physical system specification.
Here, you must design all aspects of the system form input and output screens to reports,
databases, and computer processes. Logical design is the part of the design process that
is independent of any specific hardware or software platform. Theoretically, the system
could be implemented on any hardware and systems software. Physical design is the part
of the design phase in which the logical specifications of the system form logical design
are transformed into technology-specific details from which all programming and system
construction can be accomplished.
The next phase is called implementation. In this phase, the information system is
coded, tested, installed, and supported in the organization. During coding, programmers
write the programs that make up the information system. During testing, programmers
and analysts test individual programs and the entire system in order to find and correct
errors. During installation, the new system becomes a part of the daily activities of the
organization. Implementation activities also include initial user support such as the
finalization of documentation, training programs, and ongoing user assistance.
The final phase of SDLC is called maintenance. In this phase, information
system is systematically repaired and improved. When a system is operating in an
organization, users sometimes find problems with how it works and often think of better
ways to perform its functions. Also the organization’s needs with respect to the system
change over time. In maintenance, you make the changes that users ask for and modify
the system to reflect changing business conditions.
Waterfall model is the oldest and the most widely used paradigm for information
systems development. While it does have weaknesses, it is significantly better than a
haphazard approach. This model is suitable for the projects in which user requirements
are certain and precise. The problems that are sometimes encountered with the linear
sequential model are:
Changes can cause confusion as the project team proceeds.
It is often difficult for the customer to state all requirements explicitly. The linear
sequential model requires this and makes difficulty to respond to changing
customer requirements.
A working version of the system will be available to customers late in the project
time-span. A major blunder, if undetected until the working program is reviewed,
can be disastrous.
The linear nature of the classic life cycle leads to “blocking states” in which some
project team members must wait for other members of the team to complete
dependent tasks.
User involvement is limited.
In prototyping, the analyst works with users to determine the initial or basic requirements
for the system. The analyst then quickly builds a prototype. When the prototype is
completed, the users work with it and tell the analyst what they like and do not like about
it. The analyst uses this feedback to improve the prototype and takes the new version
back to the users. This iterative process continues until the users are relatively satisfied
with what they have seen.
Design tools – These tools are used to construct system components including system
inputs and outputs. These are also called prototyping tools.
Documentation tools – These tools are used to assemble, organize, and report on
subsequently transformed into program code. Reverse engineering, on the other hand,
allows a CASE tool to read existing program code and transform that code into a
representative system model that can be edited and refined by the systems analyst. CASE
tools that allow for bi-directional, forward and reverse engineering are said to provide for
“round-trip engineering”. The figure below shows CASE tool architecture.