Foundations of Software Engineering

Size: px
Start display at page:

Download "Foundations of Software Engineering"

Transcription

1 Foundations of Software Engineering Part 2: Quick intro to process, teamwork, risk and scheduling Christian Kästner 1

2 Learning Goals Recognize the Importance of process Understand the difficulty of measuring progress Identify what why software development has project characteristics Use milestones for planning and progress measurement Ability to divide work and planning and replan it Model dependencies and schedule work with network plans and Gantt diagrams Identifying and managing risks 2

3 About You Open Source Saw project fail, know why yes no yes no Frustrating team experience multiple times no once 3

4 Process 4

5 How to develop software? 1. Discuss the software that needs to be written 2. Write some code 3. Test the code to identify the defects 4. Debug to find causes of defects 5. Fix the defects 6. If not done, return to step 1 5

6 What is a Software Process? 6

7 Software Process The set of activities and associated results that produce a software product Sommerville, SE, ed. 8 7

8 Example of Process Decisions Writing down all requirements Require approval for all changes to requirements Use version control for all changes Track all reported bugs Review requirements and code Break down development into smaller tasks and schedule and monitor them Planning and conducting quality assurance Have daily status meetings Use Docker containers to push code between developers and operation 8

9 100% Percent of Effort 9 0% Project beginning Time Project end

10 100% Trashing / Rework Percent of Effort Productive Coding 0% 10 Project beginning Time Project end

11 100% Trashing / Rework Percent of Effort Productive Coding Process: Cost and Time estimates, Writing Requirements, Design, Change Management, Quality Assurance Plan, Development and Integration Plan 0% 11 Project beginning Time Project end

12 100% Trashing / Rework Percent of Effort Productive Coding Process 0% 12 Project beginning Time Project end

13 Example process issues Change Control: Mid-project informal agreement to changes suggested by customer or manager. Project scope expands 25-50% Quality Assurance: Late detection of requirements and design issues. Test-debug-reimplement cycle limits development of new features. Release with known defects. Defect Tracking: Bug reports collected informally, forgotten System Integration: Integration of independently developed components at the very end of the project. Interfaces out of sync. Source Code Control: Accidentally overwritten changes, lost work. Scheduling: When project is behind, developers are asked weekly for new estimates. 13

14 Survival Mode Missed deadlines -> "solo development mode" to meet own deadlines Ignore integration work Stop interacting with testers, technical writers, managers, 14

15 100% Trashing / Rework Percent of Effort Productive Coding 15 0% Project beginning Process Time Project end

16 Hypothesis Process increases flexibility and efficiency Upfront investment for later greater returns 16

17 17

18 Process models Ad-hoc Waterfall Spiral Agile More later 18

19 19

20 Estimating Effort 20

21 Task: Estimate Time A: Java version of the Monopoly boardgame with Pittsburgh street names (you) B: Bank smartphone app (you with team of 4 developers, one experienced with iphone apps, one with background in security) Estimate in 8h days (20 work days in a month, 220 per year) 21

22 Revise Time Estimate C: Remember Scrabble experience. Is Monopoly similar/different/easier/more challenging/reusable? How much design did you do? Break down the task into ~5 smaller tasks and estimate them. Revise your overall estimate if necessary 22

23 23

24 Constructive Cost Model (Cocomo) Regression formula based on project history Requires experience with similar projects Encourages documentation of experience 24

25 Constructive Cost Model (Cocomo) Ratings Cost Drivers Very Low Low Nominal High Very High Extra High Product attributes Required software reliability Size of application database Complexity of the product Hardware attributes Run-time performance constraints Memory constraints Volatility of the virtual machine environment Required turnabout time Personnel attributes Analyst capability Applications experience Software engineer capability Virtual machine experience Programming language experience Project attributes Application of software engineering methods Use of software tools Required development schedule Sommerville, SE, Chapter 26

26 Study: Variability and Reproducibility in Software Engineering Study by Simula Research Lab in Norway Created System Requirements Specification for a web information system (11 pages) Received bids from 35 companies, 14 with schedule Contracted 4 companies to build the same system

27 Bids and time estimations No relationship between price and planned time or methods in bids

28 Anda, Bente CD, Dag IK Sjøberg, and Audris Mockus. "Variability and reproducibility in software engineering: A study of four companies that developed the same system." IEEE Transactions on Software Engineering 35.3 (2009):

29 Development Process

30 Risk and Uncertainty 30

31 Risk management Key task of a project manager Identify and evaluate risks early If necessary, plan mitigation strategies Document results of risk analysis in project plan Project risks: scheduling and resources e.g., staff illness/turnover Product risks: Quality and functionality of the product e.g. used component too slow Business risks: e.g., competitor introduces similar product 31

32 32

33 Sources of Uncertainty Unpredictable operating environment Cybersecurity threats, device drivers Unanticipated usage scenarios Limited predictive power of models Halting, abstract interpretation, testing Bounded rationality of humans Designers, developers Customers, users 33

34 Innovative vs Routine Projects Most software projects are innovative Google, Amazon, Ebay, Netflix Vehicles and robotics Language processing, Graphics Routine (now, not 10 years ago) E-commerce websites? Many control systems? Routine gets automated -> innovation cycle 34

35 Case 1 35

36 Case 2 36

37 37

38 Discussion What are important risks in early and late phases of development? Analyze risks to rank them How can they be managed/mitigated? 38

39 Accepting and Coping with Risks Selectively innovate to increase value Improve capability and competitiveness Focus risk where it is needed Rely on precedent and convention (experience) Use iteration and feedback prototypes, spiral development, sprints 39

40 Managing Risks Address risk early Prototyping, spiral development Identify mitigation strategies 40

41 Example: Bank Software Build on vendor and open-source components OS, DB, app server, tooling, backups, information management, Stick with reliable vendors and integrators Focus internal risk-taking on business differentiators Web-site features, internal queries, decision algorithms Outsource to access expertise, lower costs, gain flexibility Black-box testing Overall system architecture Internal engineering practices and tools 41

42 Risk analysis Estimate likelyhood and consequences Requires experienced project lead Rough estimations usually sufficient very low (<10%), low (<25%),... catastrophic, severe, acceptable, neglegible Focus on top 10 risks 42

43 Risk planning Risk avoidance Risk minimization Emergency plans 43

44 Strategies to help manage risk Risk Organizational financial problems Recruitment problems Staff illness Defective components Requirements changes Organizational restructuring Database performance Underestimated development time Strategy Prepare a briefing document for senior management showing how the project is making a very important contribution to the goals of the business and presenting reasons why cuts to the project budget would not be cost-effective. Alert customer to potential difficulties and the possibility of delays; investigate buying-in components. Reorganize team so that there is more overlap of work and people therefore understand each other s jobs. Replace potentially defective components with bought-in components of known reliability. Derive traceability information to assess requirements change impact; maximize information hiding in the design. Prepare a briefing document for senior management showing how the project is making a very important contribution to the goals of the business. Investigate the possibility of buying a higher-performance database. Investigate buying-in components; investigate use of a program generator.

45 Planning 45

46 (Software) Projects One-time endeavour; unique wrt Goals time, financial, personal, and other constraints differences to other endeavours project-specific organization Defined, limited time (clear start and end) Clear goals Constraints: budget, resources,... Requires management high risk coordination of experts Software development always proceeds in projects New/unique goals, innovatice technology Intangable result, progress hard to measure Software projects tend to fail more often than industrial projects 46

47 Measuring Progress? I m almost done with the app. The frontend is almost fully implemented. The backend is fully finished except for the one stupid bug that keeps crashing the server. I only need to find the one stupid bug, but that can probably be done in an afternoon. We should be ready to release next week. 47

48 Measuring Progress? Developer judgment: x% done Lines of code? Functionality? Quality? 48

49

50 Milestones and deliverables Making progress observable, especially for software Milestone: clear end point of a (sub)tasks For project manager Reports, prototypes, completed subprojects "80% done" not a suitable mile stone Deliverable: Result for customer Similar to mile stone, but for customers Reports, prototypes, completed subsystems 50

51 Case 3 Define tasks and milestones for the Monopoly implementation Which tasks have dependencies? 51

52 52 xkcd.com/518

53 Project Planning Identify constraints Estimate project parameters Define milestones Budget, Personal, Deadlines activities begin Check progress Done? no Reestimate project parameter yes new feature requests Create schedule no Refine schedule Problem? yes Abort? renegotiate constraints Technical review 53

54 Project Manager Tasks Divide project into work packages with measurable outcomes (each 1-10 weeks) Estimate time and resources Create order and determine parallelism Plan buffers for anticipated and unanticipated problems Software available, such as, Microsoft Project, GanttProject, Kplato, etc Requires experience for estimation 54

55 Activity Network Work package Milestone 55

56 Gantt Diagrams 56

57 Replanning Inaccurate time predictions are normal -> Update schedule Task Planned Actual Difficulty/Risk Responsibility Completed 57 Einführung in die Softwaretechnik

58 Reasons for Missed Deadlines Insufficient staff (illnesses, staff turnover,...) Insufficient qualitication Unanticipated difficulties Unrealistic time estimations Unanticipated dependencies Changing requirements, additional requirements Especially in student projects Underestimated time for learning technologies Uneven work distribution 58

59 Recognize Scheduling Issues Early Monitoring and formal reporting necessary Establish who, when, what Compare planned/actual data Measurable milestones Outdated schedules no meaningful management mechanism 59

60 % completed 90% 100% Almost Done Problem Last 10% of work -> 40% of time (or 20/80) planned actual Make progress measureable Avoid depending entirely on developer estimations reported progress 60 time

61 Milestone Trend Analysis Actual time Estimated completion time 61

62 Milestone Trend Analysis Actual time Estimated completion time Quickly rising estimations too optimistic Changing trends unreliable early estimations Ziz-zag pattern unreliable estimations Falling overly large buffers 62

63 Mitigation strategies Additional personal especially experts for specific tasks Temporarily increasing hours of work (overtime, vacation freeze) short-term solution only Improve tooling, methods, and processes Buy, contract, off shore Renegotiate / reduce functionality Set priorities, incremental deployment Move deadline Avoid: less testing/quality assurance 63

64 Team productivity Brook's law: Adding people to a late software project makes it later. 64

65 Teamwork (Student Teams) (more on teams in real projects later in the course) 65

66 Expectations Meet initially and then regularly Review team policy Divide work and integrate Establish a process Set and document clear responsibilities and expectations Possible Roles: Coordinator, Scribe, Checker, Monitor Rotate roles every assignment Every team member should understand the entire solution 66

67 Team Policies see document Make agreements explicit and transparent Most teams will encounter some problem 67

68 Dealing with problems Openly report even minor team issues in individual part of assignments In-class discussions and case studies Additional material throughout semester We will attend one team meeting 68

69 Planning and In-Team Communication Asana, Trello, Microsoft Project, Github Wiki, Google docs, , Slack, Facebook groups, 69

70 Homework and Readings 70

71 Reading assignment Prepare a case discussion about Healthcare.gov Read the TIME Magazine article Code Red Explore Wikipedia, Youtube, other resources Look at the webpage itself Think about what went wrong and why (both technical and nontechnical issues), how it could be fixed or prevented in future projects, 71

72 Homework 1 Team assignment Build grad school application system Process focus Estimate and track time Plan process and observe deviations Analyze risks 72

73 73

74 Further Reading McConnell. Software Project Survival Guide. Microsoft Press 1998, Chapter 3 Sommerville. Software Engineering. 8 th Edition. Addison-Wesley Chapters 5 "Project Planning" and 26 "Software Cost Estimation" 74

Foundations of Software Engineering

Foundations of Software Engineering Foundations of Software Engineering Part 2: Quick intro to process, teamwork, risk and scheduling Christian Kästner 1 Learning Goals Recognize the Importance of process Understand the difficulty of measuring

More information

Foundations of Software Engineering. Lecture 16: Process: Linear to Iterative Michael Hilton

Foundations of Software Engineering. Lecture 16: Process: Linear to Iterative Michael Hilton Foundations of Software Engineering Lecture 16: Process: Linear to Iterative Michael Hilton 1 Learning goals Understand the need for process considerations Select a process suitable for a given project

More information

Software Engineering

Software Engineering Software Engineering Project Management 1 Objectives To explain the main tasks undertaken by project managers To introduce software project management and to describe its distinctive characteristics To

More information

Objectives. Topics covered. Software project management. Management activities. Software management distinctions. Project management

Objectives. Topics covered. Software project management. Management activities. Software management distinctions. Project management Objectives Project management To explain the main tasks undertaken by project managers To introduce software project management and to describe its distinctive characteristics To discuss project planning

More information

Software Process. Overview

Software Process. Overview Software Process Overview What is software process? Examples of process models Unified Process (UP) Agile software development N. Meng, B. Ryder 2 1 Software Process Definition [Pressman] a framework for

More information

Project management. ACSC 383 Software Engineering. Efthyvoulos C. Kyriacou (PhD) Assoc. Prof. Computer Science and Engineering Department

Project management. ACSC 383 Software Engineering. Efthyvoulos C. Kyriacou (PhD) Assoc. Prof. Computer Science and Engineering Department Project management ACSC 383 Software Engineering Efthyvoulos C. Kyriacou (PhD) Assoc. Prof. Computer Science and Engineering Department Resources : Ian Sommervile Software engineering, 7 th edition presentations

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 11: Managing the Software Process

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 11: Managing the Software Process Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 11: Managing the Software Process 11.1 What is Project Management? Project management encompasses all the

More information

Contents. Today Project Management. What is Project Management? Project Management Activities. Project Resources

Contents. Today Project Management. What is Project Management? Project Management Activities. Project Resources Contents Last Time - Software Development Processes Introduction Software Development Processes Project Management Requirements Engineering Software Construction Group processes Quality Assurance Software

More information

Project management. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 5 Slide 1

Project management. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 5 Slide 1 Project management Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 5 Slide 1 Objectives To explain the main tasks undertaken by project managers To introduce software project management

More information

Objectives. 4. To show how graphical schedule representations (bar charts and activity charts) are used by project management

Objectives. 4. To show how graphical schedule representations (bar charts and activity charts) are used by project management Project management Objectives 1. To explain the main tasks undertaken by project managers 2. Understand why the nature of software makes software project management more difficult than other engineering

More information

Risk Management. Andrea Polini. Software Project Management MSc in Computer Science University of Camerino A.Y. 2016/2017

Risk Management. Andrea Polini. Software Project Management MSc in Computer Science University of Camerino A.Y. 2016/2017 Risk Management Andrea Polini Software Project Management MSc in Computer Science University of Camerino A.Y. 2016/2017 Andrea Polini Risk Management SPM A.Y. 2016/2017 1 / 31 Risks First, risk concerns

More information

Project Plan. Co-op Evaluation System. Senior Project Team Members: Tyler Geery Maddison Hickson Casey Klimkowsky Emma Nelson

Project Plan. Co-op Evaluation System. Senior Project Team Members: Tyler Geery Maddison Hickson Casey Klimkowsky Emma Nelson Project Plan Co-op Evaluation System Senior Project 2014-2015 Team Members: Tyler Geery Maddison Hickson Casey Klimkowsky Emma Nelson Faculty Coach: Samuel Malachowsky Project Sponsors: Jim Bondi (OCECS)

More information

Advantages and Disadvantages of. Independent Tests. Advantages. Disadvantages

Advantages and Disadvantages of. Independent Tests. Advantages. Disadvantages 8.0 Test Management Outline 8.1 Test organisation 8.2 Test planning and estimation 8.3 Test program monitoring and control 8.4 Configuration management 8.5 Risk and testing 8.6 Summary Independent Testing

More information

Project Management. Minsoo Ryu. Hanyang University.

Project Management. Minsoo Ryu. Hanyang University. Project Management Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Management Activities Project Planning and Scheduling Risk Management 2 2 Introduction Software project management is an essential

More information

Project Management. Agenda - What will you learn today? Theory Lecture Plan. A Software Life-cycle Model Which part will we talk about today?

Project Management. Agenda - What will you learn today? Theory Lecture Plan. A Software Life-cycle Model Which part will we talk about today? Theory Lecture Plan 2 Lecture 2 Software Engineering TDDC88/TDDC93 Autumn 2008 Slides by Presented by Kristian Sandahl Department of Computer and Information Science Linköping University, Sweden krisa@ida.liu.se

More information

Project Planning. COSC345 Software Engineering 2016 Slides by Andrew Trotman given by O K

Project Planning. COSC345 Software Engineering 2016 Slides by Andrew Trotman given by O K Project Planning COSC345 Software Engineering 2016 Slides by Andrew Trotman given by O K Overview Assignment: The assignment sheet specifies a minimum Think about what else you should include (the cool

More information

Chapter 13. Building Information Systems

Chapter 13. Building Information Systems Chapter 13 Building Information Systems Learning Objectives How does building new systems produce organizational change? What are the core activities in the systems development process? What are the principal

More information

CS 307: Software Engineering. Lecture 14: Project Management

CS 307: Software Engineering. Lecture 14: Project Management CS 307: Software Engineering Lecture 14: Project Management Prof. Jeff Turkstra 2017 Dr. Jeffrey A. Turkstra 1 Announcements Sprint 1 planning document due Monday, February 13 Also when Sprint 1 begins

More information

Software Development Software Development Activities

Software Development Software Development Activities Software Development Software Development Activities Problem Definition Requirements Analysis Implementation Planning High-level Design (or Architecture) Detailed Design Coding and Unit Testing (Debugging)

More information

The Basic Waterfall Model. Software Process Models. Concurrent Development. (Concurrent Development) The Agile Critique of the Waterfall

The Basic Waterfall Model. Software Process Models. Concurrent Development. (Concurrent Development) The Agile Critique of the Waterfall Software Process Models Critique & Defense of the Waterfall Issues in Waterfall Models concurrent development phase transitions and overlap Issues in Evolutionary Models incremental vs. iterative models

More information

Selecting Software Development Life Cycles. Adapted from Chapter 4, Futrell

Selecting Software Development Life Cycles. Adapted from Chapter 4, Futrell Selecting Software Development Life Cycles Adapted from Chapter 4, Futrell Examples of Software Life Cycle Models Classical Waterfall Waterfall with feedback V-Shaped Prototyping Incremental Spiral Rapid

More information

Scrum, Creating Great Products & Critical Systems

Scrum, Creating Great Products & Critical Systems Scrum, Creating Great Products & Critical Systems What to Worry About, What s Missing, How to Fix it Neil Potter The Process Group neil@processgroup.com processgroup.com Version 1.2 1 Agenda Scrum / Agile

More information

T Software Testing and Quality Assurance Test Planning

T Software Testing and Quality Assurance Test Planning T-76.5613 Software Testing and Quality Assurance 10.10.2007 Test Planning Juha Itkonen Outline Test planning, purpose and usage of a test plan Topics of test planning Exercise References: IEEE Std 829-1998,

More information

Chapter 3 Project Management

Chapter 3 Project Management Chapter 3 Project Management Overview What you will learn this chapter Executive Support Project Manager Process Tracking (PERT, CPM, Gantt) Summary of the chapter What you learned in this chapter Assignment

More information

Test Workflow. Michael Fourman Cs2 Software Engineering

Test Workflow. Michael Fourman Cs2 Software Engineering Test Workflow Michael Fourman Introduction Verify the result from implementation by testing each build Plan the tests in each iteration Integration tests for every build within the iteration System tests

More information

Project Plan. For KDD- Service based Numerical Entity Searcher (KSNES) Version 1.1

Project Plan. For KDD- Service based Numerical Entity Searcher (KSNES) Version 1.1 Project Plan For KDD- Service based Numerical Entity Searcher (KSNES) Version 1.1 Submitted in partial fulfillment of the Masters of Software Engineering degree. Naga Sowjanya Karumuri CIS 895 MSE Project

More information

Building Information Systems

Building Information Systems Chapter 13 Building Information Systems 13.1 2010 by Prentice Hall LEARNING OBJECTIVES Demonstrate how building new systems produces organizational change. Identify and describe the core activities in

More information

Software Engineering

Software Engineering Software Engineering Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood

More information

SOFTWARE ENGINEERING. Topics covered 1/20/2015. Chapter 3 - Project Management. Risk management Managing people Project cost Project plan & schedule

SOFTWARE ENGINEERING. Topics covered 1/20/2015. Chapter 3 - Project Management. Risk management Managing people Project cost Project plan & schedule SOFTWARE ENGINEERING Chapter 3 - Project Management Sep 2013 Chapter 2. Project Management 2 Topics covered Risk management Managing people Project cost Project plan & schedule 1 Sep 2013 Chapter 2. Project

More information

Chapter 4 Document Driven Approach for Agile Methodology

Chapter 4 Document Driven Approach for Agile Methodology Chapter 4 Document Driven Approach for Agile Methodology In this chapter, 4.1. Introduction 4.2. Documentation Selection Factors 4.3. Minimum Required Documents 4.4. Summary 4.1. Introduction In all, the

More information

COCOMO II Based Project Cost Estimation and Control

COCOMO II Based Project Cost Estimation and Control 3rd International Conference on Education, Management, Arts, Economics and Social Science (ICEMAESS 2015) COCOMO II Based Project Cost Estimation and Control Aihua Ren1, a, Yun Chen1, b 1 School of Computer

More information

6/29/ Professor Lili Saghafi

6/29/ Professor Lili Saghafi 6/29/2014 1 Professor Lili Saghafi MANAGING INFORMATION TECHNOLOGY Lecture 9 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT By : Prof. Lili Saghafi 1-2 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT Large

More information

Softwaretechnik. Lecture 02: Processes. Peter Thiemann SS University of Freiburg, Germany

Softwaretechnik. Lecture 02: Processes. Peter Thiemann SS University of Freiburg, Germany Softwaretechnik Lecture 02: Processes Peter Thiemann University of Freiburg, Germany SS 2012 Peter Thiemann (Univ. Freiburg) Softwaretechnik SWT 1 / 34 Terms Software Program SW System organized collections

More information

Software Engineering & Architecture

Software Engineering & Architecture Software Engineering & Architecture 10. SOFTWARE EVOLUTION Martin Kropp University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems References Based on the PowerPoint

More information

Introduction to Systems Analysis and Design

Introduction to Systems Analysis and Design Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.

More information

Life Cycle Plan (LCP) City of Los Angeles Personnel Department Mobile Application. Team No 2. Shreya Kamani Shah: Project Manager, Life Cycle Planner

Life Cycle Plan (LCP) City of Los Angeles Personnel Department Mobile Application. Team No 2. Shreya Kamani Shah: Project Manager, Life Cycle Planner Life Cycle Plan (LCP) City of Los Angeles Personnel Department Mobile Application Team No 2 Shreya Kamani Shah: Project Manager, Life Cycle Planner Abhishek Trigunayat: Prototyper, Implementer Anushree

More information

A Review Paper on Software Testing

A Review Paper on Software Testing A Review Paper on Software Testing Amit M. Kale 1, Vivek V. Bandal 2, Komal Chaudhari 3 1,2Bachelor Student, Dept. of Electrical Engineering 3Professor, Dept. of Computer Engineering ----------------------------------------------------------------------***---------------------------------------------------------------------

More information

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2.

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2. Chapter 2 Objectives What we mean by a process Software development products, processes, and resources Several models of the software development process Tools and techniques for process modeling 2.1 The

More information

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than

More information

Project Management. Kristian Sandahl

Project Management. Kristian Sandahl Project Management Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify System

More information

Acquiring IT Applications and Infrastructure

Acquiring IT Applications and Infrastructure Chapter 15 Acquiring IT Applications and Infrastructure Information Technology For Management 6th Edition Turban, Leidner, McLean, Wetherbe Lecture Slides by L. Beaubien, Providence College John Wiley

More information

BUSINESS & TECHNOLOGY APPLICATION SPECIALIST (12259) ( )

BUSINESS & TECHNOLOGY APPLICATION SPECIALIST (12259) ( ) GENERAL DESCRIPTION OF WORK BUSINESS & TECHNOLOGY APPLICATION SPECIALIST (12259) (30005036) Positions in this banded class are responsible for specialized work in creating, implementing and maintaining

More information

Chapter 8. Systems Development. Ralph M. Stair George W. Reynolds

Chapter 8. Systems Development. Ralph M. Stair George W. Reynolds Ralph M. Stair George W. Reynolds Chapter 8 Systems Development An Overview of Systems Development Managers and employees in all functional areas work together and use business information systems Corporations

More information

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at www.ijarcs.info A Study of Software Development Life Cycle Process Models

More information

1.264 Lecture 2. Software process

1.264 Lecture 2. Software process 1.264 Lecture 2 Software process Case study 2-1: rapid development Volunteer to summarize the case briefly Mickey s side Kim s view What s wrong with providing motivation and letting the programmers go?

More information

Explore Comparative Analysis Software Development Life Cycle Models

Explore Comparative Analysis Software Development Life Cycle Models Explore Comparative Analysis Software Development Life Cycle Models Anshu Mishra Assistant Professor, Department of Information Science and Engineering Jyothy Institute of Technology, Bangalore Abstract-The

More information

Lecture 2: Project Management, Part 1: Requirements, WBS, Scheduling, and Risk Management. Prof. Shervin Shirmohammadi SITE, University of Ottawa

Lecture 2: Project Management, Part 1: Requirements, WBS, Scheduling, and Risk Management. Prof. Shervin Shirmohammadi SITE, University of Ottawa Lecture 2: Project Management, Part 1: Requirements, WBS, Scheduling, and Risk Management Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi ELG 4912 2-1 Goal of Project

More information

Succeed with Agile at Scale

Succeed with Agile at Scale IBM Software Group Succeed with Agile at Scale Alfred Tse/Osmond Ng Rational Software Technical Professionals Growth Markets Asia Pacific June 25, 2009 2008 IBM Corporation Agenda Agile Software Development

More information

03. Perspective Process Models

03. Perspective Process Models 03. Perspective Process Models Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Prescriptive Process Models advocates an orderly approach to software

More information

ICS 52: Introduction to Software Engineering

ICS 52: Introduction to Software Engineering ICS 52: Introduction to Software Engineering Fall Quarter 2004 Professor Richard N. Taylor Lecture Notes http://www.ics.uci.edu/~taylor/ics_52_fq04/syllabus.html Copyright 2004, Richard N. Taylor. Duplication

More information

ISTQB Certified Tester. Foundation Level. Sample Exam 1

ISTQB Certified Tester. Foundation Level. Sample Exam 1 ISTQB Certified Tester Foundation Level Version 2015 American Software Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged.

More information

Software Engineering. Page 1. Objectives. Steps in Project Planning. Software Project Planning. Scope. Estimating Resources

Software Engineering. Page 1. Objectives. Steps in Project Planning. Software Project Planning. Scope. Estimating Resources Objectives Software Engineering Project Planning James Gain (jgain@cs.uct.ac.za) http://people.cs.uct.ac.za/~jgain/courses/softeng/ 1. Introduce project planning 2. Examine the stages of project planning:

More information

Software Processes. CSE-C3610, Software Engineering, 5 cr. Prof. Casper Lassenius

Software Processes. CSE-C3610, Software Engineering, 5 cr. Prof. Casper Lassenius Software Processes CSE-C3610, Software Engineering, 5 cr Prof. Casper Lassenius Software Process What? Why? Software Process Definitions Process Webster: 1. A continuing development involving many changes.

More information

Life Cycle Plan (LCP)

Life Cycle Plan (LCP) Life Cycle Plan (LCP) Mission Science Information and Data Management System 3.0 Team 03 Fei Yu: Project Manager, Life Cycle Planner Yinlin Zhou: Prototyper, Operational Concept Engineer Yunpeng Chen:

More information

Integration and Testing

Integration and Testing Integration and Testing 1 Today Software Quality Assurance Integration Test planning Types of testing Test metrics Test tools 2 Deliverables by Phase Possible Deliverables by Phase Concept Document Statement

More information

Software Engineering

Software Engineering Software Engineering Lecture 02: Processes Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 41 Terms Software Component SW System Organized

More information

Life Cycle Plan (LCP)

Life Cycle Plan (LCP) Life Cycle Plan (LCP) Los Angeles Personnel Department Mobile Application Team 02 Shreya Kamani Shah: Project Manager, Life Cycle Planner Abhishek Trigunayat: Prototyper Anushree Sridhar: Software Architect

More information

Course Organization. Lecture 1/Part 1

Course Organization. Lecture 1/Part 1 Course Organization Lecture 1/Part 1 1 Outline About me About the course Lectures Seminars Evaluation Literature 2 About me: Ing. RNDr. Barbora Bühnová, Ph.D. Industrial experience Research Quality of

More information

7. Project Management

7. Project Management Subject/Topic/Focus: 7. Project Management Management of Systems Engineering Processes Summary: Project management Systems engineering Maturity model and process improvement Literature: Ian Sommerville:

More information

FACTFILE: GCE DIGITAL TECHNOLOGY

FACTFILE: GCE DIGITAL TECHNOLOGY FACTFILE: GCE DIGITAL TECHNOLOGY AS1: APPROACHES TO SYSTEMS DEVELOPMENT Alternative development approaches and Software projects Learning Outcomes Students should be able to: describe the main features

More information

Management Information Systems. B14. Acquiring IT Applications and Infrastructure

Management Information Systems. B14. Acquiring IT Applications and Infrastructure Management Information Systems Management Information Systems B14. Acquiring IT Applications and Infrastructure Code: 166137-01+02 Course: Management Information Systems Period: Spring 2013 Professor:

More information

TECH STARTUP CRASH COURSE HOW TO MANAGE YOUR TECH TEAM BEST PRACTICES OF SOFTWARE DEVELOPMENT AND OUTSOURCING

TECH STARTUP CRASH COURSE HOW TO MANAGE YOUR TECH TEAM BEST PRACTICES OF SOFTWARE DEVELOPMENT AND OUTSOURCING TECH STARTUP CRASH COURSE HOW TO MANAGE YOUR TECH TEAM BEST PRACTICES OF SOFTWARE DEVELOPMENT AND OUTSOURCING Frederic Joye Quick intro Born in Lausanne, BSc in Business Administration and Development

More information

Building Information Systems

Building Information Systems Building Information Systems Content Explain how building new systems produces organizational change. Describe the core activities in the systems development process. Describe the principal methodologies

More information

Agile Software Development

Agile Software Development Agile Software Development Chapter 3 Agile Software Development in the textbook 3.1 Agile methods 3.2 Plan-driven and agile development 3.3 Extreme programming (XP) - A well known agile method 3.4 Agile

More information

COSOSIMO Parameter Definitions Jo Ann Lane University of Southern California Center for Software Engineering

COSOSIMO Parameter Definitions Jo Ann Lane University of Southern California Center for Software Engineering Constructive System-of-Systems Integration Cost Model COSOSIMO Parameter Definitions Jo Ann Lane University of Southern California Center for Software Engineering jolane@usc.edu Introduction The Constructive

More information

Life Cycle Plan (LCP)

Life Cycle Plan (LCP) Life Cycle Plan (LCP) City of Los Angeles Public Safety Applicant Resource Center Team No. 09 Team members and roles: Vaibhav Mathur Project Manager Preethi Ramesh Feasibility Analyst Arijit Dey Requirements

More information

Software Engineering II - Exercise

Software Engineering II - Exercise Software Engineering II - Exercise April 29 th 2009 Software Project Management Plan Bernd Bruegge Helmut Naughton Applied Software Engineering Technische Universitaet Muenchen http://wwwbrugge.in.tum.de

More information

Communication Model for Cooperative Robotics Simulator. Project Plan. Version 1.0

Communication Model for Cooperative Robotics Simulator. Project Plan. Version 1.0 Communication Model for Cooperative Robotics Simulator Project Plan Version 1.0 1 Introduction This document provides an overview of project plan for Communication Model for Cooperative Robotics Simulator

More information

Life Cycle Plan (LCP)

Life Cycle Plan (LCP) Life Cycle Plan (LCP) Perfecto Coffee Xpress Consistent Perfection Team 5 Chloe Good Yekaterina Glazko Edwards Hays Yucheng Hsieh Atreya Lahiri Jaimin Patel Yun Shen Andrew Tran Name Team Members & Roles

More information

Project Plan. CivicPlus Activity Metrics Tool. Version 1.0. Keith Wyss CIS 895 MSE Project Kansas State University

Project Plan. CivicPlus Activity Metrics Tool. Version 1.0. Keith Wyss CIS 895 MSE Project Kansas State University Project Plan CivicPlus Activity Metrics Tool Version 1.0 Keith Wyss CIS 895 MSE Project Kansas State University Table of Contents 1. INTRODUCTION... 5 1.1. REFERENCES... 5 2. WORK BREAKDOWN STRUCTURE...

More information

Software processes, quality, and standards VTV, fast methods, automation

Software processes, quality, and standards VTV, fast methods, automation Software processes, quality, and standards VTV, fast methods, automation Jaak Tepandi, Jekaterina Tšukrejeva, Stanislav Vassiljev, Pille Haug Tallinn University of Technology Department of Software Science

More information

Project Time Management

Project Time Management Project Time Management Project Time Management Project Time Management includes the processes required to manage timely completion of the project. Plan schedule management The process of establishing

More information

Lecture- 10. Project Scheduling. Dronacharya College of Engineering

Lecture- 10. Project Scheduling. Dronacharya College of Engineering Lecture- 10 Project Scheduling Dronacharya College of Engineering Scheduling and Planning The majority of projects are 'completed' late, if at all. A project schedule is required to ensure that required

More information

Life Cycle Plan (LCP) City of Los Angeles Personnel Department Mobile Applications

Life Cycle Plan (LCP) City of Los Angeles Personnel Department Mobile Applications Life Cycle Plan (LCP) City of Los Angeles Personnel Department Mobile Applications Team 02 Anushree Sridhar - Software Architect Shreya Kamani - Project Manager Divya Reddy - Requirements Engineer Pattra

More information

DCR ARB. Construction Meeting Minutes App Team 6

DCR ARB. Construction Meeting Minutes App Team 6 DCR ARB Construction Meeting Minutes App Team 6 Team Members and Roles Pradeep Muruganandam - Prototyper and Quality Focal Point Dennis Evans - System Architect, Project Manager Pavan Lingambudhi Seshadri

More information

Belatrix Software Factory

Belatrix Software Factory Belatrix Software Factory Agile Testing Best Practices Introduction The testing phase of software development sometimes gets the short shrift from developers and IT managers. Yet testing is the only way

More information

Software Design COSC 4353/6353 D R. R A J S I N G H

Software Design COSC 4353/6353 D R. R A J S I N G H Software Design COSC 4353/6353 D R. R A J S I N G H Outline Week 2 Software Development Process Software Development Methodologies SDLC Agile Software Development Process A structure imposed on the development

More information

Information Systems. Rationale Aims & Objectives. Rationale Aims & Objectives. Introduction to Project management. Ruel Ellis

Information Systems. Rationale Aims & Objectives. Rationale Aims & Objectives. Introduction to Project management. Ruel Ellis Information Systems Introduction to Project management Ruel Ellis rellis@eng.uwi.tt http://www.eng.uwi.tt/depts/mech/staff/rellis/rellis.htm Rationale Aims & Objectives Rationale Even when most modern

More information

The Systems Development Lifecycle

The Systems Development Lifecycle Modelling and Systems Development Lecture 2 The Systems Development Lifecycle The four-phase model common to all system developments projects The project Major attributes of the Lifecycle Moves systematically

More information

Product definition, product vision, product life cycle

Product definition, product vision, product life cycle Product definition, product vision, product life cycle Tommi Mikkonen Dept. Computer Science University of Helsinki, Helsinki. Finland tommi.mikkonen@helsinki.fi www.cs.helsinki.fi Content Product definition,

More information

Pragmatics. Object Orientated Analysis and Design. Benjamin Kenwright

Pragmatics. Object Orientated Analysis and Design. Benjamin Kenwright Pragmatics Object Orientated Analysis and Design Benjamin Kenwright Next Week Revision Week No Lecture "That's a great question. Come to think of it, I'm not sure what it is I'm trying to design." Crossword

More information

A Comparative Study of Universally Accepted SDLC Models for Software Development

A Comparative Study of Universally Accepted SDLC Models for Software Development 2018 IJSRST Volume 4 Issue 5 Print ISSN: 2395-6011 Online ISSN: 2395-602X Themed Section: Science and Technology A Comparative Study of Universally Accepted SDLC Models for Software Development ABSTRACT

More information

Pertemuan 2. Software Engineering: The Process

Pertemuan 2. Software Engineering: The Process Pertemuan 2 Software Engineering: The Process Collect Your Project Topic What is Software Engineering? Software engineering is the establishment and sound engineering principles in order to obtain economically

More information

Session 2: A Phased Life Cycle for a modern system development project. COMP 377/477 Spring 2016 Conrad Weisert

Session 2: A Phased Life Cycle for a modern system development project. COMP 377/477 Spring 2016 Conrad Weisert Session 2: A Phased Life Cycle for a modern system development project COMP 377/477 Spring 2016 Conrad Weisert COMP 377 / 477 1 Spring, 2016 Concepts and Terminology We already know what these are: Project

More information

Software Development Life Cycle:

Software Development Life Cycle: Software Development Life Cycle: The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software

More information

Security Assurance and Agile Development an Industry Perspective

Security Assurance and Agile Development an Industry Perspective Security Assurance and Agile Development an Industry Perspective John Heimann Vice President Security Program Management Global Product Security Program Agenda 1 2 3 4 5 Oracle and Agile What is Software

More information

BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SOFTWARE ENGINEERING 1. Examiners Report March 2018

BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SOFTWARE ENGINEERING 1. Examiners Report March 2018 BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SOFTWARE ENGINEERING 1 Examiners Report March 2018 Section A A1. Testing is an important aspect of software

More information

Program Management Effectiveness

Program Management Effectiveness Program Management Effectiveness The Lost Art May 19, 2016 Keynote Speaker Robert Bragg Director, Management Consulting Xerox HR Services Robert.Bragg@xerox.com Robert Bragg is responsible for developing,

More information

Chapter 3 Managing Systems Projects

Chapter 3 Managing Systems Projects Chapter 3 Managing Systems Projects Harry J. Rosenblatt. (2014). Systems Analysis and Design, 10 th Edition, International Edition. Course Technology, Cengage Learning. Modified by Nichnan K., 2013 Systems

More information

INF5181: Process Improvement and Agile Methods in Systems Development

INF5181: Process Improvement and Agile Methods in Systems Development INF5181: Process Improvement and Agile Methods in Systems Development Lecture 12 September 2017: Standard software process models. Understanding processes and their contexts E-mail: dagsj@ifi.uio.no INF5181

More information

Testing Masters Technologies

Testing Masters Technologies 1. How will you receive the project requirements? A. The finalized SRS will be placed in a project repository; we will access it from there 2. What will you do with SRS? A. SRS stands for software requirement

More information

Tools and technology usage in PFMS application lifecycle management process

Tools and technology usage in PFMS application lifecycle management process Tools and technology usage in PFMS application lifecycle management process LEPL Financial-Analytical Service, Ministry of Finance October, 2015 Dimitri Rakviashvili, Head of Software Department Agenda

More information

Agile Development Processes. CSCE Lecture 3-08/31/2017

Agile Development Processes. CSCE Lecture 3-08/31/2017 Agile Development Processes CSCE 740 - Lecture 3-08/31/2017 Common Practice: Code & Fix Sit down, write out the code, and fix problems as they occur. No formal structure to development. What is wrong with

More information

Quality Assurance Activities to Support Product Improvement

Quality Assurance Activities to Support Product Improvement Quality Assurance Activities to Support Product Improvement Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems dietmar.winkler@qse.ifs.tuwien.ac.at

More information

Project Management CTC-ITC 310 Fall 2018 Howard Rosenthal

Project Management CTC-ITC 310 Fall 2018 Howard Rosenthal Project Management CTC-ITC 310 Fall 2018 Howard Rosenthal Notice This course is based on and includes material from the text: A User s Manual To the PMBOK Guide Authors: Cynthia Stackpole Snyder Publisher:

More information

QAIassist IT Methodology General Context

QAIassist IT Methodology General Context QAIassist IT Methodology General Context IT Methodology General Context From the inception of Information Technology (IT), organizations and people have been on a constant quest to optimize the evolving

More information

CLASS/YEAR: II MCA SUB.CODE&NAME: MC7303, SOFTWARE ENGINEERING. 1. Define Software Engineering. Software Engineering: 2. What is a process Framework? Process Framework: UNIT-I 2MARKS QUESTIONS AND ANSWERS

More information

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping. i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give

More information

SDLC Models- A Survey

SDLC Models- A Survey Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 1, January 2013,

More information

System integration and software process

System integration and software process System integration and software process CSE 331 University of Washington Michael Ernst Outline Architecture Tools: Build tools and version control Tools: Bug tracking Scheduling Implementation and testing

More information