21CS61 Set2
21CS61 Set2
Model Question Paper-1/2 with effect from 2021(CBCS Scheme) knowledgeable individuals to tailor mature processes to
the needs of the products and market demands.
US
N Importance of Software Engineering
Sixth Semester B.E. Degree Examination Software
Engineering & Project Management
Software engineering is important due to its pervasive
impact on nearly every aspect of our lives, influencing
TIME: 03 Hours SET - 2 Max. Marks: commerce, culture, and everyday activities. It allows for
100 the timely development of high-quality software,
addressing a wide range of technology and application
Note: Answer any FIVE full questions, choosing at least ONE question from each areas. Modern software engineering approaches must be
MODULE. THESE ANSWERS FROM TEXTBOOK agile, adapting to project teams' needs and the products
being produced.
Bloom ’s COs
Module -1 Taxonomy Marks
DOWNLOAD Level Generic Process Model
- A software process is a collection of work activities,
Q.01 a Define Software & Software Engineering. Why is it L2 CO1 10
actions, and tasks within a framework that defines their
important. Explain the Software Process in Software
relationships.
Engineering.
- The software process involves five framework
activities: communication, planning, modeling,
Define Software & Software Engineering
construction, and deployment.
- Umbrella activities like project tracking, risk
management, quality assurance, configuration
management, and technical reviews are applied
throughout the process.
- Process flow describes how activities are organized with
respect to sequence and time, such as linear, iterative,
evolutionary, or parallel flows.
Real-Time Example:
- In a real-time scenario, the waterfall model is suitable
when project requirements are fixed, and work can
progress linearly from start to finish without significant
changes.
- On the other hand, the spiral model is more appropriate
Waterfall Model and Spiral Model Overview for fast-paced software work with a continuous stream of
changes, enabling risk reduction and flexibility through
Waterfall Model: iterative development cycles.
- The waterfall model is the oldest paradigm for software
engineering, suggesting a systematic, sequential approach OR
to software development. Q.02 a Discuss the David Hooker’s seven principles of software L2 CO1 10
- It follows a linear progression from customer engineering
requirements specification through planning, modeling, Practice
construction, deployment, and ongoing support of the
completed software. David Hooker’s Seven Principles of Software
- It can cause issues due to the sequential flow not Engineering Practice
aligning with real project progress, difficulty in explicitly
stating all requirements upfront, and the lengthy time Overview
span until a working program is available. David Hooker proposed seven principles focusing on
- Projects rarely follow the strict sequential flow software engineering practice as a whole. These principles
proposed by the model, making it challenging to aim to guide software engineers in their work. Let's delve
accommodate changes and uncertainties. into each of these principles:
- The waterfall model is more suitable for situations
where requirements are fixed and work can proceed Principles
linearly, such as in well-defined adaptations or 1. The Reason It All Exists
- A software system exists to provide value to its users.
Page 01 of 02 Page 01 of 02
07082024 07082024
21CS61 21CS61
- All decisions should prioritize adding real value to the b Describe the five activities that a generic process L2 CO1 10
system. framework for software engineering encompasses.
2. KISS (Keep It Simple, Stupid!) Five Activities of a Generic Process Framework for
- Software design should be as simple as possible but not
simpler.
- Simplifying design facilitates a better-understood and
maintained system.
4. Think!
- Placing clear, complete thought before action leads to
better results.
- Clear thought enhances the system's value and the
application of the other six principles.
Importance of Principles
- Following these principles can eliminate difficulties in
building complex computer-based systems.
- A commonsense approach to software engineering,
guided by these principles, establishes a solid foundation
for practice. Software Engineering
3. Modeling:
- Utilizes models to understand software requirements
and design solutions.
4. Construction:
- Involves code generation and testing to identify errors
in the code.
5. Deployment:
- Delivers the software to the customer for evaluation
and feedback.
Page 01 of 02 Page 01 of 02
07082024 07082024
21CS61 21CS61
Additional Umbrella Activities: Module-2
DOWNLOAD
- Project tracking and control, risk management, quality
assurance, configuration management, technical reviews, Q. 03 a Explain the different tasks which Requirements L2 CO2 10
among others, are applied throughout the process to Engineering encompasses.
support the framework activities.
Requirements Engineering Tasks
Process Flow Variations:
- Linear process flow executes activities in sequence, Overview
iterative flow repeats activities, evolutionary flow Requirements engineering encompasses various tasks
completes circuits through activities for improved essential for establishing a solid foundation for design and
software versions, and parallel flow executes activities construction. It involves seven distinct functions carried
concurrently. out by software team members: inception, elicitation,
elaboration, negotiation, specification, validation, and
These activities form the core structure of a software management.
engineering process, ensuring effective project
management and successful software development. Tasks
1 . Inception : Stakeholders define basic problem
requirements, project constraints, and major system
features.
2 . Elicitation : Gathering requirements using
facilitated meetings , QFD , and developing
usage scenarios.
3 . Elaboration : Expanding requirements in a model
with scenario-based, class-based, behavioral, and flow-
oriented elements.
4. Negotiation : Prioritizing, assessing availability, and
relative cost of each requirement for a realistic project
plan.
5. Specification : Defining requirements in detail to
create a clear understanding of stakeholder needs.
6. Validation : Ensuring that each requirement and the
requirements model align with customer needs.
7 . Management : Handling and overseeing
requirements throughout the project lifecycle.
Additional Details
- The requirements model is continuously refined and
expanded during the requirements engineering process.
- Analysis patterns are used to simplify the requirements
model and provide solutions for recurring analysis
problems.
- Requirements engineering tasks are crucial for ensuring
that the system meets stakeholder needs and forms a
strong basis for design.
b L2 CO2 10
Develop a UML use case diagram for home security
function.
Page 01 of 02 Page 01 of 02
07082024 07082024
21CS61 21CS61
4. Use Case Narratives :
UML Use Case Diagram for Home Security Function - Use case narratives were discussed for each oval on the
diagram.
- Detailed template-based narratives could be developed
later for further clarity.
Diagram Elements
- Actors: Homeowner, System administrator, Sensors
- Use Cases: Arms/disarms system, Responds to alarm
event, Accesses system via Internet, Encounters an error
condition, Reconfigures sensors and related system
features
Page 01 of 02 Page 01 of 02
07082024 07082024
21CS61 21CS61
Module-3
DOWNLOAD
Limitations of Use Cases and Supplementary UML
Q. 05 a Explain Adaptive Software Development (ASD) Model L2 CO3 10
Models
- Use cases may be unclear or ambiguous if poorly with sketch
authored.
- They focus on functional and behavioral requirements, . ASD Model Overview
not nonfunctional ones.
- Use cases may not provide sufficient detail and precision
for certain situations like safety critical systems.
- However, properly developed use cases offer substantial
benefits as modeling tools.
Additional Information
- Requirements modeling with UML involves creating
scenarios through use cases, activity diagrams, and
swimlane diagrams.
- Elaboration expands requirements in a model with
scenario-based, class-based, and behavioral elements.
- The requirements model is validated against customer
needs to ensure the right system is built.
Adaptive Software Development (ASD) Model
Adaptive Software Development (ASD) is a technique
proposed by Jim Highsmith for building complex
software and systems. It emphasizes human collaboration
and team self-organization. The ASD life cycle includes
three phases: speculation, collaboration, and learning.
During speculation, projects are initiated, and adaptive
cycle planning is conducted using project initiation
information like the customer's mission statement and
project constraints. ASD teams learn through focus
groups, technical reviews, and project postmortems.
Overview of Extreme Programming (XP) In the diagram, you can visualize the iterative nature of
XP, starting from customer involvement and
requirements gathering, moving through pair
programming and test-driven development, and
culminating in continuous integration and refactoring for
sustainable software development.
Stakeholders in a Project
- Individuals or groups with an interest in the project's
outcome.
- Their objectives must be identified, understood, and met
for project success.
Project Management Life Cycle Stages b Explain different ways of categorizing Software project. L2 CO4 10
1. Feasibility Study: Assessing the project's viability and
business case. Categorizing Software Projects
2. Planning: Involves estimating project attributes like
cost, duration, and effort. Ways of Categorizing Software Projects:
3. Staffing: Organizing staff and resource plans. 1. Compulsory vs. Voluntary Users:
4. Risk Management: Identify, analyze, and plan for - Systems that staff must use vs. voluntary systems like
project risks. computer games
5. Miscellaneous Plans: Developing quality assurance - Eliciting precise requirements differs between the two
and configuration management plans. types
Elucidating Concepts in Activity Planning in Software Stakeholders and Project Success Criteria:
Project Management - Identification of stakeholders and their objectives is
vital for project success.
Key Concepts in Activity Planning: - Defining success criteria for a project helps in
1. Project Objectives in Software Projects : evaluating its outcomes and meeting stakeholder
- Delivering the agreed functionality, quality, on time, expectations.
and within budget are crucial project objectives.
- Success is measured not just by meeting project Management Aspects in Software Project
targets but also by achieving business value. Management:
- Management activities in software project management
2. Project Management Activities : involve planning, organizing, staffing, directing,
- Planning involves deciding what needs to be done. monitoring, controlling, innovating, and representing.
- Organizing includes making necessary arrangements.
- Staffing requires selecting suitable personnel for the Conclusion:
job. Activity planning in software project management
- Directing involves providing instructions to the team. encompasses various key elements like project
- Monitoring is crucial for checking progress. objectives, management activities, risk management, and
- Controlling is about taking actions to address any stakeholder involvement. Effective planning, monitoring,
delays. and control are crucial for the success of software
- Innovating refers to coming up with new solutions. projects amidst their unique challenges and complexities.
- Representing entails liaising with various stakeholders
like clients, users, and suppliers. b Write short notes on : i) SMART objectives ii) L2 CO4 10
Management control with project control cycle.
3. Activities in Project Planning :
- Estimation of project attributes such as cost, duration, SMART Objectives
and effort is essential.
- Scheduling based on effort and duration estimations Definition:
Page 01 of 02 Page 01 of 02
07082024 07082024
21CS61 21CS61
- Objectives focus on the desired outcomes of the project
rather than the tasks within it. Communication and Coordination:
- Objectives are the 'post-conditions' of the project and - Coordination of stakeholders' efforts is crucial for
are crucial for project success. project success.
- Establishing a communication plan at the project's
SMART Criteria: outset is a recommended practice.
- Specific: Objectives need to be concrete and well-
defined.
- Measurable: There should be measures of
effectiveness to gauge success.
- Achievable: Objectives must be within the realm of
possibility for individuals or groups.
- Relevant: Objectives must align with the true
purpose of the project.
- Time-Constrained: Objectives should have defined
completion timelines.
Page 02 of 02 Page 02 of 02
07082024 07082024
21CS61 21CS61
6. Statistical Monitoring : Maintain statistics to track the effectiveness. Lessons learned from projects are
effectiveness of the inspection process and identify areas incorporated into the process, and continuous
for improvement. improvement is achieved through analysis and
b Explain the Following i)Quality Management. ii) Quality L2 CO5 10 assimilation of innovative ideas and technologies.
plan L2 CO5 (08 Marks) c Compare Product Quality and
Process Quali Comparing Product Quality and Process Quality
- Product Quality focuses on the attributes and
Quality Management and Quality Plan Overview characteristics of the final product or service, ensuring
it meets customer requirements and specifications.
Quality Management - Process Quality refers to the quality of the processes
Quality management involves the systematic process of used to develop the product, aiming to ensure that the
ensuring that products and services meet established activities and steps followed lead to the desired product
quality standards. It includes activities such as quality quality.
planning, quality control, quality assurance, and quality
improvement. Different organizations operate at various Differences:
levels of quality management maturity, ranging from - Product Metrics measure the attributes of the final
basic practices to advanced optimization. product, while Process Metrics evaluate the
performance of the development processes.
Levels of Quality Management: - Examples of Product Metrics: Correction time,
1. Level 2: Repeatable - Basic project management productivity, number of failures detected during testing
practices are followed, including planning, tracking . - Examples of Process Metrics: Effort information
costs and schedules, and using configuration about processes, number of defects per line of code.
management tools.
2 . Level 3: Defined - Processes for management and Importance of Metrics:
development activities are defined and documented, with - Computation of process and product metrics helps in
a common understanding of roles and responsibilities. developing quality products by providing insights into
3. Level 4: Managed - Focus on effective process effectiveness, identifying areas for improvement,
management of development tasks, setting and ensuring that quality goals are achieved.
quantitative quality goals for products and processes.
4. Level 5: Optimizing - Organizations collect and Bloom’s Taxonomy Level: Indicate as L1, L2, L3, L4, etc. It is also desirable to indicate the
analyze process and product metrics to identify areas COs and POs to be attained by every bit of questions.
for improvement and strive for continuous process
enhancement.