Very Short
Very Short
Software Project (SP) vs. Other Projects: SPs involve unique characteristics like invisibility,
complexity, conformity, and flexibility, distinguishing them from other project types.
Activities Covered by SPM: Includes project planning, scheduling, resource allocation, monitoring,
control, risk management, and quality assurance.
Software Project Categories: Classified into compulsory vs. voluntary users, information systems vs.
embedded systems, and objective-driven vs. product-driven projects.
Project Scheduling: Involves defining a task set, creating a task network, and utilizing scheduling
techniques like Gantt charts and PERT.
Defining a Task Set and Task Network: Break down the project into tasks, establish dependencies,
and create a visual network diagram for better scheduling.
Earned Value Analysis Indicators: Measures project performance using indicators like Planned
Value (PV), Earned Value (EV), and Actual Cost (AC).
Project Elements: Core components include scope, time, cost, quality, human resources,
communication, risk, procurement, and stakeholders.
Work Breakdown Structure (WBS): A hierarchical decomposition of the total scope of work to
accomplish project objectives, identifying deliverables and tasks, aiding in better planning and control.
Selecting a Project: Evaluate feasibility, align with strategic goals, assess resource availability, and
analyze potential risks and benefits.
Identifying Project Scope and Objectives: Define the project boundaries, deliverables, and specific
objectives to ensure clear direction and focus.
Identifying Project Infrastructure: Determine the necessary resources, tools, and environments
required for project execution.
Analyzing Project Characteristics: Assess project size, complexity, dependencies, and potential
risks to tailor management approaches.
Identifying Project Products and Activities: List all deliverables and associated activities required to
complete the project successfully.
Unit-II: Project Estimation and Evaluation
Software Project Estimation: Use techniques like expert judgment, analogy-based estimation, and
parametric models to predict project effort, duration, and cost.
Decomposition Techniques: Understand scope, determine software size, break down SDLC
activities, compare estimates, and reconcile differences to ensure accuracy.
Empirical Estimation Models: Utilize models like COCOMO to estimate project costs based on
historical data and project characteristics.
Estimation for Object-Oriented Projects: Consider factors like class count, object complexity, and
interaction to estimate effort and resources.
Estimation for Agile Development: Use techniques like user story points, velocity tracking, and
iterative planning to estimate effort in agile projects.
Estimation for Web Engineering Projects: Consider web-specific factors like page complexity,
content volume, and user interaction when estimating effort.
Cost Benefit Analysis: Evaluate project feasibility by comparing estimated costs against expected
benefits using techniques like ROI and NPV.
Cash Flow Forecasting: Predict future cash flows to manage project finances and ensure sufficient
funds are available for project execution.
Cost Benefit Evaluation Techniques: Use methods like payback period, discounted cash flow, and
break-even analysis to assess project viability.
Risk Evaluation: Identify potential risks, assess their impact and probability, and develop mitigation
strategies to manage them effectively.
Selection of an Appropriate Project Report: Choose reports that effectively communicate project
status, progress, risks, and issues to stakeholders.
Choice of Process Model: Select a suitable process model (e.g., Waterfall, Spiral, Agile) based on
project requirements, complexity, and stakeholder needs.
Structured Methods: Utilize formal methods and methodologies to ensure systematic project
planning, execution, and control.
Rapid Application Development: Emphasize quick development and iterative feedback to adapt to
changing requirements and deliver functional prototypes rapidly.
Waterfall: Follow a linear, sequential approach to project development, with distinct phases for
planning, design, implementation, testing, and maintenance.
Spiral Models: Combine iterative development with systematic risk management, emphasizing
repeated refinement through spirals of development.
Prototyping Delivery: Develop functional prototypes to validate requirements, gather user feedback,
and refine the final product.
Albrecht Function Point Analysis: Measure software size by quantifying functional components like
inputs, outputs, and data files to estimate effort and cost.
Project Schedule: Create a timeline for project activities, defining start and end dates, milestones,
and dependencies.
Projects and Activities: Break down the project into manageable activities and tasks, ensuring clarity
and accountability.
Sequencing and Scheduling Activities: Identify task dependencies, create network diagrams, and
use scheduling techniques to optimize project timelines.
Network Planning Model: Utilize models like CPM and PERT to plan, schedule, and control project
activities.
Network Diagrams: Visual representations of project activities and dependencies, including CPM, Bar
Charts, Gantt Charts, and PERT diagrams.
CPM (Critical Path Method): Identify the longest path of dependent tasks in a project to determine
the minimum project duration.
PERT (Program Evaluation and Review Technique): Use probabilistic time estimates to account for
uncertainty and variability in project schedules.
Activity-on-Arrow Network vs. Activity-on-Node Network: Compare and contrast different ways of
representing activities and dependencies in network diagrams.
Precedence Network: Visualize task sequences and dependencies to aid in project scheduling and
resource allocation.
Forward Pass vs. Backward Pass: Calculate early start/finish times (forward pass) and late
start/finish times (backward pass) to determine project timelines.
Critical Path: The sequence of dependent tasks that determines the shortest possible project
duration.
Risk Breakdown Structure: A hierarchical representation of project risks, categorized by type and
impact.
Risk Management Process: Identify, analyze, prioritize, respond to, and monitor risks throughout the
project lifecycle.
Evaluating Schedule Risk Using PERT: Use PERT to assess the impact of uncertainty on project
schedules and identify potential delays.
Resource Allocation & Monitoring the Control: Allocate resources efficiently, track progress, and
control deviations to ensure project success.
The Nature of Resources: Understand the types of resources needed, including human, financial,
and material resources.
Identifying Resource Requirements: Determine the resources needed for each task and ensure
their availability throughout the project.
Visualizing Progress: Use tools like Gantt charts and status reports to monitor project progress and
identify potential issues.
Project Tracking: Continuously monitor project performance against the plan, adjusting as necessary
to stay on track.
Status Reports: Regularly communicate project status, progress, and issues to stakeholders to
ensure transparency and informed decision-making.
Milestone Analysis: Assess progress at key points in the project to ensure alignment with objectives
and timely completion of deliverables.
Actual Versus Estimated Analysis of Effort and Schedule: Compare actual effort and schedule
against estimates to identify variances and improve future planning.
Software Quality and Project Closure
Software Quality Attributes: Evaluate software based on functionality, reliability, usability,
performance, maintainability, scalability, security, portability, and compatibility.
ISO 9126: Framework for evaluating software quality based on six characteristics: functionality,
reliability, usability, efficiency, maintainability, and portability.
Software Quality Measures: Quantitative indicators such as defect density, code coverage, response
time, and user satisfaction used to assess software quality.
Project Closure Analysis: Review project performance, document lessons learned, evaluate
stakeholder satisfaction, and ensure all project activities are completed.
The Role of Closure Analysis: Assess project success, capture lessons learned, ensure
documentation completeness, and foster continuous improvement.
By memorizing these condensed notes, you can cover the essential information required for your
exam. Good luck!