Lecture 2: Software Production & Processes Dr Valentina Plekhanova University of Sunderland, UK

Slides:



Advertisements
Similar presentations
Project management.
Advertisements

Lecture 1: Software Engineering: Introduction
Lecture 3: Software Process Models Dr Valentina Plekhanova University of Sunderland, UK
Lecture 8: Testing, Verification and Validation
Lecture 6: Software Design (Part I)
Lecture 7: Software Design (Part II)
Software Tools Lecture 10: Software Tools Dr Valentina Plekhanova University of Sunderland, UK.
Lecture 5: Requirements Engineering
Ch 3: Unified Process CSCI 4320: Software Engineering.
MADALINA CROITORU Software Engineering week 1 Madalina Croitoru IUT Montpellier.
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
Modeling the Process and Life Cycle CSCI 411 Advanced Database and Project Management Monday, February 2, 2015.
Project Management Based on Sommerville’s “Software Engineering” textbook.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Alternate Software Development Methodologies
Project Management Process. Project Complexity means that: a team of people are needed to supply expertise the work needs to be broken into manageable.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
SWE Introduction to Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 Project management.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
1 SOFTWARE PRODUCTION. 2 DEVELOPMENT Product Creation Means: Methods & Heuristics Measure of Success: Quality f(Fitness of Use) MANAGEMENT Efficient &
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
 Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis.
Project planning. Software project management Informal definition of management – The art of getting work done through other people Software project management.
Standardization. Introduction A standard is a document. It is a set of rules that control how people should develop and manage materials, products, services,
SOFTWARE QUALITY ASSURANCE Asst. Prof. Dr. Selim BAYRAKLI Maltepe University Faculty of Engineering SE 410.
Software Engineering Principles Chapter 3 From Software Engineering by I. Sommerville, Slide 1 project managementorganizing planning scheduling Learning.
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 5 Slide 1 Chapter 5 Project Management Modified by Randy K. Smith.
S/W Project Management
Computers & Employment By Andrew Attard and Stephen Calleja.
CSI315 Web Applications and Technology Overview of Systems Development (342)
Software Development *Life-Cycle Phases* Compiled by: Dharya Dharya Daisy Daisy
PGD-1303 Software Project Management?. What is software? Software  Computer programs and associated documentation Documentation includes  requirements.
Lecture 31 Introduction to System Development Life Cycle - Part 2.
1 Chapter 5 Project management. 2 Project management : Is Organizing, planning and scheduling software projects.
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
Lecture 3 Managing the Development Project SFDV Principles of Information Systems.
Software Project Management By Deepika Chaudhary.
Software Quality Assurance
©Ian Sommerville 2000 Slide 1 Project management l Organising, planning and scheduling software projects l Objectives To introduce software project management.
CSEM01 - wk8 - Software Planning1 Software Planning CSEM01 SE Evolution & Management Anne Comer Helen Edwards.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
Systems Development Life Cycle
Lecture 4: Software Process Management Dr Valentina Plekhanova University of Sunderland, UK
Dr Izzat M Alsmadi Edited from ©Ian Sommerville & others Software Engineering, Chapter 3 Slide 1 Project management (Chapter 5 from the textbook)
Development through partnership Infrastructure Delivery Management Toolkit: 2010 Edition Delivery Process 2: Project Management 1.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 4 Slide 1 Project management l Organising, planning and scheduling software projects.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
IS2210: Systems Analysis and Systems Design and Change Twitter:
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Project management 1/30/2016ICS 413 – Software Engineering1.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Software Production ( ) Lecture 3: Dr. Samer Odeh Hanna (PhD) office: 318.
Systems Analysis Lecture 5 Requirements Investigation and Analysis 1 BTEC HNC Systems Support Castle College 2007/8.
Chapter 3 Project Management Parts of this presentation is extracted from Ian Sommerville’s slides located at
HNDIT23082 Lecture 10:Software Project Management
Advanced Software Engineering Dr. Cheng
Software Development Life Cycle Waterfall Model
Project planning The systems life cycle.
Software Project Management
Software Project Management
FOUNDATIONAL CONCEPTS
Chapter 8 Software Evolution.
The Software Development Process
Requirements Engineering
Introduction to Project Management
Information system analysis and design
Presentation transcript:

Lecture 2: Software Production & Processes Dr Valentina Plekhanova University of Sunderland, UK

Lecture 2Valentina Plekhanova 2 Process: Definitions “Connected series of actions” “Series of operations deliberately undertaken” “A set of partially ordered steps intended to reach a goal.”

Lecture 2Valentina Plekhanova 3 Process: Types Work processes Production processes Development processes Social processes Management processes …

Lecture 2Valentina Plekhanova 4 Production Process Production Production is the process of manufacturing or growing something in large quantities. Production Production is the process of organising and preparing a programme, or record, in order to present it to the public.

Lecture 2Valentina Plekhanova 5 The Software Production Process: Definition and Goals production of software A process is the set of actions, tasks and procedures involved in producing a software system, throughout its life cycle, i.e. the production of software is involved at all stages of the process. goal of production process The goal of production process to satisfy customers’ requirements by delivering quality products in time and within budget.

Lecture 2Valentina Plekhanova 6 The Software Production Process: Critical Factors cognitively driven process Software production is a cognitively driven process (or an intellectual activity). instability and uncertainty Software production is characterised by high level of instability and uncertainty, e.g. requirements change continuously, lots of factors can influence on the cognitive processes.

Lecture 2Valentina Plekhanova 7 The Software Production Process: Critical Factors A "good" software process must be predictable: cost estimates and schedules must be met, and the resulting product should be robust and offer the required functionality.

Lecture 2Valentina Plekhanova 8 The Software Production Process: Problems predictable, reliable stable How to make the process predictable, reliable and stable. automate How to automate the software production process.

Lecture 2Valentina Plekhanova 9 The Software Production Process: Solutions Use of software production process models, standards and development methodologies.

Lecture 2Valentina Plekhanova 10 What are Software Engineering Methods? What are Software Engineering Methods? [Sommerville] Software engineering methods Software engineering methods are structured approaches to software development (e.g. function-oriented methods, object oriented methods) which include system models, notations, rules, design advice and process guidance. An aim is to facilitate the production of high quality software in a cost effective way.

Lecture 2Valentina Plekhanova 11 What are Software Engineering Methods? What are Software Engineering Methods? [Sommerville] All methods are based on the idea of developing models of a system which may be represented graphically. There are no ideal methods. Different methods can be used for different applications.

Lecture 2Valentina Plekhanova 12 The Software Production Process: Emphasis Different organisations have different ways of producing software placing emphasis on different aspects of the process. It can be the issue of documentation. Some organisations produce software which is self-documenting, other evaluate and re-evaluate each step of the process checking designs before coding and so on, requiring authorisation for any changes.

Lecture 2Valentina Plekhanova 13 The Software Production Process: Emphasis Some organisations devote half of their budget to intensive testing. With other organisations it is maintenance. The emphasis depends on the organisations and their problems/preferences, culture, etc. The emphasis depends on the organisations and their problems/preferences, culture, etc.

Lecture 2Valentina Plekhanova 14 The Software Production Process : Automation machine The machine can often help the human, sometimes even automatically, to avoid errors, work faster and concentrate the attention at the conceptual level.

Lecture 2Valentina Plekhanova 15 Software ProductionKey People Software Production: Key People Client, Developer & User These people are the principal personnel in the building of software.

Lecture 2Valentina Plekhanova 16 Software Production: Key Roles  Definitions of their roles include: Client: individual or organisation, which wants a product to be developed. Developer: member of the organisation who will be responsible for producing the software. User: person on whose behalf the client has commissioned the developers, and who will utilise the software.

Lecture 2Valentina Plekhanova 17 Software Production: Key Roles The term software development covers all aspects of software production before the product enters the maintenance phase.  Therefore, the developer could be involved in the requirement analysis onwards, or in the implementation stage of a product designed by someone else.  The client and developer can be part of the same organisation.

Lecture 2Valentina Plekhanova 18 Software Production: Major Tasks major software development tasks According to emphasis on software tasks (Milestone tasks) we can define the following major software development tasks:

Lecture 2Valentina Plekhanova 19 Key Software Development Tasks what Analysis (work out what to do); Managementwho Management ( e.g. work out who can do it); how Design (work out how to do it); do Implementation (do it); check Testing (check it); deliver Deployment (deliver it).

Lecture 2Valentina Plekhanova 20 Structured Process Models: Goals [Boehm, 1988] order of stages Determine the order of stages involved in software development and evolution; transition criteria Establish the transition criteria for progressing from one stage to the next.

Lecture 2Valentina Plekhanova 21 Software Development Phases  Feasibility Study  Requirements Phase  Specification Phase Planning Phase Planning Phase Design Phase Design Phase Implementation Phase Implementation Phase Testing Testing Maintenance Phase Maintenance Phase Requirements Phase

Lecture 2Valentina Plekhanova 22 Software Development Phases: Processes  Requirements Engineering Process Engineering Process  Planning Process Design Process Design Process Implementation Process Implementation Process Testing Process Testing Process Maintenance Process Maintenance Process How? Change What? What?

Lecture 2Valentina Plekhanova 23 Week 4: Project Control Session Project Control Session Tutorial Time: 10 minutes for each Team Tutorial Time: 10 minutes for each Team  Project Team will present project file: Schedule, any project documentation.  Students will describe where they are in the project and any problems encountered.  During the discussion reviewers will ask to see evidence of deliverables for any tasks that are complete to determine whether they have in fact been done.