- Детаљи
- Последње ажурирање: 26. маја 2021
Шта је управљање конфигурацијом софтвера?
У софтверском инжењерингу, Управљање конфигурацијом софтвера (СЦМ) је процес за систематско управљање, организовање и контролу промена у документима, кодовима и другим ентитетима током животног циклуса развоја софтвера. Примарни циљ је повећати продуктивност уз минималне грешке. СЦМ је део интердисциплинарног поља управљања конфигурацијом и може прецизно утврдити ко је извршио коју ревизију.
У овом водичу за софтверски инжењеринг ћете научити-
- Зашто нам је потребно управљање конфигурацијом?
- Задаци у СЦМ процесу
- Идентификација конфигурације:
- Баселине
- Контрола промена
- Рачуноводство статуса конфигурације
- Ревизије и прегледи конфигурације
- Учесник СЦМ процеса
- План управљања конфигурацијом софтвера
- Алати за управљање конфигурацијом софтвера
Зашто нам је потребно управљање конфигурацијом?
Примарни разлози за имплементацију система за управљање конфигурацијом техничког софтвера су:
- Више људи ради на софтверу који се стално ажурира
- Може се догодити да је више верзија, грана, аутора укључено у пројекат конфигурације софтвера, а тим је географски распоређен и ради истовремено
- Потребно је прилагодити промене захтева корисника, политике, буџета, распореда.
- Софтвер би требао радити на различитим машинама и оперативним системима
- Помаже у развоју координације међу заинтересованим странама
- СЦМ процес је такође користан за контролу трошкова укључених у промене система
Свака промена у ставкама конфигурације софтвера ће утицати на крајњи производ. Због тога је потребно контролисати и управљати променама ставки конфигурације.
Задаци у СЦМ процесу
- Идентификација конфигурације
- Полазне основе
- Контрола промена
- Рачуноводство статуса конфигурације
- Ревизије и прегледи конфигурације
Идентификација конфигурације:
Идентификација конфигурације је метод одређивања обима софтверског система. Помоћу овог корака можете управљати или контролисати нешто чак и ако не знате шта је то. То је опис који садржи тип ЦСЦИ (ставка конфигурације рачунарског софтвера), идентификатор пројекта и информације о верзији.
Активности током овог процеса:
- Идентификација ставки конфигурације као што су модули изворног кода, тест случај и спецификација захтева.
- Идентификација сваког ЦСЦИ у СЦМ спремишту, коришћењем објектно оријентисаног приступа
- Процес почиње са основним објектима који су груписани у збирне објекте. Детаљи о томе шта, зашто, када и ко врши промене у тесту
- Сваки објекат има своје карактеристике које идентификују његово име које је експлицитно за све остале објекте
- Листа потребних ресурса, као што су документ, датотека, алати итд.
Пример:
Уместо да именујете датотеку логин.пхп, требало би је назвати логин_в1.2.пхп где в1.2 означава број верзије датотеке
Уместо именовања фасцикле 'Цоде', требало би да се назове 'Цоде_Д' где Д представља код и требало би је свакодневно правити резервне копије.
Полазна основа:
Полазна основа је формално прихваћена верзија ставке конфигурације софтвера. Одређује се и фиксира у одређено време током вођења СЦМ процеса. Може се променити само формалним процедурама контроле промена.
Активности током овог процеса:
- Олакшајте израду различитих верзија апликације
- Дефинисање и одређивање механизама за управљање различитим верзијама ових производа за рад
- Функционална основа одговара прегледаним системским захтевима
- Широко коришћене основе укључују функционалне, развојне и производне основе
Једноставним речима, основно значи спремно за објављивање.
Контрола промена:
Контрола промена је процедурална метода која обезбеђује квалитет и доследност када се изврше промене у конфигурацијском објекту. У овом кораку, захтев за промену се шаље менаџеру конфигурације софтвера.
Активности током овог процеса:
- Контролишите ад-хоц измене за изградњу стабилног окружења за развој софтвера. Промене су урезане у спремиште
- Захтев ће бити проверен на основу техничких предности, могућих нуспојава и укупног утицаја на друге конфигурацијске објекте.
- Он управља променама и стављањем ставки конфигурације на располагање током животног циклуса софтвера
Рачуноводство статуса конфигурације:
Рачуноводство статуса конфигурације прати свако издање током СЦМ процеса. Ова фаза укључује праћење шта свака верзија има и промене које доводе до ове верзије.
Активности током овог процеса:
- Води евиденцију о свим променама на претходној бази да би се достигла нова основица
- Идентификујте све ставке да бисте дефинисали конфигурацију софтвера
- Пратите статус захтева за промену
- Комплетан списак свих промена од последње основе
- Омогућава праћење напретка до следеће основне линије
- Омогућава проверу претходних издања/верзија које треба издвојити ради тестирања
Ревизије и прегледи конфигурације:
Ревизије конфигурације софтвера потврђују да сви софтверски производи задовољавају основне потребе. Он осигурава да је оно што је изграђено оно што се испоручује.
Активности током овог процеса:
- Ревизију конфигурације спроводе ревизори проверавајући да ли се прате дефинисани процеси и осигуравајући да су циљеви СЦМ -а испуњени.
- За проверу усклађености са стандардима за контролу конфигурације. ревизију и извештавање о учињеним променама
- СЦМ ревизије такође осигуравају да се током процеса одржава следљивост.
- Осигурава да су промене извршене на основној линији у складу са извештајима о статусу конфигурације
- Потврђивање потпуности и доследности
Учесници СЦМ процеса:
Следе кључни учесници СЦМ -а
1. Цонфигуратион Манагер
- Цонфигуратион Манагер је руководилац који је одговоран за идентификацију ставки конфигурације.
- ЦМ осигурава да тим прати СЦМ процес
- Он/она треба да одобри или одбије захтеве за промену
2. Девелопер
- Програмер мора да промени код према стандардним развојним активностима или захтевима за промену. Он је одговоран за одржавање конфигурације кода.
- Програмер треба да провери промене и реши сукобе
3. Ревизор
- Ревизор је одговоран за СЦМ ревизије и прегледе.
- Потребно је осигурати доследност и потпуност издања.
4. Руководилац пројекта:
- Уверите се да је производ развијен у одређеном временском оквиру
- Прати напредак развоја и препознаје питања у процесу СЦМ
- Генеришите извештаје о статусу софтверског система
- Уверите се да се поштују процеси и смернице за креирање, промену и тестирање
5. Корисник
Крајњи корисник треба да разуме кључне СЦМ услове како би био сигуран да има најновију верзију софтвера
План управљања конфигурацијом софтвера
Планирање процеса СЦМП -а (планирање управљања конфигурацијом софтвера) почиње у раним фазама кодирања пројекта. Исход фазе планирања је СЦМ план који би се могао проширити или ревидирати током пројекта.
- СЦМП може слиједити јавни стандард попут ИЕЕЕ 828 или стандард специфичан за организацију
- Он дефинише врсте докумената за управљање и именовање докумената. Пример Тест_в1
- СЦМП дефинише особу која ће бити одговорна за читав процес СЦМ -а и стварање основних линија.
- Исправите смернице за управљање верзијама и контролу промена
- Дефинишите алате који се могу користити током СЦМ процеса
- База података за управљање конфигурацијом за снимање информација о конфигурацији.
Алати за управљање конфигурацијом софтвера
Сваки софтвер за управљање променама треба да има следеће 3 кључне карактеристике:
Управљање паралелношћу:
Када се два или више задатака дешавају истовремено, то је познато као истовремена операција. Паралелност у контексту СЦМ -а значи да исту датотеку уређује више особа истовремено.
Ако се истовременом контролом не управља правилно помоћу алата СЦМ, то може створити многа хитна проблема.
Контрола верзија:
СЦМ користи метод архивирања или чува сваку промену направљену у датотеци. Уз помоћ функције архивирања или чувања, могуће је вратити се на претходну верзију у случају проблема.
Синхронизација:
Корисници могу да провере више од једне датотеке или целу копију спремишта. Корисник затим ради на потребној датотеци и проверава промене назад у спремиште. Они могу да синхронизују своју локалну копију како би били у току са променама које су унели други чланови тима.
Следе популарни алати
1. Иди: Гит је бесплатан алат отвореног кода који помаже у контроли верзија. Дизајниран је за брзо и ефикасно руковање свим врстама пројеката.
Линк за скидање: хттпс://гит-сцм.цом/
2. Сервер за Теам Фоундатион: Теам Фоундатион је група алата и технологија који тиму омогућавају сарадњу и координацију при изради производа.
Линк за скидање: хттпс://азуре.мицрософт.цом/ен-ус/сервицес/девопс/сервер/
3. Ансибле : То је алат за управљање конфигурацијом софтвера отвореног кода. Осим управљања конфигурацијом, нуди и имплементацију апликација и аутоматизацију задатака.
Линк за скидање: хттпс://ввв.ансибле.цом/
Проверите још алата за конфигурацију СВ -а: хттпс://ввв.гуру99.цом/софтваре-цонфигуратион-манагемент-тоолс.хтмл
Закључак:
- Најбоље праксе управљања конфигурацијом помажу организацијама да систематски управљају, организују и контролишу промене у документима, кодовима и другим ентитетима током животног циклуса развоја софтвера.
- Примарни циљ процеса СЦМ је повећање продуктивности уз минималне грешке
- Главни разлог за процес управљања конфигурацијом је то што више људи ради на софтверу који се стално ажурира. СЦМ помаже у успостављању истовремености, синхронизације и контроле верзија.
- Полазна основа је формално прихваћена верзија ставке конфигурације софтвера
- Контрола промена је процедурална метода која обезбеђује квалитет и доследност када се изврше промене у конфигурацијском објекту.
- Рачуноводство статуса конфигурације прати свако издање током СЦМ процеса
- Ревизије конфигурације софтвера потврђују да сви софтверски производи задовољавају основне потребе
- Руководилац пројекта, менаџер конфигурације, програмер, ревизор и корисник су учесници у СЦМ процесу
- Планирање СЦМ процеса почиње у раним фазама пројекта.
- Гит, Теам Фоундатион Север и Ансибле су неколико популарних СЦМ алата.