Integrated Approach to Software Engineering-Lect-2
Integrated Approach to Software Engineering-Lect-2
Software Engineering
Introduction: Part-2
Dr Annushree Bablani
Software Engineering
Some realities:
A process is a collection of activities, actions, and tasks that are performed when
some work product is to be created.
Process Framework:
● Communication
○ important to communicate and collaborate with the customer and
other stakeholders. The intent is to understand stakeholders’
objectives for the project and to gather requirements
● Planning
○ planning activity creates a “map” that helps, guide .The map—called
a software project plan—defines the software engineering work by
describing the technical tasks to be conducted
THE SOFTWARE PROCESS
● Modeling
○ creating models to better understand software requirements
and the design that will achieve requirements.
● Construction
○ This activity combines code generation (either manual or
automated) and the testing that is required to uncover errors in
the code.
● Deployment
○ The software (as a complete entity or as a partially completed
increment) is delivered to the customer who evaluates the
delivered product and provides feedback based on the
evaluation
THE SOFTWARE PROCESS
Umbrella activities:
● Software project tracking and control—allows the software
team to assess progress against the project plan and take any
necessary action to maintain the schedule.
● Risk management—assesses risks that may affect the outcome
of the project or the quality of the product.
● Software quality assurance—defines and conducts the activities
required to ensure software quality.
● Technical reviews—assesses software engineering work
products in an effort to uncover and remove errors before they
are propagated to the next activity.
THE SOFTWARE PROCESS
Umbrella activities
● Measurement—defines and collects process, project, and product
measures that assist the team in delivering software that meets
stakeholders’ needs
● Software configuration management—manages the effects of
change throughout the software process.
● Reusability management—defines criteria for work product reuse
(including software components) and establishes mechanisms to
achieve reusable components.
● Work product preparation and production—encompasses the
activities required to create work products such as models,
documents, logs, forms, and lists.
Adapting a Process Model
● The overall flow of activities, actions, and tasks and the
interdependencies among them
● The degree to which actions and tasks are defined within each framework
activity
● The degree to which work products are identified and required
● The manner which quality assurance activities are applied
● The manner in which project tracking and control activities are applied
● The overall degree of detail and rigor with which the process is described
● The degree to which the customer and other stakeholders are involved
with the project
● The level of autonomy given to the software team
● The degree to which team organization and roles are prescribed
SOFTWARE ENGINEERING PRACTICE