SOFTWARE PROJECT
  MANAGEMENT
           BY
 Dr. Narendra M.Mishra
  IMT-CDL, Ghaziabad
Technical Development of software
• What is software?
• Computer programs and associated documentation together constitute
    the software .
• A software may be developed for :
1. A Single customer according to his/her specification (bespoke)
2. General market
i.e generic in nature and to be sold to a range of different customers through
    different channels.
What are the characteristics of good
             software ?
1.Maintainability:
Software must evolve to meet changing needs.
2. Dependability:
Software must be reliable
3.Efficiency:
Software should not waste system resources.
4. Usability
It should be usable by the users for whom it is
   designed.
Programs vs Software Products
Characteristics         Program               SW product
Users                   self                  Others
Number of user          Self/few              Large number
Size                    small                 Large
Functionality           limited               Large
Interfaces              Ok                    Well designed
Environment             One                   Several
System                  Used by itself        Works with other
                                              systems
User background         Similar               Varied
Presence of bugs        Not a major concern   Major concern
Documentation           Minimal               Exhaustive
Testing                 Minimal               Exhaustive
Cost/user               High                  low
Developers              One /few              Many
Use of standards, etc   Not essential         essential
Planning for reusable software
               libraries



 Application    Application
requirments    development    Application
                 process
Application development process
                            Application
      Application          development              Application
     requirement             process




                        Library           Object library
Library reqiurment   development
                       process
Trends in ERP solutions
• ERP SOFTWARE has embarked beyond the
  traditional business processes to support all
  business decisions.
• IT/IS planners are considering applications
  that include ERP:
• Existing ERP software is also playing a role in
  such decisions.
Trends IN ERP
• Organizations stay with their ERP vendor (SAP,
   ORACLE etc) rather than looking elsewhere for
   additional solutions e.g data warehousing, data
   mining.
• Trend2: several software vendors are building
   applications that integrate with the well known
   ERP software packages.
 trnd3: successful deployers of erp , offer
   consultancy service to other prospective
   deployers.
Software Maintenance
• Software maintenance consumes more than
  60% of the software budgets and it is growing.
• Mechanism needs to be developed for
  evaluating, controlling and making
  modifications.
• Cycle of software reengineering activities
  during maintenance:
•   Inventory analysis of software assets , Document restructuring, Reverse engineering, code
    restructuring, data restructuring, Forward engineering.
Maintenance model for major rework

                                    Change requirement


  Reverse engineering                                Forward engineering

                                                                                      code
                            Requirements                                     Module
                             specification                                 specifications
                                                                  Design
                              Design                 Modified
                                                     required
                          Module                     specificat
                        specification                  ions

              Code
Evolving role of software
• Software delivers the most important product
  of our time: information
Evolution of Software engineering
               Discipline
• SE evolved over the last 50/60 years with
  contributions from software professionals and
  several researchers from different discipline
• Systematic and engineering like approach to
  software development .
Software engineering definitions
• IEEE: systematic approach to development,
  operations , maintenance , and retirement of
  software.
System development cycle:

Software project management

  • 1.
    SOFTWARE PROJECT MANAGEMENT BY Dr. Narendra M.Mishra IMT-CDL, Ghaziabad
  • 2.
    Technical Development ofsoftware • What is software? • Computer programs and associated documentation together constitute the software . • A software may be developed for : 1. A Single customer according to his/her specification (bespoke) 2. General market i.e generic in nature and to be sold to a range of different customers through different channels.
  • 3.
    What are thecharacteristics of good software ? 1.Maintainability: Software must evolve to meet changing needs. 2. Dependability: Software must be reliable 3.Efficiency: Software should not waste system resources. 4. Usability It should be usable by the users for whom it is designed.
  • 4.
    Programs vs SoftwareProducts Characteristics Program SW product Users self Others Number of user Self/few Large number Size small Large Functionality limited Large Interfaces Ok Well designed Environment One Several System Used by itself Works with other systems User background Similar Varied Presence of bugs Not a major concern Major concern Documentation Minimal Exhaustive Testing Minimal Exhaustive Cost/user High low Developers One /few Many Use of standards, etc Not essential essential
  • 5.
    Planning for reusablesoftware libraries Application Application requirments development Application process
  • 6.
    Application development process Application Application development Application requirement process Library Object library Library reqiurment development process
  • 7.
    Trends in ERPsolutions • ERP SOFTWARE has embarked beyond the traditional business processes to support all business decisions. • IT/IS planners are considering applications that include ERP: • Existing ERP software is also playing a role in such decisions.
  • 8.
    Trends IN ERP •Organizations stay with their ERP vendor (SAP, ORACLE etc) rather than looking elsewhere for additional solutions e.g data warehousing, data mining. • Trend2: several software vendors are building applications that integrate with the well known ERP software packages. trnd3: successful deployers of erp , offer consultancy service to other prospective deployers.
  • 9.
    Software Maintenance • Softwaremaintenance consumes more than 60% of the software budgets and it is growing. • Mechanism needs to be developed for evaluating, controlling and making modifications. • Cycle of software reengineering activities during maintenance: • Inventory analysis of software assets , Document restructuring, Reverse engineering, code restructuring, data restructuring, Forward engineering.
  • 10.
    Maintenance model formajor rework Change requirement Reverse engineering Forward engineering code Requirements Module specification specifications Design Design Modified required Module specificat specification ions Code
  • 11.
    Evolving role ofsoftware • Software delivers the most important product of our time: information
  • 12.
    Evolution of Softwareengineering Discipline • SE evolved over the last 50/60 years with contributions from software professionals and several researchers from different discipline • Systematic and engineering like approach to software development .
  • 13.
    Software engineering definitions •IEEE: systematic approach to development, operations , maintenance , and retirement of software.
  • 14.

Editor's Notes

  • #11 Reenginnering takes time, cost significant amount of money, and consumes resources.
  • #12 The software plays a dual role: It is a product by itself, i.e delivers computing potential e.g information transformer (add , modify delete, and trnamit data.