Anong mga tool ang umiiral upang mapalawak ang ms excel. Kahulugan ng mga format ng Excel file. Mga format ng cell sa Excel

Isang masusing pagbibigay-katwiran sa ekonomiya para sa lahat ng mga aksyon - kung ano lamang ang kailangan ng customer ang ginagawa at hindi humahantong sa hindi kakayahang kumita ng proyekto.

Ang pagbuo ng pangunahing arkitektura sa lalong madaling panahon.

Paggamit ng component architecture.

Prototyping, incremental development at pagsubok.

Mga regular na pagtatasa ng kasalukuyang estado.

Pamamahala ng pagbabago, patuloy na pag-unlad ng mga pagbabago mula sa labas ng proyekto.

Tumutok sa paglikha ng isang produkto na gumagana sa isang tunay na kapaligiran.

Tumutok sa kalidad.

Pag-angkop ng proseso sa mga pangangailangan ng proyekto.

Extreme Programming

Extreme Programming (XP) lumitaw bilang isang ebolusyonaryong paraan ng pagbuo ng software"bottom-up". Ang pamamaraang ito ay isang halimbawa ng tinatawag na pamamaraan"live" na pag-unlad (Agile Development Method) . Kasama sa pangkat ng mga "live" na pamamaraan, bilang karagdagan sa matinding programming, mga pamamaraan na SCRUM, DSDM (Dynamic Systems Development Method, paraan ng pagbuo ng mga dynamic na system), Dahil sa Tampok Pag-unlad (pag-unlad na hinimok ng mga function ng system), atbp.

Ang mga pangunahing prinsipyo ng live na software development ay nakapaloob sa live development manifesto, na lumabas noong 2000.

Ang mga taong kasangkot sa isang proyekto at ang kanilang komunikasyon ay mas mahalaga kaysa sa mga proseso at kasangkapan.

Ang isang gumaganang programa ay mas mahalaga kaysa sa komprehensibong dokumentasyon.

Ang pakikipagtulungan sa customer ay mas mahalaga kaysa sa pagtalakay sa mga detalye ng kontrata.

Ang pagtatrabaho sa mga pagbabago ay mas mahalaga kaysa sa paninindigan sa mga plano.

Ang mga pamamaraan ng "pamumuhay" ay lumitaw bilang isang protesta laban sa labis na burukratisasyon ng pagbuo ng software, ang kasaganaan ng mga side document na hindi kinakailangan upang makuha ang pangwakas na resulta, na kailangang iguhit kapag nagsasagawa ng isang proyekto alinsunod sa karamihan sa mga "mabigat" na proseso , karagdagang trabaho upang suportahan ang nakapirming proseso ng organisasyon, tulad nito na kinakailangan sa loob, halimbawa, CMM. Karamihan sa naturang gawain at mga dokumento ay hindi direktang nauugnay sa pagbuo ng software at pagtitiyak sa kalidad, ngunit nilayon upang sumunod sa mga pormal na sugnay ng mga kontrata sa pagpapaunlad, kumuha at kumpirmahin ang mga sertipiko para sa pagsunod sa iba't ibang pamantayan.

Ang mga pamamaraang "Live" ay nagbibigay-daan sa mga developer na ituon ang karamihan sa kanilang mga pagsisikap sa mga gawain sa pag-develop at pagtugon sa mga tunay na pangangailangan ng user. Ang kawalan ng mga tambak ng mga dokumento at ang pangangailangan na panatilihin ang mga ito sa isang magkakaugnay na estado ay nagbibigay-daan sa iyo upang tumugon nang mas mabilis at mahusay sa mga pagbabago sa mga kinakailangan at sa kapaligiran kung saan ang hinaharap na programa ay kailangang gumana.

Gayunpaman, ang XP ay may sariling diagram ng proseso ng pag-unlad (bagaman, sa pangkalahatan, ang malawakang ginagamit na pag-unawa sa "proseso ng pag-unlad" bilang isang medyo mahigpit na pamamaraan ng mga aksyon ay sumasalungat sa mismong ideya ng "buhay na buhay" na pag-unlad), na ipinapakita sa Fig. 15.

Ayon sa mga may-akda ng XP, ang pamamaraan na ito ay hindi gaanong sumusunod sa ilang pangkalahatang mga pattern ng pagkilos bilang paggamit ng kumbinasyon ng mga sumusunod na pamamaraan. Gayunpaman, ang bawat pamamaraan ay mahalaga, at nang walang paggamit nito, ang pag-unlad ay itinuturing na hindi XP, ayon kay Kent Beck, isa sa mga may-akda ng diskarteng ito, kasama sina Ward Cunningham at Ron Jeffries.

Live na pagpaplano ng laro

Ang gawain nito ay upang matukoy sa lalong madaling panahon ang dami ng trabaho na kailangang gawin bago ang susunod na bersyon ng software. Ang desisyon ay ginawa, una sa lahat, batay sa mga priyoridad ng customer (i.e. ang kanyang mga pangangailangan, kung ano ang kailangan niya mula sa system para sa mas matagumpay

pagpapatakbo ng iyong negosyo) at, pangalawa, batay sa mga teknikal na pagtatasa (ibig sabihin, mga pagtatasa ng pagiging kumplikado ng pag-unlad, pagiging tugma sa iba pang mga elemento ng system, atbp.). Ang mga plano ay binago sa sandaling magsimula silang lumihis sa katotohanan o sa mga kagustuhan ng customer.

Pagsubok

gamitin

mga senaryo

Bagong kwento

Mga kinakailangan

gamitin

Bilis ng proyekto

Metapora

Plano ng bersyon

Pagpaplano

Pag-ulit

Pagtanggap

Maliit

arkitektura

Huling

OK

mga gumagamit

Hindi mapagkakatiwalaan

Tiwala

Bagong pag-ulit

"Paghagis" ng mga solusyon

Figure 15. Workflow diagram sa XP.

Mga madalas na pagbabago sa bersyon (maliit na paglabas)

Ang pinakaunang gumaganang bersyon ay dapat na lumitaw nang mabilis hangga't maaari at dapat magsimulang gamitin kaagad. Ang mga kasunod na bersyon ay inihahanda sa medyo maikling pagitan (mula sa ilang oras para sa mga menor de edad na pagbabago sa isang maliit na programa, hanggang sa isang buwan o dalawa para sa isang malaking rework ng isang malaking system).

Metapora ng sistema

Ang talinghaga, sa isang medyo simple at naiintindihan na anyo para sa koponan, ay dapat ilarawan ang pangunahing mekanismo ng system. Ang konseptong ito ay nakapagpapaalaala sa arkitektura, ngunit dapat ilarawan ang pangunahing kakanyahan ng mga teknikal na desisyong ginawa nang mas simple, sa isa o dalawang parirala lamang.

Mga simpleng solusyon sa disenyo

Sa anumang oras, ang sistema ay dapat na idinisenyo nang simple hangga't maaari. Hindi na kailangang magdagdag ng mga tampok nang maaga - pagkatapos lamang ng isang tahasang kahilingan para dito. Ang lahat ng hindi kinakailangang kumplikado ay aalisin sa sandaling ito ay natuklasan.

Test Driven Development(test-driven na pag-unlad)

Sumulat muna ang mga developer ng mga pagsubok, pagkatapos ay subukang ipatupad ang kanilang mga module upang gumana ang mga pagsubok. Ang mga customer ay sumulat ng mga pagsubok nang maaga na nagpapakita ng mga pangunahing kakayahan ng system upang makita nila na gumagana ang system.

Patuloy na refactoring

Patuloy na inaayos ng mga programmer ang system upang maalis ang hindi kinakailangang kumplikado, dagdagan ang pagiging madaling maunawaan ng code, dagdagan ang kakayahang umangkop nito, ngunit nang hindi binabago ang pag-uugali nito, na na-verify sa pamamagitan ng pagtakbo pagkatapos ng bawat muling paggawa ng mga pagsubok. Kasabay nito, ang kagustuhan ay ibinibigay sa mas eleganteng at nababaluktot na mga solusyon, kumpara sa mga nagbibigay lamang ng nais na resulta. Ang mga hindi matagumpay na na-redesign na mga bahagi ay dapat matukoy sa panahon ng pagpapatupad ng pagsubok at i-roll pabalik sa huling buo na estado (kasama ang mga bahagi na nakasalalay sa kanila).

Ipares ang programming

Ang coding ay ginagawa ng dalawang programmer sa isang computer. Ang pagpapares ay arbitrary at nag-iiba-iba sa bawat gawain. Ang nasa kamay ng keyboard ay sinusubukang lutasin ang kasalukuyang problema sa pinakamahusay na paraan. Sinusuri ng pangalawang programmer ang gawain

una at nagbibigay ng payo, isinasaalang-alang ang mga kahihinatnan ng ilang mga desisyon, mga bagong pagsubok, hindi gaanong direkta, ngunit mas nababaluktot na mga solusyon.

Kolektibong pagmamay-ari ng code

SA Maaaring baguhin ng sinumang miyembro ng koponan ang anumang bahagi ng code anumang oras. Walang sinuman ang dapat magkaroon ng kanilang sariling lugar ng responsibilidad; ang buong koponan sa kabuuan ay responsable para sa lahat ng code.

Patuloy na pagsasama

Ang system ay binuo at sumasailalim sa integration testing nang madalas hangga't maaari, ilang beses sa isang araw, sa tuwing ang isang pares ng mga programmer ay matatapos na ipatupad ang susunod na function.

40 oras na linggo ng trabaho

Ang pag-obertaym ay nakikita bilang tanda ng mas malalaking problema sa proyekto. Hindi pinapayagan ang overtime na trabaho sa loob ng 2 linggo nang sunud-sunod - pinapagod nito ang mga programmer at ginagawang hindi gaanong produktibo ang kanilang trabaho.

Pagsasama ng customer sa koponan(on-site na customer)

SA Palaging kasama sa development team ang isang kinatawan ng customer na available sa buong araw ng trabaho at kayang sagutin ang lahat ng tanong tungkol sa system. Ang kanyang responsibilidad ay agad na sagutin ang mga tanong ng anumang uri tungkol sa mga function ng system, interface nito, kinakailangang pagganap, tamang operasyon ng system sa mahihirap na sitwasyon, ang pangangailangan na mapanatili ang komunikasyon sa iba pang mga application, atbp.

Paggamit ng code bilang paraan ng komunikasyon

Ang code ay nakikita bilang ang pinakamahalagang paraan ng komunikasyon sa loob ng isang team. Ang kalinawan ng code ay isa sa mga pangunahing priyoridad. Ang pagsunod sa mga pamantayan sa coding na nagbibigay ng kalinawan na ito ay kinakailangan. Ang ganitong mga pamantayan, bilang karagdagan sa kalinawan ng code, ay dapat tiyakin ang kaunting wika (walang pagdoble ng code at impormasyon) at dapat tanggapin ng lahat ng miyembro ng koponan.

Buksan ang workspace

Ang koponan ay matatagpuan sa isang medyo maluwang na silid upang mapadali ang komunikasyon at paganahin ang mga talakayan ng grupo kapag nagpaplano at gumagawa ng mahahalagang teknikal na desisyon.

Pagbabago ng mga panuntunan kung kinakailangan (mga panuntunan lamang)

Dapat tanggapin ng bawat miyembro ng koponan ang mga alituntuning nakalista, ngunit kung kinakailangan, maaaring baguhin ng koponan ang mga ito kung sumang-ayon ang lahat ng miyembro nito sa pagbabagong ito.

Tulad ng makikita mula sa mga diskarteng ginamit, ang XP ay idinisenyo para gamitin sa loob ng maliliit na koponan (hindi hihigit sa 10 programmer), na binibigyang-diin ng mga may-akda ng pamamaraang ito. Ang isang mas malaking laki ng koponan ay sumisira sa kadalian ng komunikasyon na kinakailangan para sa tagumpay at ginagawang imposibleng ipatupad ang marami sa mga nakalistang pamamaraan.

Ang mga bentahe ng XP, kung maipapatupad ito, ay higit na kakayahang umangkop, ang kakayahang mabilis at tumpak na gumawa ng mga pagbabago sa software bilang tugon sa pagbabago ng mga kinakailangan at kagustuhan ng indibidwal na customer, mataas na kalidad ng resultang code, at ang kawalan ng pangangailangan na kumbinsihin ang mga customer na ang resulta ay nakakatugon sa kanilang mga inaasahan.

Ang mga disadvantages ng diskarteng ito ay ang imposibilidad ng pagpapatupad ng sapat na malaki at kumplikadong mga proyekto sa istilong ito, ang kawalan ng kakayahang magplano ng tiyempo at intensity ng paggawa ng proyekto para sa isang sapat na mahabang panahon at malinaw na mahulaan ang mga resulta ng isang pangmatagalang proyekto sa mga tuntunin ng ang ratio ng kalidad ng resulta at ang mga gastos ng oras at mga mapagkukunan. Mapapansin din na ang XP ay hindi angkop para sa mga kasong iyon kung saan ang mga posibleng solusyon ay hindi agad nahanap batay sa dating natamo na karanasan, ngunit nangangailangan ng paunang pananaliksik

Ang XP bilang isang hanay ng mga inilarawang pamamaraan ay unang ginamit sa panahon ng trabaho sa proyekto ng C3 (Chrysler Comprehensive Compensation System, pagbuo ng isang sistema ng accounting sa pagbabayad

mga empleyado ng Daimler Chrysler). Sa 20 kalahok sa proyektong ito, 5 (kabilang ang nabanggit sa itaas na 3 pangunahing may-akda ng XP) ay nag-publish ng 3 mga libro at isang malaking bilang ng mga artikulo na nakatuon sa XP sa panahon ng proyekto mismo at kasunod nito. Ang proyektong ito ay paulit-ulit na binanggit sa iba't ibang mga mapagkukunan bilang isang halimbawa ng paggamit ng pamamaraang ito. Ang sumusunod na data ay pinagsama-sama mula sa mga artikulong binanggit, binawasan ang anecdotal na ebidensya, at inilalarawan ang mga problema sa ilang mga diskarte sa XP kapag inilapat sa medyo kumplikadong mga proyekto.

Nagsimula ang proyekto noong Enero 1995. Mula noong Marso 1996, kasunod ng pagsasama ng Kent Beck, ito ay pinatakbo gamit ang XP. Sa oras na ito, lumampas na ito sa badyet at mga plano para sa phased na pagpapatupad ng mga function. Naputol ang development team, at sa loob ng humigit-kumulang anim na buwan pagkatapos noon ay medyo matagumpay na nabuo ang proyekto. Noong Agosto 1998, lumitaw ang isang prototype na maaaring maglingkod sa humigit-kumulang 10,000 empleyado. Ang proyekto ay orihinal na inaasahang makumpleto sa kalagitnaan ng 1999 at ang magreresultang software ay gagamitin upang pamahalaan ang mga benepisyo para sa 87,000 empleyado ng kumpanya. Ito ay itinigil noong Pebrero 2000 pagkatapos ng 4 na taon ng pagpapatakbo ng XP dahil sa kumpletong pagkabigo upang matugunan ang mga time frame at badyet. Ang software na nilikha ay hindi kailanman ginamit upang gumana sa data sa higit sa 10,000 empleyado, bagama't ipinakita na ito ay maaaring humawak ng data sa 30,000 empleyado ng kumpanya. Ang taong gumanap sa papel ng customer na kasama sa pangkat ng proyekto ay huminto pagkatapos ng ilang buwan ng naturang trabaho, hindi nakayanan ang kargada ng trabaho, at hindi kailanman nakatanggap ng sapat na kapalit hanggang sa katapusan ng proyekto.

Panitikan para sa Lektura 3

W. Royce. Pamamahala ng proyekto ng software. M.: Lori, 2002.

A. Jacobson, G. Butch, J. Rambo. Pinag-isang proseso ng pagbuo ng software. St. Petersburg: Peter, 2002.

Kroll, Ang Diwa ng RUP. www-106.ibm.com/developerworks/rational/library/ content/RationalEdge/dec01/TheSpiritoftheRUPDec01.pdf

K. Beck. Extreme Programming. St. Petersburg: Peter, 2002.

http://www.agilemanifesto.org/

K. Beck, et. al. Pumunta si Chrysler sa “Extremes”. Distributed Computing, 10/1998.

A. Cockburn. Pagpili ng Pamamaraan ng Proyekto. IEEE Software, 04/2000.

L. Williams, R. R. Kessler, W. Cunningham, R. Jeffries. Pagpapalakas ng Kaso para sa Pair Programming. IEEE Software 4/2000.

G. Keefer. Ang Extreme Programming ay Itinuring na Nakakapinsala para sa Maaasahang Software Development. Teknikal na Ulat ng AVOCA, 2002.

Magagamit bilang http://www.avoca-vsm.com/Dateien-Download/ExtremeProgramming.pdf.

Ang Extreme Programming (XP) ay isang pinasimpleng pamamaraan ng pagbuo ng software para sa maliliit hanggang katamtamang laki ng mga koponan ng mga developer na lumilikha ng isang produkto ng software sa ilalim ng mga kondisyon ng hindi malinaw o mabilis na pagbabago ng mga kinakailangan.

Ang mga pangunahing layunin ng XP ay pagtaas ng kumpiyansa ng customer sa produkto ng software sa pamamagitan ng pagbibigay ng tunay na ebidensya ng tagumpay ng proseso ng pagbuo at matalim na pagbawas sa oras ng pagbuo ng produkto . Kasabay nito, ang XP ay nakatuon sa pagliit ng mga error sa mga unang yugto ng pag-unlad. Pinapayagan ka nitong makamit ang maximum na bilis ng pagpapalabas ng tapos na produkto at ginagawang posible na pag-usapan ang tungkol sa predictability ng trabaho. Halos lahat ng mga diskarte sa XP ay naglalayong mapabuti ang kalidad ng produkto ng software.

Mga Prinsipyo ng XP

Ang mga pangunahing prinsipyo ay:

  • Pagkaulit. Ang pag-unlad ay isinasagawa sa mga maikling pag-ulit na may aktibong relasyon sa customer. Iminumungkahi na panatilihing maikli ang mga pag-ulit, ang inirerekomendang tagal ay 2-3 linggo at hindi hihigit sa 1 buwan. Sa isang pag-ulit, ang isang pangkat ng mga programmer ay kinakailangan upang ipatupad ang ilang mga katangian ng system, ang bawat isa ay inilarawan sa isang kuwento ng user. Ang mga kwento ng gumagamit (UI) sa kasong ito ay ang paunang impormasyon kung saan nilikha ang module. Iba ang mga ito sa mga use case (VI). Ang paglalarawan ng PI ay maikli - 1-2 talata, habang ang mga VI ay karaniwang inilalarawan sa sapat na detalye, kasama ang mga pangunahin at alternatibong daloy, at dinadagdagan ng modelo. Ang mga UI ay isinulat mismo ng mga user, na nasa XP ay bahagi ng team, hindi katulad ng mga UI na inilalarawan ng isang system analyst. Hinahanap ng XP na mabayaran ang kakulangan ng pormalisasyon ng paglalarawan ng data ng pag-input ng proyekto sa pamamagitan ng aktibong pagsasama ng customer sa proseso ng pagbuo bilang isang buong miyembro ng koponan.
  • Ang pagiging simple ng mga solusyon. Ang unang pinakasimpleng solusyon sa pagtatrabaho ay pinagtibay. Ang kasukdulan ng pamamaraan ay nauugnay sa isang mataas na antas ng panganib sa pagpapasya dahil sa kababawan ng pagsusuri at isang masikip na iskedyul ng oras. Ang isang minimum na hanay ng mga pangunahing function ng system ay ipinapatupad sa una at bawat kasunod na pag-ulit; pinalawak ang functionality sa bawat pag-ulit.
  • Masinsinang pag-unlad sa maliliit na grupo(hindi hihigit sa 10 tao) at magkapares na programming(kapag ang dalawang programmer ay lumikha ng code nang magkasama sa isang karaniwang lugar ng trabaho), aktibong komunikasyon sa loob ng grupo at sa pagitan ng mga grupo. Ang lahat ng ito ay naglalayong makita ang mga problema (parehong mga error at hindi nasagot na mga deadline) sa lalong madaling panahon. Ang pair programming ay naglalayong lutasin ang problema ng pagpapapanatag ng proyekto. Kapag ginagamit ang pamamaraan ng XP, may mataas na panganib na mawala ang code dahil sa pag-alis ng isang programmer na hindi makayanan ang isang masinsinang iskedyul ng trabaho. Sa kasong ito, ang pangalawang programmer ng pares ay gumaganap ng papel na "kahalili" ng code. Mahalaga rin kung paano eksaktong ipinamamahagi ang mga grupo sa workspace - Gumagamit ang XP ng bukas na workspace, na ipinapalagay ang mabilis at libreng access para sa lahat sa lahat.
  • Feedback sa customer, na ang kinatawan ay aktwal na kasangkot sa proseso ng pag-unlad.
  • Sapat na antas ng katapangan at isang pagpayag na kumuha ng mga panganib.

XP Techniques (Mga Kasanayan)

Ang XP ay karaniwang nailalarawan sa pamamagitan ng isang hanay ng 12 panuntunan (mga kasanayan) na dapat sundin upang makamit ang isang magandang resulta. Wala sa mga kasanayan ang panimula bago, ngunit pinagsasama-sama ng XP ang mga ito.

  1. Pagpaplano ng proseso. Ang buong development team ay nagsasama-sama at isang kolektibong desisyon ang ginawa tungkol sa kung anong mga katangian ng system ang ipapatupad sa susunod na pag-ulit. Ang pagiging kumplikado ng pagpapatupad ng bawat ari-arian ay tinutukoy ng mga programmer mismo.
  2. Malapit na pakikipag-ugnayan sa customer. Ang kinatawan ng customer ay dapat na miyembro ng XP team. Sinusulat niya ang UI, pinipili ang mga kwentong ipapatupad sa isang partikular na pag-ulit, at sinasagot ang mga tanong na nauugnay sa negosyo. Ang kinatawan ng customer ay dapat na dalubhasa sa isang awtomatikong lugar ng paksa. Kinakailangan na magkaroon ng patuloy na feedback sa kinatawan ng customer.
  3. Mga panuntunan sa pagpapangalan sa buong system. Iminumungkahi ng mahusay na mga kombensiyon sa pagpapangalan ng system kadalian ng pagbibigay ng pangalan mga klase at variable. Ang pangkat ng pagbuo ay dapat magkaroon ng pare-parehong mga panuntunan sa pagbibigay ng pangalan.
  4. Simpleng arkitektura. Ang anumang pag-aari ng system ay dapat na ipatupad nang simple hangga't maaari. Ang mga programmer sa XP team ay nagtatrabaho sa ilalim ng motto: "Walang kalabisan!" Ang unang pinakasimpleng solusyon sa pagtatrabaho ay pinagtibay, at ang kinakailangang antas ng pag-andar sa sandaling ito ay ipinatupad. Ito ay nakakatipid sa oras ng programmer.
  5. Refactoring. Ito ang pag-optimize ng umiiral na code upang gawing simple ang gawaing ito. Sa pamamagitan ng pagpapanatiling transparent ng code at pagtukoy ng mga elemento ng code nang isang beses lang, binabawasan ng mga programmer ang bilang ng mga bug na kailangan nilang ayusin sa ibang pagkakataon. Kapag ipinapatupad ang bawat bagong feature ng system, dapat isaalang-alang ng programmer kung posible bang gawing simple ang umiiral na code at kung paano ito makakatulong sa pagpapatupad ng bagong feature. Bilang karagdagan, ang refactoring ay hindi dapat isama sa disenyo: kung ang bagong code ay nilikha, ang refactoring ay dapat na ipagpaliban.
  6. Ipares ang programming. Ang lahat ng mga programmer ay dapat gumana nang pares: ang isa ay nagsusulat ng code, ang isa ay nanonood. Kaya, kinakailangang maglagay ng grupo ng mga programmer sa isang lugar. Pinakamatagumpay na gumagana ang XP sa mga hindi naibahaging pangkat ng mga programmer at user.
  7. 40 oras na linggo ng trabaho. Ang isang programmer ay hindi dapat gumana nang higit sa 8 oras sa isang araw. Ang pangangailangan para sa overtime ay isang malinaw na tagapagpahiwatig ng isang problema sa partikular na lugar ng pag-unlad. Ang paghahanap ng mga dahilan para sa overtime na trabaho at pag-aalis ng mga ito sa lalong madaling panahon ay isa sa mga pangunahing panuntunan.
  8. Kolektibong pagmamay-ari ng code. Ang bawat programmer sa koponan ay dapat magkaroon ng access sa code ng anumang bahagi ng system at ang karapatang gumawa ng mga pagbabago sa anumang code. Mandatory rule: kung ang isang programmer ay gumawa ng mga pagbabago at ang system ay hindi gumana nang tama pagkatapos nito, kung gayon ang programmer na ito ang dapat itama ang mga error.
  9. Pinag-isang mga pamantayan sa coding. Kinakailangan ang mga pamantayan sa coding upang suportahan ang iba pang mga kasanayan: shared code ownership, pair programming, at refactoring. Kung walang pinag-isang pamantayan, hindi bababa sa mas mahirap na isagawa ang mga kasanayang ito, at sa katotohanan ito ay ganap na imposible: ang grupo ay gagana sa isang palaging kakulangan ng oras. Ang koponan ay nagtatrabaho sa proyekto sa loob ng mahabang panahon. Dumarating at umalis ang mga tao. Walang nag-iisa na nagko-code at ang code ay para sa lahat. Palaging may mga pagkakataon na kailangan mong maunawaan at ayusin ang code ng ibang tao. Aalisin ng mga developer ang duplicate na code, susuriin at pahusayin ang mga klase ng ibang tao, atbp. Sa paglipas ng panahon, imposibleng sabihin kung sino ang may-akda ng isang partikular na klase. Samakatuwid, dapat sundin ng lahat ang mga karaniwang pamantayan ng coding - pag-format ng code, pagbibigay ng pangalan sa mga klase, variable, constants, istilo ng komento. Nangangahulugan ang nasa itaas na ang lahat ng miyembro ng koponan ay dapat sumang-ayon sa mga karaniwang pamantayan ng coding. Hindi mahalaga kung alin, ngunit obligado ang lahat na sundin ang mga ito.
  10. Mga maliliit na release. Ang minimum na pag-ulit ay isang araw, ang maximum ay isang buwan; Ang mas madalas na paglabas ay ginawa, mas maraming mga bahid ng system ang matutukoy. Nakakatulong ang mga unang release na matukoy ang mga pagkukulang sa pinakamaagang yugto, pagkatapos ay pinalawak ang functionality ng system batay sa UI. Dahil ang user ay kasangkot sa proseso ng pag-develop mula sa unang release, sinusuri niya ang system at nagbibigay ng kasaysayan ng user at mga komento. Batay dito, tinutukoy ang susunod na pag-ulit, iyon ay, kung ano ang magiging bagong release. Ang XP ay tungkol sa pagbibigay ng tuluy-tuloy na feedback sa mga user.
  11. Patuloy na pagsasama. Ang pagsasama-sama ng mga bagong bahagi ng system ay dapat mangyari nang madalas hangga't maaari, kahit isang beses bawat ilang oras. Ang pangunahing tuntunin ng pagsasama ay ang mga sumusunod: ang pagsasama ay maaaring isagawa kung ang lahat ng mga pagsubok ay matagumpay na pumasa. Kung nabigo ang mga pagsubok, ang programmer ay dapat na gumawa ng mga pagwawasto at pagkatapos ay isama ang mga bahagi ng system, o huwag isama ang mga ito. Ang panuntunang ito ay mahigpit at hindi malabo. Kung mayroong hindi bababa sa isang error sa ginawang bahagi ng system, hindi maaaring maisagawa ang pagsasama. Ang madalas na pagsasama ay nagbibigay-daan sa iyo upang makakuha ng isang tapos na system nang mas mabilis, sa halip na gumugol ng isang linggo sa pagpupulong.
  12. Pagsubok. Hindi tulad ng karamihan sa iba pang mga pamamaraan, ang pagsubok sa XP ay isa sa pinakamahalagang bahagi. Ipinapalagay iyon ng matinding diskarte isinulat ang mga pagsusulit bago isulat ang code . Ang bawat module ay dapat may unit test - isang pagsubok ng modyul na ito. Kaya, sa XP, ang pagsusuri ng regression ay isinasagawa, "hindi nagpapababa ng kalidad" kapag nagdaragdag ng pag-andar. Karamihan sa mga error ay naitama sa yugto ng coding. Ang mga pagsusulit ay isinulat ng mga programmer mismo ang sinuman sa kanila ay may karapatang magsulat ng isang pagsubok para sa anumang module. Isa pang mahalagang prinsipyo: tinutukoy ng pagsubok ang code, at hindi ang kabaligtaran (test-driven na pag-unlad), iyon ay, ang isang piraso ng code ay inilalagay sa repositoryo kung at kung ang lahat ng mga pagsubok ay matagumpay na pumasa, kung hindi, ang pagbabago ng code na ito ay tinanggihan.

Ang proseso ng XP ay impormal ngunit nangangailangan ng mataas na antas ng disiplina sa sarili. Kung hindi sinunod ang panuntunang ito, ang XP ay agad na nagiging magulo at hindi makontrol na proseso. Ang XP ay hindi nangangailangan ng mga programmer na magsulat ng maraming ulat at bumuo ng maraming modelo. Sa XP, ang bawat programmer ay itinuturing na isang kwalipikadong manggagawa na tumatagal ng kanyang mga responsibilidad nang propesyonal at may malaking responsibilidad. Kung ang koponan ay walang ganito, kung gayon ang pagpapakilala ng XP ay ganap na walang kabuluhan - mas mabuting simulan muna ang muling pagsasaayos ng koponan. Ang panganib sa pag-unlad ay nababawasan lamang sa isang koponan kung saan ang XP ay perpekto sa lahat ng iba pang mga kaso, ang XP ay ang proseso ng pag-unlad na may pinakamataas na antas ng panganib, dahil walang iba pang mga paraan para sa pagbabawas ng mga komersyal na panganib, maliban sa kadahilanan ng tao, sa XP.

Ang pagsumite ng iyong mabuting gawa sa base ng kaalaman ay madali. Gamitin ang form sa ibaba

Ang mga mag-aaral, nagtapos na mga mag-aaral, mga batang siyentipiko na gumagamit ng base ng kaalaman sa kanilang pag-aaral at trabaho ay lubos na magpapasalamat sa iyo.

Nai-post sa http://www.allbest.ru/

Nilalaman

  • Panimula
  • 1. Ano ang XP?
  • 3.1 Mga pangunahing pamamaraanXP
  • 4. Mga kalamangan at kahinaan
  • 5. Kasaysayan ng paggamit
  • Konklusyon

Panimula

Ang Extreme Programming, madalas na dinaglat na XP, ay isang disiplina ng software development at software na negosyo na nakatuon sa mga pagsisikap ng magkabilang partido (mga programmer at mga taong negosyante) sa mga karaniwan at makakamit na layunin. Ang mga pangkat na gumagamit ng XP ay gumagawa ng de-kalidad na software sa napakabilis na bilis. Ang mga pamamaraan na bumubuo sa disiplina ng HR ay pinili dahil ang mga ito ay batay sa pagkamalikhain ng tao at ang pagtanggap na ang mga tao ay pabagu-bago at mali-mali na nilalang.

Ang XP ay madalas na ipinakita bilang isang hanay ng mga diskarte, ngunit ang XP mismo ay hindi ang linya ng pagtatapos. Hindi na kailangang magsanay at bumuo ng HR nang mas mahusay at mas mahusay upang matanggap ang pinakahihintay na gold star sa pagtatapos ng prosesong ito. Sa kabaligtaran, ang XP ang panimulang linya. Tinatanong ng XP ang tanong: "Gaano kaunti ang ating mga pagsisikap upang patuloy tayong makagawa ng de-kalidad na software?"

Ang Extreme Programming ay isang pinasimple na pamamaraan ng produksyon para sa maliliit at katamtamang laki ng mga pangkat ng mga espesyalista na bumubuo ng isang software na produkto sa ilalim ng mga kondisyon ng hindi malinaw o mabilis na pagbabago ng mga kinakailangan.

1. Ano ang XP?

Extremamlinoprogramamgumagala(Ingles) Extreme Programming, XP) ay isa sa mga nababaluktot na pamamaraan ng pagbuo ng software. Ang mga may-akda ng pamamaraan ay sina Kent Beck, Ward Cunningham, Martin Fowler at iba pa.

Ang XP ay isang pinasimple, mahusay, nababaluktot, predictable, batay sa agham, at lubos na kasiya-siya, mababang panganib na paraan upang bumuo ng software. Ang HR ay naiiba sa iba pang mga pamamaraan sa mga sumusunod na paraan:

Sa pamamagitan ng paggamit ng napakaikling mga yugto ng pag-unlad, nag-aalok ang XP ng mabilis, totoo at patuloy na feedback.

Gumagamit ang XP ng incremental na pagpaplano, na nagreresulta sa isang pangkalahatang plano ng proyekto na umuusbong nang medyo mabilis, ngunit nauunawaan na ang planong ito ay nagbabago sa buong buhay ng proyekto.

Gumagamit ang XP ng isang flexible na iskedyul para sa pagpapatupad ng ito o ang functionality na iyon, na nagpapahusay sa pagtugon sa pagbabago ng kalikasan ng negosyo at sa pagbabago ng mga kinakailangan ng customer kaugnay nito.

Ang XP ay batay sa mga awtomatikong pagsubok na binuo ng parehong mga programmer at mga customer. Salamat sa mga pagsubok na ito, posible na subaybayan ang proseso ng pag-unlad, tiyakin ang tamang ebolusyon ng system at agad na makita ang mga depekto na umiiral sa system.

Ang XP ay batay sa oral na komunikasyon, mga pagsubok at source code. Ang tatlong tool na ito ay ginagamit upang makipagpalitan ng impormasyon tungkol sa istraktura at pag-uugali ng isang system.

Ang XP ay batay sa isang umuusbong na proseso ng disenyo na nagpapatuloy hangga't umiiral ang system mismo.

Ang XP ay batay sa malapit na pakikipag-ugnayan sa pagitan ng mga programmer na may pinakakaraniwang kasanayan at kakayahan.

Ang XP ay nakabatay sa mga pamamaraan na nagbibigay-kasiyahan sa parehong panandaliang instinct ng mga indibidwal na programmer at ang mga pangmatagalang interes ng buong proyekto.

Ang XP ay isang disiplina sa pagbuo ng software. Ito ay isang disiplina dahil sa loob ng XP mayroong ilang mga bagay na dapat mong gawin kung ikaw ay gagamit ng XP. Hindi ka dapat pumili kung magsulat o hindi ng mga pagsusulit, dahil kung hindi mo gagawin, ang programming na iyong ginagawa ay hindi sukdulan.

Ang pamamaraan ng XP ay idinisenyo upang gumana sa mga proyekto na maaaring gawin ng dalawa hanggang sampung programmer, na hindi napipigilan ng mahigpit na mga limitasyon ng isang umiiral na kapaligiran sa computer, at kung saan ang lahat ng kinakailangang gawain sa pagsubok ay maaaring makumpleto sa loob ng isang araw.

2. Saan nagsisimula ang matinding programming?

Saan nagsisimula ang matinding programming? Mula sa pag-unawa na ang karaniwang posisyon ng isang domestic software developer ay obligadong bawasan ang mga gastos sa pagpapaunlad hangga't maaari. At para dito kinakailangan na masinsinang makipagtulungan sa customer, maunawaan ang kanyang mga interes at, sa huli, gawin kung ano mismo ang gusto niya: hindi hihigit at hindi bababa.

Ang Extreme Programming ay hindi nakabatay sa mga partikular na diskarte, gaya ng karaniwang pinaniniwalaan, ngunit sa apat na pangunahing prinsipyo lamang: komunikasyon, pagiging simple, feedback at katapangan. Ito ay kung saan kailangan mong magsimula.

Nag-aalok ang Extreme Programming ng isang handa na solusyon: panatilihing simple ang lahat hangga't maaari, panatilihin ang customer sa iyong sarili o manatili sa customer, hayaan siyang aktibong subaybayan ang proseso ng pag-unlad, malugod na pagbabago - at ang tagumpay ay halos garantisadong.

Sa mga XP team, palaging hinihikayat ang komunikasyon - ang pinakamabilis na paraan upang magbahagi ng impormasyon at karanasan. Napakahalaga nito kapag kinakailangan ang maximum na bilis ng pag-unlad. Ngunit ang komunikasyon, tulad ng anumang iba pang kapaki-pakinabang na pagsisikap, ay nangangailangan ng patuloy na suporta. Iyon ang dahilan kung bakit ang isang tao mula sa koponan ay dapat kumuha ng responsibilidad para sa pagsubaybay sa komunikasyon, maging isang tinatawag na diplomat. Ang komunikasyon at ang pangangailangang ipaliwanag ang iyong mga aksyon sa ibang mga miyembro ng koponan ay nagpipilit sa iyo na gawin ang lahat nang simple hangga't maaari. Kung hindi ito gumana sa unang pagkakataon, paulit-ulit nilang ginagawa ang pagpapasimple hanggang sa maabot ang pangunahing layunin - ang maximum na kakayahang maunawaan ang code para sa iba pang mga developer.

Anuman ang aming gawin - paglalagay ng karayom ​​o pagpunta sa isang party - palagi kaming nagsusumikap na makamit ang ilang layunin. Kung mapapansin natin na tayo ay lumilihis dito, inaayos natin ang ating mga aksyon nang naaayon. Isipin mo ngayon kung gaano kahirap magsuklay ng karayom ​​nang nakapikit ang mga mata o magbihis nang maganda nang walang salamin! Ngunit kapag gumagawa ng mga programa, ito ang madalas na nangyayari: may ginagawa tayo, ang resulta na hindi natin nakikita. Samakatuwid, sa matinding programming ito ay isang panuntunan upang makita ang resulta ng iyong mga aksyon sa lalong madaling panahon. O, sa teknikal na pagsasalita, upang magbigay ng feedback sa lalong madaling panahon.

Tinatanong tayo ng Extreme Programming: bakit hindi magkaroon ng lakas ng loob? Kung tutuusin, napakahalaga niya sa kanyang trabaho. Kung walang lakas ng loob, posible bang kumuha ng responsibilidad para sa pagkumpleto ng isang gawain, at sa loob ng isang tiyak na takdang panahon? Kung walang lakas ng loob, posible bang matanto na nakarating ka na sa isang dead end, umatras at maghanap ng solusyon? At, sa wakas, ano ang magbibigay-daan sa developer na aminin ang kanyang pagkakamali sa pagtatasa ng gawain at bigyan ng babala ang iba tungkol dito sa tamang oras, sa halip na ipakita sa kanila ang isang fait accompli lamang kapag ang lahat ng mga deadline ay nag-expire na? Ang mga benepisyo ng katapangan ay halata, at bawat tagumpay, kahit na sa pinakamaliit na gawain, ay maaaring bumuo ng tapang na ito.

3. Mga diskarte sa XP

Ang Extreme Programming (XP) ay lumitaw bilang isang ebolusyonaryong paraan ng bottom-up na software development. Ang pamamaraang ito ay isang halimbawa ng tinatawag na Agile Development Method. Kasama sa pangkat ng mga "live" na pamamaraan, bilang karagdagan sa matinding programming, ang mga pamamaraan na SCRUM, DSDM (Dynamic Systems Development Method, isang paraan para sa pagbuo ng mga dynamic na system), Feature-Driven Development (development na hinimok ng mga function ng system), atbp.

Ang mga pangunahing prinsipyo ng live na software development ay nakapaloob sa live development manifesto, na lumabas noong 2000.

· Ang mga taong kasangkot sa isang proyekto at ang kanilang komunikasyon ay mas mahalaga kaysa sa mga proseso at kasangkapan.

· Ang isang gumaganang programa ay mas mahalaga kaysa sa komprehensibong dokumentasyon.

· Ang pakikipagtulungan sa customer ay mas mahalaga kaysa sa pagtalakay sa mga detalye ng kontrata.

· Ang pagtatrabaho sa mga pagbabago ay mas mahalaga kaysa sa paninindigan sa mga plano.

Ang mga pamamaraan ng "pamumuhay" ay lumitaw bilang isang protesta laban sa labis na burukratisasyon ng pagbuo ng software, ang kasaganaan ng mga side document na hindi kinakailangan upang makuha ang pangwakas na resulta, na kailangang iguhit kapag nagsasagawa ng isang proyekto alinsunod sa karamihan sa mga "mabigat" na proseso , karagdagang trabaho upang suportahan ang nakapirming proseso ng organisasyon, tulad nito na kinakailangan sa loob, halimbawa, CMM. Karamihan sa naturang gawain at mga dokumento ay hindi direktang nauugnay sa pagbuo ng software at pagtitiyak sa kalidad, ngunit nilayon upang sumunod sa mga pormal na sugnay ng mga kontrata sa pagpapaunlad, kumuha at kumpirmahin ang mga sertipiko para sa pagsunod sa iba't ibang pamantayan.

Ang mga "Live" na pamamaraan ay nagbibigay-daan sa mga developer na ituon ang karamihan sa kanilang mga pagsisikap sa mga gawain sa pag-develop at pagtugon sa mga tunay na pangangailangan ng user. Ang kawalan ng mga tambak ng mga dokumento at ang pangangailangan na panatilihin ang mga ito sa isang magkakaugnay na estado ay nagbibigay-daan sa iyo upang tumugon nang mas mabilis at mahusay sa mga pagbabago sa mga kinakailangan at sa kapaligiran kung saan ang hinaharap na programa ay kailangang gumana.

Gayunpaman, ang XP ay may sariling diagram ng proseso ng pag-unlad (bagaman, sa pangkalahatan, ang malawakang ginagamit na pag-unawa sa "proseso ng pag-unlad" bilang isang medyo mahigpit na pamamaraan ng mga aksyon ay sumasalungat sa mismong ideya ng "buhay na buhay" na pag-unlad), na ipinapakita sa Fig. 1 .

Ayon sa mga may-akda ng XP, ang pamamaraan na ito ay hindi gaanong sumusunod sa ilang pangkalahatang mga pattern ng pagkilos bilang paggamit ng kumbinasyon ng mga sumusunod na pamamaraan. Gayunpaman, ang bawat pamamaraan ay mahalaga, at nang walang paggamit nito, ang pag-unlad ay itinuturing na hindi XP, ayon kay Kent Beck, isa sa mga may-akda ng diskarteng ito kasama sina Ward Cunningham at Ron Jeffries.

· Mabuhaypagpaplano (pagpaplanolaro)

Ang gawain nito ay upang matukoy sa lalong madaling panahon ang dami ng trabaho na kailangang gawin bago ang susunod na bersyon ng software. Ang desisyon ay ginawa, una sa lahat, batay sa mga priyoridad ng customer (ibig sabihin, ang kanyang mga pangangailangan, kung ano ang kailangan niya mula sa system upang mapatakbo ang kanyang negosyo nang mas matagumpay) at, pangalawa, sa batayan ng mga teknikal na pagtatasa (ibig sabihin, mga pagtatantya ng pagiging kumplikado ng pag-unlad , pagiging tugma sa iba pang mga elemento ng system, atbp.). Ang mga plano ay binago sa sandaling magsimula silang lumihis sa katotohanan o sa mga kagustuhan ng customer.

kanin.1 XP Workflow Diagram

· MadalaspagbabagoVmga bersyon (maliitnaglalabas)

Ang pinakaunang gumaganang bersyon ay dapat na lumitaw nang mabilis hangga't maaari at dapat magsimulang gamitin kaagad. Ang mga kasunod na bersyon ay inihahanda sa medyo maikling pagitan (mula sa ilang oras para sa mga menor de edad na pagbabago sa isang maliit na programa, hanggang sa isang buwan o dalawa para sa isang malaking rework ng isang malaking system). Ang mga bersyon (release) ng produkto ay dapat ilabas sa serbisyo nang madalas hangga't maaari. Ang bawat bersyon ay dapat tumagal ng kaunting oras hangga't maaari upang makumpleto. Bukod dito, ang bawat bersyon ay dapat na sapat na makabuluhan sa mga tuntunin ng pagiging kapaki-pakinabang para sa negosyo.

· Metapora (metapora) mga sistema

Ang talinghaga, sa isang medyo simple at naiintindihan na anyo para sa koponan, ay dapat ilarawan ang pangunahing mekanismo ng system. Ang konseptong ito ay nakapagpapaalaala sa arkitektura, ngunit dapat ilarawan ang pangunahing kakanyahan ng mga teknikal na desisyong ginawa nang mas simple, sa isa o dalawang parirala lamang.

Ang arkitektura ay ilang ideya ng mga bahagi ng isang sistema at kung paano sila magkakaugnay. Gumagamit ang mga developer ng arkitektura upang maunawaan kung saan sa system idinaragdag ang ilang bagong pag-andar, at kung ano ang makikipag-ugnayan sa ilang bagong bahagi.

Ang metapora ng system ay isang analogue ng tinatawag na arkitektura sa karamihan ng mga pamamaraan. Ang metapora ng system ay nagbibigay sa koponan ng ideya kung paano kasalukuyang gumagana ang system, kung saan idinaragdag ang mga bagong bahagi, at kung anong anyo ang dapat nilang gawin.

· Simpledisenyomga solusyon (simple langdisenyo)

Sa anumang oras, ang sistema ay dapat na idinisenyo nang simple hangga't maaari. Hindi na kailangang magdagdag ng mga tampok nang maaga - pagkatapos lamang ng isang tahasang kahilingan para dito. Ang lahat ng hindi kinakailangang kumplikado ay aalisin sa sandaling ito ay natuklasan.

Ang XP ay nagpapatuloy mula sa katotohanan na sa panahon ng proseso ng trabaho, ang mga kondisyon ng problema ay maaaring magbago nang paulit-ulit, na nangangahulugan na ang produkto na binuo ay hindi dapat idisenyo nang maaga sa kabuuan nito. Kung susubukan mong magdisenyo ng isang sistema nang detalyado mula simula hanggang matapos noong una kang magsimula, sinasayang mo ang iyong oras. Ipinapalagay ng XP na ang disenyo ay isang mahalagang proseso na dapat itong gawin nang tuluy-tuloy sa buong tagal ng proyekto. Ang disenyo ay dapat isagawa sa maliliit na hakbang, na isinasaalang-alang ang patuloy na pagbabago ng mga kinakailangan. Sa anumang oras, sinusubukan naming gamitin ang pinakasimpleng disenyo na angkop para sa paglutas ng kasalukuyang problema. Kasabay nito, binabago natin ito habang nagbabago ang mga kondisyon ng problema.

· Pag-unladsabatayanpagsubok (pagsubok- hinihimokpag-unlad)

Sumulat muna ang mga developer ng mga pagsubok, pagkatapos ay subukang ipatupad ang kanilang mga module upang gumana ang mga pagsubok. Ang mga customer ay sumulat ng mga pagsubok nang maaga na nagpapakita ng mga pangunahing kakayahan ng system upang makita nila na gumagana ang system.

Ang XP ay naglalagay ng partikular na diin sa dalawang uri ng pagsubok:

ь unit testing;

b pagsubok sa pagtanggap.

matinding programming software

Ang isang developer ay hindi makatitiyak sa kawastuhan ng code na kanyang isinulat hanggang sa ganap na lahat ng pagsubok ng mga module ng system na kanyang binuo ay nabigo. Nagbibigay-daan ang mga unit test sa mga developer na i-verify na gumagana nang tama ang kanilang code. Tinutulungan din nila ang ibang mga developer na maunawaan kung bakit kailangan ang isang partikular na piraso ng code at kung paano ito gumagana. Binibigyang-daan din ng mga unit test ang developer na mag-refactor nang walang pag-aalala.

Tinitiyak ng mga pagsubok sa pagtanggap na ang system ay aktwal na may nakasaad na mga kakayahan. Bilang karagdagan, pinapayagan ka ng mga pagsubok sa pagtanggap na i-verify ang tamang paggana ng produktong binuo.

Para sa XP, ang isang mas mataas na priyoridad ay ang diskarte na tinatawag na TDD (Test Driven Development), una ang isang pagsubok ay nakasulat na hindi pumasa, pagkatapos ay ang code ay nakasulat upang ang pagsubok ay pumasa, at pagkatapos lamang ang code ay refactored.

· pare-parehopagrerecycle (refactoring)

Hindi lihim na ang pagdaragdag ng bawat bagong functionality at lumalaking code ay nagpapalubha sa pag-unlad, pagtukoy ng mga error at paggawa ng mga kasunod na pagbabago. Ang isa sa mga trick ng Extreme Programming ay upang mabayaran ang pagdaragdag ng functionality sa pamamagitan ng pagpapabuti ng code. Ito ay code processing, o refactoring.

Patuloy na inaayos ng mga programmer ang system upang maalis ang hindi kinakailangang kumplikado, dagdagan ang pagiging madaling maunawaan ng code, dagdagan ang kakayahang umangkop nito, ngunit nang hindi binabago ang pag-uugali nito, na na-verify sa pamamagitan ng pagtakbo pagkatapos ng bawat muling paggawa ng mga pagsubok. Kasabay nito, ang kagustuhan ay ibinibigay sa mas eleganteng at nababaluktot na mga solusyon, kumpara sa mga nagbibigay lamang ng nais na resulta. Ang mga hindi matagumpay na na-redesign na mga bahagi ay dapat matukoy sa panahon ng pagpapatupad ng pagsubok at i-roll pabalik sa huling buo na estado (kasama ang mga bahagi na nakasalalay sa kanila).

Ang refactoring ay isang pamamaraan para sa pagpapabuti ng code nang hindi binabago ang functionality nito. Nangangahulugan ang XP na kapag naisulat na ang code, halos tiyak na muling isusulat ito nang maraming beses sa panahon ng isang proyekto. Walang awa na ginagawa ng mga developer ng XP ang dating nakasulat na code upang mapabuti ito. Ang prosesong ito ay tinatawag na refactoring. Ang kakulangan ng saklaw ng pagsubok ay nag-uudyok ng pagtanggi sa refactor dahil sa takot na masira ang sistema, na humahantong sa unti-unting pagkasira ng code.

· Programmingmagkapares (paresprogramming)

Napansin ng mga nakaranasang developer na ang pana-panahong pagsusuri sa code ng ibang tao ay may positibong epekto sa kalidad nito. Ang mga masters ng Extreme Programming ay nakabuo ng diskarteng ito sa pamamagitan ng patuloy na pagsusuri ng code sa panahon ng pagbuo sa pamamagitan ng isang pamamaraan na tinatawag na pair programming.

Ang coding ay ginagawa ng dalawang programmer sa isang computer. Ang pagpapares ay arbitrary at nag-iiba-iba sa bawat gawain. Ang nasa kamay ng keyboard ay sinusubukang lutasin ang kasalukuyang problema sa pinakamahusay na paraan. Sinusuri ng pangalawang programmer ang gawain ng una at nagbibigay ng payo, isinasaalang-alang ang mga kahihinatnan ng ilang mga desisyon, mga bagong pagsubok, hindi gaanong direkta ngunit mas nababaluktot na mga solusyon. Kung kinakailangan, ang keyboard ay malayang inililipat mula sa isa't isa. Habang nagtatrabaho sa isang proyekto, ang mga pares ay hindi naayos: inirerekumenda na paghaluin ang mga ito upang ang bawat programmer sa koponan ay may mahusay na pag-unawa sa buong sistema. Sa ganitong paraan, pinapahusay ng pares programming ang pakikipagtulungan sa loob ng team.

· Sama-samapagmamay-aricode (sama-samapagmamay-ari)

Sama-sama pagmamay-ari nangangahulugan na ang bawat miyembro ng koponan ay responsable para sa lahat ng source code. Kaya, lahat ay may karapatang gumawa ng mga pagbabago sa anumang bahagi ng programa. Sinusuportahan ng pair programming ang kasanayang ito: nagtatrabaho sa iba't ibang pares, lahat ng programmer ay naging pamilyar sa lahat ng bahagi ng code ng system. Ang isang mahalagang bentahe ng kolektibong pagmamay-ari ng code ay ang pagpapabilis nito sa proseso ng pag-unlad, dahil kung may nangyaring error, maaaring ayusin ito ng sinumang programmer.

Sa pamamagitan ng pagbibigay sa bawat programmer ng karapatang baguhin ang code, pinatatakbo namin ang panganib ng mga bug na ipinakilala ng mga programmer na nag-iisip na alam nila kung ano ang kanilang ginagawa ngunit hindi isinasaalang-alang ang ilang mga dependency. Malulutas ng mahusay na tinukoy na mga pagsusulit sa UNIT ang problemang ito: kung ang mga hindi napag-aralan na dependency ay makabuo ng mga error, kung gayon ang susunod na pagtakbo ng mga pagsubok sa UNIT ay mabibigo.

· pare-parehopagsasama (tuloy-tuloypagsasama)

Ang system ay binuo at sumasailalim sa integration testing nang madalas hangga't maaari, ilang beses sa isang araw, sa tuwing ang isang pares ng mga programmer ay matatapos na ipatupad ang susunod na function.

Kung isasama mo ang system na iyong binuo nang madalas, maiiwasan mo ang karamihan sa mga problemang nauugnay dito. Sa mga tradisyunal na pamamaraan, ang pagsasama ay karaniwang ginagawa sa pinakadulo ng trabaho sa isang produkto, kapag ito ay isinasaalang-alang na ang lahat ng mga bahagi ng system na binuo ay ganap na handa. Sa XP, ang pagsasama-sama ng code ng buong system ay isinasagawa nang maraming beses sa isang araw, pagkatapos kumpiyansa ng mga developer na ang lahat ng mga pagsubok sa yunit ay gumagana nang tama.

Sa kabila ng pagiging simple nito, ang diskarteng ito ay may sarili nitong mga panuntunan sa paggamit, tulad ng tagumpay ng mga umiiral nang unit test para sa functionality na isinama, ang pagkakaroon ng functional o acceptance test, at, siyempre, ang kakayahang bumalik sa dating estado. . Karaniwan, ang pagsasama at paglutas ng mga kaugnay na paghihirap ay ginagawa sa isang hiwalay na computer ng isang pares ng mga programmer. Ito ay nagpapahintulot sa iyo na mabawasan ang panganib ng hindi kanais-nais na mga kahihinatnan ng pagsasama.

· 40 orasnagtatrabaholinggo

Ang pag-obertaym ay nakikita bilang tanda ng mas malalaking problema sa proyekto. Hindi pinapayagan ang overtime na trabaho sa loob ng 2 linggo nang sunud-sunod - pinapagod nito ang mga programmer at ginagawang hindi gaanong produktibo ang kanilang trabaho.

Ang isang tao, lalo na kung siya ay isang programmer, ay may kakayahang gumawa ng marami para sa kapakanan ng negosyo: manatiling huli sa trabaho, pagpunta sa trabaho sa katapusan ng linggo, pagbibigay ng bakasyon, pananatiling gising ng ilang araw habang nakaupo sa keyboard... Sa pangkalahatan, ano ang maaari mong gawin para sa iyong paboritong aktibidad. Ngunit ang matinding programming ay tiyak na laban sa gayong pagsasakripisyo sa sarili at paglabag sa mga tinatanggap na pamantayan ng batas sa paggawa.

Ito ay idinidikta hindi lamang sa pamamagitan ng mga pagsasaalang-alang sa legalidad at sangkatauhan, ngunit, una sa lahat, sa pamamagitan ng pangangailangan upang madagdagan ang kahusayan sa trabaho at mahigpit na organisasyon. Pagkatapos ng lahat, ang matinding programming ay isang kolektibong laro, na idinisenyo hindi para sa mga indibidwal, ngunit para sa buong grupo. At tulad ng isang bagay tulad ng, halimbawa, pares programming ay posible lamang kapag ang biorhythms ng mga kalahok nito ay naka-synchronize. At imposible kung ang isang tao ay dumating sa trabaho sa siyam, at ang pangalawa sa labindalawa, o ang isa ay nagpasiya na mas mabuti para sa kanya na magtrabaho sa Sabado at Linggo, habang ang isa ay hindi maginhawa.

Ngunit ang pinakamahalagang bagay ay upang mapanatili ang kalusugan at pagganap, ang isang tao ay nangangailangan ng tamang pahinga. Ang walong oras na araw ng trabaho at limang araw na linggo ng pagtatrabaho ay tiyak na itinatag para sa mga kadahilanan ng maximum na produktibo. Sa maraming mga kumpanya sa Kanluran, ang pag-alis ng huli sa trabaho ay itinuturing na kabiguan na gumanap nang maayos o kawalan ng kakayahan na maayos na pamahalaan ang oras ng pagtatrabaho ng isang tao. Sa karamihan ng mga kaso ito ay totoo. At mula sa isang medikal na pananaw, ang mga pagkaantala sa trabaho ay humantong sa patuloy na pagkapagod, pagkamayamutin at pagbaba ng aktibidad ng utak. Effective ba ito? Paano namin maaayos ang patuloy na bukas na komunikasyon sa pagitan ng mga developer sa naturang team, at magiging posible ba ang pagpapares ng programming? Ang sagot ay hindi. Ang mga pamantayan ay mga pamantayan at dapat sundin.

· PinapaganacustomerVpangkat (sa- sitecustomer)

Ang pangunahing problema sa pagbuo ng software ay ang kakulangan ng kaalaman ng mga programmer sa subject area na binuo. Nakahanap ng paraan ang matinding programming sa sitwasyong ito. Hindi, hindi ito isang internship ng developer sa enterprise ng customer - kung gayon ay hindi niya gugustuhing mag-program. Sa kabaligtaran, ito ay ang pakikilahok ng customer sa proseso ng pag-unlad.

Palaging kasama sa development team ang isang kinatawan ng customer na available sa buong araw ng trabaho at kayang sagutin ang lahat ng tanong tungkol sa system. Ang kanyang responsibilidad ay agad na sagutin ang mga tanong ng anumang uri tungkol sa mga function ng system, interface nito, kinakailangang pagganap, tamang operasyon ng system sa mahihirap na sitwasyon, ang pangangailangan na mapanatili ang komunikasyon sa iba pang mga application, atbp.

Maraming nagdududa sa posibilidad na masangkot ang customer sa proseso ng pag-unlad. Sa katunayan, iba ang mga customer. Kung hindi posible na maakit ang customer o ang kanyang kinatawan, kung minsan ay ipinapayong pansamantalang kumuha ng isang espesyalista sa larangan na binuo. Ang hakbang na ito ay magbabawas ng mga kalabuan sa trabaho, magpapataas ng bilis ng pag-unlad at maglalapit sa proyekto sa kung ano ang gustong matanggap ng customer. Maaari rin itong maging kapaki-pakinabang mula sa isang pinansiyal na punto ng view: pagkatapos ng lahat, ang suweldo ng isang programmer ay kung minsan ay makabuluhang mas mataas kaysa sa suweldo ng mga espesyalista sa ibang mga industriya.

· PaggamitcodePaanopondomga komunikasyon

Ang code ay nakikita bilang ang pinakamahalagang paraan ng komunikasyon sa loob ng isang team. Ang kalinawan ng code ay isa sa mga pangunahing priyoridad. Ang pagsunod sa mga pamantayan sa coding na nagbibigay ng kalinawan na ito ay kinakailangan. Ang ganitong mga pamantayan, bilang karagdagan sa kalinawan ng code, ay dapat tiyakin ang kaunting wika (walang pagdoble ng code at impormasyon) at dapat tanggapin ng lahat ng miyembro ng koponan.

· Bukasnagtatrabahoespasyo (bukasworkspace)

Ang koponan ay matatagpuan sa isang medyo maluwang na silid upang mapadali ang komunikasyon at paganahin ang mga talakayan ng grupo kapag nagpaplano at gumagawa ng mahahalagang teknikal na desisyon.

· Baguhinmga tuntuninSa pamamagitan ngpangangailangan (bastamga tuntunin)

Dapat tanggapin ng bawat miyembro ng koponan ang mga alituntuning nakalista, ngunit kung kinakailangan, maaaring baguhin ng koponan ang mga ito kung sumang-ayon ang lahat ng miyembro nito sa pagbabagong ito.

Tulad ng makikita mula sa mga diskarteng ginamit, ang XP ay idinisenyo para gamitin sa loob ng maliliit na koponan (hindi hihigit sa 10 programmer), na binibigyang-diin ng mga may-akda ng pamamaraang ito. Ang isang mas malaking laki ng koponan ay sumisira sa kadalian ng komunikasyon na kinakailangan para sa tagumpay at ginagawang imposibleng ipatupad ang marami sa mga nakalistang pamamaraan.

3.1 Pangunahing Mga Teknik sa XP

Labindalawang pangunahing pamamaraan ng matinding programming (batay sa unang edisyon ng aklat Extreme programming ipinaliwanag) ay maaaring pagsamahin sa apat na pangkat:

· Maikling ikot ng feedback (Fine scale feedback)

o Test driven na pag-unlad

o Larong pagpaplano

o Ang customer ay palaging nasa malapit (Buong koponan, Onsite na customer)

o Magpares ng programming

Tuloy-tuloy sa halip na batch na proseso

o Patuloy na Pagsasama

o Refactoring (Pagpapaganda ng Disenyo, Refactor)

o Madalas Maliit na Paglabas

· Pag-unawa na ibinahagi ng lahat

o Simplicity (Simpleng disenyo)

o Metapora ng sistema

o Kolektibong pagmamay-ari ng code o mga napiling pattern ng disenyo (Collective patterns ownership)

o Coding standard o Coding convention

· Kagalingan ng programmer:

o 40-oras na linggo ng trabaho (Sustainable na bilis, Apatnapung oras na linggo)

LaroVpagpaplano

Ang ating mundo ay masyadong pabagu-bago at hindi mahuhulaan para umasa sa katatagan ng sitwasyon. Ang parehong bagay ay nangyayari sa pagbuo ng software: tungkol sa isang bihirang sistema, maaari mong sabihin na ang pangwakas na anyo nito ay alam nang maaga nang detalyado sa pinakadulo simula ng pag-unlad. Karaniwan, ang gana ng customer ay dumarating habang kumakain: palagi niyang gustong baguhin ang isang bagay, pagbutihin ang isang bagay, o itapon ang isang bagay mula sa system nang buo. Ito ang pagkakaiba-iba ng mga kinakailangan na labis na kinatatakutan ng lahat. Sa kabutihang palad, ang isang tao ay binibigyan ng kakayahang hulaan ang mga posibleng opsyon at, sa gayon, panatilihing kontrolado ang sitwasyon.

Sa Extreme Programming, ang pagpaplano ay isang mahalagang bahagi ng pag-unlad at ang katotohanan na ang mga plano ay maaaring magbago ay isinasaalang-alang mula pa sa simula. Ang fulcrum, ang pamamaraan na nagbibigay-daan sa iyo upang mahulaan ang sitwasyon at walang kahirap-hirap na tiisin ang mga pagbabago, ay ang laro ng pagpaplano. Sa panahon ng naturang laro, ang mga kilalang kinakailangan ng system ay maaaring mabilis na makolekta, masuri at maplano ayon sa priyoridad.

Tulad ng iba pang laro, ang pagpaplano ay may mga kalahok at layunin nito. Ang pangunahing pigura ay, siyempre, ang customer. Siya ang nakikipag-usap sa pangangailangan para sa ito o sa pag-andar na iyon. Nagbibigay ang mga programmer ng tinatayang pagtatasa ng bawat functionality. Ang kagandahan ng laro ng pagpaplano ay nakasalalay sa pagkakaisa ng layunin at pagkakaisa sa pagitan ng developer at ng customer: sa kaso ng tagumpay, lahat ay nanalo, sa kaso ng pagkatalo, lahat ay natalo. Ngunit sa parehong oras, ang bawat kalahok ay pupunta sa kanyang sariling paraan sa tagumpay: pinipili ng customer ang pinakamahalagang gawain alinsunod sa badyet, at sinusuri ng programmer ang mga gawain alinsunod sa kanyang kakayahang ipatupad ang mga ito.

Ipinapalagay ng matinding programming na ang mga developer ay makakapagpasya para sa kanilang sarili kung gaano katagal ang aabutin nila upang makumpleto ang kanilang mga gawain at kung alin sa kanila ang mas handang lutasin ang isang problema at kung sino ang isa pa.

Sa isang perpektong sitwasyon, ang laro sa pagpaplano sa pagitan ng customer at ng programmer ay dapat na laruin bawat 3-6 na linggo, hanggang sa magsimula ang susunod na pag-uulit ng pag-unlad. Ginagawa nitong medyo madali ang paggawa ng mga pagsasaayos batay sa mga tagumpay at kabiguan ng nakaraang pag-ulit.

4. Mga kalamangan at kahinaan

Ang mga bentahe ng XP, kung maipapatupad ito, ay higit na kakayahang umangkop, ang kakayahang mabilis at tumpak na gumawa ng mga pagbabago sa software bilang tugon sa pagbabago ng mga kinakailangan at kagustuhan ng indibidwal na customer, mataas na kalidad ng resultang code, at ang kawalan ng pangangailangan na kumbinsihin ang mga customer na ang resulta ay nakakatugon sa kanilang mga inaasahan.

Ang mga disadvantages ng diskarteng ito ay ang imposibilidad ng pagpapatupad ng sapat na malaki at kumplikadong mga proyekto sa istilong ito, ang kawalan ng kakayahang magplano ng tiyempo at intensity ng paggawa ng proyekto para sa isang sapat na mahabang panahon at malinaw na mahulaan ang mga resulta ng isang pangmatagalang proyekto sa mga tuntunin ng ang ratio ng kalidad ng resulta at ang mga gastos ng oras at mga mapagkukunan. Mapapansin din na ang XP ay hindi angkop para sa mga kasong iyon kung saan ang mga posibleng solusyon ay hindi agad nahanap batay sa dating natamo na karanasan, ngunit nangangailangan ng paunang pananaliksik.

5. Kasaysayan ng paggamit

Ang XP bilang isang hanay ng mga inilarawang pamamaraan ay unang ginamit sa panahon ng trabaho sa proyekto ng C3 (Chrysler Comprehensive Compensation System, pagbuo ng isang sistema para sa accounting para sa mga benepisyo ng empleyado sa Daimler Chrysler). Sa 20 kalahok sa proyektong ito, 5 (kabilang ang nabanggit sa itaas na 3 pangunahing may-akda ng XP) ay nag-publish ng 3 mga libro at isang malaking bilang ng mga artikulo na nakatuon sa XP sa panahon ng proyekto mismo at kasunod nito. Ang sumusunod na data ay naglalarawan ng mga problema ng ilang mga diskarte sa XP kapag inilapat sa medyo kumplikadong mga proyekto.

Nagsimula ang proyekto noong Enero 1995. Mula noong Marso 1996, kasunod ng pagsasama ng Kent Beck, ito ay pinatakbo gamit ang XP. Sa oras na ito, lumampas na ito sa badyet at mga plano para sa phased na pagpapatupad ng mga function. Naputol ang development team, at sa loob ng humigit-kumulang anim na buwan pagkatapos noon ay medyo matagumpay na nabuo ang proyekto. Noong Agosto 1998, lumitaw ang isang prototype na maaaring maglingkod sa humigit-kumulang 10,000 empleyado. Ang proyekto ay orihinal na inaasahang makumpleto sa kalagitnaan ng 1999 at ang magreresultang software ay gagamitin upang pamahalaan ang mga benepisyo para sa 87,000 empleyado ng kumpanya. Ito ay itinigil noong Pebrero 2000 pagkatapos ng 4 na taon ng pagpapatakbo ng XP dahil sa kumpletong pagkabigo upang matugunan ang mga time frame at badyet. Ang software na nilikha ay hindi kailanman ginamit upang gumana sa data sa higit sa 10,000 empleyado, bagama't ipinakita na ito ay maaaring humawak ng data sa 30,000 empleyado ng kumpanya. Ang taong gumanap sa papel ng customer na kasama sa pangkat ng proyekto ay huminto pagkatapos ng ilang buwan ng naturang trabaho, hindi nakayanan ang kargada ng trabaho, at hindi kailanman nakatanggap ng sapat na kapalit hanggang sa katapusan ng proyekto.

Konklusyon

Ang lahat ng mga pamamaraan sa itaas ay hindi pinagsama ng pagkakataon. Ang kanilang pare-parehong kumbinasyon ay maaaring magdala ng proseso ng pag-unlad sa intelektwal na resonance, na makabuluhang tumataas ang kalidad ng produkto at mapabilis ang oras ng paglabas nito. Ang pangunahing kagandahan ng lahat ng matinding programming ay predictability at minimization ng development gastos; pagbibigay sa customer ng produkto na nais niyang matanggap sa oras ng paglabas; at siyempre, komunikasyon at pagsasanay ng mga developer on-the-job.

Maaaring mag-iba ang mga opinyon tungkol sa iminungkahing pamamaraan. Mahalagang maunawaan na ang Extreme Programming ay hindi naglalayong palitan ang mga kasalukuyang teknolohiya sa pag-unlad. Sa kabaligtaran, ang XP ay maaaring magbigay ng karagdagang impetus sa mga koponan na gumagamit ng mga tradisyonal na diskarte. Hindi ka dapat maghanap dito ng mga sagot sa lahat ng tanong mo. Ito ay hindi isang teknolohiya sa programming, ngunit sa halip ay isang teknolohiya para sa pag-aayos ng trabaho, at sa form na ito na ito ay may karapatan sa buhay.

Na-post sa Allbest.ru

Mga katulad na dokumento

    Pagsusuri ng mga yugto at tampok ng pagbuo ng isang pinakamainam at functional na modelo ng ARIS - isang produkto ng software mula sa IDS Scheer para sa pagmomodelo ng mga proseso ng negosyo ng kumpanya. Pag-aaral ng mga pangunahing konsepto, pamamaraan at diskarte ng matinding programming.

    pagsubok, idinagdag noong 06/04/2011

    Ang mga pangunahing yugto ng pag-unlad ng software (pakete ng software), pagsusuri ng mga kinakailangan ng system. Paraan ng step-by-step na pagdedetalye. Mababang antas at mataas na antas ng mga programming language (imperative, object-oriented, functional, logical).

    pagtatanghal, idinagdag noong 10/13/2013

    Wika ng pag-unlad, kapaligiran ng pagpapatupad, mga tool sa pag-unlad. Mga tampok ng virtual na kapaligiran para sa pagpapatupad ng programa at ang kanilang pagsasaalang-alang sa pagbuo ng isang produkto ng software. Mga macro ng system at ang kanilang paggamit sa mga teksto ng pag-unlad. Mga tool sa visual programming.

    tutorial, idinagdag noong 10/26/2013

    Ang problema sa pagiging maaasahan ng software, mga tagapagpahiwatig nito at mga kadahilanan ng suporta. Mga pamamaraan para sa pagsubaybay sa proseso ng pagbuo ng mga programa at dokumentasyon, pag-iwas sa mga pagkakamali. Mga yugto ng proseso ng pag-debug ng software, structured programming techniques at ang prinsipyo ng modularity.

    pagtatanghal, idinagdag noong 04/30/2014

    Mga code ng makina at assembler. Ang unang mataas na antas ng programming language. FORTRAN programming language. Mga kalamangan at kahinaan ng ALGOL. Mga programang pang-agham at accounting. Ang mga pangunahing prinsipyo na sinunod sa paggawa ng Basic programming language.

    course work, idinagdag 06/21/2014

    Ang konsepto at pangunahing pagkakaiba ng distributed software development, ang mga pakinabang at disadvantage nito. Konseptwal na solusyon at pagpili ng uri ng pag-unlad. Mga tampok ng open source software. Ang ideya at pag-unlad ng Open Source.

    course work, idinagdag noong 12/14/2012

    Ang konsepto ng ikot ng buhay ng software. Dalawang uri ng mga aktibidad na nakikilala sa mga teknikal na proyekto: disenyo at produksyon. Ang mga pangunahing prinsipyo ng manifesto ng mga tagasunod ng mga nababaluktot na pamamaraan. Mga pangunahing prinsipyo ng matinding programming.

    pagtatanghal, idinagdag noong 08/14/2013

    Internasyonal na pamantayan para sa wikang programming ng Pascal. Mga pamamaraan ng object-oriented programming sa Turbo Pascal. Mga simbolo ng wika, ang alpabeto nito. Mga yugto ng pagbuo ng programa. Ang konsepto ng algorithm at algorithmization. Istraktura ng mga programa sa Pascal.

    course work, idinagdag 02/28/2010

    Makabagong software development tool para sa SUTP. Universal programming language at ang kanilang paghahambing sa mga sistema ng SCADA. Pagbuo ng software gamit ang multichannel na pagsukat ng mga transduser Ш9327.

    thesis, idinagdag noong 07/13/2011

    Mga pangunahing pamamaraan para sa pagtatrabaho sa kapaligiran ng Delphi programming. Mga tampok ng teknolohiya para sa paglikha ng mga simpleng application. Paggawa gamit ang mga bahagi ng kapaligiran sa pagbuo ng application. Input, pag-edit, pagpili at output ng impormasyon. Mga aspeto ng paggamit ng branching structure.

Maaaring i-save ang Excel file sa ibang format. Upang gawin ito, sa tab file piliin ang item I-save bilang. Available ang mga format ng file sa dialog box Nagse-save ng dokumento, depende sa uri ng aktibong sheet (regular na sheet, chart sheet, o iba pang uri ng sheet).

Tandaan: Kung magse-save ka ng file sa ibang format, maaaring mawala ang ilang pag-format, data, at functionality.

Upang buksan ang isang file na ginawa sa ibang format (isang mas naunang bersyon ng Excel o isa pang program), i-click ang file at pumili ng isang pangkat Bukas. Awtomatikong bubukas ang mga workbook ng Excel 97-2003 sa compatibility mode. Upang makuha ang lahat ng mga bagong feature sa Excel 2010, i-save ang workbook na ito sa Excel 2010 na format, gayunpaman, maaari kang magpatuloy na magtrabaho sa compatibility mode sa pamamagitan ng pagpapanatili ng orihinal na format ng file para sa backward compatibility.

Mga Format ng Excel File

Format

Extension

Paglalarawan

Excel workbook

Standard Excel 2010 at Excel 2007 na format ng file batay sa XML na wika. Ang Microsoft Visual Basic for Applications (VBA) macro code at Microsoft Office Excel 4.0 macro sheets (XLM) ay hindi mai-save sa format na ito.

Excel workbook na may suporta sa macro

Excel 2016, Excel 2013, Excel 2010, at Excel 2007 na XML-based na format na may suporta sa macro. Binibigyang-daan kang i-save ang VBA macro code at Microsoft Excel 4.0 (XLM) macro sheets.

Binary Excel Workbook

Binary file format (BIFF12) para sa Excel 2010 at Excel 2007.

Ang default na format ng file para sa mga template ng Excel sa Excel 2010 at Excel 2007. Ang VBA macro code at Excel 4.0 macro sheets (XLM) ay hindi maaaring i-save sa format na ito.

Template (code)

Isang macro-enabled na format ng file para sa mga template ng Excel sa Excel 2010 at Excel 2007. Maaaring i-save ang VBA macro code at Excel 4.0 macro sheets (XLM) sa format na ito.

Excel 97-2003 workbook

Excel 97-Excel 2003 (BIFF8) binary file format.

Excel 97-2003 template

Excel 97-Excel 2003 (BIFF8) binary file format para sa pag-iimbak ng mga template ng Excel.

Microsoft Excel 5.0/95 na aklat

Excel Binary File Format 5.0/95 (BIFF5).

XML table 2003

XML Table File Format 2003 (XMLSS).

Data ng XML

Format ng data ng XML.

Microsoft Excel add-in

Isang XML-based na Excel 2010 at Excel 2007 na add-in na format ng file na may suporta sa macro. Ang add-on ay isang programa na nagbibigay ng kakayahang magsagawa ng karagdagang code. Pinapayagan ang paggamit ng mga proyekto ng VBA at Excel 4.0 macro sheet (XLM).

Excel 97-2003 Add-in

Excel 97-2003 add-in, isang karagdagang program na idinisenyo upang magpatakbo ng karagdagang code. Sinusuportahan ang paggamit ng mga proyekto ng VBA.

Excel 4.0 workbook

Excel 4.0 na format ng file na nagse-save lamang ng mga regular, chart, at macro sheet. Maaari kang magbukas ng workbook sa format na ito sa Excel 2010, ngunit hindi ka makakapag-save ng Excel file dito.

Naka-save ang talahanayan sa mga bersyon 6.0-9.0 ng Microsoft Works.

Tandaan: Ang format na ito ay sinusuportahan lamang sa Excel Starter.

Mga format ng text file

Format

Extension

Paglalarawan

Space-delimited na format para sa Lotus. Ang aktibong sheet lamang ang nai-save

Sine-save ang isang workbook bilang isang tab-delimited na text file para magamit sa isa pang operating system ng Microsoft Windows at tinitiyak na ang mga tab, line break, at iba pang mga character ay nabibigyang-kahulugan nang tama. Ang aktibong sheet lamang ang nai-save.

Text (Macintosh)

Sine-save ang isang workbook bilang isang tab-delimited na text file para magamit sa Macintosh operating system at tinitiyak na ang mga tab, line break, at iba pang mga character ay nabibigyang-kahulugan nang tama. Ang aktibong sheet lamang ang nai-save.

Teksto (MS-DOS)

Sine-save ang isang workbook bilang isang tab-delimited na text file para gamitin sa MS-DOS operating system at tinitiyak na ang mga tab, line break, at iba pang mga character ay nabibigyang-kahulugan nang tama. Ang aktibong sheet lamang ang nai-save.

Unicode text

Sine-save ang aklat bilang text sa Unicode, isang karaniwang character encoding na binuo ng Unicode Consortium.

CSV (comma delimited)

Sine-save ang isang workbook bilang text file na pinaghihiwalay ng kuwit para magamit sa isa pang operating system ng Windows at tinitiyak na ang mga character ng tab, line break, at iba pang mga character ay nabibigyang-kahulugan nang tama. Ang aktibong sheet lamang ang nai-save.

Sine-save ang isang workbook bilang text file na may comma-delimited para sa paggamit sa Macintosh operating system at tinitiyak na ang mga character ng tab, line break, at iba pang mga character ay nabibigyang-kahulugan nang tama. Ang aktibong sheet lamang ang nai-save.

Sine-save ang isang workbook bilang text file na may comma-delimited para sa paggamit sa MS-DOS operating system at tinitiyak na ang mga character ng tab, line break, at iba pang mga character ay nabibigyang-kahulugan nang tama. Ang aktibong sheet lamang ang nai-save.

Format ng pagpapalitan ng data. Sine-save lamang ang aktibong sheet.

Simbolikong Format ng Link. Sine-save lamang ang aktibong sheet.

Tandaan: Kapag nag-save ka ng aklat sa anumang format ng teksto, mawawala ang lahat ng elemento sa pag-format.

Iba pang mga format ng file

Format

Extension

Paglalarawan

dBase III at IV. Maaaring buksan ang mga file sa format na ito sa Microsoft Excel, ngunit hindi mase-save ang mga file ng Microsoft Excel sa format na dBase.

talahanayan ng OpenDocument

talahanayan ng OpenDocument. Maaaring i-save ang mga Excel 2010 na file sa isang format na nagbibigay-daan sa kanila na mabuksan sa mga application ng spreadsheet na sumusuporta sa format ng OpenDocument spreadsheet, gaya ng Google Docs o OpenOffice.org Calc. Ang mga talahanayan sa format na ODS ay maaari ding buksan sa Excel 2010. Maaaring mawala ang pag-format kapag nagse-save at nagbukas ng mga ODS file.

Ang format ng file na ito ay nagpapanatili ng pag-format ng dokumento at nagbibigay-daan sa mga file na maibahagi. Tinitiyak ng format na PDF na kapag tiningnan mo ang isang file sa isang computer o nai-print ito, ang orihinal na pag-format ay napanatili at ang data ng file ay hindi madaling mabago. Ang format na PDF ay maginhawa ring gamitin para sa pag-print ng mga dokumento sa isang bahay-imprenta.

Tandaan:

Dokumento ng XPS

Ang format ng file na ito ay nagpapanatili ng pag-format ng dokumento at nagbibigay-daan sa mga file na maibahagi. Tinitiyak ng format ng XPS na kapag tiningnan mo ang isang file sa isang computer o nai-print ito, ang orihinal na pag-format ay napanatili at ang data ng file ay hindi madaling mabago.

Tandaan: Ang format na ito ay hindi suportado sa Excel 2007.

Mga format ng file na gumagamit ng clipboard

Mula sa clipboard ng Microsoft Office hanggang sa Microsoft Excel gamit ang mga command Ipasok o Espesyal na insert(tab Bahay, pangkat Clipboard, pindutan Ipasok) maaari kang magpasok ng data sa mga sumusunod na format.

Format

Extension

Mga Identifier ng Uri ng Clipboard

Mga larawan sa Windows Metafile (WMF) o Windows Enhanced Metafile (EMF) na format.

Tandaan Kapag kinopya mo ang isang Windows Metafile (WMF) mula sa isa pang program, ipinapasok ng Microsoft Excel ang larawan bilang isang Enhanced Metafile (EMF).

Bitmap

Naka-save ang mga larawan sa format na bitmap (BMP).

Mga format ng Microsoft Excel file

Binary file format para sa mga bersyon ng Excel 5.0/95 (BIFF5), Excel 97-2003 (BIFF8) at Excel 2010 (BIFF12).

Simbolikong Format ng Link.

Format ng pagpapalitan ng data.

Text (tinatanggalan ng mga tab)

Format ng teksto na may mga tab bilang mga delimiter.

CSV (comma delimited)

Comma-delimited na format

Rich text (tinatanggalan ng mga puwang)

RTF. Mula lamang sa Excel.

Naka-embed na bagay

GIF, JPG, DOC, XLS o BMP

Mga bagay sa Microsoft Excel, mga bagay mula sa maayos na nakarehistrong mga program na sumusuporta sa OLE 2.0 (OwnerLink), at Larawan o iba pang format ng presentasyon

Naka-link na bagay

GIF, JPG, DOC, XLS o BMP

OwnerLink, ObjectLink, Link, Picture o iba pang format.

Bagay sa Opisina

Opisina o Format ng Larawan (EMF).

Ipinapakita ang teksto, OTP na teksto.

Web page sa isang file

Web page sa isang file (MHT o MHTML). Pinagsasama ng format ng file na ito ang mga naka-embed na graphics, mga attachment, naka-link na dokumento, at iba pang mga sumusuportang elemento na naka-reference sa isang dokumento.

Tandaan: Ang format na ito ay hindi suportado sa Excel 2007.

Web page

HTML format.

Tandaan: Kapag kumopya ka ng text mula sa isa pang program, i-paste ng Microsoft Excel ang text sa HTML na format, anuman ang format ng source text.

Hindi sinusuportahan ang mga format ng file sa Excel

Ang mga sumusunod na format ng file ay hindi na sinusuportahan sa Excel 2016, Excel 2013, Excel 2010, Excel Starter, at Excel 2007. Hindi ka maaaring magbukas o mag-save ng mga file sa mga format na ito.

Hindi sinusuportahan ang mga format ng file sa Excel Starter

Bukod pa rito, hindi na sinusuportahan ng Excel Starter ang mga sumusunod na format ng file. Hindi posibleng buksan ang mga ganoong file o i-save ang mga file sa mga format na ito.

Pagbukas at pagtingin sa mga file sa mga hindi sinusuportahang format

Kung hindi sinusuportahan ng Microsoft Excel ang format ng file na balak mong gamitin, maaari mong gawin ang mga sumusunod na hakbang.

    Subukang maghanap sa Internet para sa isang kumpanya na gumagawa ng mga file converter para sa mga format na hindi sinusuportahan ng Excel.