CEN 4021 Software Engineering II Introduction What is

  • Slides: 15
Download presentation
CEN 4021 Software Engineering II Introduction: What is Software Project Management? Instructor: Masoud Sadjadi

CEN 4021 Software Engineering II Introduction: What is Software Project Management? Instructor: Masoud Sadjadi http: //www. cs. fiu. edu/~sadjadi/ sadjadi@cs. fiu. edu CEN 4021 1 st Lecture

Acknowledgements Dr. Onyeka Ezenwoye Dr. Peter Clarke Dr. Betty Cheng Dr. Bernd Bruegge Dr.

Acknowledgements Dr. Onyeka Ezenwoye Dr. Peter Clarke Dr. Betty Cheng Dr. Bernd Bruegge Dr. Allen Dutoit CEN 4021: Software Engineering II 1 st Lecture 2

What is software? Software – Computer programs and associated documentation Documentation includes – requirements

What is software? Software – Computer programs and associated documentation Documentation includes – requirements – design models – user manuals – configuration file CEN 4021: Software Engineering II 1 st Lecture

Software artifact – A unit of material, in the form of a document, presentation,

Software artifact – A unit of material, in the form of a document, presentation, or code, that is developed as a part of, or as a contribution to, the final solution to the users. Code – A set of instructions to a device, possibly a computing device, to perform a desired set of instructions. CEN 4021: Software Engineering II 1 st Lecture

Software everywhere! More and more systems are software controlled Expenditure on software represents a

Software everywhere! More and more systems are software controlled Expenditure on software represents a significant fraction of investment in all developed countries. 40 million 86 million CEN 4021: Software Engineering II 1 st Lecture

What is software engineering? A systematic approach to developing software. “Methods and techniques to

What is software engineering? A systematic approach to developing software. “Methods and techniques to develop and maintain quality software to solve problems. ” [Pfleeger, 1990] “Study of the principles and methodologies for developing and maintaining software systems. ” [Zelkowitz, 1978] “Software engineering is an engineering discipline which is concerned with all aspects of software production. ” [Sommerville] CEN 4021: Software Engineering II 1 st Lecture 6

What is software engineering? “Practical application of scientific knowledge in the design and construction

What is software engineering? “Practical application of scientific knowledge in the design and construction of computer programs and the associated documentation required to develop, operate, and maintain them. ” [Boehm, 1976] “Deals with establishment of sound engineering principles and methods in order to economically obtain software that is reliable and works on real machines. ” [Bauer, 1972] CEN 4021: Software Engineering II 1 st Lecture 7

What is software engineering? Software engineers should adopt a systematic and organised approach to

What is software engineering? Software engineers should adopt a systematic and organised approach to their work and use appropriate tools and techniques depending on the problem to be solved, the development constraints and the resources available. Software engineering is concerned with theories, methods and tools for professional software development. To produce quality software within constraints – Time & Cost CEN 4021: Software Engineering II 1 st Lecture

What is a software process? A set of activities whose goal is the development

What is a software process? A set of activities whose goal is the development or evolution of software. Generic activities in all software processes are: – Specification - what the system should do and its development constraints – Development - production of the software system – Validation - checking that the software is what the customer wants – Evolution - changing the software in response to changing demands. CEN 4021: Software Engineering II 1 st Lecture

What is Software Project Management? Software project management is concerned with ensuring that, for

What is Software Project Management? Software project management is concerned with ensuring that, for a software project, – the most appropriate process and methodologies are chosen, – the desired internal product structure is attained and – the external product properties are achieved. In addition, the project management constraints of schedule and resources must be met. [Tsui ’ 04] CEN 4021: Software Engineering II 1 st Lecture

Why Software Project Management? Cost, cost!!! & Time, time!!! $250 Billion is spent each

Why Software Project Management? Cost, cost!!! & Time, time!!! $250 Billion is spent each year on approx. 175, 000 information technology (IT) application projects. 31% of all the above projects will fail and 53% of the projects will overrun the original cost estimates i. e. $81 billion wasted or canceled projects. US. Standish Group’s Chaos report. CEN 4021: Software Engineering II 1 st Lecture

Why is SPM difficult? The product is intangible: – Software cannot be seen or

Why is SPM difficult? The product is intangible: – Software cannot be seen or touched. – It is difficult to see and measure progress. There are no standard software processes. – S/w process varies from one organization to another. – Effect are readily seen when the s/w project is part of a wider systems engineering project. CEN 4021: Software Engineering II 1 st Lecture

Why is SPM difficult? Large software projects are often ‘one-of-a-kind’ projects. – Usually s/w

Why is SPM difficult? Large software projects are often ‘one-of-a-kind’ projects. – Usually s/w projects differ in some ways from previous projects. – Experience gained on one project may not work for another project. – Technological changes in computers and communications can make a manager’s experience obsolete. [Sommerville ’ 04] CEN 4021: Software Engineering II 1 st Lecture

SPM Activities Software Project Management activities include: – Proposal writing – Project planning and

SPM Activities Software Project Management activities include: – Proposal writing – Project planning and scheduling – Project cost – Project monitoring and reviews – Personnel selection and evaluation – Report writing and presentations CEN 4021: Software Engineering II 1 st Lecture

Phases of SPM The previous management activities are captured using the acronym POMA: –

Phases of SPM The previous management activities are captured using the acronym POMA: – Planning – Organizing – Monitoring – Adjusting CEN 4021: Software Engineering II 1 st Lecture