මොඩියුලය 05: මෘදුකාංග ව්‍යාපෘති කළමනාකරණය

අදහසක්, නියමිත කාලයට සහ අයවැයට අනුව යථාර්ථයක් බවට පත්කිරීමේ කලාව.

ව්‍යාපෘති කළමනාකරණය යනු කුමක්ද?

අපි මේ වන විට මෘදුකාංගයක් සඳහා අවශ්‍යතා (Requirements) හඳුනාගෙන, එයට අදාළ දෘශ්‍ය සැලැස්මක් (UML) නිර්මාණය කරන ආකාරය ඉගෙන ගෙන අවසන්. නමුත්, හොඳම සැලැස්ම තිබූ පමණින් ව්‍යාපෘතියක් සාර්ථක වන්නේ නැත. එම සැලැස්ම යථාර්ථයක් බවට පත්කිරීමට නම්, සම්පත්, කාලය සහ මිනිසුන් නිවැරදිව මෙහෙයවීම අත්‍යවශ්‍ය වේ. මෙම ක්‍රියාවලිය මෘදුකාංග ව්‍යාපෘති කළමනාකරණය (Software Project Management) ලෙස හැඳින්වේ.

සරලවම කිවහොත්, මෙය නියමිත ඉලක්ක සපුරා ගැනීම සඳහා ව්‍යාපෘතියක් සැලසුම් කිරීම, සංවිධානය කිරීම, මෙහෙයවීම සහ පාලනය කිරීමේ ක්‍රියාවලියයි. ගොඩනැගිල්ලක සැලැස්ම (blueprint) කොතරම් හොඳ වුවත්, එය නියමිත කාලයට සහ අයවැයට අනුව තනා නිම කිරීමට දක්ෂ ඉදිකිරීම් කළමනාකරුවෙකු අවශ්‍ය වන්නා සේම, මෘදුකාංග ව්‍යාපෘතියක් සාර්ථකව නිම කිරීමට දක්ෂ ව්‍යාපෘති කළමනාකරුවෙකු (Project Manager) අත්‍යවශ්‍ය වේ.

ව්‍යාපෘති කළමනාකරණයේ ත්‍රිකෝණාකාර සීමාව (The Triple Constraint)

සෑම ව්‍යාපෘතියක්ම මූලික සීමාවන් තුනකට යටත් වේ. මෙය "යකඩ ත්‍රිකෝණය" (Iron Triangle) ලෙසද හැඳින්වේ. ව්‍යාපෘති කළමනාකරුවෙකුගේ ප්‍රධාන අභියෝගය වන්නේ මෙම සීමාවන් තුන සමබරව පවත්වා ගැනීමයි.

[attachment_0](attachment)

Scope (පරිමාව)

ව්‍යාපෘතියෙන් ඉටු කළ යුතු සියලුම කාර්යයන් සහ නිර්මාණය කළ යුතු විශේෂාංග (features) මීට අයත් වේ. "අපි ගොඩනගන්නේ කුමක්ද?" යන්න මෙයින් තීරණය වේ.

Time (කාලය)

ව්‍යාපෘතිය නිම කිරීමට ලබා දී ඇති කාලයයි. මෙයට අවසන් දිනය (deadline) සහ අතරමැදි සන්ධිස්ථාන (milestones) ඇතුළත් වේ.

Cost (පිරිවැය)

ව්‍යාපෘතිය සඳහා වෙන් කර ඇති මුදල් ප්‍රමාණය හෙවත් අයවැයයි. මෙයට සංවර්ධකයන්ගේ වැටුප්, මෘදුකාංග බලපත්‍ර සහ යටිතල පහසුකම් වියදම් ඇතුළත් වේ.


මෙම සීමාවන් එකිනෙකට දැඩිව සම්බන්ධයි. උදාහරණයක් ලෙස, ව්‍යාපෘතියේ Scope එක (වැඩිපුර features) වැඩි කළහොත්, එය නිම කිරීමට යන Time එක සහ Cost එකද අනිවාර්යයෙන්ම වැඩිවේ. මෙම ත්‍රිකෝණය මධ්‍යයේ ගුණාත්මකභාවය (Quality) රඳා පවතී.

ප්‍රධාන ව්‍යාපෘති කළමනාකරණ ක්‍රියාකාරකම්

ව්‍යාපෘති කළමනාකරණ ක්‍රමවේද

SDLC ආකෘතිය මත පදනම්ව, ව්‍යාපෘති කළමනාකරණය කරන ආකාරයද වෙනස් වේ. Agile ක්‍රමවේදය වර්තමානයේ ඉතා ජනප්‍රියයි. එහිදී, සාම්ප්‍රදායික "Project Manager" කෙනෙකු වෙනුවට, ක්‍රියාවලියට සහාය වන Scrum Master කෙනෙකු සහ අවශ්‍යතා කළමනාකරණය කරන Product Owner කෙනෙකු වැනි භූමිකාවන් ඇත. කණ්ඩායම විසින්ම තම කාර්යයන් සංවිධානය කරගැනීම (self-organizing) Agile හි මූලික ලක්ෂණයකි.

අවසාන වශයෙන්

මෘදුකාංග ව්‍යාපෘති කළමනාකරණය යනු තාක්ෂණික සැලැස්මක්, සාර්ථක නිෂ්පාදනයක් බවට පත් කරන විනයයි. එය නොමැතිව, හොඳම අදහස් පවා අසාර්ථක ව්‍යාපෘති බවට පත්විය හැක.

මේ දක්වා අපි මෘදුකාංගයක් නිර්මාණය කිරීමේ ඉහළ මට්ටමේ (high-level) න්‍යායාත්මක කරුණු, සැලසුම්කරණය සහ කළමනාකරණය පිළිබඳව ඉගෙන ගත්තෙමු. දැන්, එම සැලසුම් යථාර්ථයක් බවට පත් කරන මූලිකම තාක්ෂණික කුසලතාව, එනම් ක්‍රමලේඛනය (programming) වෙත පිවිසීමට කාලයයි. අපගේ ඊළඟ මොඩියුලයෙන් "වැඩසටහන්කරණ මූලික සංකල්ප" (Programming Concepts) සමගින් අපි එම ගමන ආරම්භ කරමු.