You are on page 1of 25
(ma 5 SOFTWARE? ‘HPE oF SOFTWARE a. 000 sorte? » Sta omar room) Scosored © Sefraare posi for be eons 5. HURT SPECATION? Shagh ah or Ibe ded of oppeed of Pode petition ent stoge and he changes oer “Gone produc Gasonized provers Some Fs ABOU SOFTWAE ENGINEERING IMPORTANCE OF SOFTWARE ENGINEERING ¥ We need: + Reliability & rstworthy prodvets © Delivering on tine + Revsoble + Cot effective in changing /evluion + Moret FUNDAMENTAL SOFTWARE ENGINEERING ACTIVITIES SEMRAL ISSUES TAT AFFECT Mas sorTwuat SOFTWAE NSieRING FUNDAMENTALS © hater ~ bans ond socal change Se ca aetgettee eta SOrrwate seen Tas ~ Some furdemental principles apply 9 altypar cf ators“ Mist oem the a menoped and undetoed deelopnet pes ‘Size i ocnngehtaare ond try develop ne tower Sora ve NEE ‘comaeaarnapatnanateeta So *& sorta costs © Soar css ~ computer syst css ~ Cente to meiniin> ta develop Breckedown good! culty ie required qutyotibte © Sofware enginaring ie onccned ih cos-ettecte sofware ‘teveopme ponte sora ncnenNG Suimaleteen cee sorrwate ares renga ‘software techniques comes Sen ‘plea ail * Ser dereoner coe pte egy SOFWAE HGR EK CODE Ethics eS =) =, ~~) hay aetS teat plano feeticrane aco 4006 OF HGS A PROFESIONAL CONDUCT Soret enna ao sstamany 1 Conte scaty ond amen wel bing. Fray 1.3 Be hoe ond ratory 11 far ond tbe ation ot fo deciinoe 1 Hore propery rhs nding copy igh ard peter 1 Give proper cre fr llecual propery. 17 espace pecy of oer 18 Hone cefidentiy. eaten SOFWARE ENGNEHING NO SUSTAINABLY EXAMPLE © Green Sofwore Engineering ison emercing isepine of he erocon of nee scree, toitwore proses and erestocure, elacrichy tree, hardware ond date contr design, ~ Groen Sofwore Enginesing concer the doin devetopment ond operation of sofware inter produc na way tha reduces pollo, promees Ststchabiy, ond mines ik Yohanan eel and the eonmcn witow sting econ Weby (nd eficerey ‘SOFTWARE ENGINEERING AND SUSTAINABILITY - EXAMPLE suman sua (CONT) "Tere re mony ferent tyes of system ond och eee — rnd se Oc ocm of Rotnncneprocicaon sport frecreenghehg Wn ond incner rk Sct al opps oe aon ete. ~ Software engineering i en engineering diplne thats se al option ero Sarma _ ~ Exel software product etibutes re maincinabilly, The frdomerel eos ofrofware engineering ore applicable Gnas tmarauiseneamer cary eco) Theron, SePensey ond sac, atisnacy ond oxepibity. ” woclltypeef stare sem. dearer ET Nenes © Te hhlovel oe of specicoon developer, Softee engine hove reponse oh egieetng pod teksoton an evolion rept fel fwareprocoies ples on soy. ey sald no my be ncemed + Sinan hr lean oppeaon Me fendomeol metlors of software eoinerieg re The feadomentl masons of softer ¥ Sesto on energing concern in ol engineering Emargraelggkgamsrcteesrstronimeaton tat rverclly appcabie ool types of system developmen.” Sasi on enaring concen nol engineering SOFTWARE ENGINEERING — F02 ORIENTATION Tae sortwua aoc Some sorrwate PROCESS MODELS \ tieotmesig bo want eset onenednite “Asie st of acter reqad 2 dean © Te wal ode ip ply V Many re etwas roe et cl ces terra ttn nd ineetanen emer ncerenrits ‘seeeren Sea eer ratte tnt ‘esi equedm ert dlp on overeat enctiteeond__Dedgn eileen _ sre pantie Srooseanrerse ‘aloe ranean -ftrekaneldonparerted aro yts ena, etn eer ng niente ene eee asec bid nae ree er ee ne EL ~ pregnant go pn ‘sar moet veaenrstt MOD uses IwerenenTaL peve.opuent The main drowbake "he dif of econedeting henge ae epoca ~ Msty wed for large systems engineering projec tem elped ot rl es whan he requiements or wellundertood ond changes wi bo Teryinilec during tho daign process pggereteemeeneen "Fortean mre te ae manera nae erent aes une eve wens sours tac ta feo chy ctemer Th poet il ———— AER te pd Sor nar et re S-S16 Kan ogame fedoc on develop wot ch a fos 0 ot ‘ype nce sda coy nanan oe = State enn cen = mrt eo oe ~ More ropid dalvery and deployment f wsefl sofware o the | eB nS wm ata S = Scrat POPLAR LONE ALS ge evLOPHENT usc omen sore asncens SS sora on ota ree wher sysens ore negroes from ‘xing component or gopbction systems (COTS. onmercorftshe-de sens) 808 cons Stoo epson sens OTS) Woe fale rd prea “gece / ne amma ho Produc get tomeret Fol pedi °e1_—_/peuzad laments maybe contoured Yo adopt heir behoviot for secede ‘nd fonclony Fog we eeramen ‘ener commuriconon DEEN I Raut Isnow the tndord approach fer bling mony types of —_—_ ‘eins Sine ysem REUSE-ORIENTED SOFTWARE ENGINEERING ADVANTAGES AND DISADVANTAGES Y Reduced costs and risks os less software is developed from —5 scratch = A) Foster delivery and deployment of system = al But requirements compromises are inevitable s0 system may not meet real needs of users ¥ Loss of control over evolution of reused system elements PROCESS ACTIVITIES: ACTIVITY: SOFTWARE SPECIFICATION "THE REQUIREMENTS ENGINEERING PROCESS © IMSPARESS Aca cTnahayelalsuseioenin he overall“ The process of estobibhing whet services are required and the ‘eal of epentying. desgrng plenenng ae ating 2 consronts onthe systems operation end development. ‘ware etom esis ‘The fou bale ress acs (spocein your book) of Use Requirements engineering process ‘ectaston dovscpment asdaion and ovlcon we ppenhailsinbshegit phon ‘Srganized citron In eitaront development processor ees “Require vaiton Inte waa noc yan cranizein quan, sere Accson 6 ND PEMENTTON~ SOrORRE yen MOE, oF HE BEEN HOLES 9ST mp eeraTiON tertorc hm poco arin th ston score eae “Tha sftucr sip sha by developing © region comnts or progrons of By configuring an eppcton sytem. Design ond inplemerttion ae inelsaved cts or mot oan Inpetof iohwore yen, sean + trogen i eine entity wih no sandard proce. apie ee Debugging i the ecivity of Finding program fouls and Seapets (EE) (S| HE] [S|] | otto Ac. sorwage aLerin ie rns TESTING PHASES IA PLAN-ORIVEN SOFTWARE PROCESS © Velen ced vlan (VV) “Sennen anencce ny “en ing i en oe ‘ate no coneony ua VY ex a i. scr sorta evau0n COPING WITH CHANGE Sone revoir ~ Sofrwore is nheverlyHexible end con change Change is inevitable in all large softwore projects eee era < tepranen ton cence “tome dong kp cn de ‘gegen ste) => tether ane = Rowe castes peta hae eet ese Sadne “hone looms cer Change loads to rework “code rower ean agents ed plenty ne See INCREMENTAL DELIVERY ncnewerat sere CSE) Messen sy end pana ESSE) 4 “Seegsareer striae od ceigen pay eqiemees EB) SE) ~ SE) Indoded nearly herent Two approaches: “herenel developmen by developer a REET many “her! dtvery for ens Semaace” “Sena ‘PROCESS IMPROVEMENT ‘PROCESS IMPROVEMENT ACTIVITIES ‘THE CAPABILITY MATURITY MODEL (CMM) ~ Soaue cm moore, Pee MMM ero pa ~ Capcity Matuy Medel earn (OAM s 0 recess faa ae SEESSSVER TEESE ETS AES FESS” level improvement raining and appraisal program oF cccaleroing Gevalopmant procrses mrp | CMMI defines the most important elements that are required to © Procesimprovenent ~The pee rc on pce neces ond eine we BU Groot produ or davr great service “detondg ese orcas = Soni ani cad pas ston rend by many US. Goverment conto expecially in ond changing there proceries, ae software development. . Ey Therma scans ve ‘at ne oe edaaeed ater item st Soe ‘Te CaPaaiLiTY maTURTE MODEL (CA) ‘SOFTWARE PROJECT DOCUMENTATION ji ae (Ct aan BEVELOPNENT~AIRSUS Coping wih chonge no “Sn we of geo ftworeengeaning posce “Th 3 proces mtu framework (CMM) “leet mony ne ar encaay eremond he eo 0 ‘Sheers sngretig procs ars a eouenenT? mca sen ~ Reqiemant = ba dosiption of orto operon iri ‘hiking ling ond chr edoinaras ta “time range oy seve « del anon FUNCTIONAL avo non-uNcTON4REOUEEINS Fuvion weousEweTs ~ Daterbefrconalty or sytem evens Neha won “Sota Stringent ee -Sigugnrcteysensovaor alberta een PEaeon Sette nen ov. FuncroNa eouReueurs Ov-FUNCTIONAL REaUIENERTS IMPLEMENTATION © Define s:tem properties and consrai "Proper setabiy, reipns neon oops equronee * Contin 1 dence, sem reese Non anaonl requirments may efor he overall erie sane “eosin an © Non tuetnelraqurenens may be more ea! hon ‘onctanelrelemente "Wns not nt te stom oy be as A Sogo non icon equrament “Sndioy de unre ogden etre rye [XANES OF MOMFUNCTIONALROUIEMENTS THE MENTCARE STEM TPES OF REQUIREMENT + hg en ———_ Requromensdefinton ater a Requirements specication “ Softwore pecfeation "hated wore crip wich an rv eat fr ‘itp otnpoamaan Want Soop EFFECTS OF INADEQUATE REQUIREMENTS. © Reuter foes nyse ant ire ded © nanan | nay wee a here (ad price maregemert stem manage he etoe [eal reise manoganetsyten: mange: he + aaeh ton os ed oh re no "Atom nal aoe ta arom he wn he "rae donner ingot dete dcp of he em ‘SUMMARY Y Solwore processes ~ Sowore proces models Teva renal Seopa ue aad desler Fendomactel oxirie econ erga: lpn peo. "Shin aerate em aeons pin ~ Erg tin charg nn tne ee mee ee . iam ‘Soyuedoy operation of scl nck en appaneet! ‘hldng ing ond oer ean faa ena En oN CTONAL RUMEN Aas be able fe sarc he apocrine fit fora ‘ic. *Faconl regione ney be hghlvl toner of whet The sae all generteeoch doy fr woch ln, ot of poles who are expected a ated apotimens hat doy. “Each staf member wing he stem all be nigulyidenied bys orher Sgt employee mabe NON UNCTONAL CLASSIFICATIONS re! eairmants “Sul voy eg’ gua okasy ae Oxgaristionleaiemans Steiner ch epee of atten pain od easing See ar oy ~ Eetoral einen “Regent mh an le egenenm ons 5, eeoumeneas “italy nigel ad sere the coord nd reste pret \ Requeemens are oon ‘GOALS VS. REQUIREMENTS (CONT) SYSTEM STAKEHOLDERS “Any tenor organiction wha is afeced bythe sytem in at ee tome way and 19 vho hos logitinte rest XX ~ Stakeholder types a * Siem manages ome ees sa tbe tenis le jen = ‘rons tur too Fane REQUIREMENTS ENGINEERING PROCESSES ATIC ORE toe Processes to “generate” ll requirements Generic activities common to all processes “Requementsectaton, * Regierens ony * Reuierents von: + Eepdrement rcmcgenen: ~ In proctice, REis on iterative activity “STAKEHOLDERS IN THE MENTCARE SYSTEM A semi EW OFTHE OCs QUIREMENTS ELICITATION AND ANALYSIS requirements eisttion or equtements dicovery “We wih cntomer te fe! ut PROBLEMS OF REQUIREMENTS ELICITATION © Stkoholers dont now wher they ely wort. © Stkeholders expres requiem in thelr own frm “tw pple amen he rent ond certo cnet ere aaheiden oy hove veootg reasoners (eyompertrmane hardware sone © ey nv “eden nonopeyangers naked a meberane dons ‘Sipe ras mango have re calod ekehaler: © Orgenstiona an pail factors may influence the syser requvenert The reuiremons change during the analy process TH CODREMET UCTHTON ND ans POKES “Merman emcee one ee go evmoceuPar owen score DSCOVEY TECHNIQUE NTERTEWINE Observation tchrique To gather information abou he raqured and exiting systems Pert of mos! RE poceses: nd lhe war ond system eeuremens om i ‘formation Decry ecnlat/apseci/ courte ucaion recs sects Use a ind of seco “Types of ietervow Cove 2 Onen => mac ‘ovreama br then proces How * Hesperides tne, “roth erin oat min ng ing ptntoard ‘sun eauramens propa orby vos woehercns ‘dl na cami in heir on nn * ecle dothe o expi oaalehe wet EXAMPLE OF NIGHTMARE REQUIREMENTS ANOTHER EXAMPLE OF NIGHTMARE REQUIREMENTS en Soe Tatiana wie Rafe pe COMPLETENESS: ~ Definition ofthe responses ofthe software to al ‘atownhenaibe saya Stared ee = SS omomsnsae " COMPLETENESS (CONT) © Automatic door opener ‘walzable classes of input data in all ealizable classes of ‘tuations (IEEE St). Al possible situations must be covered “if X then..." "FY then, hnappea “If ether X nor Y.." UM sequen agro may be wad od dt outa "Must also consider what wil serene ‘Sena Sona Gossow What are missing? UNAMBIGUOUS UNAMBIGUOUS (CONT’) \ Asitware requrements unambiguous. ‘es vey rege Fs on one raarreiaton (GEE St). Ait River wth emt atte at cre Mlapcan ator rs CONSISTENT (CONT) Reauirement of extonomeus erie contol (ACC) systems sei at yeti oyna? m oa @ MAIN TYPES OF CONFLICTS © Thee main types of conficts in software requirements Sl haces tase ees *Mugetiems ot coocOng teen watd oss + Consatengy ia cher acne, tens te jurenens tae ood ioe are et, ne PROFIBUS sa havea short eatin ine of PROFIBUS used in hazarous ates sha have alow power dssipaon c¢ 3 Confit: Fast PROFIBUS has lo have a high omer FORWARD REFERENCING FORWARD REFERENCING (CONT’) ~ Westin fers ane nie ate, yes ~ Requirement of autonomous cruise control (ACC) system is: (Nbc notreweteie + ising reone Who sti eset pod? nai re ae ote eset p65? OPACITY (CONT’) NOISE ~ Requirement tems thet ylelé no iformeton on problem world feohree Recivemen: SRpot ices aa + ect Ferra vt mone tne gwar ng oe eoueewes secicaTOn ws OF wari SYST Rouen SFCmCAION The process of wing down the wer end tem eqemente Ine raquramanedocoman. eager hoe be ctr by eat on ‘ito sho donate ached sere Ways OF WeTNG STM REDUREMENSScCATION SuctueD PecFCAiONS 1 agg ete bce ing mins” Wain an ord fom oot aay ens i when he ee i Ssuirgt ete totes don fecowlegenmmiedie Roteeeteneonten Set ato nqtionen oy be Freon ps condor perp) Those ace Be) ting fa ber plot template CONSISTENT ~ Asoftware requirement is intemally consistent if, and ‘only if, no subset of individual requirements described in is confit, 5 = CORRECT v Possible incorrect requirements + Forward referencing + Opacity + Noise + tc. ‘opacity ~ Regulrement tas or which ronal or SSibtdences ere ee NOISE (CONT?) ~ Requirement: The train system shall lisanias sale Uansporgtonof al Boengers on thew fesidence. + Note Amnon oc in ~fuvan satan trees ars oF aN rex eouReMes secon ‘TABULAR SPECIFICATION CHARACTERISTICS OF GOOD SOFTWARE ye case oiscnan REQUIREMENTS SPEGIGATON: Reece ieee — eh > cont i = = ia ae Seeman seston ACTIVITY DIAGRAM, = 1 lawns cases 2 ley panos cro thecnted 4 Moses anne secs f 4 Mosecenpnwontosinpeatonsen Aen i 5. Mastin ct completes ahi SEQUENCE DIAGRAM, an interaction diagram that details how operations are carried ‘out -- what messages are sent and when Y Sequence diagrams are organized according vue meron ano eeaueewens ~ mony dale methods arqve thar proskcing deal system uty The requirements docimant i therefore clays ou of date “Agile mated oly we incremental requirement engineering ‘td may expres requiromerts ose stories “Tiss proce er busines systems bu problamatie fer stems that require pre-delvry onli (og eal ystems) © systems devaloped by several teoms ae] sau Us CASE TEMPLATE an EAM ACTIVITY DIAGRAM, v bitps://wwwvisual paradigm.com/guide/u rml-unified-modeling- language /what-is- to time. sastoey AGILE METHODS a REQUIREMENTS — Use TORT besilcceasl As omecteal eco ul wih 10 view extent mediation from primary core gnarl proce Asa maceal ception | potent rst nme, hl Srtter prescribes medicne YAS eheatheore manoger | won! to see the monly report Drescibod medicines odaved by Melt sand by es? [MORE ABOUT NON-FUNCTIONAL REQUIREMENTS (NFR) ISO/EC 25010 PRODUCT QUALITY MODEL, ‘REQUIREMENTS VALIDATION Queues cHECLNG EQUIRENTs IOAN TECHS egueeues wavasenet REQUIREMENTS MANAGEMENT PLANNING Feqremens management ithe process of manosing hanging requemers cur the fegaenens engiecting ‘eu need keep tock of inviuolrequtemeat ond mete: Reienes tection Inks between dependent reqremert tho au concurs change mage ees fhe imped of reqnamens changes ov eed toenobuihs, cect epee Formal proces for making change propose end ining hese | yes RESPONSE TO CHANGE: AGILE APPROACH! sone The sofware recuramers doce SPS) # on open "se Sead Estblhoe he lve of requirements management deal het it consis develope & se ‘cunome neounenenrs ‘henge aber Petco The people who pay fro yom and hear ofthat yen tr rly te vane people tonflcing contador. REQUIREMENTS CANE MANAGE Deciding if earners change saul be accepted Say come orcas ond trap Pern Peete ee een CC od ed ae eos ered oan Cea Set tee es Pry eer en en eras omen ny rire Cee haere Deron cena) Creer i sn ree ee aetna emitters seer meee et eter To oer ee Dat when defining lasses, anticipate futur eter ey adi reiarericet Cece) Pea ee Cee er aa) eerie} ass Diagrams a & setae ae) Vetere racist Pee eee rn peeone ee alps the ents to ring reams nohening oper he roped ‘USE OF GRAPHICAL MODELS pa amean of fetta cmon about on exiting oF Propesed sem Par bene As 0 wey of doamentng on exsing sytem tse aouvoutes ‘UML DIAGRAM TYPES CONTEXT MODELS, ™ Aatety clogram, wh ow he tres Inve noproces or To that he operational creat of «system — te irae procs Vea cous digramy, wich ho he trator betwoan sem ~ Sequce aaron, which ow meron etwamn ocr ond sem sd beocatsynem component Shae digrams wich show how the yen eco inenal ond COTE OFT wenTAE STEN Spam inti ae ablited danwhde nd = ern eid he yn ame “Tfoconrmert ended sere = = = Le R055 AODEL OF OUHATARY BTEATION Inerncrion wooeis tating vs eracion oben orem Mosalng sytem tosyrem meron "Nate sme pans “Wesel compenerirercton ‘cient paps chy a a Us cate ogra and sequence diagrams may be wed for biscis nedaing TRANSFER-DATA USE CASE ecerrionst A.wse case In the Mentcare system tt SEQUENCE DIAGRAMS v L his:/fonline. visual. ‘paradigm, com /slegrame /utorals/sequence.diagram.tutrial Sequence diagrams are part of the UML used to model the interactions between the actors and the halon = objects within a systom. “A sequence diagrom shows the sequence of interactions thot rake place during @ particular use case or use case Instonce. “The objects and ator involved ore sted along the tp ofthe peepee weneee com mete en tes sewer Eagereserestenmainmes ent Come) “(oe ) Ws APPLICATION aRcTEcTURES ‘aawris oF sricaion Es a ceecperane ates Tae nt ing ttl ety. PETIT mn eter nee see means of essing component for rue. ~ Ae 0 vocabulary fr ang about eppcaton ype THe SOFTWARE ARCITECTRE OFA ATA STEN ‘agobeanonssensacarecrate iran sans how @ goer aehtecne hat can be ‘igonted or olaered echacure ‘ytoen gavel icles taba Vomactone “oe ee) cc) e-> ‘Oe FILTER ARCHITECTURE areuoanou acaecunts ~ Applten system te designed mes on ergontsion nnn meh comme her pon do ed ‘Sista sane nS pt “A gos epplizton orchecnee sn rtitcur fo 0986 seve sem ht moy be crite ond edopted ‘eae aya ot mees mechs reguromerts Hasucon oes sens Le} = oes ve raga fos efemation ome detobae ‘gent update he debe. From a er perspective ronston incre ngue operons et ies 9 ec Ao carseat igs toons ar proses by @wrsenon monscer, ——_— = =a) ‘WEB-BASED INFORMATION SYSTEMS © tnlrmation and oxource nenegement tens ate now sully treb-bened syter where the utr iterfces ore eplemented Veing 0 web browse ~ Ohtninplemarted or mir oer erect Pecan cidebarrene cemn is Tie ppt are neni nplranig spt eseeg Teeter sage od eects conruc acetone ‘nonce acon saad het ha bag ocd” Aavrtcracinumtionein omar suumany (ont) ~ Model of apelin sytem erchtecuzes ap us undersond ‘Sd compere applications vebdoteeppteaton sem denget ‘Sad coat lorgr acl Component for ee Tiamat pecasing tyes or erect systems hat Sow eforaren ms condos be remotely one ond ‘modes by a manber 3 ore ~ Lange processing stn are ved fo rane txts ron ‘oe anproge to rch ond to Gy out he macho ‘oched inka np langue. They Induce» wanted ‘Sreparac machine thot beste Ne gnerced enguege one ooaurr pu vA Sl “tn LOLLY PROGRAM LCR DOCUMENTING METHODS shot the method does why Wt does 0 thet parameters it mst be passed (se @poren 109) exception it rows use exception 19) econ for choice of wtilty known bogs tp sree, descbing wheter he rated hs been KK 58 ‘example of how the method works pre-and pos!-condtions history of changes f you ore not wxng © subversion system specol documentation an treaded ond synchronized methods ‘LANGUAGE PROCESSING SYSTEMS dea rs eel aoe We ond ge My inca ah interpreter ote erin in the Une i svotionn hare he oi te dessa on egattin e Gexae ho sytem dete no eof promo corp med ney ed oy tselve 9 prblam ‘THE ARCHITECTURE OF A LANGUAGE PROCESSING SYSTEM ‘re ano ure REPOSITORY ARCTECTOR FOR COMPLERS syynae ~ tar rae rion fw osteo en « ~ fee eign eer ee ect toe ASS ee eae ee eg ie ‘eLoweratiON © mpamantation = Unt inplementaion + heegrton ENT CODE Gavan. 6 Brae nce ons Sevacsnen vee ‘Sener stom heey be ed nd ene aerager ae rir rning toning ov tsk cay cect e weet Spin GOLDEN RULE (!2) Requirements to satisfy Customers ¥ Design again requirements only Implement again design only Test again design ond requirements NERA PRCILE IN PROGRAMMING PRACTICE 1. an the structure end resdvel design for your code” Ty 10-6 Fst 2. Selfsinspect your design and/or structure 3. Type your code 2. Ene tenons “ea memes ot ee bee Dy Oe fens roe is t-inspeet your code 5. Compile your code 6 Test your code aceon HANDLING © Catch ony toes encapin that you iow how to hale \ teresenable about exception cles mut honda Dan sb heute of excaptens for eta held feubject ot osing Srimeing pete sr ormces anon convenrions © eg came th cape ~ teem tree nue thy lhe ed teat SSS2%0051a mato se meron eador + nti conn S001 Seas ested ond the location of i test “yoo noes te tease erases pasoge Udo 12. need oetleye tonne wt DOCUMENTING ATTRIBUTES ana INITIALIZING ATTRIBUTES Before designating afi rice ere tite Fok. arages hl be ova be zed, Hk of Gottng mao nea Y Description -- what it's used for ¥ All applicable invariants * quantitative facts about the attribute, * 0F"36.< Jongh * with < 193" c “7, } 1 SLL 1 COE (ODE SHEL Code smeis are any violation of fundamental design“ Chege he ert Pncpies that decrease the overall quality ofthe coda, © Not bugs or errors Can cetaisy ad to the chance of bugs and failures Bloaters Change Preventers ‘coo eacTonNG GoM so Proeai ‘rvot Customer -etomar = nw Cantomer{ “awed "nee", ‘When new ibe de 0 Code Smells Object-Orientation Abusers ‘Aenaive cases with 5 Reused Bequest 6 Temporary File ipa cote + onacte Sect ety ol cede ele | ele Couplers AlLthe smels in this group contribute ta excessive coupling between classes or 5 Feature Envy 5 Incomplete Library Class 5 Inappropriate Intimacy 5 Message Chains pens if coupling 5 Middle Man CODE REFACTORING STEPS a ~ Designing sl to fo the seo fe be rtecored Yorn mete het nn no ~ Reviewing te code to deny bod nel of code toting etotrng ar ung ts (ne tp a ms) at REDUCE SIZE ~ SHORTEN PARAMETER LIST ivensen cnanse ¥ Long Parameter List enn "Ease Poraner Obes ‘Seer es git ten SEE eam i INCREASE COHESION (CONT?) PRIMITIVE OBSESSION + Data cemps Bunches of sta chen hang sound cgeter Stamaar Coster resane We Coec 9h, sting, oF constonts Primitive Obsesion it when the code rales 199 much on Drnitves and when uses primitive types to represent on ject am Ine demoln wh 00 We nto nsecrON? © any stare ecttac comer be vt by nang 6.0, MapSotremugheainestca paar cane ‘REMOTE DUPLICATED CODE — PULL UP METHOD (DON'T REPEAT YOURSELF Srenuun non nen ne ane REDUCE SIZE — SHORTEN METHOD/CLASS ¥ Long Method +g, Extvoc method Y Large Class + Eg Enron loss subclass, merce cease COMEION Feature envy WHAT 1 NSPECTION? ~ Primitive fields ore bore builtin bling locks of © language, ~ Vitel exemiain of sofware prod tent software anomaties |nsPecTON FINDS TYPES OF OEECTS DFFERENT ROM TESTING TESTING S.SPECTION errant co © ict cere ee ee ~ tmectn contest Sait ~ impute rove ool ts ad cove enon acosie SPC COE OFS-csstsonta BEAR pcr cone 2 oF: NES eo! C1. he cant name apropine ¥ C2 Could ba aberex tobe wed aly abort “AS code hot gts bite naodt be rovowe by tase ne cer peony and ater he code wer orth reviewer ad t hove roadbity fe ongooge” “et people za Morin odo oda revaws ond abviuly, v Ck. Does Wher reference he requ and/or cei “A sso tpand good ha of cu tie evowing code” Stnentto chsh ncorepond © CS. Dos tse the pckage fo whch Wlonst © Stet be rat ve) CB. Hove the doamertasion senders been opp ~Amande Comp, Sftwore Egiraer, Google INSPECT CODE 3.0 5 CONSTRUCTORS ray sect cone 40 5: mH HEADERS oa ¥-€O1. I the constructor) necesory? io tenon ¥ C02, Does it leverage exising comtrasor? mit oti | ¥ CO3. Dost intalze of el theenibutest 1 ft. Srete nne atet ¥ COA. Ie 0 private os possible staan eet ores rarer eer eee COS. Doss it exceute the irherited constructor(s} where | at gontentctzwensseat nocessory? 4 fm Besos IWsPct COD 5 FS METHOD BODIES ve vn. lo (he ctibte necessary? Could tbe storet Should it be fat vas. vas. v8. vw. ‘Are the naming convention properly apped? leitor private or posible? ‘re the etributs 0: independent or posible? Isthere a comprehensive fitaizotonsroteyt Goma ‘ve 1s SOFTWRE QUALITY MFORTANT? ‘DEFINITION OF QUALITY ~ 050} dete ua cs te oy of coterie of ar enhy (Souccherrai ssa rtaad et (Soabusipra arte depee mney ere were ‘recess ogarerans (S000) + Confrmonceerequiernt no he pies pce ond Sree sae wens pcteson. ~ Fines for esemeon 9 prod con be edo inne Quay aipec| Oma tea te ones SOFTWARE QUALITY MODEL ss UNLV, RoDUr UAT no ara deer ot te ae. Dats hve oan oat blame he nl ey tar aos rece fs blr yf “sree a rests rm he senor fhm proces” Progestin Gams srcvotacy OF 1160) To demororate tthe developer onde tare thot he {etteore mows requremert aiden na A progrom ss progranmer’s baby! “beste ave emecn ahr han te propranma eg he tes Tester mst be highly sled, experienced professional © tthepst he or he possesses a dlebolcl min To 6icover eons n wich he behavior of he oor ioorecwrentabl or dows ot confer ob open ‘AN INPUT-OUTPUT NODEL OF PROGRAM TESTING sats OF ESTING evetormen sTN6 Development esting Him, SRE Baoan vesog Heatennang 2 any of cece mtd Siew rinanon nt conn anne se mtonbton Venera, caus “foarte conocer merce “sors or pons ves of pytem tet the satin fir own " FEee ey creeene 2 572em ae ered ond these B= | taumune monye ‘rowan MES es Lace ne x0 TS = so a al ‘PROCESS QUALITY 5, PRODUCT OUALITY fer ao Aa 25 4s ocean STNG ~ Tog hen ow a pero do wet © Can reveal he presence of rors NO hr sone Testing i pot of 2 more genera etisien and validation PsvchoLoY FST) “thing a ers note ont ewe We wg th ees Myers sors 79h irra! te shew saeco yo i cnr mone “Lesage rete sn Tesi the pees of wating a pga he * hea ng enbs he | A MODEL OF THE SOFTWARE TESTING PROCESS on rest irs 9 doc vesing process. © Unis mor bee Olin dene ah sve onige ond meds “Cont emp ihe nea ha | wer ne REGRESSION TESTING ABTOMATED TESTING Test mt sce before he changes conmid = UCD pipeline mere Petecal The systen Ce perererms poesia Paris peter ni Tits 4 peak load. Enns the problems associated eee eee eee oes SYSTEM TESTING ~ Faauson testing the intracons between components recon vonfer he i dtc iin Sow BOE BBO ee mentor See eee aes concerns confidentiality, integrity, ES ne EM mS Een) MeCN eee the software to withstand attack (coo = Shi; & = “e Privacy and GDPR “ a eee EEE Fries Reyesson test Rersson tet ‘erewsrutec sneer page) ‘one of the main goasis to very that no defect ene nde hasbeen Induced into the unchanged portion {wets ner ‘oa system de to changes made elsewhere 0 Ian] wont < 0 thet

You might also like