Summary SEII - Lecture 32

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

pptx32 trang | Chia sẻ: dntpro1256 | Lượt xem: 663 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Summary SEII - Lecture 32, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Summary SEII-Lecture 32Dr. Muzafar KhanAssistant ProfessorDepartment of Computer ScienceCIIT, Islamabad.Lecture 1 - IntroductionChapter 1, SE (Pressman) and Chapter 1, IT Project Management (Schwalbe)Software/ software engineeringIT project failure / investmentProject / programProject and portfolio managementProject management frameworkProject success factorsSuccessful organizations and managersSuggested skills for project managers2Lecture 2 – Project Management and Information Technology ContextChapter 2, IT Project Management (Schwalbe)Systems PhilosophyBusiness, organization, technologyOrganization framesStructure, HR, political, symbolicProject life cycleConcept, development, implementation, close-out3Lecture 3 – Project Integration ManagementChapter 4, IT Project Management (Schwalbe)Recent trends in IT projectsGlobalization, outsourcing, and virtual teamsProject management process groupsInitiating, planning, executing, monitoring and control, and closing processesProject integration managementKey processes and the relevant discussion4Lecture 4 – Project Scope ManagementChapter 5, IT Project Management (Schwalbe)Collecting requirementsDifferent methodsDefining scopeEstimates for all resourcesCreating the WBSDifferent approachesVerifying scopeFormal acceptanceControlling scopeChange control5Lecture 5 & 6 – Project Time Management [1/2]Chapter 6, IT Project Management (Schwalbe)Defining activitiesActivity list containing activity name, identifier, attributes, and brief descriptionSequencing activitiesdetermining the dependencies Mandatory, discretionary, externalevaluating the reasons for dependenciesEstimating activity resourceslist of activity resource requirements, resource breakdown structure, project document updatesEstimating activity durationsDuration VS effort, activity duration estimatesThree point estimatesDeveloping the scheduleProject schedule, Gantt charts6Lecture 5 & 6 – Project Time Management [2/2]Developing the scheduleTracking Gantt chartsCritical path methodLongest path, earliest timeSchedule trade-offs using CPMFree slack, total slackShortening the scheduleCrashing, fast trackingCritical chain schedulingAvailability of critical resources, project and feeding bufferControlling the schedule7Lecture 7 – Project Cost ManagementChapter 7, IT Project Management (Schwalbe)Basic ConceptsCost, profit, profit margin, direct and indirect costs, sunk cost, learning curve theoryEstimating costsRough Order of Magnitude, budgetary, and definitive cost estimatesCost estimation tools and techniquesTop-down and bottom-up estimates, and parametric modelingProblems related to IT project costs estimatesDetermining and controlling budgetEarned Value Management8Lecture 8 – Project Quality Management Project Communication Management Chapter 8 & 10, IT Project Management (Schwalbe)Project quality managementPlanning qualityPerforming quality assurancePerforming quality controlProject communication managementIdentifying stakeholdersPlanning communicationsDistributing informationManaging stakeholder expectationsReporting performance9Lecture 9 – Project Risk ManagementChapter 11, IT Project Management (Schwalbe)Basic conceptsRisk, positive/negative risk management, Risk utility / tolerance (risk averse, risk seeking, risk neutral)Planning risk managementRisk management plan, contingency and fallback plansIdentifying risksBrainstorming, Delphi technique, interviewing, SWOT analysis, checklists, risk registersPerforming qualitative and quantitative risk analysisPlanning risk responsesRisk avoidance, risk acceptance, risk transference, risk mitigation, Risk exploitation, Risk sharingMonitoring and controlling risks10Lecture 10 – Software DesignChapter 8, SE (Pressman)Design, goal of design, design process in SE context, Process of designQuality guidelines and attributes Evolution of software design processProcedural, object-oriented, aspect-orientedDesign conceptsAbstraction, architecture, pattern, information hiding, separation of concerns, refactoring, design classes11Lecture 11 & 12 – User Interface Design [1/2]Chapter 11, SE (Pressman)Importance of user interface designUseful, useable, usedThree golden rules Place the user in controlReduce the user’s memory loadMake the interface consistentAnalysis and design processInterface analysis and modeling Interface designInterface construction Interface validation12Lecture 11 & 12 – User Interface Design [2/2]Interface analysisUser analysis, task analysis and modeling, analysis of display content and work environmentInterface design stepsDesign issuesSystem response time, user help facilities, error information handling, menu and command labeling, application accessibility, internationalizationWeb application design interface guidelinesAnticipation, communication, consistency, controlled autonomy, efficiency, flexibility, focus, Fitt’s law, learnability, readability, metaphorsDesign Evaluation13Lecture 13 – Pattern-Based DesignChapter 12, SE (Pressman)Patterns, effective design patternsDescribing patternsTypes of patternsArchitecture, data, component, interface design, and webapp patternsCreational, structural, and behavioral patternsDesign tasksUser interface design patterns14Lecture 14 – Web Application DesignChapter 13, SE (Pressman)WebApp qualityUsability, functionality, reliability, efficiency, maintainability, security, availability, scalability, time-to-marketContent qualityScope, depth, background, authority, currency, stability, Design goals of WebAppSimplicity, consistency, identity, robustness, navigability, visual appeal, compatibility WebApp designInterface, aesthetic, navigation, and architecture design15Lecture 15 – Software QualityChapter 14, SE (Pressman)Multi-aspects conceptTranscendental view, user view, manufacturer’s view, product view, value-based viewSoftware qualityEffective software process, useful product, add value for producer and user of a software productSoftware quality modelsGarvin’s quality dimensions, McCall’s quality factors, ISO 9126 quality modelSoftware quality dilemmaAchieving software quality16Lecture 16 – Review TechniquesChapter 15, SE (Pressman)Software reviewsCost impact of software defectsDefect amplification modelReview metrics and their usePreparation effort (Ep), assessment effort (Ep), Rework effort (Er), work product size (WPS), minor errors found (Errminor), major errors found (Errmajor)Formal and informal reviewsReview meeting, review reporting and record keeping, review guidelines17Lecture 17 – Software Quality AssuranceChapter 16, SE (Pressman)Elements of software quality assuranceStandards, reviews and audits, testing, error collection and analysis, change management, education, vendor management, security management, safety, risk managementSQA tasksGoals, attributes, metricsRequirements quality, design quality, code quality, quality control effectivenessStatistical quality assuranceSoftware reliability18Lecture 18 & 19 – Testing Web Applications [1/2]Chapter 20, SE (Pressman)Quality dimensionsContent, function, structure, usability, navigability, performance, compatibility, interoperability, securityTesting strategyContent testingDatabase testingUser interface testingTesting interface mechanisms, usability tests, compatibility tests19Lecture 18 & 19 – Testing Web Applications [2/2]Component-level testingEquivalence partitioning, boundary value analysis, path testingNavigation testingTesting navigation syntax and semanticsConfiguration testingServer-side and client-side issuesSecurity testingFirewall, authentication, encryption, authorizationPerformance testingLoad and stress testing20Lecture 20 & 21 – Software Configuration Management [1/2]Chapter 22, SE (Pressman)Change managementSoftware configuration managementSCM scenarioElements of SCMComponent, process, construction, and human elementsSCM repositorySCM processIdentification of objects21Lecture 20 & 21 – Software Configuration Management [2/2]Version controlProject repository, version management capability, make facility, issue/bug trackingChange controlConfiguration auditcompliments technical reviewsStatus reportingConfiguration management for WebAppContent, people, scalability, politics22Lecture 22 & 23 – Product Metrics [1/2]Chapter 23, SE (Pressman)Measurement and quality assessmentFramework for product metricsMeasure, measurement, and metricsFormulation, collection, analysis, interpretation, feedbackPrinciples for metrics characterization and validationMetrics for requirements modelFunction-based metricsMetrics for specification qualityMetric for design modelArchitectural design metricsMetric for object-oriented design23Lecture 22 & 23 – Product Metrics [2/2]Class-oriented metricsWeighted methods per class, depth of the inheritance tree, number of children, coupling, response for class, lack of cohesionComponent-level design metricsCohesion, coupling, and complexityOperation-oriented metricsAverage operation size, operation complexity average number of parameters per operationDesign metrics for WebAppsMetrics for source codeMetrics for object-oriented testingMetrics for maintenance24Lecture 24 & 25 – Software Process Improvement [1/2]Chapter 30, SE (Pressman)Software process improvementFramework for SPISPI support groups, maturity and immaturity modelsAssessment and gap analysisEducation and trainingSelection and justificationInstallation / migrationEvaluationRisk managementCritical success factors25Lecture 24 & 25 – Software Process Improvement [2/2]CMMIContinuous as well as staged modelCMMI capability levelsIncomplete, performed, managed, defined, quantitatively managed, optimizedExample – process areaSpecific goals and practices, general goals and practicesOther SPI frameworksSPICE, Bootstrap, TickIT, PSP, TSPSPI return on investmentSPI trends26Lecture 26 & 27 – Software Reengineering [1/2]Chapter 29, SE (Pressman)Unified theory of software evolutionReengineeringBusiness process reengineering and software reengineeringBPR modelBusiness definition, process identification, Process evaluation, process specification and design, prototyping, refinement and instantiationSoftware reengineering process modelInventory analysis, document restructuring, reverse engineering, code restructuring, data restructuring, forward engineeringReverse engineering27Lecture 26 & 27 – Software Reengineering [2/2]RestructuringCode restructuring, data restructuringForward engineeringClient-server architectures, object-oriented architecturesEconomics of reengineeringCost benefit analysisSoftware reuseBenefits of reuse28Lecture 28 & 29 – Software Reuse [1/2]Chapter 16, SE (Sommerville)Problems with reuseIncreased maintenance costs; lack of tool support; not-invented-here syndrome; creating, maintaining, and using a component libraryThe reuse landscapeApplication frameworks, legacy system wrapping, service-oriented systems, software product lines, COTS product reuseKey factors for reuseDevelopment schedule, expected software lifetime, background, skills, and experience of development team, criticality of software and its non-functional requirements, application domain, system platformApplication frameworksSoftware Product lines29Lecture 28 & 29 – Software Reuse [2/2]COTS product reuseBenefits of COTS product reuseProblems with COTS product reuseCOTS-solution systemsERP systemsArchitecture of ERP systemsLimitations of reuseConfiguration of COTS-solution systemsCOTS-integrated systemsProblems with COTS-integrated systems30Lecture 30 & 31 – Component-Based Software Engineering [1/2]Chapter 17, SE (Sommerville)Component-based software engineeringEssentials of CBSEIndependent components, component standards, middleware, development processCharacteristics of componentsStandardized, independent, composable, deployable, documentedElements of component modelInterfaces, usage, deploymentCBSE processesDevelopment for reuse, development with reuseComponent acquisition, management, and certification31Lecture 30 & 31 – Component-Based Software Engineering [2/2]CBSE for reusePossible Changes and other factorsSoftware ProcessComponent compositionSequential, hierarchical, and additive compositionComponents incompatibilityParameter and operational incompatibility, operational incompletenessTrade-offs32

Các file đính kèm theo tài liệu này:

  • pptxlecture_32_csc392_dr_muzafar_khan_6513_2027042.pptx
Tài liệu liên quan