Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering - I

Similar presentations


Presentation on theme: "Software Engineering - I"— Presentation transcript:

1 Software Engineering - I
WEEK 2

2 Software Engineering: A Layered Technology
Tools Methods Process A Quality Focus

3 Software Process Series of predictable steps-a road map that helps create a timely and high quality entity Process Software Process is a framework for the tasks that are required to build high quality software

4 Methods & Tools Methods: Technical how-to’s for building software.
Encompasses a broad array of tasks that include requirement analysis, design, program construction, testing and support Tools: Provision of automated or semi- automated support for the process and the methods. Computer aided software engineering (a system for the support of software development)

5 Generic View of SE Definition phase- Development phase-HOW
WHAT, i.e., what information, function, performance Development phase-HOW Support phase Types of change Correction Adaptation Enhancement Prevention Umbrella Activities

6 Software Engineering: A Generic View
Measurement Phases of Work Associated With Software Engineering Definition Phase Support Phase Development Phase Correction Enhancement Adaptation Prevention Reusability management Risk Management Software project tracking control Formal technical reviews Software configuration & management Software quality assurance

7

8 The Software Process A common process framework Framework Activities
Established by defining a small number of framework activities that are applicable to all software projects Umbrella Activities Encompasses a set of umbrella activities that are applicable across the entire software process. Framework Activities Establish the foundation for a complete software process by identifying a small number of framework activities that are applicable to all software projects, regardless of their size or complexity.

9 A Process framework Software Engineering Actions Task sets Work Tasks
Each framework activity is populated by a set of software engineering actions--- a collection of related tasks that produces a major software engineering work product (e.g. design is a software engineering action) Task sets A collection of software engineering work tasks, project milestones, work products, and quality assurance points that enable the framework activities to be adapted to the characteristics of the software project and the requirements of the project team. Work Tasks Each action is populated with individual work tasks that accomplish some part of the work implied by the action.

10 Generic process framework
Communication Planning Modeling Construction Deployment

11 …cont Communication Planning
Heavy collaboration with the customer and stakeholders, Requirements gathering and other related activities. Planning Establish plan for s/w engineering work Tasks to be conducted Risks that follow Work products produced Work schedule

12 ...cont Modeling Construction Deployment
Creation of models that allow the developer and the customer better understand the s/w requirements and the design that will achieve those requirements Construction Code generation Testing to uncover errors Deployment Delivery to the customer Customer evaluation and feedback

13 An Example Modeling-(Framework activity)
Analysis-(Software engineering action) Requirements gathering-(work task) Elaboration-(work task) Negotiation-(work task) Specification-(work task) validation-(work task) Analysis model-(work product) Quality assurance points milestones

14 ...cont Modeling-(Framework activity)
Design-(Software engineering action) Data design-(work task) Architectural design-(work task) Interface design-(work task) Component-level design-(work task) Design model-(work product) Quality assurance points milestones

15 Umbrella activities Software project tracking and control
Risk management Software quality assurance Formal technical reviews Measurement Software configuration management Reusability management Work product preparation and production

16 Introduction to cmmi

17 Why CMMI??? Customer satisfaction Software quality Fundamental problem
Motto of many organizations. Software quality To be induced into the software. Fundamental problem Inability to manage the software process.

18 Symptoms of process failure
Commitments Consistently Missing Late Delivery Last minute crunches Spiraling costs No Management visibility into Progress You’re always being surprised Quality Problems Too much rework Functions do not work correctly Customer complaints after delivery Poor Morale People frustrated Is anyone In charge?

19 The quality of a system is highly influenced by the quality of the process used to acquire, develop and maintain it.

20 Capability Maturity Model Integration
What is CMMI? What is its Frame Work? Explains its different levels with examples?

21 …cont The Capability Maturity Model Integration (CMMI)
Developed by the Software Engineering Institute (SEI), a federally funded research & development center, located at Carnegie Mellon University in Pittsburgh Based on surveys of successful software companies The Capability Maturity Model Integration (CMMI) is a collection of best practices from leading engineering companies.

22 …cont It provides guidance on Systems and Software Engineering and encourages process improvements in organization of any structure. It is a model, which integrates and replaces multiple CMMs. It is a comprehensive process meta-model that is predicted on a set of system and software engineering capabilities that should be present as organization reach different levels of process capability and maturity.

23 …cont Software process capability
Describes the range of expected results that can be achieved by following a software process. The software process capability of an organization provides one means of predicting the most likely outcomes to be expected from the next software project the organization undertakes

24 …cont Software process performance
Represents the actual results achieved by following a software process. This software process performance focuses on the results achieved, while software process capability focuses on results expected.

25 …cont Software process maturity
Is the extent to which a specific process is explicitly defined, managed, measured, controlled and effective. Maturity implies a potential for growth in capability and indicates both the richness of an organization’s software process and the consistency with which it is applied in projects throughout an organization. Level of completeness + level of perfection

26 ...cont The CMMI represents a process meta-model in two ways.
Continuous Model Staged Model

27 …cont A Process Area (PA) is a cluster of related practices in an area that, when performed collectively, satisfy a set of goals considered important for making significant improvement in that area. Practices are actions to be performed to achieve the goals of a process area. All CMMI process areas are common to both continuous and staged representations.

28 …cont A Specific Goal (SG) applies to a process area and addresses the unique characteristics that describe what must be implemented to satisfy the process area. A Specific Practice (SP) is an activity that is considered important in achieving the associated specific goal. Practices are the major building blocks in establishing the process maturity of an organization.

29 1. The Continuous Model A Capability Level is a well defined evolutionary plateau describing the organization's capability relative to a particular process area. Each Process area is formally assessed against specific goals and practices and is rated according to the following capability levels Level 0: Incomplete Level 1: Performed Level 2: Managed Level 3: Defined Level 4: Quantitatively Managed Level 5: Optimized

30 2. The Staged Model The staged CMMI model defines the same process areas, goals and practices as the continuous model The primary difference is that the staged model defines MATURITY LEVELS, rather than CAPABILITY LEVELS. To achieve a maturity level, the specific goals and practices associated with a set a process areas must be achieved.

31 Level Focus Process Areas Continuous Process Improvement 5 Optimizing
Quality Productivity Organizational Innovation and Deployment Causal Analysis and Resolution 5 Optimizing 4 Quantitatively Managed Quantitative Management Organizational Process Performance Quantitative Project Management Requirements Development Technical Solution Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management for IPPD Risk Management Integrated Teaming Integrated Supplier Management Decision Analysis and Resolution Organizational Environment for Integration 3 Defined Process Standardization Requirements Management Project Planning Project Monitoring and Control Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management 2 Managed Basic Project Management Risk Rework 1 Initial

32 Structural Representation in detail of the two meta-models

33 Continuous model structure

34 Process areas Specific goals Specific practices
Establish the characteristics that must exist if the activities implied by a process area are to be effective. Specific practices Refine a goal into a set of process-related activities

35 Set of five generic goals and related practices for each process area
Achieve specific goals Institutionalize a managed process Institutionalize a defined process Institutionalize a quantitatively managed process Institutionalize an optimizing process

36 Continuous model-Capability levels
Rating according to the following capability levels Level 0: Incomplete Level 1: Performed Level 2: Managed Level 3: Defined Level 4: Quantitatively managed Level 5: Optimized

37 …cont Level 0: Incomplete Level 1: Performed
Process area not performed or does not achieve all goals and objectives defined by the CMMI for level 1 capability. Level 1: Performed All of the specific goals of the process area have been satisfied Work tasks required to produce defined work products are being conducted

38 …cont Level 2: Managed All level 1 criteria satisfied
All work associated with process area conforms to organizationally defined policy All people doing work have access to adequate resources to get the job done Monitoring, controlling, and reviewing of work products

39 …cont Level 3: Defined Level 4: Quantitatively managed
All level 2 criteria have been achieved Process is tailored Contribution of work products, measures, and other process-improvements information Level 4: Quantitatively managed All level 3 criteria have been achieved. Process area is controlled and improved using measurement and quantitative assessment.

40 …cont Level 5: Optimized
All capability level 4 criteria have been achieved. Process area is adapted and optimized using quantitative means to meet changing customer needs and to continually improve

41

42 Staged Model Structure

43 Staged model Process areas Goals Practices

44

45 Difference b/w continuous and staged
Five capability levels Staged Five maturity levels

46 References Software Engineering-Chapter1 & 2 By Roger S. Pressman
6th edition


Download ppt "Software Engineering - I"

Similar presentations


Ads by Google