Chapter 1, SE (Pressman) and Chapter 1, IT Project Management (Schwalbe) Software/ software engineering IT project failure / investment Project / program.

Slides:



Advertisements
Similar presentations
Defining activities – Activity list containing activity name, identifier, attributes, and brief description Sequencing activities – determining the dependencies.
Advertisements

Software Reuse SEII-Lecture 28
Chapter 2 The Software Process
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CMMI – Continuous as well as staged model CMMI capability levels – Incomplete, performed, managed, defined, quantitatively managed, optimized Example.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Unified theory of software evolution Reengineering – Business process reengineering and software reengineering BPR model – Business definition, process.
A framework for describing IT Project Management Processes and Tool Set Features Enterprise Project Management Framework.
Overview Lesson 10,11 - Software Quality Assurance
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 2.
Design Modeling for Web Applications
- 1 - Component Based Development R&D SDM Theo Schouten.
Iterative development and The Unified process
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Chapter 9. Intro  What is Project Management?  Project Manager  Project Failures & Successes Managing Projects  PMBOK  SDLC Core Process 1 – Project.
Cost Management Week 6-7 Learning Objectives
Software Evolution Planning CIS 376 Bruce R. Maxim UM-Dearborn.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
Problems with reuse – Increased maintenance costs; lack of tool support; not-invented- here syndrome; creating, maintaining, and using a component library.
Process: A Generic View
Software Quality SEII-Lecture 15
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
Process: A Generic View n A software process  is a roadmap to building high quality software products.  provides a framework for managing activities.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Component-level testing – Equivalence partitioning, boundary value analysis, path testing Navigation testing – Testing navigation syntax and semantics.
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
Software System Engineering: A tutorial
Software Models (Cont.) 9/22/2015ICS 413 – Software Engineering1 -Component-based software engineering -Formal Development Model.
The Guide to the Software Engineering Body of Knowledge
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2 Process: A Generic View
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
IT Requirements Management Balancing Needs and Expectations.
Version control – Project repository, version management capability, make facility, issue/bug tracking Change control Configuration audit – compliments.
Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
Chapter 11. Intro  What is Project Management?  Project Manager  Project Failures & Successes Managing Projects  PMBOK  SDLC Core Process 1 – Project.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
Lecture 7: Requirements Engineering
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Web Engineering and Technology Unit I. Categories/Types of Web-Based Systems CategoryExamples Document centricOnline newspapers, manuals InteractiveRegistration.
Process Improvement. It is not necessary to change. Survival is not mandatory. »W. Edwards Deming Both change and stability are fundamental to process.
Process: A Generic View
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Computing and SE II Chapter 15: Software Process Management Er-Yu Ding Software Institute, NJU.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Importance of user interface design – Useful, useable, used Three golden rules – Place the user in control – Reduce the user’s memory load – Make the.
Software reviews Cost impact of software defects Defect amplification model Review metrics and their use – Preparation effort (E p ), assessment effort.
Software Engineering (CSI 321) Software Process: A Generic View 1.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
IT323 - Software Engineering 2 1 Tutorial 4.  List the main benefits of software reuse 2.
Class-oriented metrics – Weighted methods per class, depth of the inheritance tree, number of children, coupling, response for class, lack of cohesion.
Project Management Quality Management. Introduction Project planning Gantt chart and WBS Project planning Network analysis I Project planning Network.
Final Review Systems Analysis and Design in a Changing World, 4th Edition 1 Final Review u Chapters 1-6, 8-10, 13, 14, 15 u Multiple choice, short answer,
CASE Tools and their Effect on Software Quality
Developing the schedule – Tracking Gantt charts Critical path method – Longest path, earliest time Schedule trade-offs using CPM – Free slack, total slack.
Chapter 11 Project Management.
Software Engineering I
Project Management Chapter 11.
System Reengineering Restructuring or rewriting part or all of a system without changing its functionality Applicable when some (but not all) subsystems.
Presentation transcript:

Chapter 1, SE (Pressman) and Chapter 1, IT Project Management (Schwalbe) Software/ software engineering IT project failure / investment Project / program Project and portfolio management Project management framework Project success factors Successful organizations and managers Suggested skills for project managers 2

Chapter 2, IT Project Management (Schwalbe) Systems Philosophy – Business, organization, technology Organization frames – Structure, HR, political, symbolic Project life cycle – Concept, development, implementation, close-out 3

Chapter 4, IT Project Management (Schwalbe) Recent trends in IT projects – Globalization, outsourcing, and virtual teams Project management process groups – Initiating, planning, executing, monitoring and control, and closing processes Project integration management – Key processes and the relevant discussion 4

Chapter 5, IT Project Management (Schwalbe) Collecting requirements – Different methods Defining scope – Estimates for all resources Creating the WBS – Different approaches Verifying scope – Formal acceptance Controlling scope – Change control 5

Chapter 6, IT Project Management (Schwalbe) Defining activities – Activity list containing activity name, identifier, attributes, and brief description Sequencing activities – determining the dependencies – Mandatory, discretionary, external – evaluating the reasons for dependencies Estimating activity resources – list of activity resource requirements, resource breakdown structure, project document updates Estimating activity durations – Duration VS effort, activity duration estimates – Three point estimates Developing the schedule – Project schedule, Gantt charts 6

Developing the schedule – Tracking Gantt charts Critical path method – Longest path, earliest time Schedule trade-offs using CPM – Free slack, total slack Shortening the schedule – Crashing, fast tracking Critical chain scheduling – Availability of critical resources, project and feeding buffer Controlling the schedule 7

Chapter 7, IT Project Management (Schwalbe) Basic Concepts – Cost, profit, profit margin, direct and indirect costs, sunk cost, learning curve theory Estimating costs – Rough Order of Magnitude, budgetary, and definitive cost estimates Cost estimation tools and techniques – Top-down and bottom-up estimates, and parametric modeling – Problems related to IT project costs estimates Determining and controlling budget – Earned Value Management 8

Chapter 8 & 10, IT Project Management (Schwalbe) Project quality management – Planning quality – Performing quality assurance – Performing quality control Project communication management – Identifying stakeholders – Planning communications – Distributing information – Managing stakeholder expectations – Reporting performance 9

Chapter 11, IT Project Management (Schwalbe) Basic concepts – Risk, positive/negative risk management, Risk utility / tolerance (risk averse, risk seeking, risk neutral) Planning risk management – Risk management plan, contingency and fallback plans Identifying risks – Brainstorming, Delphi technique, interviewing, SWOT analysis, checklists, risk registers Performing qualitative and quantitative risk analysis Planning risk responses – Risk avoidance, risk acceptance, risk transference, risk mitigation, Risk exploitation, Risk sharing Monitoring and controlling risks 10

Chapter 8, SE (Pressman) Design, goal of design, design process in SE context, Process of design – Quality guidelines and attributes Evolution of software design process – Procedural, object-oriented, aspect-oriented Design concepts – Abstraction, architecture, pattern, information hiding, separation of concerns, refactoring, design classes 11

Chapter 11, SE (Pressman) Importance of user interface design – Useful, useable, used Three golden rules – Place the user in control – Reduce the user’s memory load – Make the interface consistent Analysis and design process – Interface analysis and modeling – Interface design – Interface construction – Interface validation 12

Interface analysis – User analysis, task analysis and modeling, analysis of display content and work environment Interface design steps Design issues – System response time, user help facilities, error information handling, menu and command labeling, application accessibility, internationalization Web application design interface guidelines – Anticipation, communication, consistency, controlled autonomy, efficiency, flexibility, focus, Fitt’s law, learnability, readability, metaphors Design Evaluation 13

Chapter 12, SE (Pressman) Patterns, effective design patterns Describing patterns Types of patterns – Architecture, data, component, interface design, and webapp patterns – Creational, structural, and behavioral patterns Design tasks User interface design patterns 14

Chapter 13, SE (Pressman) WebApp quality – Usability, functionality, reliability, efficiency, maintainability, security, availability, scalability, time-to- market Content quality – Scope, depth, background, authority, currency, stability, Design goals of WebApp – Simplicity, consistency, identity, robustness, navigability, visual appeal, compatibility WebApp design – Interface, aesthetic, navigation, and architecture design 15

Chapter 14, SE (Pressman) Multi-aspects concept – Transcendental view, user view, manufacturer’s view, product view, value-based view Software quality – Effective software process, useful product, add value for producer and user of a software product Software quality models – Garvin’s quality dimensions, McCall’s quality factors, ISO 9126 quality model Software quality dilemma Achieving software quality 16

Chapter 15, SE (Pressman) Software reviews Cost impact of software defects Defect amplification model Review metrics and their use – Preparation effort (E p ), assessment effort (E p ), Rework effort (E r ), work product size (WPS), minor errors found (Err minor ), major errors found (Err major ) Formal and informal reviews – Review meeting, review reporting and record keeping, review guidelines 17

Chapter 16, SE (Pressman) Elements of software quality assurance – Standards, reviews and audits, testing, error collection and analysis, change management, education, vendor management, security management, safety, risk management SQA tasks Goals, attributes, metrics – Requirements quality, design quality, code quality, quality control effectiveness Statistical quality assurance Software reliability 18

Chapter 20, SE (Pressman) Quality dimensions – Content, function, structure, usability, navigability, performance, compatibility, interoperability, security Testing strategy Content testing Database testing User interface testing – Testing interface mechanisms, usability tests, compatibility tests 19

Component-level testing – Equivalence partitioning, boundary value analysis, path testing Navigation testing – Testing navigation syntax and semantics Configuration testing – Server-side and client-side issues Security testing – Firewall, authentication, encryption, authorization Performance testing – Load and stress testing 20

Chapter 22, SE (Pressman) Change management Software configuration management SCM scenario Elements of SCM – Component, process, construction, and human elements SCM repository SCM process – Identification of objects 21

Version control – Project repository, version management capability, make facility, issue/bug tracking Change control Configuration audit – compliments technical reviews Status reporting Configuration management for WebApp – Content, people, scalability, politics 22

Chapter 23, SE (Pressman) Measurement and quality assessment Framework for product metrics – Measure, measurement, and metrics – Formulation, collection, analysis, interpretation, feedback – Principles for metrics characterization and validation Metrics for requirements model – Function-based metrics – Metrics for specification quality Metric for design model – Architectural design metrics – Metric for object-oriented design 23

Class-oriented metrics – Weighted methods per class, depth of the inheritance tree, number of children, coupling, response for class, lack of cohesion Component-level design metrics – Cohesion, coupling, and complexity Operation-oriented metrics – Average operation size, operation complexity average number of parameters per operation Design metrics for WebApps Metrics for source code Metrics for object-oriented testing Metrics for maintenance 24

Chapter 30, SE (Pressman) Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection and justification Installation / migration Evaluation Risk management Critical success factors 25

CMMI – Continuous as well as staged model CMMI capability levels – Incomplete, performed, managed, defined, quantitatively managed, optimized Example – process area – Specific goals and practices, general goals and practices Other SPI frameworks – SPICE, Bootstrap, TickIT, PSP, TSP SPI return on investment SPI trends 26

Chapter 29, SE (Pressman) Unified theory of software evolution Reengineering – Business process reengineering and software reengineering BPR model – Business definition, process identification, Process evaluation, process specification and design, prototyping, refinement and instantiation Software reengineering process model – Inventory analysis, document restructuring, reverse engineering, code restructuring, data restructuring, forward engineering Reverse engineering 27

Restructuring – Code restructuring, data restructuring Forward engineering – Client-server architectures, object-oriented architectures Economics of reengineering – Cost benefit analysis Software reuse – Benefits of reuse 28

Chapter 16, SE (Sommerville) Problems with reuse – Increased maintenance costs; lack of tool support; not-invented- here syndrome; creating, maintaining, and using a component library The reuse landscape – Application frameworks, legacy system wrapping, service-oriented systems, software product lines, COTS product reuse Key factors for reuse – Development schedule, expected software lifetime, background, skills, and experience of development team, criticality of software and its non-functional requirements, application domain, system platform Application frameworks Software Product lines 29

COTS product reuse Benefits of COTS product reuse Problems with COTS product reuse COTS-solution systems ERP systems – Architecture of ERP systems – Limitations of reuse Configuration of COTS-solution systems COTS-integrated systems – Problems with COTS-integrated systems 30

Chapter 17, SE (Sommerville) Component-based software engineering Essentials of CBSE – Independent components, component standards, middleware, development process Characteristics of components – Standardized, independent, composable, deployable, documented Elements of component model – Interfaces, usage, deployment CBSE processes – Development for reuse, development with reuse – Component acquisition, management, and certification 31

CBSE for reuse Possible Changes and other factors Software Process Component composition – Sequential, hierarchical, and additive composition Components incompatibility – Parameter and operational incompatibility, operational incompleteness Trade-offs 32