360 likes | 1.02k Views
Project Management. Define project, project management, RAD, JAD Describe project management activities Describe the advantages, disadvantages and characteristics of SDLC (System Development Life Cycle) and prototyping Describe the phases of SDLC Describe project dimensions affecting risk
E N D
Project Management • Define project, project management, RAD, JAD • Describe project management activities • Describe the advantages, disadvantages and characteristics of SDLC (System Development Life Cycle) and prototyping • Describe the phases of SDLC • Describe project dimensions affecting risk • Discuss integration and project management tools to use in dealing with risk • Discuss issues in managing behavioral factors
Project Management • Project - temporary endeavor undertaken to create a unique product or service • may be divided into subprojects • Project management - application of knowledge, skills, tools and techniques to project activities to meet or exceed stakeholder needs and expectations from a project • T.A.N.S.T.A.A.F.L.
Project Management Activities • Ensuring progress of project using metrics • Identifying risks and assessing the probability of them occurring • Ensuring progress toward deliverables within constraints of time and resources • Running coordination meetings of the project team • Negotiating for resources on behalf of the project
Project Modeling • Common vocabulary (beyond data repository) • Teamwork • Cycle Plan • Management • Demonstrated in SDLC and other approaches • Project planning & requirements identification • Project control (status, corrective action) • Team management • Organizational integration
Development Models • Systems Development Life Cycle • Rapid Applications Development (RAD) • Prototyping • Joint Applications Development (JAD) (like RAD with users) • Object-Oriented
Systems Development Life Cycle (SDLC) • Overview • Software Acquisition Choices • SDLC Overview • SDLC:Phases • Alternative Approaches
SDLC - Prior Problems • Failure to meet: • Budgets • Schedules • Expectations • TOO LITTLE…. TOO LATE
SDLC - Characteristics • “Problem” or “Opportunity” • Many names; Widely applicable • “Analysis” vs. “Synthesis” • Variance across stages • Disciplined approach • Systems approach • Iterative (not sequential) • Cyclical
SDLC - Advantages • Focus on tradeoffs • Focus on goals • Controls: milestones, checklist, accountability • Tools, models, CASE • Hierarchical decomposition • Designed for user & manager involvement
SDLC - Reasons for Failure • Scope too broad or too narrow • Lack of needed skills • Incomplete specifications • No control/no framework • Lack of management/user involvement • Too time-consuming
SDLC Phases • Initiation and Feasibility • Requirements Definition • Functional Design • Technical Design and Construction • Verification • Implementation • Maintenance & Review
I. Initiation & Feasibility • Project objectives & Scope • Preliminary survey & feasibility • Technical • Economic • Operational • Project proposal and schedule • Identify assumptions & constraints
II. Requirements Definition • Problem/Opportunity definition • Analyze current system • Focus on decisions and related information needs • Define business functionality • Plan for training, user acceptance
Problem/Opportunity Definition • Symptoms vs. real problems • Question decision maker’s statement of problem • Bound problem realistically • Try to ascertain actual cause • Sometimes figuring out the problem is half the solution
Analyze Current System • + Understand activities involved • + Identify decision points • + Help identify problems & deficiencies • + Be aware of history • - Bias thinking
III. Functional Design • Focus on business needs • usability, reliability • Logical design • Outputs • Inputs • Presentation • Processes • Databases • Personnel
IV. Technical Design and Construction • Finalize architecture and acquire hardware • Complete technical definition of data access and other system components • Make (program) vs. buy • Develop test plans • Revise schedule, plan and costs
V. Verification • Program Testing • Structured walkthrough • Code inspection • Unit test • Pairs testing • Verification, stress, user and security testing
VI. Implementation • Cut-over • Parallel conversion • Direct cut-over • Pilot conversion • Phased conversion • User training
VII. Maintenance and Review • Post-implementation audit • Ends - information requirements (information, performance) • Means - process • Maintenance (correcting bugs & scheduled maintenance) • Enhancement (adding functionality)
Rapid Applications Development (RAD) • Like prototyping, uses iterative development • Uses tools to speed up development • GUI • reusable code • code generation • programming, language testing and debugging
Iterative Development System Concept Version “1” Version “2” Version “N” Software Development Process
Uses of Prototyping • Verifying user needs • Verifying that design = specifications • Selecting the “best” design • Developing a conceptual understanding of novel situations • Testing a design under varying environments • Demonstrating a new product to upper management • Implementing a new system in the user environment quickly
Proposed Advantages Improved user communication Users like it Low risk Avoids over-design Experimentation and innovation Spreads labor to user department Disadvantages in practice Prototypes are used “as is” Integration often difficult Design flaws Poor performance Difficult to manage process Creates unrealistic expectations Documentation is difficult Prototyping
ease of use (+) user needs (+) unrealistic user expectations (-) added features (?) poorer performance (-) mixed design quality mixed maintainability less need more difficult to do effort decreased (+) difficult cost-estimation (-) end-user participation increased (+) more expertise needed (-) difficult planning & control (-) Observed Effects of Prototyping Software Product Software Process
Examples of Software Risk Items • personnel shortfalls • unrealistic schedules/budgets • developing wrong functionality • developing wrong user interface • “gold plating” • continuing stream of requirements changes • shortfalls in externally furnished components • shortfalls in externally performed tasks • real-time performance shortfalls • strained technical capabilities
Project Dimensions Affecting Risk • Project Size (relative to others) • Interchangeable man months • The pregnant lady • Experience with Technology • Project structure • High vs. Low • Complexity???
Tools for Project Management • External integration tools (beyond project team) • Internal integration tools ( within project team) • Formal planning tools • Formal results-control mechanisms
EXTERNAL User project manager User specification approval process User-managed control process Users as team members User responsibility for education&installation INTERNAL IT professional team leader Frequent team meetings Regular technical status reviews Outside technical assistance Goal setting by team Integration Tools
Formal Planning Tools PERT, CPM Milestones Systems specification standards Feasibility study specifications Project approval processes Postaudit procedures Formal Control Tools Periodic formal status reports vs. plan Change control disciplines Regular milestone presentation meetings Deviations from plan reports Tools of Project Management
Comparison of Software Acquisition Choices Method Cost Risk Meets Needs Ease of Installation Maintenance Firm-Wide Impact Packaged Applications Low Moderate Low Moderate Limited Moderate Moderate Limited Customized Software Moderate High Moderate Limited Extensive Moderate Moderate Extensive Limited Extensive Outsourced Development Moderate High Moderate Limited Not Applicable Not Applicable Limited Extensive Enterprise-Wide Systems High Moderate High Limited Difficult Complex Moderate Extensive Extensive In-House Development High Moderate High Extensive Moderate Extensive Limited
Managing Behavioral Factors Balance goals of stakeholders project manager customer end-user (there’s a difference) sponsor Sustain commitment project psychological (personal responsibility, biases) social (rivalry, norms for consistency) organizational (political support, culture)