0% found this document useful (0 votes)
17 views17 pages

3RD Module Mis

System analysis is the first step of any system development where developers work to understand the problem, needs, and objectives of the project. It involves identifying the problem, gathering requirements, conducting a feasibility study, analyzing and modeling the system, and defining the project scope. Some key aspects are identifying the problem the system aims to address, communicating with customers to understand requirements, and evaluating technical, operational, and financial feasibility. The analysis helps visualize the system and its interactions through models and diagrams.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views17 pages

3RD Module Mis

System analysis is the first step of any system development where developers work to understand the problem, needs, and objectives of the project. It involves identifying the problem, gathering requirements, conducting a feasibility study, analyzing and modeling the system, and defining the project scope. Some key aspects are identifying the problem the system aims to address, communicating with customers to understand requirements, and evaluating technical, operational, and financial feasibility. The analysis helps visualize the system and its interactions through models and diagrams.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

System Analysis

It is the very first step in any system development and the critical phase
where developers come together to understand the problem, needs, and
objectives of the project.
Some of the key aspects of system analysis are:
1. Problem Identification: It involves identifying the issues that the
system is aiming to address. Whether it is automating a business
process, improving data management, or improving the user
experience, understanding the problem is the first and most
important step.
2. Requirements Gathering: Once the problem is identified, the next
step is to gather and write down the requirements. This involves
communicating with the customer and developer to gather
information about how the system is to be designed.
3. Feasibility study: Before going into development, it is important to
check the feasibility of the project. This includes the evaluation of
technical, operational, and financial aspects to determine the
feasibility of the proposed solution.
4. Analysis and modeling: To get a deep insight into the system,
analysts develop various models, such as Data Flow
Diagrams(DFD), Use Cases, and Entity-Relationship(ER) diagrams.
These models help the customer to visualize the system and its
interactions.
5. Scope Definition: Defining the scope of the system is important to
prevent adding excessive features to the system and ensure that
the project stays within its limits. It identifies what is part of the
system and what is not.
Example:
Fraud Detection Systems: Studying transaction patterns and
inconsistencies in financial data to develop algorithms for detecting and
preventing fraudulent activities.

System Design
System design is where the project’s blueprint is created. It involves
transforming the requirements identified in the analysis phase into a visual
solution. The main components of system design are as follows:
1. Architecture design: This phase describes the high level structure
of the system. This includes deciding software and hardware
components, their connectivity with each other and the overall
design of the system. Architects make critical designs ensuring
scalability, performance, and security.
2. Database configuration: The design phase includes defining the
database schema, data storage, and access methods. A database
programmer ensures that data is organized correctly, and that the
system can retrieve and process data efficiently.
3. Communication system: Communication controls are important
components of most systems. In this phase, designers create the
system’s visual elements and interactions.
4. Algorithm Design: Complex algorithms are designed in this phase.
Algorithms are the logic or program that makes systems work, and
their efficiency and accuracy are critical.
5. Security: Data security is a major concern in today’s digital world.
Developers must plan for security measures to protect the system
and its data, such as encryption, access control, and threat
measures.
6. Test and Maintenance: System plans should also include plans for
testing and validation. The designer must specify how the system
will be tested to ensure that it meets specified requirements and
performs as planned.
7. Documentation: Suitable documentation is necessary to maintain
the system and enable future use. During the design phase,
documentation should be created or updated to ensure that the
development team and end users can access the necessary
information.
Example :
Educational Management System:
• Components: Student database, course details, management
module, grading system.
• Modules: Enrollment, attendance tracking, assignment submission,
grades.
• Interfaces: Student portals, teacher interfaces, parents portal.
SYSTEM DEVELOPMENT MODELS

Sure, here is a brief overview of the prototype approach, classical SDLC approach,
and structured system design:

Prototype Approach

A prototype is a working model of a system that is used to demonstrate the system's


features and functionality to users. Prototyping is an iterative process that involves
creating a prototype, getting feedback from users, and refining the prototype based
on that feedback.

Benefits of the prototype approach:

• Improved user involvement: Users are involved in the development process


early and often, which can help to ensure that the system meets their needs.
• Reduced risk: Prototyping can help to identify and avoid potential problems
early in the development process.
• Increased flexibility: The prototype can be easily changed based on user
feedback.

Drawbacks of the prototype approach:

• May not be scalable: Prototypes are often not designed to be scalable to a


production environment.
• May create unrealistic expectations: Users may develop expectations for
features that are not in the final product.
• May not be documented: Prototypes are often not documented, which can
make it difficult to maintain the system.

When to use the prototype approach:

The prototype approach is a good choice for projects that:**

• Have evolving requirements


• Have a high degree of uncertainty
• Require user feedback

Classical SDLC Approach

The classical SDLC approach is a sequential model that breaks the system
development process into a series of phases, each with its own set of deliverables.
The phases are:

• Planning: This phase involves defining the scope of the project, identifying the
stakeholders, and developing a project plan.
• Analysis: This phase involves gathering information about the current
system, identifying problems and opportunities, and developing a feasibility
study.
• Design: This phase involves designing the logical architecture of the new
system, including the data structures and algorithms.
• Implementation: This phase involves coding and testing the system.
• Deployment: This phase involves deploying the system to production and
training users on how to use it.
• Maintenance: This phase involves fixing bugs, adding new features, and
providing ongoing support for the system.

Benefits of the classical SDLC approach:

• Well-defined process: The classical SDLC approach provides a well-defined


process that can help to ensure that projects are completed on time and
within budget.
• Reduced risk: The sequential nature of the classical SDLC approach can help
to reduce risk by identifying and addressing problems early in the
development process.
• Improved communication: The classical SDLC approach provides a common
framework for communicating about the system between the
analysts, designers, and stakeholders.

Drawbacks of the classical SDLC approach:

• Inflexible: The classical SDLC approach is inflexible and may not be suitable
for projects with evolving requirements.
• Time-consuming: The classical SDLC approach can be time-consuming, as
each phase must be completed before the next phase can begin.
• May not meet user needs: The classical SDLC approach may not meet user
needs, as users are not involved in the development process until the end.

When to use the classical SDLC approach:

The classical SDLC approach is a good choice for projects that:**

• Have well-defined requirements


• Are relatively small and simple
• Require a high degree of structure and control

Structured System Design (SSD)

SSD is a methodology for designing information systems that is based on the


principles of modularity, hierarchy, and abstraction. SSD emphasizes the use of
structured diagrams, such as data flow diagrams (DFDs) and entity-relationship
diagrams (ERDs), to document the system's requirements and design.

Benefits of SSD:

• Improved understanding of the system: SSD can help to improve the


understanding of the system by providing a clear and concise way to
document the system's requirements and design.
• Reduced risk: SSD can help to reduce risk by identifying and addressing
potential problems early in the design process.
• Improved maintainability: SSD can help to improve the maintainability of the
system by making it easier to understand and modify the system's code.

Drawbacks of SSD:

• Can be time-consuming: SSD can be time-consuming, as it requires the


creation of a large number of diagrams.
• May not be suitable for all systems: SSD is not suitable for all systems, such
as systems with evolving requirements.
• May not be flexible: SSD may not be flexible enough to accommodate
changes in the system's requirements.

When to use SSD:

SSD is a good choice for projects that:**

• Are large and complex


• Have well-defined requirements
• Require a high degree of structure and control
SYSTEM DEVELOPMENT PROCESS
The system development process is a structured framework for developing and
implementing information systems. It consists of several phases, each with its own
specific goals and deliverables. The specific phases may vary depending on the size
and complexity of the project, but the general framework remains the same.

System Analysis

The system analysis phase is the first phase of the system development process. It
involves identifying the business problem or opportunity that the new system is
intended to address. It also involves gathering and analyzing data about the existing
system, as well as the needs and requirements of the users.

The goals of the system analysis phase are to:

• Define the scope of the project


• Identify the problems or opportunities that the new system will address
• Gather and analyze data about the existing system
• Define the needs and requirements of the users

Logical System Design

The logical system design phase is the second phase of the system development
process. It involves designing the overall architecture of the new system. This
includes defining the data structures, processes, and interfaces of the system.

The goals of the logical system design phase are to:

• Develop a conceptual model of the system


• Define the data structures of the system
• Design the processes of the system
• Specify the interfaces of the system

The deliverables of the logical system design phase are a:

• System architecture document


• Data model
• Process diagrams
• User interface (UI) prototypes

Physical System Design


The physical system design phase is the third phase of the system development
process. It involves designing the physical implementation of the new system. This
includes selecting the hardware and software, as well as designing the network
infrastructure.

The goals of the physical system design phase are to:

• Select the hardware for the system


• Select the software for the system
• Design the network infrastructure for the system
• Develop detailed specifications for the system

The deliverables of the physical system design phase are a:

• Hardware specifications
• Software specifications
• Network design documents
• Detailed system specifications

Programming

The programming phase is the fourth phase of the system development process. It
involves developing the code for the new system. This code is written in a
programming language that is compatible with the hardware and software that has
been selected.

The goals of the programming phase are to:

• Write the code for the system


• Test the code to ensure that it meets the requirements
• Document the code

The deliverables of the programming phase are a:

• Source code
• Test plan
• Test results
• User documentation

Conversion
The conversion phase is the fifth phase of the system development process. It
involves converting the data from the old system to the new system. This may
involve data migration, data cleansing, and data validation.

The goals of the conversion phase are to:

• Convert the data from the old system to the new system
• Ensure that the data is accurate and complete
• Validate the data

The deliverables of the conversion phase are a:

• Data conversion plan


• Data migration scripts
• Data quality reports

System Maintenance and Reviews

The system maintenance and reviews phase is the sixth and final phase of the
system development process. It involves ongoing maintenance and support of the
new system. This includes fixing bugs, making enhancements, and training users.

The goals of the system maintenance and reviews phase are to:

• Fix bugs in the system


• Make enhancements to the system
• Train users on the system
• Monitor the performance of the system

The deliverables of the system maintenance and reviews phase are a:

• Bug reports
• Change requests
• User training materials
• Performance reports

Emerging technologies are rapidly transforming the field of Management Information


Systems (MIS). These technologies are providing businesses with new and
innovative ways to collect, store, analyze, and use data to make better decisions.
Some of the most important emerging technologies in MIS include:

1. Cloud computing: Cloud computing is a model for enabling ubiquitous,


convenient, on-demand network access to a shared pool of
configurable computing resources (e.g., networks, servers, storage,
applications, and services) that can be rapidly provisioned and
released with minimal management effort or service provider
interaction.

2. Big data analytics: Big data analytics is the process of collecting, storing, and
analyzing large and diverse amounts of data to extract meaningful insights.
Businesses are using big data analytics to improve customer satisfaction,
optimize operations, and develop new products and services.

3. Artificial intelligence (AI): AI is the ability of a computer or machine to mimic


intelligent human behavior. Businesses are using AI to automate tasks, make
predictions, and personalize experiences for their customers.

4. Machine learning (ML): ML is a type of AI that allows computers to learn from


data without being explicitly programmed. Businesses are using ML to
improve fraud detection, customer segmentation, and risk management.

5. Internet of Things (IoT): The IoT is the network of physical devices, vehicles,
home appliances, and other items embedded with electronics, software,
sensors, actuators, and connectivity which enables these objects to connect
and exchange data. Businesses are using the IoT to track assets, monitor
conditions, and improve efficiency.

These emerging technologies are having a profound impact on MIS. They are
enabling businesses to collect more data, analyze it faster, and make better
decisions. As a result, businesses are becoming more efficient, innovative, and
customer-centric.

Here are some examples of how emerging technologies are being used in MIS:

• A retail company is using cloud computing to store and analyze customer


data. This data is used to personalize marketing campaigns and improve
customer satisfaction.
• A manufacturing company is using big data analytics to identify patterns in
production data. This data is used to improve quality control and reduce
downtime.
• A financial services company is using AI to detect fraudulent transactions.
This AI is able to identify patterns in transaction data that are indicative of
fraud.
Data Structure
A data structure is a way of organizing and storing data in a computer's memory. It
defines how data is represented, accessed, and manipulated. Different data
structures are suited for different types of data and operations. Common data
structures include:

1. Arrays: Store a collection of elements of the same data type, accessed using
an index.

2. Linked Lists: Store a sequence of elements, each containing data and a link to
the next element.

3. Stacks: Implement a LIFO (Last In, First Out) access pattern, pushing and
popping elements.

4. Queues: Implement a FIFO (First In, First Out) access pattern, enqueuing and
dequeuing elements.

5. Trees: Hierarchical data structures with parent-child relationships, used for


efficient searching and sorting.

The success or failure of a system implementation can be influenced by a multitude


of factors, ranging from thorough planning and adequate resources to user
acceptance and effective change management. While there is no single formula for
ensuring success, understanding the common pitfalls and best practices can
significantly increase the likelihood of a positive outcome.

Factors Contributing to System Implementation Success

1. Clear Goals and Objectives: A clear understanding of the system's intended


purpose and the desired outcomes is crucial for guiding the implementation
process and measuring its success.

2. Thorough Planning and Analysis: Careful planning, including detailed project


documentation, risk assessment, and stakeholder analysis, lays the
foundation for a smooth implementation.

3. Effective Communication and Collaboration: Open and transparent


communication among all stakeholders, including users, management, and
technical teams, fosters collaboration and ensures alignment.
4. Adequate Resources and Support: Providing sufficient resources, including
personnel, training, and budget, is essential to address unforeseen challenges
and sustain momentum throughout the implementation.

5. User Involvement and Acceptance: Engaging users early in the process,


understanding their needs, and addressing their concerns is crucial for
gaining their acceptance and support.

6. Continuous Monitoring and Evaluation: Ongoing monitoring of the system's


performance, user feedback, and key metrics allows for timely identification of
issues and course correction.

Factors Contributing to System Implementation Failure

1. Unclear or Unrealistic Goals: Ambiguous or unrealistic expectations about the


system's impact can lead to disappointment and disillusionment.

2. Inadequate Planning and Analysis: Insufficient planning, overlooking potential


challenges, and neglecting stakeholder input can create obstacles and
setbacks.

3. Poor Communication and Collaboration: Lack of communication or


collaboration among stakeholders can lead to misunderstandings,
misalignment, and resistance to change.

4. Insufficient Resources and Support: Inadequate staffing, training, or budget


can hinder progress, escalate costs, and compromise the quality of the
implementation.

5. Neglecting User Needs and Acceptance: Failure to involve users early,


understand their concerns, and address their needs can result in resistance,
low adoption, and reduced system effectiveness.

6. Lack of Ongoing Monitoring and Evaluation: Failing to monitor the system's


performance, user feedback, and key metrics can prevent the identification of
issues and timely corrective actions.

By understanding the factors that contribute to both success and failure,


organizations can increase their chances of implementing systems that meet their
objectives and deliver value to their stakeholders.

Quality control (QC) of information systems (IS)


is a crucial process that ensures the systems meet the desired requirements and
deliver the expected value. It involves a set of activities and procedures aimed at
identifying, preventing, and eliminating defects or errors in the IS development
lifecycle.

Objectives of Quality Control in Information Systems

1. Ensure System Functionality: To verify that the system meets the specified
functional requirements and performs its intended tasks correctly.

2. Maintain System Reliability: To ensure that the system operates consistently


and reliably, minimizing downtime and data loss.

3. Enhance System Usability: To evaluate the user interface and user


experience, ensuring that the system is easy to learn, use, and navigate.

4. Optimize System Performance: To assess the system's responsiveness,


efficiency, and resource utilization under different workloads.

5. Protect System Security: To identify and address potential security


vulnerabilities, safeguarding data integrity, confidentiality, and availability.

Quality Control Methods in Information Systems

1. Static Testing: Involves reviewing and analyzing code, documentation, and


designs without executing the system to identify potential defects.

2. Dynamic Testing: Involves executing the system to test its functionality,


performance, and behavior under various scenarios.

3. Test-Driven Development (TDD): A software development process where


tests are written before the code, ensuring that the code meets the
requirements and functions as intended.

4. Continuous Integration and Continuous Delivery (CI/CD): An automated


process that integrates code changes frequently, builds and tests the system
regularly, and deploys it to production environments quickly.

5. User Acceptance Testing (UAT): Involves having actual users test the system
to ensure it meets their needs and expectations.

Quality Control Tools in Information Systems

1. Code Linters: Analyze code for style, syntax, and potential bugs.

2. Static Code Analyzers: Detect deeper code defects, potential vulnerabilities,


and security flaws.
3. Integration Testing Tools: Automate integration testing of multiple components
interacting together.

4. Performance Testing Tools: Measure system performance under load and


identify performance bottlenecks.

5. Security Testing Tools: Scan for vulnerabilities, simulate attacks, and assess
security posture.

6. User Interface (UI) Testing Tools: Evaluate the usability and accessibility of
the user interface.

Benefits of Quality Control in Information Systems

1. Reduced Costs: Early detection and prevention of defects saves time, effort,
and resources associated with rework and remediation.

2. Improved System Reliability: Reduces the risk of system failures, downtime,


and data loss.

3. Enhanced User Satisfaction: Increases user acceptance, usability, and overall


satisfaction with the system.

4. Strengthened Security: Protects sensitive data and ensures compliance with


security standards.

5. Competitive Advantage: Delivers high-quality, reliable, and secure systems


that enhance an organization's reputation and competitive edge.

SYSTEM DESIGN TOOLS AND TECHNIQUES

1. Flowchart

A flowchart is a graphical representation of a process or algorithm. It uses a


set of symbols, such as rectangles, diamonds, and arrows, to represent steps
in the process and the flow of information between those steps. Flowcharts
are a simple and easy-to-understand way of communicating complex
processes.

2. Data flow diagram (DFD)

A data flow diagram (DFD) is a graphical representation of the flow of data


through a system. It shows the processes, data stores, and external entities
that interact with the system. DFDs are used to understand the system's data
requirements, identify potential problems, and communicate the system
design to stakeholders.

3. Data dictionary

A data dictionary is a document that defines the data used in a system. It


includes information about each data element, such as its name, data type,
length, and dependencies on other data elements. Data dictionaries are used to
ensure that data is used consistently throughout the system and to make it easier
to understand and maintain the system.

4. Structured English

Structured English is a way of writing informal specifications for a system. It


uses a set of rules to make the specifications clear, concise, and easy to
understand. Structured English is often used to supplement other system
design documents, such as flowcharts and DFDs.

5. Decision table

A decision table is a table that shows the different actions that should be taken
based on a set of conditions. It is a useful tool for documenting complex decision-
making processes. Decision tables are often used in conjunction with flowcharts
and DFDs.

6. Decision tree

A decision tree is a diagram that shows the different outcomes of a series of


decisions. It is a useful tool for visualizing the different paths that a system can
take and for identifying the best course of action. Decision trees are often used in
conjunction with other system design documents, such as flowcharts and DFDs.

DFD is the abbreviation for Data Flow Diagram. The flow of data of a
system or a process is represented by DFD. It also gives insight into the
inputs and outputs of each entity and the process itself. DFD does not have
control flow and no loops or decision rules are present. Specific operations
depending on the type of data can be explained by a flowchart. It is a
graphical tool, useful for communicating with users ,managers and other
personnel. it is useful for analyzing existing as well as proposed system.
It should be pointed out that a DFD is not a flowchart. In drawing the DFD,
the designer has to specify the major transforms in the path of the data
flowing from the input to the output. DFDs can be hierarchically organized,
which helps in progressively partitioning and analyzing large systems.
It provides an overview of
• What data is system processes.
• What transformation are performed.
• What data are stored.
• What results are produced , etc.
Data Flow Diagram can be represented in several ways. The DFD belongs
to structured-analysis modeling tools. Data Flow diagrams are very popular
because they help us to visualize the major steps and data involved in
software-system processes.
Characteristics of DFD
• DFDs are commonly used during problem analysis.
• DFDs are quite general and are not limited to problem analysis for
software requirements specification.
• DFDs are very useful in understanding a system and can be
effectively used during analysis.
• It views a system as a function that transforms the inputs into
desired outputs.
• The DFD aims to capture the transformations that take place
within a system to the input data so that eventually the output
data is produced.
• The processes are shown by named circles and data flows are
represented by named arrows entering or leaving the bubbles.
Components of DFD
The Data Flow Diagram has 4 components:
• Process Input to output transformation in a system takes place
because of process function. The symbols of a process are
rectangular with rounded corners, oval, rectangle or a circle. The
process is named a short sentence, in one word or a phrase to
express its essence
• Data Flow Data flow describes the information transferring
between different parts of the systems. The arrow symbol is the
symbol of data flow. A relatable name should be given to the flow
to determine the information which is being moved. Data flow also
represents material along with information that is being moved.
Material shifts are modeled in systems that are not merely
informative. A given flow should only transfer a single type of
information. The direction of flow is represented by the arrow
which can also be bi-directional.
• Warehouse The data is stored in the warehouse for later use. Two
horizontal lines represent the symbol of the store. The warehouse
is simply not restricted to being a data file rather it can be anything
like a folder with documents, an optical disc, a filing cabinet. The
data warehouse can be viewed independent of its implementation.
When the data flow from the warehouse it is considered as data
reading and when data flows to the warehouse it is called data
entry or data updating.
• Terminator The Terminator is an external entity that stands
outside of the system and communicates with the system. It can
be, for example, organizations like banks, groups of people like
customers or different departments of the same organization,
which is not a part of the model system and is an external entity.
Modeled systems also communicate with terminator.
Rules for creating DFD
• The name of the entity should be easy and understandable
without any extra assistance(like comments).
• The processes should be numbered or put in ordered list to be
referred easily.
• The DFD should maintain consistency across all the DFD levels.
• A single DFD can have a maximum of nine processes and a
minimum of three processes.
Symbols Used in DFD
• Square Box: A square box defines source or destination of the
system. It is also called entity. It is represented by rectangle.
• Arrow or Line: An arrow identifies the data flow i.e. it gives
information to the data that is in motion.
• Circle or bubble chart: It represents as a process that gives us
information. It is also called processing box.
• Open Rectangle: An open rectangle is a data store. In this data is
store either temporary or permanently.
Levels of DFD
DFD uses hierarchy to maintain transparency thus multilevel DFD’s can be
created. Levels of DFD are as follows:
• 0-level DFD: It represents the entire system as a single bubble and
provides an overall picture of the system.
• 1-level DFD: It represents the main functions of the system and
how they interact with each other.
• 2-level DFD: It represents the processes within each function of
the system and how they interact with each other.
• 3-level DFD: It represents the data flow within each process and
how the data is transformed and stored.
Advantages of DFD
• It helps us to understand the functioning and the limits of a
system.
• It is a graphical representation which is very easy to understand as
it helps visualize contents.
• Data Flow Diagram represent detailed and well explained diagram
of system components.
• It is used as the part of system documentation file.
• Data Flow Diagrams can be understood by both technical or
nontechnical person because they are very easy to understand.
Disadvantages of DFD
• At times DFD can confuse the programmers regarding the system.
• Data Flow Diagram takes long time to be generated, and many

times due to this reasons analysts are denied permission to work


on it.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy