Project Management Development & developers

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

Beta Testing: The Contractor’s Perspective Trns·port User Group Meeting October 2005.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Software Life Cycle Requirements analysis System design Program design Program implementation (coding) Unit testing Integration testing System testing.
PROC-1 3. Software Process. PROC-2 What’s a process? Set of activities in creating software It involves creativity –hard to automate –Requires human judgment.
CSE 470 : Software Engineering The Software Process.
CS 5150 Software Engineering
Software Engineering. How many lines of code? Average CS1004 assignment: 200 lines Average CS4115 project: 5000 lines Corporate e-commerce project: 80,000.
Software Engineering.
1 Software Requirements Specification Lecture 14.
Implementation. We we came from… Planning Analysis Design Implementation Identify Problem/Value. Feasibility Analysis. Project Management. Understand.
Project Management Course outline neil.minkley.fr/epita anglais-pratique.fr
© 2008 Prentice Hall11-1 Introduction to Project Management Chapter 11 Managing Project Execution Information Systems Project Management: A Process and.
Project Management Project life cycle
Release & Deployment ITIL Version 3
Project Delivery Overview June 2015 Final PD Training FMD WUSM 6/15/15 1.
Project Management Design specifications
Web Development Process Description
Introduction to Interactive Media 02. The Interactive Media Development Process.
S/W Project Management
1 Building and Maintaining Information Systems. 2 Opening Case: Yahoo! Store Allows small businesses to create their own online store – No programming.
Extreme Programming Software Development Written by Sanjay Kumar.
Contractors & contracts
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
Chapter 3 – Agile Software Development Lecture 1 1Chapter 3 Agile software development.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Industrial Software Project Management Some views on project managing industrial and business software projects.
Introduction to Interactive Media The Interactive Media Development Process.
Project Management Project charter
Installation and Maintenance of Health IT Systems
Production Cycle Objectives:  Identifying key phases for building up website  Understanding the major goals and activities of each production process,
Software Engineering Management Lecture 1 The Software Process.
Lecture 11 Managing Project Execution. Project Execution The phase of a project in which work towards direct achievement of the project’s objectives and.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Project Management Project team Recruitment, integration, organization
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
Construction, Testing, Documentation, and Installation Chapters 15 and 16 Info 361: Systems Analysis and Design.
CS CS 5150 Software Engineering Lecture 2 Software Processes 1.
Software Life Cycle The software life cycle is the sequence of activities that occur during software development and maintenance.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
COIT23003 Games Development
Systems Development AIMS 2710 R. Nakatsu. Overview Two philosophies of systems development –Systems Development Life Cycle (SDLC) –Prototyping Alternative.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Stand Up Comedy Project/Product Management
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
1 CP586 © Peter Lo 2003 Multimedia Communication Multimedia Development Team.
1 Multimedia Development Team. 2 To discuss phases of MM production team members Multimedia I.
Project Life Presented by Chuck Ray, PMP ITS Project Manager.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
SAP Methods Context PRM1_02.1 PwC Methods & Risk Management Lesson Objectives Participants will be able to: Understand how methods can mitigate project.
Lesson Objectives 1) Review the steps involved in problem solving 2) Review the stages of the System Life Cycle 3) Describe what prototyping is and the.
Project Management Testing & Acceptance
Project Management Software development models & methodologies
Project Execution Methodology
Process 4 Hours.
Methodologies and Algorithms
Software Engineering Management
Exam 0 review CS 360 Lecture 8.
CS 5150 Software Engineering
Software Development Life Cycle
Software life cycle models
Baisc Of Software Testing
Presentation transcript:

Project Management Development & developers

Project life cycle Business case Advisability study Feasibility study ExecutionClosurePlanning Plan implementation Product creation Project supervision Requirements Charter Scope Schedule Budget Product launch Project plan

Product creation phases Business case Advisability study Feasibility study ExecutionClosurePlanning Plan implementation Product creation Project supervision Requirements Charter Scope Schedule Budget Product launch Project plan RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding

Software development phases Business case Advisability study Feasibility study ExecutionClosurePlanning Plan implementation Product creation Project supervision Charter Scope Schedule Budget Product launch Project plan RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Requirements

Development & developers: outline RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding General remarks Internal vs external development Communicating with developers Monitoring & controlling development work Successive versions of software Documentation & source code Warranty & maintenance

Developers: general remarks (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Developer(s): individual(s) external development company intra-company development department development team within overall project team

Developers (1)

Developers (2)

Developers (3)

Developers (4)

Developers: general remarks (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding The technical skills required of developers for a given project depend on the complexity of the software to be developed. Developers must have the experience and skills required to meet the specific needs of the project.

Internal (in-house) development (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Advantages: development can be monitored and controlled on a day-to-day basis, the PM can ensure that developers are focused on the project, can identify problems or risks on the spot and react immediately.

Internal (in-house) development (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Advantages: interaction between in-house developers and other project team members is easy and can happen as frequently as necessary, meetings are easy to organize, at no expense, changes to requirements and/or design specifications are easy to “negotiate”.

External (outsourced) development RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Geographical location: major criterion for the selection of a development contractor. Externalizing development does not necessarily mean using offshore companies. Offshore development is however more and more frequent.

Communicating with developers (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Meetings & videoconferences Phone (including VoIP) Instant messaging Etc.

Communicating with developers (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Intranet/Extranet site (may be a “wiki”) FTP server (or other data transfer channels) Bug reporting and tracking system

Development monitoring/control (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Pay regular “courtesy visits” to the developer Include checkpoints in the development calendar:  milestone dates at which the developer is expected to show part(s) of the software

Development monitoring/control (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding In-house development has a clear advantage over external development. As soon as testing begins, controlling development work can be performed directly on its result.

Software versions (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Software development is performed in stages and increments. An application or system is progressively created by developing building blocks and assembling them. Each building block must be “rock-solid” and compliant with the design specifications.

Software versions (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Unit testing is done by the developers themselves and/or by the development subproject manager. An early version of very important components may be made available to the client for testing and feedback.

Software versions (3) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding “Official” versions of software: predefined sets of functions, features and data, as specified in the requirements should be thoroughly tested by the developers before delivery to the project owner / client for testing and feedback (but don’t count on it!)

Software versions (4) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Alpha Beta Release candidate (RC) Gold Master (GM) / Final

Software versions (5) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Alpha Beta Release candidate (RC) Gold Master (GM) / Final Alpha:  consistent subset of the application’s user interface, functions, features and content

Software versions (6) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Alpha Beta Release candidate (RC) Gold Master (GM) / Final Beta:  complete user interface, function & feature set and “final” content

Software versions (7) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Alpha Beta Release candidate (RC) Gold Master (GM) / Final RC:  complete application integrating the correction of problems in the final Beta

Software versions (8) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Alpha Beta Release candidate (RC) Gold Master (GM) / Final GM/Final:  complete product ready to be installed or duplicated or published online  validated and accepted by the project owner / client

Software versions (9) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding Alpha Beta Release candidate (RC) Gold Master (GM) / Final Prototype:  proof of concept  minimizes technical risks and tests the specifications Real product:  based on revised version of requirements and design

Documentation & source code (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding A development contract generally requires the developer to deliver not only software but also its documentation and source code. Those elements may be used in a situation where the software requires additional work that can’t be performed by the original developer.

Documentation & source code (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding The contract may however stipulate that the developer should retain ownership of all or part of the software, and therefore of the corresponding source code. Software owned by the developer is generally used by the client under licence, for which there may be a fee.

Warranty & maintenance (1) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding A development contract should include a warranty clause whereby the developer is obligated to fix bugs at no additional expense with the shortest possible delay during a determined period. The contract should also include provisions for maintenance beyond the warranty period.  “Corrective” and “evolutive” maintenance

Warranty & maintenance (2) RequirementsIntegrationDesign Testing & Acceptance Deployment Content creation Software coding A maximum response time may be specified for each category of problem. Compensation: global flat fee flat fee per intervention fixed fee per hour or per day

Questions?