RD System Development Management 1 Theo Schouten 2010


























- Slides: 26

R&D System Development Management 1 Theo Schouten 2010 Gi. PHouse Radboud University Nijmegen

Lectures • 9 lectures of 2 hour – some by guest speakers • 2 hour written examination – no books or documentation • based on: – Software Engineering – A practitioner’s Approach: European Adaptation, sixth edition , Roger S. Pressman, changing to seventh – sheets of the presentations – extra treated concepts and theories Gi. PHouse Radboud University Nijmegen 2

Gi. PHouse • practical work of R&D SDM 1 (4 ec) – management of the software house and its projects • serious participation needed – individual grade – 50% of final grade Gi. PHouse Radboud University Nijmegen 3

Aim • SDM 1 has the aim that the student obtains all the professional skills of an IT project leader. • SDM 1 resembles the phase in an IT career in which the project leader takes responsibility for the management of a software development project. • and/or responsibility for the management of the company • Within Gi. PHouse students aim at two goals: – realizing their own personal development goals, and – delivering a high quality system. – focus on teamwork Gi. PHouse Radboud University Nijmegen 4

Role • Role differentiation, typical for knowledge workers • control by reviewing against quality criteria – judged by other students and customers • teachers are more at a “distance” – CEO, following all email – design of SDM 1, Gi. PHouse Radboud University Nijmegen 5

Scope • Within SDM 1 we address the project management aspects of the whole life cycle of a system development project: • from definition study through system design, system development and system implementation all the way to the maintenance of a system in an operational environment. Gi. PHouse Radboud University Nijmegen 6

other managers • Improving the company – handbooks, activity templates, intra-net, etc – PR, customer contact – different team members (IK, IC, KI, HBO-students) – collaboration software facilities – differentiated grading • Preparing the future – projects for the next semester – Gi. P International Gi. PHouse Radboud University Nijmegen 7

Course Subjects • Project management • Project planning – Business Planning, Technical Planning • Rolls of – Project manager, Quality manager, Contract Owner, Public Relations Manager, Director • Planning methods – PERT, CPM, Work Breakdown structure, Gantt-charts • • Quality Management Risk Management Metrics Component Based Development Gi. PHouse Radboud University Nijmegen 8

Project management • What is project management? • What makes management of software development so special? • Which roles are there? • Which steps do you have to take? • What is a project? Chapter 1 and 21 of book, (24 in 7 th) Gi. PHouse Radboud University Nijmegen 9

What is project management • ‘. . it involves the planning, monitoring and control of the people, process and events that occur as software evolves from a preliminary concept to an operational implementation. ’ (Dilbert) • ‘. . The role of the ‘manager’ is to plan, organize, staff, direct and control. He or she deals with ideas, things and people. ’ (Tomayko and Hallman, 1989) • Care that every stakeholder stays happy Gi. PHouse Radboud University Nijmegen 10

North Sea Project Cost History • Brent C 10, 0 Final or forecast cost/estimate 8, 0 4, 0 2, 0 • Dunlin • Brent B • Brent C • Frigg I&II • Statfjord A • Brent D • Frigg • Ekofisk IV IV • Ekofisk II • Valhall • Murchison • Ekofisk III • Statfjord B • Leman • Fulmar Gas • Odin • Fulmar • Inde M&N • Eider • N. Cormorant • Clyde • Tern 1, 0 0, 8 0, 6 0, 5 ‘ 71 ‘ 72 ‘ 73 ‘ 74 ‘ 75 ‘ 76 ‘ 77 ‘ 78 ‘ 79 ‘ 80 ‘ 81 ‘ 82 ‘ 83 ‘ 84 ‘ 85 ‘ 86 ‘ 87 ‘ 89 ‘ 90 Gi. PHouse Radboud University Nijmegen Year of appropriation estimate 11

Challenges Reasons? Gi. PHouse Radboud University Nijmegen (Van Genuchten 1991) 12

Reasons for cost/delay overrun • Human capacity: – Not available due to: overruns in previous or other projects, needed for unplanned activities • Human related: – too little experience with e. g. development environment – more inexperienced then experienced people, wrong mix • Input-requirements related: – requirements too late, too little quality – specifications for COTS or other hardware too late, too little quality – changing requirements during the project Gi. PHouse Radboud University Nijmegen 13

further • Product (technology) related – – – changing interfaces with environment software complexity underestimated more problems with performance of memory limitations more software failures (bugs) than planned product wrongly designed, redesign is needed • Organization related – – less continuity in project team members more interruptions than planned more influence/interruption of quality assurance activities bureaucracy • Tools related – Development or test tools too late or not adequate – Needed releases too late or with too many errors Gi. PHouse Radboud University Nijmegen 14

Implementation benchmarks Obstacles until “go-live” Obstacles after “go-live” Change Management Internal Staff Adequacy Training Project Team Internal Staff Adequacy Training Prioritization/Resource Allocation Top Management Support Project Team Consultants Discipline Ownership (of Benefits and Other) People 51% Ownership (of Benefits and Other) People 62% Discipline Ongoing Support Program Management Process Reenigineering Stage/Transition Business Performance Process 16% Benefit Realization Process 19% Process Reengineering Software Functionality Application Portfolio Management Enhancements/Upgrades Data Application Portfolio Management Technology 12% Reporting 0 2 % of Mentions Gi. PHouse Radboud University Nijmegen 4 6 8 10 12 14 Technology 19% Reporting 16 0 2 4 6 8 10 12 14 16 % of Mentions 15

People, Process & Technology requires skills and new roles in organisations Processes based on the skills of people People The ideal process requires a skilled organisation People need to know how to manage the system Technology Processes require a well fitting and performing system Systems limit but also challenge processes Gi. PHouse Radboud University Nijmegen 16

specific to software management? • Software is a creative product based on human ideas, concepts and models; it has no natural limits • Software develops during the process • Software engineering is relative young; measuring is difficult • Developed software needs acceptance by users in their environments • User requirements change during the development • Fixing the design is a balancing act between user acceptance and project control possibilities • Design is based on concepts and ideas, not on fixed or well known building blocks • It is difficult to detect bugs during the development process • Communication and interaction with legacy systems and COTS increases Gi. PHouse Radboud University Nijmegen 17

The Four P’s • People — the most important element of a successful project • Product — the software to be built • Process — the set of framework activities and software engineering tasks to get the job done • Project — all work required to make the product a reality Gi. PHouse Radboud University Nijmegen 18

MOI model of leadership • Motivation. The ability to encourage (by “push or pull”) technical people to produce to their best ability. • Organization. The ability to mold existing processes (or invent new ones) that will enable the initial concept to be translated into a final product. • Ideas or innovation. The ability to encourage people to create and feel creative even when they must work within bounds established for a particular software product or application Gi. PHouse Radboud University Nijmegen 19

Team Coordination & Communication • Formal, impersonal approaches include software engineering documents and work products (including source code), technical memos, project milestones, schedules, and project control tools, change requests and related documentation, error tracking reports, and repository data. • Formal, interpersonal procedures focus on quality assurance activities applied to software engineering work products. These include status review meetings and design and code inspections. • Informal, interpersonal procedures include group meetings for information dissemination and problem solving and “collocation of requirements and development staff. ” • Interpersonal networking includes informal discussions with team members and those outside the project who may have experience or insight that can assist team members. Gi. PHouse Radboud University Nijmegen 20

Projects get into trouble when … • • • Software people don’t understand their customer’s needs. The product scope is poorly defined. Changes are managed poorly. The chosen technology changes. Business needs change [or are ill-defined]. Deadlines are unrealistic. Users are resistant. Sponsorship is lost [or was never properly obtained]. The project team lacks people with appropriate skills. Managers [and practitioners] avoid best practices and lessons learned. Gi. PHouse Radboud University Nijmegen 21

Project organization and roles Project Sponsor Steering Committee Project Manager(s) Functional/Process Groups (User Focal Points) User Group 1 Gi. PHouse Radboud University Nijmegen User Group 2 …. . Technical Project Leader Analysts Designers Programmers User Group n 22

people, phases, time Definition Gi. PHouse Radboud University Nijmegen Design Construction Implementation 23

Which plans ? • Business planning –Goals and vision –Requirements Analysis –Project plan • Technical Planning –Program Master plan –Management plan –Development plan –Configuration Management plan –Quality Assurance plan –Maintenance plan Gi. PHouse Radboud University Nijmegen –Test plan –Integration plan –Documentation plan –Transition plan –Firmware development plan 24

Common-Sense Approach to Projects • Start on the right foot. This is accomplished by working hard (very hard) to understand the problem that is to be solved and then setting realistic objectives and expectations. • Maintain momentum. The project manager must provide incentives to keep turnover of personnel to an absolute minimum, the team should emphasize quality in every task it performs, and senior management should do everything possible to stay out of the team’s way. • Track progress. For a software project, progress is tracked as work products (e. g. , models, source code, sets of test cases) are produced and approved (using formal technical reviews) as part of a quality assurance activity. • Make smart decisions. In essence, the decisions of the project manager and the software team should be to “keep it simple. ” • Conduct a postmortem analysis. Establish a consistent mechanism for extracting lessons learned for each project. Gi. PHouse Radboud University Nijmegen 25

End remarks Project management has to do with human factors People, process en technology influence the success Project tracking & tracing is important Project management is not a science, it is based on experience • There are different • • – methods to plan and manage – ways to organize projects – ways to guard the quality of projects Gi. PHouse Radboud University Nijmegen 26