320 likes | 346 Views
Learn key project management practices including integration, scope, time, cost, quality, risk management, and software design. Dive into IT project management framework, tools, scheduling, and stakeholder communication. Gain valuable skills for successful project delivery.
E N D
SummarySEII-Lecture 32 Dr. Muzafar Khan Assistant Professor Department of Computer Science CIIT, Islamabad.
Lecture 1 - Introduction • 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
Lecture 2 – Project Management and Information Technology Context • 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
Lecture 3 – Project Integration Management • 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
Lecture 4 – Project Scope Management • 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
Lecture 5 & 6 – Project Time Management [1/2] • 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
Lecture 5 & 6 – Project Time Management [2/2] • 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
Lecture 7 – Project Cost Management • 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
Lecture 8 – Project Quality ManagementProject Communication Management • 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
Lecture 9 – Project Risk Management • 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
Lecture 10 – Software Design • 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
Lecture 11 & 12 – User Interface Design [1/2] • 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
Lecture 11 & 12 – User Interface Design [2/2] • 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
Lecture 13 – Pattern-Based Design • 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
Lecture 14 – Web Application Design • Chapter 13, SE (Pressman) • WebAppquality • 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
Lecture 15 – Software Quality • 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
Lecture 16 – Review Techniques • Chapter 15, SE (Pressman) • Software reviews • Cost impact of software defects • Defect amplification model • Review metrics and their use • Preparation effort (Ep), assessment effort (Ep), Rework effort (Er), work product size (WPS), minor errors found (Errminor), major errors found (Errmajor) • Formal and informal reviews • Review meeting, review reporting and record keeping, review guidelines
Lecture 17 – Software Quality Assurance • 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
Lecture 18 & 19 – Testing Web Applications [1/2] • 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
Lecture 18 & 19 – Testing Web Applications [2/2] • 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
Lecture 20 & 21 – Software Configuration Management [1/2] • 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
Lecture 20 & 21 – Software Configuration Management [2/2] • 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
Lecture 22 & 23 – Product Metrics [1/2] • 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
Lecture 22 & 23 – Product Metrics [2/2] • 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
Lecture 24 & 25 – Software Process Improvement [1/2] • 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
Lecture 24 & 25 – Software Process Improvement [2/2] • 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
Lecture 26 & 27 – Software Reengineering [1/2] • 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
Lecture 26 & 27 – Software Reengineering [2/2] • Restructuring • Code restructuring, data restructuring • Forward engineering • Client-server architectures, object-oriented architectures • Economics of reengineering • Cost benefit analysis • Software reuse • Benefits of reuse
Lecture 28 & 29 – Software Reuse [1/2] • 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
Lecture 28 & 29 – Software Reuse [2/2] • 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
Lecture 30 & 31 – Component-Based Software Engineering [1/2] • 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
Lecture 30 & 31 – Component-Based Software Engineering [2/2] • 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