Uundaji bidhaa pepe za tarakilishi

Uundaji bidhaa pepe za tarakilishi (kwa Kiingereza: software engineering) ni kazi ya kutengeneza na kuvumbua programu za kompyuta. Inaweza kujumuisha utafiti, maendeleo mapya, uzinduaji, utumiaji-marudio, uvumbuzi mpya, matengenezo, au shughuli nyingine zozote zinazosababisha kuwepo kwa bidhaa pepe. Hasa awamu ya kwanza ya programu ya maendeleo katika mchakato huweza kuhusisha idara nyingi, ikiwa ni pamoja na masoko, uhandisi, utafiti na maendeleo na usimamizi wa jumla.
Jina hilo linaweza pia kurejelea kuprogramu kompyuta, mchakato wa kuandika na kutunza vipengee vya ndani vya programu za kompyuta.
Kuna njia kadhaa tofauti za kuunda bidhaa pepe, sawa na maoni mbalimbali ya vyama vya kisiasa kuhusu uongozi wa serikali. Baadhi ya njia hizi huchukua mwenendo uliopangika wenye taaluma za kihandisi ili kupeana suluhisho la biashara, ilhali nyingine zinaweza kuchukua mwenendo unaoendelea, ambapo programu inazidi kuimarishwa ikiundwa sehemu kwa sehemu. Mbinu nyingi zinatumia hatua zifuatazo katika kuunda bidhaa pepe:
Hatua hizi mara nyingi hujulikana kama maisha halisi ya uundaji wa bidhaa pepe, au 'SDLC', kwa kimombo. Njia mbalimbali zinaweza kutekeleza hatua hizi kuzingatia maagizo mbalimbali, au kutumia muda mfupi au mrefu kwa hatua mbalimbali. Kina cha uhondo wa nyaraka zizalishwajo katika kila hatua ya kuunda programu inaweza pia kutofautiana. Hatua hizi huweza pia kufanyika katika kugeuka (mkabala kufuliliza ka maji), au zinaweza kurudiwa kwa viwango tofauti ( mkabala "uliokithiri" zaidi ). Mkabala uliokithiri zaidi kawaida huhusisha kutumia muda kidogo juu ya mipango na uandishi nyaraka, na hutumia muda zaidi katika kuunda programu yenyewe halisi. Mkabala huu "uliokithiri" pia hukuza uendelezaji wa kupima maendeleo ya mradi wenyewe, vilevile kuwa bidhaa isiyo na hitilafu hata kamwe. Mkabala rasmi au "wa kufululiza" hujaribu kuchunguza hitilafu zozote zinazoweza kutokea kisha kuanzisha mpango wa kina kabla ya uundaji wa programu yenyewe, na kuepuka mabadiliko ya muundo wa bidhaa pepe na kurudia kuandika vipengele vya programu hiyo.
Kuna faida na hasara kubwa kwa mbinu mbalimbali na njia bora ya kutatua tatizo kutumia bidhaa pepe mara nyingi itazingatia aina ya shida iliyopo. Kama tatizo linaeleweka vizuri na ufumbuzi unaweza kufanisiwa kwa haraka, mkabala wa kufululiza huweza kuwa bora. Kama, kwa upande mwingine, tatizo ni la kipekee (angalau kwa timu ya kuunda) na muundo wa programu hauwezi fumbuliwa kwa urahisi, basi mkabala "uliokithiri" zaidi huweza kuwa bora.
Mchakato wa kuunda bidhaa pepe ni muundo ulioekwa katika utayarishaji wa bidhaa pepe halisi ya kompyuta. Visawe ni mzunguko wa maisha ya programu na mchakato wa programu. Kuna mifano kadhaa kwa hizi taratibu, kila ukielezea njia mbalimbali za kazi au shughuli ambazo hufanyika wakati wa mchakato huu.
Vyanzo vya mawazo kuhusu bidhaa pepe ni nyingi. Mawazo haya yanaweza kuja kutoka utafiti wa soko ikiwa ni pamoja na demografia ya wateja wapya, wateja waliopo, matarajio ya mauzo ya bidhaa zilizokataliwa,washikiriki uundaji wengine wa ndani, au ubunifu chama cha nje. Mawazo kwa bidhaa pepe za kompyuta kwa kawaida hutathminiwa na wenye ujuzi wa masoko kwa uwezekano wake kiuchumi, kwa mwingiliano wake na njia za usambazaji, kwa uwezekano wa kuathiri bidhaa zilizopo, vitu vinavyotarajiwa, na kwa kufaa malengo ya kampuni kwenye soko. Katika tathmini ya awamu ya masoko,dhana ya gharama na muda hutathminiwa. Uamuzi hufikiwa mapema katika awamu ya kwanza kama, kwa kuzingatia maelezo zaidi yaliyotokana na maendeleo ya masoko na wafanyakazi, mradi lazima ufuatiliwe zaidi.
Katika kitabu "Great Software Debates", Alan M. Davis anasema:
Kwa sababu uundaji programu unaweza kuhusisha kuacha au kwenda nje na mahitaji ya mteja, mradi huweza kupotoka kiasi kwa mahitaji yasiyo ya kiufundi kama vile rasilimali, kushughulikia hitilafu, umiliki, bajeti, kushughulikia visa, nakadhalika. Michakato hii huweza pia kusababisha jukumu la maendeleo ya biashara kufunika uundaji wa bidhaa pepe.
Mbinu za uundaji bidhaa pepe ni taaluma inayotumika kuunda, kupanga, na kudhibiti mchakato wa kuvumbua mitambo ya habari. Mifumo mbalimbali kama hizo imeibuka na kukua kwa muda, kila mmoja ukiwa na uwezo wake mwenyewe na udhaifu pia. Mfumo mmoja wa uundaji bila shaka si mwena kwa matumizi ya miradi yote. Kila mojawapo ya mbinu zilizopo inafaa kwa aina maalumu ya miradi, kwa kuzingatia ufundi,shirika,mradi na maswala ya timu husika.
Kutokana na kasi ya ukuaji wa sekta hii, kampuni kadhaa zimeanza kutumia nchi za nje kama China, India na nchi nyingine kwa gharama ya chini kwa kila muundaji. Tovuti kadhaa na programu za kisasa yani, Web 2.0, huundwa kwa bara tofauti ilhali usimamizi uko katika nchi za magharibi. Faida zaidi huwa ni udhibiti bora wa gharama, ambayo ina maana kwamba kuna pesa kiasi za kutumiwa (mara nyingi huwa changamoto kubwa kwa kwanza miradi kama hii). Aidha, tofauti ya muda kati ya nchi za magharibi na wakati wa kazi wa India na China inaruhusu kazi kufanyika mfululizo ambayo inaipa faida ya hali ya juu. Makampuni ambayo hushiriki katika uundaji huu ni kama Tata Consultancy Services, Infosys, Wipro, na Satyam.
Mwisho wa 1990 uliibua viwango vya W3C ambavyo viliwezesha ontolojia kuungaanisha miundo 4 za utendaji katika 1 wa maarifa: uwakilishi wa maarifa (katika RDF (S) na owl),kizazi cha maarifa kupitia mitazamo, mtindo wa dhana kupitia ontolojia na muundo wa kimwili kupitia sehemu tatu.
Miuundo ya kisasa inaruhusu kutoa programu moja kwa moja kutoka mitambo ya maarifa(ontolojia)
Mbinu hii inapata uhalali wake katika matumizi ya teknolojia ya semantiki badala ya www data kwa uzalishaji data iliyohakikishwa. Aina ya biashara ya mbinu ya uundaji inapatikana katika tovuti ya ontolojia ya fedha. Ilihifadhiwa 10 Februari 2010 kwenye Wayback Machine.