1/137
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Agile Methodology
A project management approach that delivers work in small, iterative parts (sprints) focusing on flexibility, collaboration, and customer satisfaction.
Sprint
A short, time-boxed development cycle in Agile (usually 1–4 weeks) where teams deliver a working product increment.
Product Backlog
A prioritized list of features, requirements, and tasks maintained by the Product Owner.
Sprint Backlog
A subset of the product backlog chosen for completion during a sprint.
Increment
The working, shippable product version produced at the end of each sprint.
Plan Phase (Sprint Planning)
Meeting where the team selects backlog items to form the sprint backlog and defines the sprint goal.
Design Phase
A flexible and evolving plan for how features will be built, based on collaboration and feedback.
Develop Phase
The coding/building stage where planned features are turned into a working product increment.
Test Phase
Continuous testing integrated during development to ensure code quality and fix bugs quickly.
Deploy Phase
Releasing the completed increment to the live environment (often automated with CI/CD pipelines).
Review Phase (Sprint Review)
A meeting where the team demonstrates completed work to stakeholders and collects feedback for improvement.
Iterative Approach (Agile)
Work is divided into cycles (sprints) with constant improvement.
Sequential Approach (Traditional)
Work follows a step-by-step process where one phase must finish before the next starts.
Flexibility (Agile)
Adapts to changes anytime during the project.
Flexibility (Traditional)
Difficult and expensive to change after planning.
Customer Involvement (Agile)
Customers provide feedback regularly throughout the project.
Customer Involvement (Traditional)
Customer Involvement (Traditional)
Customers are only involved at the beginning and end.
Delivery (Agile)
Frequent, small increments of working product.
Delivery (Traditional)
Final product delivered at the end only.
Planning (Agile)
Adaptive, re-planned each sprint.
Planning (Traditional)
Heavy, upfront planning before development begins.
Spiral Model
A Software Development Life Cycle (SDLC) model that combines the iterative nature of Agile with the structured approach of Waterfall. Used for large, expensive, and complex projects where risk management is critical.
Spiral
The diagrammatic representation of the model, consisting of loops (cycles). Each loop is one phase of development. The number of loops depends on the project and is defined by the project manager.
Determine Objectives & Find Alternate Solutions
Activities: Gather and analyze requirements, define objectives, propose multiple solutions.
Deliverables: Requirements specification, objectives list, alternative solution proposals.
Risk Analysis and Resolving
Activities: Analyze proposed solutions, identify potential risks, evaluate impact, create mitigation strategies.
Deliverables: Risk analysis report, risk mitigation plan, updated solution design.
Develop and Test
Activities: Implement selected features, write and integrate code, conduct testing (unit, integration, system).
Deliverables: Working software modules, test plans, test cases, test results.
Review and Planning of the Next Phase
Activities: Present completed work to customers, gather feedback, update risks, and plan the next cycle.
Deliverables: Customer feedback report, updated risk log, plan for next iteration.
Spiral Key Features
Key Features
Risk Management: Core advantage; risks are identified and addressed early.
Iterative Development: Product evolves through repeated cycles (spirals).
Customer Involvement: Client reviews prototypes at each stage and gives feedback.
Flexibility: Adaptable to changes in requirements.
Spiral Advantages
Best for large and complex projects.
Strong risk handling capabilities.
Supports client feedback and change requests.
Continuous prototyping → higher customer satisfaction.
Spiral Disadvantage
Very expensive (due to repeated prototyping and risk analysis).
Time-consuming, not ideal for small/simple projects.
Requires more documentation compared to other models.
Uncertain deadlines because the number of cycles is not fixed.
Waterfall Model
A sequential software development model where each phase must be fully completed before the next begins, with no overlap. Named “waterfall” because progress flows downward in distinct stages.
Sequential Approach - Waterfall Model
Process where tasks are completed in a fixed order (requirements → design → implementation → testing → delivery → maintenance).
Minimal Customer Involvement - Waterfall Model
Customers provide requirements at the beginning and usually review the product only at the end.
Vigorous Documentation - Waterfall Model
Emphasizes detailed documentation at every phase as the foundation for the next steps.
Dr. Winston Royce
Introduced the waterfall approach in 1970 to manage large software projects. Though not originally called "waterfall," his structured model later became known as the Waterfall Method
Oldest Project Management Procedure - Waterfall Model
Historically used in construction and manufacturing before adoption in software engineering.
Requirement Analysis - Waterfall Model
Work Performed: Gather and document client needs via meetings, interviews, and document reviews.
Deliverable: Requirements Specification Document.
Who is Involved: Business analysts, project managers, stakeholders.
System Design - Waterfall Model
Work Performed: Convert requirements into blueprints (architecture diagrams, process flows, database designs, interfaces).
Deliverable: System Design Document.
Who is Involved: System architects, designers, senior developers.
Implementation (Development) - Waterfall Model
Work Performed: Developers write code based on the design and integrate modules.
Deliverable: Working code / compiled programs.
Who is Involved: Developers, engineers, designers, project manager.
Testing - Waterfall Model
Work Performed: Quality Assurance (QA) tests product, identifies bugs, validates against requirements.
Deliverable: Validated software, test reports, bug logs.
Who is Involved: QA testers, developers (for fixes), project manager.
Delivery (Deployment) - Waterfall Model
Work Performed: Install system in production, configure accounts, train users.
Deliverable: Fully deployed system, training manuals, user documentation.
Who is Involved: IT support staff, trainers, project manager.
Maintenance - Waterfall Model
Work Performed: Fix bugs, monitor performance, apply updates, provide support.
Deliverable: New versions, bug fixes, maintenance reports.
Who is Involved: Support engineers, developers.
Advantages Waterfall Model
Easy to understand and follow.
Clearly defined phases and milestones.
Well-documented process.
Works well for small projects with clear requirements.
Disadvantages Waterfall Model
Inflexible – Changes are hard to implement once the process starts.
No Overlapping Phases – Must complete one stage before moving to the next.
Limited Customer Involvement – Users don’t see the product until the end.
Lengthy Development Cycle – Slow to adapt to new requirements.
V-Model (Verification and Validation Model)
A software development model that extends the waterfall by emphasizing testing at each stage. The process is shaped like a “V,” where each development phase has a corresponding testing phase.
Verification
Activities to check whether the product is being built correctly (e.g., requirements review, design validation).
Validation
Activities to ensure the final product meets user needs and requirements (e.g., system testing, acceptance testing).
Requirement Analysis - V Model
Acceptance Testing
System Design - V Model
System Testing
Architecture Design - V Model
Integration Testing
Module Design - V Model
Unit Testing
Coding
(bottom of the “V”)
Advantages V Model
Strong emphasis on quality and testing.
Errors are found early.
Works well for small to medium projects with clear requirements.
Disadvantages V Model
Rigid and inflexible.
Expensive for changes mid-process.
Not ideal for projects with evolving requirements.
RAD Model
A software development approach focused on fast prototyping and quick feedback instead of long development cycles. Prioritizes speed and adaptability.
Key Features - RAD Model
Minimal planning, more prototyping.
Continuous customer feedback.
Time-boxed development (tight deadlines).
Business Modeling - RAD Model
Define data flow and information needs.
Data Modeling - RAD Model
Define data objects and relationships.
Process Modeling - RAD Model
Define how data will be used.
Application Generation - RAD Model
Build prototypes quickly.
Testing & Turnover - RAD Model
Rapid testing, customer feedback, and delivery.
Advantages - RAD Model
Very fast delivery.
Strong user involvement.
Flexible to changes.
Disadvantages - RAD Model
Needs skilled developers and users who can give quick feedback.
Not suitable for complex, large systems.
Risk of poor design if rushed.
Incremental Model
A development model where the system is built in increments (small pieces), each adding functionality until the full product is complete.
Key Features - Incremental Model
Product delivered in small releases.
Each increment is fully functional and tested.
Early delivery of working software.
Requirement Analysis – Incremental Model
Gather requirements for the increment.
Design - Incremental Model
Create design for that increment.
Implementation - Incremental Model
Build the increment.
Testing - Incremental Testing
Test the increment.
Maintenance - Incremental Model
Fix issues, integrate with previous increments.
Advantages - Incremental Model
Early working product delivery.
Easier to test and debug small increments.
Flexible for changing requirements.
Disadvantages - Incremental Model
Requires good planning and design.
Integration can be complex.
More costly if too many increments.
Systems Thinking
A holistic approach to managing projects by considering how all components interact within the organization.
Systems Philosophy
A general model for thinking about problems and solutions as part of systems.
Systems Analysis
A problem-solving approach that examines system components and interactions.
Systems Management
Addresses business, technological, and organizational issues before making system changes.
Three-Sphere Model
Framework for systems management: business, technology, and organizational issues.
Structural Frame –
Focus on roles, responsibilities, coordination, and control (organization charts).
Human Resources Frame –
Focus on balancing people’s needs with organizational needs.
Political Frame –
Organizations are coalitions with power and conflict among groups.
Symbolic Frame –
Focus on culture, symbols, and meaning of events in organizations.
Functional Structure:
Functional managers report to CEO.
Project Structure:
Project managers report directly to CEO.
Matrix Structure:
Mix of functional and project; employees report to multiple managers (weak, balanced, or strong).
Organizational Culture
Shared values, beliefs, and behaviors that shape how the organization functions.
Risk tolerance, reward criteria, conflict tolerance, means-ends orientation, open-systems focus, member identity, group emphasis, people focus, unit integration, control.
Ten Characteristics of Culture (strong in successful projects):
Stakeholder Management
Identifying, understanding, and managing relationships with all project stakeholders.
Top Management Commitment
Senior management support is crucial for project success. Without it, projects often fail.
Project Champion
A senior manager who strongly advocates for a project.
Providing resources, approving project needs, securing cooperation, mentoring project leaders.
How Top Management Helps
IT Governance
Defines authority and control for IT activities (infrastructure, usage, project management). Prevents project failures.
Project Phase
A distinct stage in a project where specific work and deliverables are completed.
Deliverable
A product or service created as part of a project.
Early Phase Characteristics
Low resource needs
High uncertainty (risk)
High stakeholder influence
Middle Phase Characteristics
More resources required
Project certainty improves
Final Phase Characteristics
Focus on meeting requirements
Project sponsor approves completion
Management Reviews (Phase Exits / Kill Points)
Evaluations at the end of phases to ensure project progress and alignment.
Product Life Cycle
The series of stages a product goes through from development to retirement.
SDLC (Systems Development Life Cycle)
Framework describing phases of developing and maintaining information systems.