System Analysis and Design Notes
1.0 Introduction to System Analysis and Design
- Introduction to information systems, systems analysis and design concepts, and systems development methods.
- Covers project plan preparation and project management.
- Information:
- Data transformed into valuable output.
- Characteristics:
- Accurate and timely.
- Specific and organized for a purpose.
- Presented within a context providing meaning and relevance.
- Leads to increased understanding and decreased uncertainty.
- Information System:
- Combination of technology, people, and data.
- Supports business functions (order processing, inventory control, HR, accounting, etc.).
- Information System Components:
- Hardware:
- Physical layer of the IS.
- Examples: servers, workstations, networks, telecommunications equipment, fiber-optic cables, mobile devices, scanners, digital capture devices, infrastructure.
- Software:
- Information processing instructions.
- System software (e.g., operating system).
- Application software (programs for specific computer uses by end users).
- Data:
- Raw material of information systems and databases.
- Forms: alphanumeric, text, image, audio.
- Processes:
- Tasks and business functions performed by users, managers, and IT staff.
- Building blocks representing day-to-day business operations.
- People:
- Stakeholders with interest in the IS.
- Management group responsible for the system.
- Users (end users) inside and outside the company (accountants, salespersons, engineers, clerks, customers, managers, etc.).
- IT staff: systems analysts, programmers, network administrators.
- Traditional Labels (In the Past):
- Administrative staff used office systems.
- Operational people used operational systems.
- Middle managers used decision support systems.
- Top managers used executive information systems.
- Today: All employees use office productivity systems.
- Types of Information Systems:
- Enterprise Computing Systems (ECS):
- Support company-wide operations and data management.
- Examples: Wal-Mart’s inventory, Boeing’s production control, Hilton Hotels’ reservation system.
- Objectives:
- Integrate primary functions.
- Improve efficiency and reduce costs.
- Help managers make key decisions.
- Improve data security and reliability.
- User Productivity Systems (UPS):
- Technology to improve employee productivity.
- Examples: email, voicemail, video and web conferencing, word processing, calendars, database management, spreadsheets, desktop publishing, presentation graphics, company intranets, mobile computing systems, groupware.
- Groupware: enables data sharing and collaboration.
- Business Support Systems (BSS):
- Job-related information support to users.
- Analyze transactional data.
- Generate information for business process management.
- Provide information for decision making.
- Decision support through computer models and variables.
- Management Information Systems (MIS) for managers.
- Knowledge Management Systems (KMS):
- Use a knowledge base to find information using keywords.
- Use inference rules (logical rules for data patterns and relationships).
- Transaction Processing System (TPS):
- Operational-level systems.
- Operated by shop floor workers or front line staff.
- Support management of operations.
- Data from automated tracking of low-level activities and transactions.
- Examples: Payroll, order processing, reservation, stock control, payment systems.
- Roles:
- Produce information for other systems.
- Cross internal and external boundaries.
- Used by operational personnel and supervisory levels.
- Efficiency oriented.
1.2 System Development Approach
- System Development Methods:
- Structured Analysis
- Object-Oriented Analysis
- Agile Methods
System Development Life Cycle (SDLC)
- Basic Activities:
- Planning
- Analysis
- Design
- Development
- Testing
- Implementation
- Maintenance
- System Development Life Cycle Activities:
- Planning:
- Begins with a systems request to IT describing problems or desired changes.
- Perform preliminary investigation to evaluate IT business opportunity or problem.
- Deliverable: Preliminary Investigation Report.
- Analysis:
- Build a logical model of the new system.
- Requirements modeling to document what the new system must do.
- Fact-finding (interviews, surveys, document review, observation, sampling).
- Build business models, data and process models, and object models.
- Deliverable: System requirements document.
- Design:
- Create a physical model to satisfy system requirements.
- Design user interface and identify outputs, inputs, and processes.
- Determine application architecture for transforming the logical design into program modules and code.
- Deliverable: System design specification.
- Development:
- New system construction.
- Programs are written and documented.
- Testing:
- Ensure workability; bring pieces together for testing.
- Check for errors, bugs, and interoperability.
- Verification and validation used.
- Implementation:
- Deliver a completely functioning and documented information system.
- Convert data, train users, transition to the new system.
- System is ready for use.
- Systems evaluation: determine proper operation and cost-benefit analysis.
- Maintenance:
- Corrections, additions, and moves are made.
- Correct errors and adapt to environmental changes (e.g., new tax rates).
- Enhancements provide new features and benefits.
- Objective: Maximize return on IT investment.
Types of Life Cycle Models
- Waterfall Model
- Spiral Model
- Iterative and Incremental Development
- Agile Model
- Prototyping Model
- Rapid Application Development (RAD)
- Joint Application Development (JAD)
- Models Descriptions:
- Waterfall Model:
- First model for software development.
- Structured analysis System Development method.
- Linear-sequential life cycle model.
- Phases: plan, analyze, design, implement, support.
- Each phase completed before the next begins; no overlapping.
- Agile Model:
- Develop system incrementally.
- Build prototypes and adjust to user requirements.
- Continuous feedback.
- Series of iterations based on feedback.
- Scrum is a popular Agile model with 2-4 week sprints.
- Spiral Model:
- Intense team-based effort.
- Reiterate earlier stages.
- Breaks development into cycles/iterations that add functionality.
- Cycles are designed, built, and tested.
- Series of short waterfall cycles.
- Iterative and Incremental Development:
- Simple implementation of a small software set.
- Iteratively enhance versions until complete.
- Specify and implement part of the software then review for further requirements.
- New software version at the end of each iteration.
- Prototyping Model:
- Build software application prototypes.
- Display product functionality.
- Understand customer requirements early.
- Get feedback from customer.
- Rapid Application Development (RAD):
- Team-based technique to speed up IS development.
- Produces a functioning IS.
- Users involved every step.
- Includes all SDLC phases.
- Joint Application Development (JAD):
- Involve client in application design and development.
- Collaborative workshops (JAD sessions).
- Structured group process for determining requirements.
- Advantages:
- Allows key user participation.
- Results in accurate requirements statement.
- Better understanding of goals.
- Stronger commitment to success.
- Disadvantage:
- More expensive and cumbersome.