Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
98 views

Software Development Methodology and Project Management - Introduction

Dinesh Anantwar has over 20 years of experience in the global IT industry working for companies like Fujitsu, CDAC, Infosys, and iGATE Patni. He has led projects in the US, Germany, Malaysia, and India and has headed education and training departments. Currently he works as a mentor and consultant for various IT companies and academic institutions. He conducts training sessions on project management, technical topics, and other subjects in various locations around the world.

Uploaded by

sanket_jadhav_14
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
98 views

Software Development Methodology and Project Management - Introduction

Dinesh Anantwar has over 20 years of experience in the global IT industry working for companies like Fujitsu, CDAC, Infosys, and iGATE Patni. He has led projects in the US, Germany, Malaysia, and India and has headed education and training departments. Currently he works as a mentor and consultant for various IT companies and academic institutions. He conducts training sessions on project management, technical topics, and other subjects in various locations around the world.

Uploaded by

sanket_jadhav_14
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

1

Introduction : Dinesh Anantwar


 20+ years of Global IT industry experience
 Worked with,
 Fujitsu ICIM (1 year) Hardware Industry
 CDAC R&D (1.5 years) Systems & Parallel Programming
 Infosys (10 years) Large Complex Software Systems
 iGATE Patni (6 years)
 Mentor/Consultant (2+ years) ##

Introduction : Dinesh Anantwar


 Worked on Projects in USA, Germany, Malaysia and India
 Headed Education and Research for Infosys-Pune, 2003-5
 Globally Headed Training Delivery and Certification at iGATE

Patni 2006-12
 From 2012, Mentoring/Consulting to,
 IT companies like TCS, Amdocs, Fundtech, EValueServe, Tata Power, FIS

Global, Credit Suisse etc.


 CDAC ACTS, MBA, M. tech and Engineering college Faculties n students ##

Introduction : Dinesh Anantwar


 Conducted training sessions at,
 USA (New York, Seattle, Houston, Hart ford, Philadelphia,

Richmond)
 UK (Manchester)
 India (Bangalore, Chennai, Hyderabad, Mumbai, Delhi,
Ahmedabad, Pune, Mangalore, Mysore)

 Conducts wide variety of Project Management and Technical

Trainings
 Training Trainers to Teach effectively ##

Introduction : Dinesh Anantwar


 Academics,
 B. E. (Electronics) Pune University
 Post Graduate Diploma in Advance Computing ACTS





CDAC, Pune
M.S. (Software Systems) BITS Pilani
Post Graduation in Management from IIM-K
PMP from PMI-USA
IBM certified Expert in OO Analysis and Design (RUP)
Certified SCRUM Master

 Board of Studies Member at Symbiosis International

University from 2004 to 2012 ##

Personal Introduction
 Attended Military training in Bhosala Military school
 I love Adventure Trekking, Rock Climbing, Rapelling,









Travelling
Visited 160+ forts in Maharastra
Did Himalayan Trek of Kanchanganga base Camp
Rock climbed Lingana, Karthik, Padargad and Telbaila
pinnacles
Did Solo paragliding from 1000 ft.
Did 2700km Bullet ride in Himalayas (Ladakh, Kashmir,
Himachal, Punjab)
Pune to Bangalore by Car (875km) in 12.5 hrs
Regular Blood Donor
Teach for free to Rural school and colleges ##

Approach of Training
 A very direct and practical approach to develop

required skills and impart useful knowledge


 A lot of,
 Real life examples
 Scenario/Case Study based Discussions More you
participate more you learn
 Hands on practice
 Best Practices
 Typical Mistakes n ways of avoiding those
 Role Plays ##

Do ask questions.

Course Contents

Software Engineering, Project Management


Software life cycle and various life cycle models
Requirements Management
Effort, Schedule and Cost Estimation. MS Project
Design OO Mindset, RUP, UML, STARuml
Project Execution : Develop, Closure and Maintenance
Testing
Agile Methodology SCRUM, Extreme programming
Configuration Management
Software Quality Assurance
Risk Management
10

11

Symptom of Software Crisis


 About US$250 billions spent per year in the US on

application development
 Out of this, about US$140 billions wasted due to the

projects getting abandoned or reworked; this in turn


because of not following best practices and standards

Ref: Standish Group

12

Symptom of Software Crisis.. More statistics


 10% of client/server apps are abandoned or restarted

from scratch
 20% of apps are significantly altered to avoid disaster
 40% of apps are delivered significantly late

Source: 3 year study of 70 large c/s apps 30 European firms.


Compuware

13

Observed Problems
Software products:
 fail to meet user requirements
 crash frequently
 expensive
 difficult to alter, debug, enhance
 often delivered late
 use resources non-optimally
14

Why is the Statistics so Bad?


 Misconception in software development
 False assumptions
 Not distinguishing the coding of a computer program
from the development of a software product
 Software programs have exponential growth in

complexity and difficulty level with respect to size.


 The ad hoc approach which works on developing small
programs breaks down i.e. fails when size of software
increases.

15

Confused with Programs and


Products
Programs

 Usually small in size

Software Products

 Large

 Author himself is sole user  Large number of

users
 Single developer

 Team of developers

 Lacks proper user interface  Well-designed interface


 Well documented &
 Lacks proper

documentation
 Ad hoc development.

user-manual prepared

 Systematic development

16

So%ware Programming So%ware Engineering


 Software programming: the process of translating a problem from

its physical environment into a language that a computer can


understand and obey. (Websters New World Dictionary of
Computer Terms)
 Single developer
 Toy applications
 Short lifespan
 Single or few stakeholders


Architect = Developer = Manager = Tester = Customer = User

 One-of-a-kind systems
 Built from scratch
 Minimal maintenance
17

So%ware Programming So%ware Engineering


 Software engineering
 Teams of developers with multiple roles
 Complex systems
 Indefinite lifespan
 Numerous stakeholders
 Architect Developer Manager Tester Customer User
 Reuse to amortize costs
 Maintenance accounts for over 60% of overall development

costs

18

Why is the Statistics so Bad?


 Software professionals lack engineering

training
 Programmers have skills for programming but without

the engineering mindset about a process discipline

 Internal complexities

19

Software Myths
(Customer Perspectives)
 A general statement of objectives is sufficient to get

started with the development of software.


Missing/vague requirements can easily be
incorporated/detailed out as they get concretized.
 Application requirements can never be stable; software

can be and has to be made flexible enough to allow


changes to be incorporated as they happen. ##

20

Software Myths
(Developer Perspectives)
Once the software is (Designed, Developed, Tested and
then) deployed, the job is done.

Usually, the problems just begin!

21

Software Myths
(Developer Perspectives)
Until the software is coded and is available for testing,
there is no way for assessing its quality.

Usually, there are too many


tiny bugs inserted at every stage
that grow in size and complexity
as they progress thru further stages!

22

Software Myths
(Developer Perspectives)
The only deliverable for a software development project
is the tested code.

The code is only


the externally visible component
of the entire software complement!

23

Software Myths
(Management Perspectives)
As long as there are good standards and clear procedures in my
company, I shouldnt be too concerned.

But the proof of the pudding


is in the eating;
not in the Recipe !

24

Software Myths
(Management Perspectives)
As long as my software engineers have access to the fastest and
the most sophisticated computer environments and state-of-theart software tools, I shouldnt be too concerned.

The environment is
only one of the several factors
that determine the quality
of the end software product!

25

Software Myths
(Management Perspectives)
When my schedule slips, what I have to do is to start a
fire-fighting operation: add more software specialists,
those with higher skills and longer experience - they will
bring the schedule back on the rails!

Unfortunately,
software business does not
entertain schedule compaction
beyond a limit!

26

Unique Characteristics of Software


 Software is malleable (flexible)
 Software construction is human-intensive
 Software is intangible and hard to measure
 Software problems are usually complex
 Software directly depends upon the hardware
 It is at the top of the system engineering food chain

 Software doesnt wear out but will deteriorate


 Software solutions require unusual rigor

27

What is Software Engineering?


 Different focuses for this term exist in various

textbooks. Some are listed below.


 The application of a systematic, disciplined,

quantifiable approach to development, operation, and


maintenance of software; that is, the application of
engineering to software. (IEEE Standard Computer
Dictionary, 610.12, ISBN 1-55937-079-3, 1990)

28

What is Software Engineering? (contd)


 Multi-person construction of multi-version software

(Parnas, 1987)


A discipline that deals with the building of software


systems which are so large that they are built by a
team or teams of engineers (Ghezzi, Jazayeri,
Mandrioli)

29

30

What is Software Engineering?

31

Not Crisis, but a Chronic Problem


 The crisis persists
 After 35 years later, the software crisis is still with us
 Major problems are still the same:


poor quality (correctness, usability, maintainability, etc)

over budget

delivered late, or not at all

 It is not a crisis but a chronic problem


 It becomes a persistent, chronic condition that software

industry has to face with

32

Software Engineering Today?


 Out of date practices become institutionalized

 Organizations go with what has worked in the

past

 Everyone is too busy getting product out of the

door to spend time in education or training or


addressing these problems effectively
33

Situations for Software are Different Too


 Driven by intense market forces, including

persistent pressure to deliver software on


unrealistic time schedules
 Rapidly changing requirements
 Pressures for faster time to market

 Continuing rapid evolution of software

methodologies and systems. Not everyone is able


to adopt.
 Integration of new processes and techniques
 Need to re-design major systems

34

Situations for Software are Different Too


 Talent shortage: needed software engineering

skills often in short supply

35

Three key Challenges


Software engineering in the 21st century faces three
key challenges:
 Legacy systems
 Old, valuable systems must be maintained and updated

 Heterogeneity
 Systems are distributed and include a mix of hardware and

software

 Delivery
 There is increasing pressure for faster delivery of software

36

Why is Software Different?

Software is Engineered or Developed, not Manufactured


in the traditional sense
Software doesnt wear out in the same sense as hardware
Most Softwares are custom-build

37

Failure curve for hardware

Infant
mortality

Hardware
Failure rate.

Wear out

Time
38

Failure curve for software

Software
Failure rate.

Ideal

Time
39

40

Be a born Software Engineer


The Teacher gave a punishment to the student and asked him to write
"I Will Not Throw Paper Airplanes in the Class" 500 times. AND the
Student Wrote:

41

What is a project? What is defn.


of proj. success?
 A project is a TEMPORARY ENDEAVOR which

PROGRESSIVELY ELABORATES a CONCEPT/IDEA and


creates a UNIQUE Product or Service, using limited
RESOURCES
 The Project is a SUCCESS if it meets the pre-defined

OBJECTIVES within the pre-defined CONSTRAINTS

42

The Project Management Triangle


Cost

Quality
Scope

Time
43

How do you define success of a project?


 A large municipal corporation completed a SAP ERP implementation project

for handling birth and death notifications. All functionalities are implemented,
in time, within given cost with required quality. A successful project, isnt it?

 Earlier it used to take 1-2 hours to issue birth and death certificates; Now it

takes 2 days!! Would you call this project a success? Why or why not? What
could be the reasons? ##

44

Project Management The Big


Picture
Market
Share
Cost
Qualit
y
Scope

Time

Productivity
Improvement

Product
Innovation

Project Management Need of the hour


Services to Solutions
45

Goals of Software Engineering


 production of quality software,
 delivered on time,
 within budget,
 satisfying customers requirements and users needs

46

Thats all about


the introduction
47

You might also like