Managing
Software
Development
Object Oriented
Software Engineering
RespaPeter
Roll No:12
ASIET Kalady
Managing SoftwareDevelopment
ASIET Kalady
ManagingSoftware Development
 Management activities focus on planning the project, monitoring its status,
tracking changes, and coordinating resources such that a high quality
product is delivered on time and within budget.
 Management activities not only involve managers, but also most of the other
project participants as well.
 The main Management activities include
 Communication
 Rationale management
 Software Configuration Management
 Project Management
 Software Life Cycle
Communication
o Communication is the most critical and time consuming activity in
software engineering
o Misunderstandings and omissions often lead to faults and delays that are
expensive to correct later in the development
o Communication includes the exchange of models and documents about the
system and its application domains, reporting the status of work products,
providing feedback on the quality of work products, raising and
negotiating issues, and communicating decisions.
o To deal with communication issues, project participants have many tools
available.
o The most effective one is conventions: when participants agree on
notations for representing information, on tools for manipulating
information, and on procedures for raising and resolving issues, they
already have eliminated substantial sources of misunderstanding.
Managing SoftwareDevelopment
ASIET Kalady
o Examples of notations include UML diagrams, templates for writing
documents and meeting minutes, and identification schemes for naming
software components.
o Examples of tools include CASE (Computer Aided Software Engineering)
tools for maintaining models, word processors for generating documents,
ad interchange formats for publishing information.
o Examples of procedures include meeting procedures for organizing,
conducting, and capturing a meeting, review procedures for reviewing
documents and providing feedback, and inspection procedures for
detecting defects in model or source code.
o The selected conventions do not need to be the best available; they only
need to be shared and agreed on by everybody.
Rationale Management
o Rationale is the justification of decisions, its rationale includes the
problem that it addresses, the alternatives, the debate developers
considered used to evaluate the alternatives, the debate developers went
through to achieve consensus, and the decisions.
o This is a detailed summary of research on design rationale providing
researchers in software engineering with an excellent overview of the
subject.
o Rationale is the most important information developers need when
changing the system.
o If a criterion changes, developers can reevaluate all decisions that depend
on this criterion.
o If a new alternative becomes available, it can be compared all other
alternative that were already evaluated.
o If a decision is questioned, they can recover its rationale to justify it.
Managing SoftwareDevelopment
ASIET Kalady
o Unfortunately, rationale is also the most complex information developers
deal with during development, and thus, the most difficult to update and
maintain.
o To deal with this challenge, developers capture rationale during meetings
and on line discussions, represents rationale with issue models, and
access rationale during changes.
Software Configuration Management
o Software configuration management is the process that monitors and controls
changes in work products.
o Change pervades software development.
o Changes include requirement changes, hardware/software platform changes,
and system changes.
o Software configuration management used to be in the realm of maintenance,
when improvements are incrementally introduced in the system.
o Configuration management enables developers to track changes.
o The system is represented as a number of configuration items that are
independently revised.
o For each configuration items, its evaluation is tracked as a series of versions.
o Selecting versions enables developers to role back to a well defined state of
the system when a change fails.
o Configuration management also enables developers to control change.
o After a baseline has been defined, any change needs to assessed and
approved before being implemented.
o This enables management to ensure that the system is evolving according to
project goals and that the number of problems introduced into the system is
limited.
Managing SoftwareDevelopment
ASIET Kalady
Project Management
o Software project management is the art and science of planning and leading software
projects.
o Project Management activities include: determining the scope of the project, project
planning, implementation of project components in a timely manner, review of project
activities, and a listing of lessons learned during the project.
o A Software Project Management Plan (SPMP) can be used to outline the structure of the
project and how it will be managed.
o Project management does not produce any artifact of its own.
o It includes the oversight activities that ensure the delivery of a high-quality system on
time and within budget.
o This include planning and budgeting the project during negotiations with the client,
hiring developers and organizing them into teams, monitoring the status of project and
intervening when deviations occur.
Software Life Cycle
o System LifeCycle is a process focusedon the activities directly related to production of
the software, forexample, design, coding, and testing.
o General model of the development process is called software lifecycle.
o Software life cycle model represents all the activities and work products
necessary to develop a software system.
o It enables managers and developers to deal with the complexity of the
process of developing software.
o Focusing only on what is relevant to specific issues; developers can more
effectively resolve issues and answer questions.
o The process of developing software can also viewed as a complex system
with inputs, outputs, activities, and resources.
o Same modeling techniques applied to software artifacts are used for
modeling software processes.
o Like software system, software life cycle can be described by several
Managing SoftwareDevelopment
ASIET Kalady
different models.
o Activity centered: software life cycle models those are focused on the
activities of software development and represented them explicitly as
class object. This view leads participants to focus on how work products
are created.
o Entity centered: this view of software life cycle focus on the work product
created by the activities.
o It leads the participants to focus on the content and structure of the work
product.
Testing
 Testing is the process of finding difference between the expected behaviors
specified by the system models and observed behavior of the implemented
system.
 Unit testing: find difference between the object model design and the
corresponding component.
 Structural testing: find differences between the system design model and a
subset of integrated subsystems.
 Functional testing: finds difference between the use case model and the
system.
 Performance testing: finds difference between nonfunctional requirements
and actual system performance.
 From a modeling point of view, testing is the attempt to show that the
implementation of the system is inconsistent with the system models.
 The goal of the testing is to design tests that exercise defects in the system
and to reveal problems.
 Consequently, testing is usually accomplished by developers that were not
Managing SoftwareDevelopment
ASIET Kalady
involved with the construction of the system.
 Testing is defined as the systematic attempt to find faults in a planned way
in the implemented software.

More Related Content

PPTX
Ch24-Software Engineering 9
PPTX
Software quality assurance activites
PDF
Software Development Life Cycle (SDLC)
PPTX
software development life cycle(SDLC)
PDF
Software Testing Principles
PPTX
verification and validation
PPTX
Software Development Life Cycle-SDLC
DOCX
Spm unit 2
Ch24-Software Engineering 9
Software quality assurance activites
Software Development Life Cycle (SDLC)
software development life cycle(SDLC)
Software Testing Principles
verification and validation
Software Development Life Cycle-SDLC
Spm unit 2

What's hot (20)

PPT
Software documentation
PPTX
Software development process
PPTX
Software quality assurance
PPT
Quality Management in Software Engineering SE24
PPTX
Chapter 5 Agile Software development
PDF
System Development Methodologies
PPTX
Software quality assurance
PPTX
Quality management in software engineering
PPTX
Software Configuration Management
PPTX
Software quality
PPTX
Software Quality Assurance
DOC
Fresher resume-sample1
PPTX
ACHIEVING SOFTWARE QUALITY.pptx
PPTX
Computer aided software engineering
PPTX
7 stages of system Development life cycle ppt
PPTX
Quality Assurance in Software Ind.
PPTX
Software Development Life Cycle
PPT
System quality attributes
PPTX
Software reliability growth model
PPT
Software Quality Assurance
Software documentation
Software development process
Software quality assurance
Quality Management in Software Engineering SE24
Chapter 5 Agile Software development
System Development Methodologies
Software quality assurance
Quality management in software engineering
Software Configuration Management
Software quality
Software Quality Assurance
Fresher resume-sample1
ACHIEVING SOFTWARE QUALITY.pptx
Computer aided software engineering
7 stages of system Development life cycle ppt
Quality Assurance in Software Ind.
Software Development Life Cycle
System quality attributes
Software reliability growth model
Software Quality Assurance
Ad

Viewers also liked (7)

PDF
Final Exam Solutions Fall02
PDF
Final Exam Questions Fall03
PDF
Object oriented and classical software engineering 8th edition v413 hav
PPTX
June 2010 exam questions and answers
PPT
Chapter02
PDF
Software Engineering - Ch4
PPTX
System Analysis and Design
Final Exam Solutions Fall02
Final Exam Questions Fall03
Object oriented and classical software engineering 8th edition v413 hav
June 2010 exam questions and answers
Chapter02
Software Engineering - Ch4
System Analysis and Design
Ad

Similar to Managing software development (20)

PPTX
Introduction To Software Concepts Unit 1 & 2
PPT
Software Engineering principles and practices
PPTX
Introduction to Software Engineering and Models pptx
PPT
Managing Software Project
PPTX
Slcm sharbani bhattacharya
PPTX
Introduction to Software Development Life Cycle.pptx
PDF
Software Engineering Basics.pdf
PPTX
System development lifecycle in grade 12
PDF
Software For Software Development Life Cycle
PDF
Various Process of Software Engineering notes
PPTX
SOFTWARE ENGG UNIT-1 PPT HDFC life cycle and web apps.pptx
PPTX
Unit 1 Software Engineering and Development Models .pptx
PPTX
reaserch ppt.pptx
PDF
Software engineering interview questions
PDF
software_engineering_interview_questions.pdf
PDF
SE notes by k. adisesha
PPTX
SE-Lecture-2.pptx
PPT
Software models
PPTX
Software Engineering - Introduction to software engineering
PPTX
Recent and-future-trends spm
Introduction To Software Concepts Unit 1 & 2
Software Engineering principles and practices
Introduction to Software Engineering and Models pptx
Managing Software Project
Slcm sharbani bhattacharya
Introduction to Software Development Life Cycle.pptx
Software Engineering Basics.pdf
System development lifecycle in grade 12
Software For Software Development Life Cycle
Various Process of Software Engineering notes
SOFTWARE ENGG UNIT-1 PPT HDFC life cycle and web apps.pptx
Unit 1 Software Engineering and Development Models .pptx
reaserch ppt.pptx
Software engineering interview questions
software_engineering_interview_questions.pdf
SE notes by k. adisesha
SE-Lecture-2.pptx
Software models
Software Engineering - Introduction to software engineering
Recent and-future-trends spm

More from Respa Peter (14)

PPTX
Tpes of Softwares
PPTX
Information technology for business
DOCX
Types of sql injection attacks
DOCX
DataMining Techniq
DOCX
Database
DOCX
software failures
DOCX
Cloud computing
DOCX
Data mining
DOCX
PDF
Genetic algorithm
DOCX
Matrix multiplicationdesign
PPTX
Web services have made the development of mobile Web applications much easier...
PPTX
Matrix chain multiplication
PPTX
Open shortest path first (ospf)
Tpes of Softwares
Information technology for business
Types of sql injection attacks
DataMining Techniq
Database
software failures
Cloud computing
Data mining
Genetic algorithm
Matrix multiplicationdesign
Web services have made the development of mobile Web applications much easier...
Matrix chain multiplication
Open shortest path first (ospf)

Recently uploaded (20)

PDF
ChatGPT for Dummies - Pam Baker Ccesa007.pdf
PPTX
Unit 4 Computer Architecture Multicore Processor.pptx
PDF
LDMMIA Reiki Yoga Finals Review Spring Summer
PDF
My India Quiz Book_20210205121199924.pdf
PPTX
Virtual and Augmented Reality in Current Scenario
PDF
Uderstanding digital marketing and marketing stratergie for engaging the digi...
PDF
International_Financial_Reporting_Standa.pdf
PDF
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
PDF
CISA (Certified Information Systems Auditor) Domain-Wise Summary.pdf
PPTX
Introduction to pro and eukaryotes and differences.pptx
PDF
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 1)
PPTX
Computer Architecture Input Output Memory.pptx
PDF
احياء السادس العلمي - الفصل الثالث (التكاثر) منهج متميزين/كلية بغداد/موهوبين
PDF
Trump Administration's workforce development strategy
PDF
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
PDF
MBA _Common_ 2nd year Syllabus _2021-22_.pdf
DOCX
Cambridge-Practice-Tests-for-IELTS-12.docx
DOC
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
PPTX
Chinmaya Tiranga Azadi Quiz (Class 7-8 )
PDF
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 2).pdf
ChatGPT for Dummies - Pam Baker Ccesa007.pdf
Unit 4 Computer Architecture Multicore Processor.pptx
LDMMIA Reiki Yoga Finals Review Spring Summer
My India Quiz Book_20210205121199924.pdf
Virtual and Augmented Reality in Current Scenario
Uderstanding digital marketing and marketing stratergie for engaging the digi...
International_Financial_Reporting_Standa.pdf
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
CISA (Certified Information Systems Auditor) Domain-Wise Summary.pdf
Introduction to pro and eukaryotes and differences.pptx
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 1)
Computer Architecture Input Output Memory.pptx
احياء السادس العلمي - الفصل الثالث (التكاثر) منهج متميزين/كلية بغداد/موهوبين
Trump Administration's workforce development strategy
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
MBA _Common_ 2nd year Syllabus _2021-22_.pdf
Cambridge-Practice-Tests-for-IELTS-12.docx
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
Chinmaya Tiranga Azadi Quiz (Class 7-8 )
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 2).pdf

Managing software development

  • 2. Managing SoftwareDevelopment ASIET Kalady ManagingSoftware Development  Management activities focus on planning the project, monitoring its status, tracking changes, and coordinating resources such that a high quality product is delivered on time and within budget.  Management activities not only involve managers, but also most of the other project participants as well.  The main Management activities include  Communication  Rationale management  Software Configuration Management  Project Management  Software Life Cycle Communication o Communication is the most critical and time consuming activity in software engineering o Misunderstandings and omissions often lead to faults and delays that are expensive to correct later in the development o Communication includes the exchange of models and documents about the system and its application domains, reporting the status of work products, providing feedback on the quality of work products, raising and negotiating issues, and communicating decisions. o To deal with communication issues, project participants have many tools available. o The most effective one is conventions: when participants agree on notations for representing information, on tools for manipulating information, and on procedures for raising and resolving issues, they already have eliminated substantial sources of misunderstanding.
  • 3. Managing SoftwareDevelopment ASIET Kalady o Examples of notations include UML diagrams, templates for writing documents and meeting minutes, and identification schemes for naming software components. o Examples of tools include CASE (Computer Aided Software Engineering) tools for maintaining models, word processors for generating documents, ad interchange formats for publishing information. o Examples of procedures include meeting procedures for organizing, conducting, and capturing a meeting, review procedures for reviewing documents and providing feedback, and inspection procedures for detecting defects in model or source code. o The selected conventions do not need to be the best available; they only need to be shared and agreed on by everybody. Rationale Management o Rationale is the justification of decisions, its rationale includes the problem that it addresses, the alternatives, the debate developers considered used to evaluate the alternatives, the debate developers went through to achieve consensus, and the decisions. o This is a detailed summary of research on design rationale providing researchers in software engineering with an excellent overview of the subject. o Rationale is the most important information developers need when changing the system. o If a criterion changes, developers can reevaluate all decisions that depend on this criterion. o If a new alternative becomes available, it can be compared all other alternative that were already evaluated. o If a decision is questioned, they can recover its rationale to justify it.
  • 4. Managing SoftwareDevelopment ASIET Kalady o Unfortunately, rationale is also the most complex information developers deal with during development, and thus, the most difficult to update and maintain. o To deal with this challenge, developers capture rationale during meetings and on line discussions, represents rationale with issue models, and access rationale during changes. Software Configuration Management o Software configuration management is the process that monitors and controls changes in work products. o Change pervades software development. o Changes include requirement changes, hardware/software platform changes, and system changes. o Software configuration management used to be in the realm of maintenance, when improvements are incrementally introduced in the system. o Configuration management enables developers to track changes. o The system is represented as a number of configuration items that are independently revised. o For each configuration items, its evaluation is tracked as a series of versions. o Selecting versions enables developers to role back to a well defined state of the system when a change fails. o Configuration management also enables developers to control change. o After a baseline has been defined, any change needs to assessed and approved before being implemented. o This enables management to ensure that the system is evolving according to project goals and that the number of problems introduced into the system is limited.
  • 5. Managing SoftwareDevelopment ASIET Kalady Project Management o Software project management is the art and science of planning and leading software projects. o Project Management activities include: determining the scope of the project, project planning, implementation of project components in a timely manner, review of project activities, and a listing of lessons learned during the project. o A Software Project Management Plan (SPMP) can be used to outline the structure of the project and how it will be managed. o Project management does not produce any artifact of its own. o It includes the oversight activities that ensure the delivery of a high-quality system on time and within budget. o This include planning and budgeting the project during negotiations with the client, hiring developers and organizing them into teams, monitoring the status of project and intervening when deviations occur. Software Life Cycle o System LifeCycle is a process focusedon the activities directly related to production of the software, forexample, design, coding, and testing. o General model of the development process is called software lifecycle. o Software life cycle model represents all the activities and work products necessary to develop a software system. o It enables managers and developers to deal with the complexity of the process of developing software. o Focusing only on what is relevant to specific issues; developers can more effectively resolve issues and answer questions. o The process of developing software can also viewed as a complex system with inputs, outputs, activities, and resources. o Same modeling techniques applied to software artifacts are used for modeling software processes. o Like software system, software life cycle can be described by several
  • 6. Managing SoftwareDevelopment ASIET Kalady different models. o Activity centered: software life cycle models those are focused on the activities of software development and represented them explicitly as class object. This view leads participants to focus on how work products are created. o Entity centered: this view of software life cycle focus on the work product created by the activities. o It leads the participants to focus on the content and structure of the work product. Testing  Testing is the process of finding difference between the expected behaviors specified by the system models and observed behavior of the implemented system.  Unit testing: find difference between the object model design and the corresponding component.  Structural testing: find differences between the system design model and a subset of integrated subsystems.  Functional testing: finds difference between the use case model and the system.  Performance testing: finds difference between nonfunctional requirements and actual system performance.  From a modeling point of view, testing is the attempt to show that the implementation of the system is inconsistent with the system models.  The goal of the testing is to design tests that exercise defects in the system and to reveal problems.  Consequently, testing is usually accomplished by developers that were not
  • 7. Managing SoftwareDevelopment ASIET Kalady involved with the construction of the system.  Testing is defined as the systematic attempt to find faults in a planned way in the implemented software.