Your SlideShare is downloading. ×
0
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Slide 1
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Slide 1

292

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
292
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Quality Assurance with INTSPEI P-Modeling Framework<br />V. Pavlov, O. Babich, A. Doroshenko,<br />T. Taganskaya, K. Zhereb<br />INTSPEI<br />QAMT-2007, November 1-2, Kyiv<br />
  • 2. Agenda<br />Software Quality Assurance <br />What is INTSPEI<br />INTSPEI approach to Quality Assurance<br />INTSPEI P-Modeling Methodology for SQA<br />An Example and Demo: INTSPEI P-Modeling Framework with MSF Agile<br />2<br />QAMT-2007, November 1-2, Kyiv<br />
  • 3. Software Quality Assurance (SQA)(from Wikipedia)<br />Software Quality Assurance (SQA) consists of the software engineering processes and methods used to ensure quality. <br />SQA encompasses the entire software development process, which may include processes such as reviewing requirements documents, source code control, code reviews, change management, configuration management, release management and of course, software testing.<br />3<br />QAMT-2007, November 1-2, Kyiv<br />
  • 4. Agenda<br />Software Quality Assurance <br />What is INTSPEI<br />INTSPEI approach to Quality Assurance<br />INTSPEI P-Modeling Methodology for SQA<br />An Example and Demo: INTSPEI P-Modeling Framework with MSF Agile<br />4<br />QAMT-2007, November 1-2, Kyiv<br />
  • 5. What is INTSPEI<br />The International Software and Productivity Engineering Institute (INTSPEI) is a multinational company with offices in New York and Kiev (Ukraine)<br />INTSPEI Mission -- Development and distribution of new software and productivity engineering technologies<br />INTSPEI goal is providing its customers with software products and services to make SDLC “better and faster”<br />“Better” means high level of quality, “faster” means increasing productivity and reducing costs<br />So, quality and productivity – are two mutually connected sides of the same “coin”<br />5<br />QAMT-2007, November 1-2, Kyiv<br />
  • 6. Research Background<br />INTSPEI was founded in the first quarter of 2007 on the base of original award-winning research conducted by its founders since 2001<br />A number of innovative findings form underlying background for INTSPEI services and products<br />The major ones that directly influence software quality are:<br />Speechless (pantomime) modeling<br />Reverse Semantic Traceability (RST)<br />6<br />QAMT-2007, November 1-2, Kyiv<br />
  • 7. A Brief History of INTSPEI P-Modeling Framework: First experiments<br />In 2001 Vladimir L. Pavlov developed a training program called “The Babel Experiment”<br />This training was a kind of experiment for students – they were to discover whether UML is “a real language” that is suitable and beneficial for a project team<br />There was a team of students to design a software system. They had a few hours to complete the task<br />During this timeframe verbal and written communication was forbidden, and the UML was the only allowed language (speechless modeling)<br />7<br />QAMT-2007, November 1-2, Kyiv<br />
  • 8. A Brief History of INTSPEI P-Modeling Framework: First experiments (ctnd)<br />This experiment achieves the following major goals: <br />Make students go through communication problems that are typical for large software development projects<br /> Provide students with the successful experience of applying UML to overcome these problems<br />The Babel Experiment was always successful<br />Every time students were able to find the common language and generate the common ideas by UML communication, which led them to successful development of the proposed system model<br />8<br />QAMT-2007, November 1-2, Kyiv<br />
  • 9. A Brief History of INTSPEI P-Modeling Framework: First experiments (ctnd)<br />Once (accidentally) during this training there were two independent teams working on the same task. One team was limited to using only the UML language (and pantomime) in their communication. The other was allowed to use speech in addition to the UML<br />The first team (which was not allowed to use speech) coped with a task more successfully than the other team <br />Their diagrams were more sound, detailed, readable, elaborated and elegant<br />9<br />QAMT-2007, November 1-2, Kyiv<br />
  • 10. Further Experiments<br />The first author had conducted further experiments where a team of professional designers ”translated” some texts (of software requirements) from English to UML, and another team “translated” it back from UML to English, then original and restored texts were compared <br />These experiments have shown that UML is quite similar to traditional languages – original and restored technical texts often were semantically close (but not always)<br />10<br />QAMT-2007, November 1-2, Kyiv<br />
  • 11. Reverse Semantic Traceability<br />The main result of these experiments was not about UML and modeling – it was about testing and quality assurance<br />A real-life software development process is a sequence of “translations”<br />On every step there are usually some errors/misinterpretations, however, to find these errors people typically test the very final result – executable<br />But it is easy to test every step in the sequence – intermediate deliverables tested by independent testing team then are compared. Restored versions of artifacts serve as inputs to the next step<br />If no information is lost or misinterpreted – then it is OK to proceed to the next step, otherwise it is required to make some corrections<br />The authors call this simple approach “Reverse Semantic Traceability”<br />11<br />QAMT-2007, November 1-2, Kyiv<br />
  • 12. Agenda<br />Software Quality Assurance Issues<br />What is INTSPEI<br />INTSPEI approach to Quality Assurance<br />INTSPEI P-Modeling Methodology for SQA<br />An Example and Demo: INTSPEI P-Modeling Framework with MSF Agile<br />12<br />QAMT-2007, November 1-2, Kyiv<br />
  • 13. INTSPEI Approach to Quality Assurance – Briefly<br />Speechless Modeling<br />Reverse Semantic Traceability<br />Both techniques are the base of INTSPEI P-Modeling Framework <br />Can enhance existing methodologies<br />Can be a standalone methodology<br />13<br />QAMT-2007, November 1-2, Kyiv<br />
  • 14. 14<br />QAMT-2007, November 1-2, Kyiv<br />Cost to Correct<br />Maintenance<br />Requirements<br />Construction<br />Architecture<br />DetailedDesign<br />Detailed Design<br />Architecture<br />Construction<br />Requirements<br />Phase That <br />a Defect is Corrected<br />Phase That <br />a Defect is Created<br />A Fundamental Observation (Where Should The Industry Improve?)<br />For large software development projects, the most important decisions and the most expensive mistakes are done at the beginning of the project<br />At the same time, the initial amount of quality control is minimal and then grows as development moves forward. This results in a costly rework (often hidden) on the late stages of the project<br />Cost to correct a defect greatly depends on how early it was introduced and revealed<br />
  • 15. Iterative Development<br />
  • 16. Traceability Management<br />
  • 17. Popular Usage Scenarios<br />Validating UML models: Quality engineers restore a textual description of a domain, original and restored descriptions are compared<br />Validating model changes for a new requirement: Given original and changed versions of a model, quality engineers restore the textual description of the requirement; original and restored encryptions are compared<br />Validating a bug fix: Given an original and a modified source code, quality engineers restore a textual description of the bug that was fixed; original and restored descriptions are compared<br />Integrating a new software engineer into a team: A new team member gets an assignment to do Reverse Semantic Traceability for the key artifacts from the current projects<br />QAMT-2007, November 1-2, Kyiv<br />17<br />
  • 18. Current Experience Reports<br />The experience reports from current users of Reverse Semantic Traceability provide strong evidence of the method’s efficiency<br />The length of software development projects is cut down for 5 % – 35 %<br />The length of the integration period for new software developers is cut down for 25 % - 60 %<br />18<br />QAMT-2007, November 1-2, Kyiv<br />
  • 19. Agenda<br />Software Quality Assurance Issues<br />What is INTSPEI<br />INTSPEI approach to Quality Assurance<br />INTSPEI P-Modeling Methodology for SQA<br />An Example and Demo : INTSPEI P-Modeling Framework with MSF Agile<br />19<br />QAMT-2007, November 1-2, Kyiv<br />
  • 20. Three Types of SDLCs<br />20<br />QAMT-2007, November 1-2, Kyiv<br />
  • 21. INTSPEI P-Modeling Framework <br />INTSPEI P-Modeling Framework 1.0 is a set of software development process guidelines that extend existing methodologies with INTSPEI techniques<br />INTSPEI P-Modeling Framework doesn’t replace existing methodologies – it complements them<br />It contains guidelines, step-by-step working instructions, document templates and samples.<br />INTSPEI P-Modeling Framework allows to identify (and fix) bugs virtually immediately after their insertion, rather then staying hidden until the later stages of the development lifecycle, when the cost of fixing them grows tremendously.<br />21<br />QAMT-2007, November 1-2, Kyiv<br />
  • 22. INTSPEI P-Modeling Framework (ctnd)<br />So, INTSPEI P-Modeling Framework is a quality control facility that can be applied to all kinds of project artifacts<br />The main benefit is that (unlike the most existing approaches to quality control) it allows to make decisions on the early stages of development and evaluate them long before actual code is created<br />INTSPEI P-Modeling Framework is designed to integrate easily with existing methodologies<br />The current 1.0 version integrated with: <br />IBM Rational Unified Process <br />Microsoft Solutions Framework for Agile Software Development, <br />Microsoft Solutions Framework for CMMI Process Improvement, <br />Open Unified Process.<br />22<br />QAMT-2007, November 1-2, Kyiv<br />
  • 23. Agenda<br />What is INTSPEI<br />Software Quality Assurance Issues<br />INTSPEI approach to Quality Assurance<br />INTSPEI P-Modeling Methodology for SQA<br />An Example and Demo: INTSPEI P-Modeling Framework with MSF Agile<br />23<br />QAMT-2007, November 1-2, Kyiv<br />
  • 24. Microsoft Solutions Framework (MSF) <br />Microsoft Solutions Framework (MSF) is a deliberate and disciplined approach to technology projects based on a defined set of principles, models, disciplines, concepts, guidelines, and proven practices from Microsoft<br />MSF for Agile Software Development is an agile software engineering process that incorporates key ideas from the Agile software movement, along with principles and practices from the MSF<br />24<br />QAMT-2007, November 1-2, Kyiv<br />
  • 25. MSF Latest Version<br />Microsoft Solutions Framework (MSF) version 4.0 is a combination of a meta-model on which processes are built, and two instantiations of that metamodel<br />One of the instantiations is an agile software development process and the other targets a more formal environment<br />25<br />QAMT-2007, November 1-2, Kyiv<br />
  • 26. MSF for Agile Basics<br />Roles<br />Workstreams and activities<br />Work items and work products<br />Views (disciplines, tracks, cycles)<br />Reports, queries, how-to’s<br />Overview pages<br />26<br />QAMT-2007, November 1-2, Kyiv<br />
  • 27. MSF Structure<br />Process guidance<br />HTML documentation<br />describes process<br />can be used as stand-alone guide or on team site<br />Process template<br />Integration with Team Foundation Server (TFS)<br />Customizing work items, queries and reports<br />Contains process guidance<br />27<br />QAMT-2007, November 1-2, Kyiv<br />
  • 28. Points of Integration<br />New activities – Perform RST/Speechless Sessions<br />New discipline – Traceability Management<br />New menu item – P-Modeling<br />New work products – RST report, Prioritization Table<br />New fields in all work items and queries supporting them <br />28<br />QAMT-2007, November 1-2, Kyiv<br />
  • 29. P-Modeling Tab<br />
  • 30. Main menu on INTSPEI <br />P-Modeling Framework<br />Additional menu on INTSPEI products and latest versions<br />
  • 31.
  • 32. New discipline:<br />Traceability Management<br />New activity: Performing RST<br />
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42. References: http://www.intspei.com/<br />Pavlov, Vladimir; Yatsenko, Anton “’The Babel Experiment’: An Advanced Pantomime-based Training in OOA&OOD with UML”, 36th ‘ACM Technical Symposium on Computer Science Education’, February 25, 2005.<br />Pavlov, Vladimir; Busygin, Stanislav; Boyko, Nikita; Babich, Alexander;“Is There Still a Room For Programmers' Productivity Improvement?”, Proceedings of the 5th East-West Design and Test Symposium (EWDTS'07), 2007, pp. 146-151.<br />Pavlov, Vladimir; Boyko, Nikita; Babich, Alexander; “First Experience of Using INTSPEI P‑Modeling Framework in Software Development Projects”, Problems in Programming, Issue 2, May 2007.<br />INTSPEI P-Modeling Framework Whitepaper, INTSPEI, http://www.intspei.com<br />42<br />QAMT-2007, November 1-2, Kyiv<br />
  • 43. Humans Should Not Do Computers’ Jobs<br />Become Productive Today<br />QAMT-2007, November 1-2, Kyiv<br />

×