0% found this document useful (0 votes)
29 views2 pages

Software Testing and Project Management Syllabus

The document outlines the course structure for 'Software Testing and Project Management' in Semester VI, detailing objectives, outcomes, and evaluation methods. It covers key topics such as software testing methodologies, project management principles, and risk evaluation techniques. The course aims to equip students with practical skills in software development life cycles and project management strategies.

Uploaded by

dghrhr35
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)
29 views2 pages

Software Testing and Project Management Syllabus

The document outlines the course structure for 'Software Testing and Project Management' in Semester VI, detailing objectives, outcomes, and evaluation methods. It covers key topics such as software testing methodologies, project management principles, and risk evaluation techniques. The course aims to equip students with practical skills in software development life cycles and project management strategies.

Uploaded by

dghrhr35
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

SOFTWARE TESTING AND PROJECT MANAGEMENT

Semester VI
Course code
Category PEC
Course title SOFTWARE TESTING AND PROJECT MANAGEMENT
Scheme and L T P Credits
Credits 3 0 0 3
Class work 30 Marks
Exam 70 Marks
Total 100 Marks
Duration of
03 Hours
Exam
Note: The examiner will set nine questions in total. Question one will be compulsory. Question one
will have seven parts of 2 marks each from all units, and the remaining eight questions of 14 marks
each to be set by taking two questions from each unit. The students have to attempt five questions
in total, the first being compulsory and selecting one from each unit

COURSE OBJECTIVES:
1. This course introduces the concepts and methods required for the construction of large software
intensive systems.
2. The course aims is to develop a broad understanding of the discipline of software engineering and
management of software systems.
3. This course provides an understanding of both theoretical and methodological issues involve in
modern software engineering project management and focuses strongly on Practical techniques.
COURSE OUTCOMES:
Upon the completion of the course students will be able to :
CO1. Apply the process to be followed in the software development life-cycle models.
CO2. Implement communication, modeling, construction & deployment practices in software
development.
CO3. Analyze & design the software models using unified modeling language (UML)
CO4. Explain the concepts of various software testing methods & be able to apply appropriate
testing approaches for development of software
CO5. Explain the quality management & different types of metrics used in software development.
CO6. Apply the concepts of project management & planning.

UNIT-I
SOFTWARE TESTING INTRODUCTION:
Introduction to Software Testing: Introduction, Evolution of Software Testing, Software Testing—
Myths and Facts, Goals of Software Testing, Psychology for Software Testing, Software Testing
Definitions, Model for Software Testing, Effective Software Testing vs. Exhaustive Software Testing,
Effective Testing is Hard, Software Testing as a Process, Software Testing Terminology, Software
Testing Life Cycle (STLC), Software Testing Methodology
UNIT-II
TESTING TECHNIQUES:
Dynamic Testing: Black-Box Testing Techniques, Boundary Value Analysis (BVA), Equivalence
Class Testing, State Table-Based Testing, Decision Table-Based Testing, Cause-Effect Graphing
Based Testing, Error Guessing, Dynamic Testing: White-Box Testing Techniques, Need of White-Box
Testing, Logic Coverage Criteria, Basis Path Testing, Graph Matrices, Loop Testing, Data Flow
Testing, Mutation Testing
Static Testing, Inspections, Structured Walkthroughs, Technical Reviews, Validation Activites, Unit
Validation Testing, Integration Testing, Function Testing System Testing, Acceptance Testing
UNIT-III
INTRODUCTION TO SOFTWARE PROJECT MANAGEMENT (SPM):
Definition of a Software Project (SP), SP Vs. other types of projects activities covered by SPM,
categorizing SPs, project as a system, management control, requirement specification, information and
control in organization.
Stepwise Project planning: Introduction, selecting a project, identifying project scope and objectives,
identifying project infrastructure, analyzing project characteristics, identifying project products and
activities, estimate efforts each activity, identifying activity risk, allocate resources, review/ publicize
plan.
UNIT-IV
PROJECT EVALUATION & ESTIMATION:
Cost benefit analysis, cash flow forecasting, cost benefit evaluation techniques, risk evaluation.
Selection of an appropriate project report; Choosing technologies, choice of process model, structured
methods, rapid application development, water fall, V-process, spiral models. Prototyping, delivery.
Albrecht function point analysis. Activity planning & Risk Management: Objectives of activity
planning, project schedule, projects and activities, sequencing and scheduling activities, network
planning model, representation of lagged activities, adding the time dimension, backward and forward
pass,
identifying critical path, activity throat, shortening project, precedence networks. Risk Management:
Introduction, the nature of risk, managing risk, risk identification, risk analysis, reducing the risks,
evaluating risks to the schedule, calculating the z values.

TEXT AND REFERENCE BOOKS:


1. Software Testing: Principles and Practices by Naresh Chauhan
2. Software Project Management (2nd Edition), by Bob Hughes and Mike Cotterell, 1999, TMH
3. Software Engineering – A Practitioner’s approach, Roger S. Pressman (5th ed), 2001, MGH
4. Software Project Management, Walker Royce, 1998, Addison Wesley.
5. Managing Global software Projects, Ramesh, 2001, TMH.
6. Gill, Nasib Singh: Software Engineering, Khanna Book Publishing Company(Private) Limited,
New Delhi.

Common questions

Powered by AI

Software project management differs from other project types primarily due to its handling of uncertainty and risk. Software projects often face dynamic and unpredictable environments, rapidly changing user requirements, and technological advancements, which increase uncertainty . Hence, software project management incorporates structured methods such as risk evaluation and management, focusing on identifying, analyzing, and mitigating risks early in the planning process. Techniques such as rapid application development and iterative models like the spiral model provide flexibility to adapt to changing requirements, unlike traditional project management which might rely on more linear and predictive models .

Black-box testing focuses on evaluating the functionality of the software based on the specifications without looking at the internal code structure. It includes techniques such as Equivalence Class Testing, Boundary Value Analysis, and State Table-Based Testing . In contrast, white-box testing involves the internal logic of the code and includes techniques such as Basis Path Testing, Loop Testing, and Data Flow Testing . Incorporating both approaches ensures a comprehensive test strategy as black-box testing validates expected outputs for given inputs while white-box testing ensures the internal operations of the code are correct. This dual approach not only helps in identifying different types of defects but also in improving software reliability and performance .

Risk management in software projects is crucial due to the high uncertainty and potential of unforeseen challenges that can arise during development, affecting timelines, costs, and quality. Effective risk management involves identifying potential risks, analyzing their impact and likelihood, and developing strategies to mitigate them. Key steps include risk identification, risk analysis, reducing risks through planning and process adjustments, and evaluating risks to the project schedule. Risk management enables proactive rather than reactive responses, minimizes the negative impact of risks, and enhances project resilience and reliability .

Effective software testing contributes to quality management by identifying defects early in the development process, which reduces the cost and time associated with fixing issues later on. It ensures that the software meets its specifications and user expectations, thereby enhancing reliability and performance. By applying various testing methods and measuring quality metrics, testing provides insights into the software's readiness and areas for improvement, which are critical for maintaining quality standards throughout the software lifecycle .

Software testing plays a critical role in the SDLC by ensuring the software product meets quality standards and functions correctly at each development stage. It integrates with various SDLC stages by facilitating validation and verification processes—starting from requirements analysis (to ensure the understanding of requirements), through design (validating the design artifacts), coding (unit tests), integration (integration tests), and maintenance (regression tests). Testing early and continuously throughout the SDLC helps identify defects when they are easiest and least costly to fix, thereby improving the quality and reliability of the final software product .

The use of different project process models, such as waterfall, V-process, spiral, and rapid application development, significantly influences the delivery and success of software projects by dictating the development approach. Each model offers distinct advantages and constraints; for example, the waterfall model promotes a linear and structured flow which suits well-defined projects, whereas the spiral model allows iterative refinement, ideal for complex, evolving projects . Choosing the appropriate model based on project specifics such as size, objectives, and risk tolerance facilitates effective planning, resource management, and adaptation to changes, thereby improving the prospects for successful delivery .

Cost-benefit analysis and risk evaluation are integral in software project evaluation and estimation. Cost-benefit analysis involves estimating all costs and theoretical benefits associated with a project, providing a framework to assess its financial feasibility . Risk evaluation goes hand-in-hand by identifying uncertainties that could impact the project's cost or benefits, thereby enabling teams to prepare mitigation strategies. Integrating these methods ensures that both tangible and intangible factors are considered, facilitating informed decision-making, optimizing resource allocation, and enhancing project viability and success potential .

The Unified Modeling Language (UML) is significant in the analysis and design of software models as it provides a standardized way to visualize system design. UML allows developers to create blueprints that depict aspects like system architecture, behavior, and interactions, facilitating better communication among stakeholders and helping identify system complexities early in the development process. With various diagram types, UML accommodates different perspectives and detail levels, aiding in thorough analysis and precise system design, ultimately contributing to developing more robust and well-defined software systems .

The objectives of the software testing and project management course are to introduce concepts and methods for constructing large software systems, develop a broad understanding of software engineering disciplines, and focus on practical project management techniques. The course outcomes include applying the software development life-cycle models, implementing communication and modeling practices, analyzing software using UML, explaining various testing methods, discussing quality management and metrics, and applying project management and planning concepts . These outcomes aim to equip students with the necessary skills to manage and execute software projects effectively.

The key components of stepwise project planning in software project management include selecting a project, identifying its scope and objectives, and determining project infrastructure. It involves analyzing project characteristics, identifying products and activities, estimating effort for each activity, and identifying activity risks. This planning also involves allocating resources and reviewing or publicizing the plan to ensure alignment with organizational goals and objectives . Such an approach ensures structured progress and minimizes potential delays and resource conflicts during project execution.

You might also like