Ism (Unit 2)
Ism (Unit 2)
COST BENEFIT ANALYSIS (CBA) IS A SYSTEMATIC APPROACH USED TO EVALUATE THE ECONOMIC VIABILITY OF
PROJECTS OR DECISIONS BY COMPARING THE BENEFITS DERIVED FROM A PROJECT WITH THE ASSOCIATED COSTS.
THESE INVOLVE NUMERICAL DATA THAT CAN BE MEASURED AND CALCULATED. KEY COMPONENTS INCLUDE:
1.MONETARY COSTS:
1. Direct Costs: Salaries, equipment, software, training, etc.
2. Indirect Costs: Overhead costs such as rent, utilities, etc.
3. Opportunity Costs: The potential benefits lost when choosing one alternative over another.
2.MONETARY BENEFITS:
1. Increased Revenue: Profit from increased sales or improved products.
2. Cost Savings: Reduction in operating costs due to process automation, streamlined workflows, etc.
3. Productivity Gains: Measurable improvements in worker efficiency.
3. Payback Period: Time taken for the benefits to cover the initial costs.
4. Net Present Value (NPV): Discounting future benefits and costs to determine their present value.
5. Internal Rate of Return (IRR): The rate at which the project's benefits equal its costs.
Empowering
non-developers to meet Iterative development
Structured and clear-cut
User feedback and refinement of their own needs without while focusing on
Focus development process with
functionality. relying heavily on identifying and mitigating
well-defined phases.
professional risks at each phase.
programmers.
End-User
Aspect Prototyping Waterfall Method Spiral Method
Development (EUD)
Key Components:
•Requirements Gathering: This is the process of collecting the requirements from stakeholders, end-users, and others to
understand what the system should do. Methods for gathering requirements include interviews, surveys, observation, and
document analysis.
•Feasibility Study: A preliminary analysis is conducted to assess whether the proposed solution is viable in terms of cost,
technology, and time. Feasibility analysis looks into:
• Technical Feasibility: Can the system be developed with current technology?
• Economic Feasibility: Is the project cost-effective? Can it deliver a return on investment?
• Operational Feasibility: Will the system work in practice? Will users adopt it?
• Schedule Feasibility: Can the system be developed in the required timeframe?
System Models: This step involves using diagrams and models to represent the system visually. Some of the
common models include:
•Data Flow Diagrams (DFD): Show how data moves through the system.
•Entity-Relationship Diagrams (ERD): Define the relationships between data entities in the system.
•Use Case Diagrams: Illustrate the functional interactions between users (actors) and the system.
System Analysis
•Functional vs. Non-functional Requirements:
• Functional Requirements: Specify the functions that the system must perform (e.g., the system must allow users
to log in).
• Non-functional Requirements: Specify how the system performs functions (e.g., performance, security,
usability).
1.Problem Definition: Identify the issue or opportunity the system will address.
2.Requirement Elicitation: Interact with users and stakeholders to gather requirements.
3.Analysis of Current System: Study the existing system, if any, to identify what changes are needed.
4.Conceptual Design: Develop a high-level understanding of the solution.
System Design
System design focuses on defining the architecture, components, modules, interfaces, and data for the system to satisfy the specified
requirements.
•Architectural Design: This is the high-level structure of the system, defining how the components will interact. It includes the design of system
interfaces and data flow.
• Top-down Design: The system is broken down into sub-systems and modules from a broad perspective.
• Modular Design: Emphasizes breaking down the system into smaller, manageable modules or components that can be independently
developed and tested.
•Database Design: Defines the structure of the database including tables, relationships, and keys. Important concepts in database design include:
•Detailed Design: Focuses on the specifics of system components, such as algorithms, data structures, and processing details. It includes:
• Class Diagrams: Define objects, classes, and their relationships.
• Sequence Diagrams: Show how objects interact over time to accomplish tasks.
•Security Design: Ensures that the system will be secure and protected against threats, ensuring data integrity, confidentiality, and availability.
Techniques like encryption, authentication, and role-based access control are defined.
System Implementation
System implementation refers to the process of putting the designed system into practice. It involves coding, testing, deployment, and training of
users.
Key Steps in Implementation:
•Coding: Translating the design into executable code using a programming language (e.g., Java, C#, Python). Code should follow best practices
such as modularity, readability, and scalability.
•Integration: Once individual modules or components are developed, they need to be integrated into a complete system. This involves ensuring
the components work together as expected.
•Testing: This step involves checking the system to ensure it meets the specified requirements and is free from bugs or errors. Types of testing
include:
• Unit Testing: Testing individual components.
• Integration Testing: Testing combined components.
• System Testing: Testing the entire system.
• User Acceptance Testing (UAT): Testing by the end-users to ensure it meets their needs.
•Documentation: Creating manuals, guides, and other documentation to ensure that users and developers can understand and use the system. This
can include:
• Technical Documentation: For developers, detailing the code, architecture, and design.
• User Documentation: For end-users, providing instructions on how to use the system.
•Deployment: Moving the system from the development environment into the production environment. This can be done in phases:
• Direct Changeover: The old system is replaced immediately by the new system.
• Parallel Running: The new system runs alongside the old system for a time to ensure reliability.
• Phased Implementation: The new system is introduced in phases.
• Pilot Implementation: The new system is tested in a limited part of the organization before full deployment.