2009-03-16 15 views

उत्तर

35

कार्यक्रम प्रबंधक = बेहतर प्रबंधक में प्रोजेक्ट मैनेजर। सॉफ़्टवेयर आर्किटेक्ट = क्लीनर टी-शर्ट में सॉफ़्टवेयर इंजीनियर।

+0

अच्छी तरह से कहा, सिवाय इसके कि मैंने हमेशा सॉफ्टवेयर इंजीनियर के रूप में काफी पेशेवर के रूप में सोचा था। शायद "एक स्वच्छ टी शर्ट में सॉफ्टवेयर डेवलपर" की तरह। ;) – Joel

+0

तो एस डेवलपर और एस अभियंता के बीच क्या अंतर है? यहां घूर्णन शब्द अलग-अलग हो जाते हैं ... – geocoin

+1

एस डेवलपर और एस अभियंता - यह निर्भर करता है कि पीईएनजी के आसपास क्या है। – BIBD

10

कार्यक्रम प्रबंधक: प्रोग्रामर

सॉफ्टवेयर आर्किटेक्ट के संबंध में गैर प्रोग्रामर: प्रोग्रामर

+0

वाईएमएमवी - क्या आप मार्टिन फाउलर को प्रोग्रामर के सम्मान की कमी मानेंगे? –

+0

मैं ज्यादातर लिंक किए गए लेखों से खींचे गए उपाख्यानों को संक्षेप में जोड़ रहा था। यह वास्तव में शर्तों की आपकी व्यक्तिगत परिभाषाओं पर निर्भर करता है। –

15

कार्यक्रम प्रबंधक के संबंध के बिना प्रोग्रामर: ग्राहक/बाजार की जरूरतों की समझ है और विशिष्टताओं को चलाता है। वह देव पर्यावरण (भाषा, उपकरण इत्यादि) से अवगत है और उत्पाद की कल्पना इस तरह से लिखता है जिसे डेवलपर्स द्वारा समझा जाता है। यदि देव/परीक्षण टीमों को आवश्यकताओं पर स्पष्टता की आवश्यकता है तो वे प्रोग्राम मैनेजर पर जाते हैं।

आर्किटेक्ट: किसी समस्या को देखते हुए, एक सॉफ़्टवेयर समाधान तैयार करता है। इसमें प्रोग्राम नियंत्रण प्रवाह शामिल है, जहां घटक स्थित हैं, वे कैसे इंटरैक्ट और क्लास डिज़ाइन इत्यादि हैं।

जबकि आर्किटेक्ट की स्थिति काफी अस्पष्ट है, अलग-अलग कंपनियों के पास प्रोग्राम मैनेजर के लिए अलग-अलग अर्थ हैं।

0

प्रोग्राम प्रबंधक व्यवसाय की आवश्यकताओं और ग्राहक के दृष्टिकोण से उत्पाद के दृश्य को जानता है। इस प्रकार, यह प्रोजेक्ट मैनेजर की तरह है यदि कोई उत्पाद प्रोजेक्ट की तरह बनता है।

सॉफ्टवेयर आर्किटेक्ट तकनीकी आवश्यकताओं और डेवलपर के परिप्रेक्ष्य से उत्पाद के दृश्य को जानता है। इस प्रकार, यह एक डेवलपर की तरह है जो चीजों की समग्र संरचना का निर्धारण करता है।

कम से कम मैं उन्हें अलग करता हूं।

2

एक प्रोग्राम मैनेजर एक वितरण योग्य (उदाहरण के लिए, एक उत्पाद) के स्वास्थ्य और प्रगति की देखरेख करता है। इसमें लोगों और उनके समय का प्रबंधन, लागत ओवररन्स को प्रक्षेपित करने और समाप्त करने, यह सुनिश्चित करने के लिए कि व्यक्तिगत परियोजना मील का पत्थर मिलते हैं, वितरित करने योग्य, परिभाषित मानकों और बुनियादी ढांचे की स्थिति पर हितधारकों का जवाब देते हैं।

"सॉफ्टवेयर आर्किटेक्ट" कुछ हद तक घबराहट शब्द है जो किसी ऐसे व्यक्ति का वर्णन करता है जिसका आउटपुट सॉफ़्टवेयर का डिज़ाइन (और संभवतः निर्माण) है। यह एक परियोजना के एक हिस्से से पूरे उत्पाद में कुछ भी हो सकता है। सॉफ़्टवेयर आर्किटेक्ट प्रोग्राम मैनेजर के साथ काम करता है यह सुनिश्चित करने के लिए कि सॉफ़्टवेयर का डिज़ाइन उत्पाद के इरादे और लक्ष्यों से मेल खाता है, मानकों का पालन करता है, एक प्रशासन मॉडल में अनिवार्य प्रक्रियाओं का पालन करता है, वित्तीय आवश्यकताओं को पूरा करता है, और इसी तरह।

15

'द मिथिकल मैन-महीने' में फ्रेडरिक पी। ब्रुक्स प्रोग्राम मैनेजर को एक निर्माता और सॉफ़्टवेयर आर्किटेक्ट की तुलना मूवी एडिटर से करता है।

+0

हमें उस तुलना की याद दिलाने के लिए धन्यवाद। +1 – Alkini

10

'पोर्टफोलियो आधारित परियोजना प्रबंधन' के वर्तमान फैशन में कार्यक्रम प्रबंधक कई परियोजना प्रबंधकों और प्रगति पर कई परियोजनाओं के लिए जिम्मेदार परियोजना प्रबंधन कार्यालय में अग्रणी स्थान है। कार्यक्रम प्रबंधक आमतौर पर मिसाइज्ड और बड़े उद्यमों में मौजूद होता है और वे परियोजना कलाकृतियों के मालिक होते हैं और व्यवसाय को समझते हैं। वे कार्यकारी स्तर प्रबंधन की रिपोर्ट करते हैं और बजट और समयरेखा से रहते हैं और मर जाते हैं। शीर्षक आमतौर पर सॉफ्टवेयर प्रोग्राम के संबंध में नहीं बल्कि कार्यक्रम का सामान्य अर्थ है। पोर्टफोलियो मॉडल में एक व्यवसाय में परियोजनाओं में विभाजित परियोजनाओं का एक पोर्टफोलियो होता है जिसमें प्रत्येक कार्यक्रम परियोजनाओं में टूट जाता है।

एक उद्यम में एक सॉफ्टवेयर आर्किटेक्ट एक तकनीकी व्यक्ति है जो व्यवसाय के भीतर कई प्रणालियों और अनुप्रयोगों के एकीकरण के लिए जिम्मेदार है। व्यक्ति व्यवसाय प्रक्रियाओं को समझने और प्रौद्योगिकी को सक्षम करने के द्वारा वास्तुकार बन जाता है जो दिन-दर-दिन व्यवसाय चलाता है। उद्यमों में आर्किटेक्ट कैरियर ट्रैक डार्क साइड (यानी प्रबंधन) का उपयोग किए बिना प्रौद्योगिकी दिमागी व्यक्तियों को आगे बढ़ने का एक तरीका बन गया है।

+0

मुझे पता है कि मेरी परिभाषा जोएल की तरह कुछ नहीं है। यह सामान्य संपादन के लिए है क्योंकि कॉर्पोरेट वातावरण में किसी के पास सॉफ्टवेयर डेवलपमेंट कंपनी में किसी के मुकाबले अलग-अलग अनुभव होंगे। –

+0

"उद्यम" परिप्रेक्ष्य के लिए धन्यवाद। +1 – Alkini

+0

हाँ यह भी मैंने देखा है - सुंदर वरिष्ठ व्यक्ति कार्यक्रम प्रबंधक। प्रोग्राम मैनेजर एक नया कार्यालय स्थापित करने से सबकुछ में शामिल हो सकता है (क्या हमारे पास 1000 सलाहकारों के लिए पर्याप्त पार्किंग है जो हमारी नई उद्यम $ चीज बनाने के लिए आ रहे हैं? पर्याप्त कुर्सियां?) आवश्यकताओं और विकास की निगरानी करने के लिए, यह सुनिश्चित करने के लिए कि परिवर्तन होता है $, प्रबंधन के लिए संगठन? लाखों को यह सब करने की ज़रूरत है। –

1

मैं सॉफ़्टवेयर विकास में कार्यक्रम प्रबंधक शब्द के दो अलग-अलग उपयोगों में आया हूं।

एक ऐसा है जो मैं माइक्रोसॉफ़्ट संस्करण के रूप में सोचता हूं, जो कि अन्य कंपनियों के उत्पाद प्रबंधक के समान है। वे बाहरी रूप से सामना कर रहे हैं, इसलिए वे उत्पाद से क्या 'हितधारकों' (ग्राहकों, व्यापार, आदि) चाहते हैं, और विकास टीम को संवाद करते हैं। मेरा मानना ​​है कि माइक्रोसॉफ्ट आम तौर पर कुछ प्रकार के तकनीकी नेतृत्व के साथ प्रोग्राम मैनेजर को जोड़ता है, जो वास्तव में विकास टीम की ओर जाता है। मेरे पास इस प्रकार के प्रोग्राम मैनेजर (कम से कम उस नाम के तहत) का कोई सीधा अनुभव नहीं है, जो मुझे पता है कि मैंने Spolsky articles पढ़कर सीखा है।

शब्द का दूसरा उपयोग मैं ब्रिटिश OGC Programme Manager उपयोग के रूप में सोचता हूं। चूंकि मैंने पिछले 11 वर्षों से ब्रिटेन में काम किया है, इसलिए मुझे नहीं पता कि अमेरिका या अन्य जगहों में शब्द का व्यापक रूप से उपयोग किया जाता है। इस प्रकार के प्रोग्राम मैनेजर कई परियोजना प्रबंधकों की देखरेख करता है। इस अर्थ में एक 'कार्यक्रम' एक बड़ा प्रयास है जिसके लिए कई परियोजनाओं को प्रायोजित करने की आवश्यकता होती है, अक्सर कई विषयों में। एक आईटी कार्यक्रम में एक या अधिक सॉफ्टवेयर डेवलपमेंट प्रोजेक्ट हो सकते हैं, साथ ही होस्टिंग इंफ्रास्ट्रक्चर को डिज़ाइन और निर्माण करने के लिए एक परियोजना के साथ, एक समर्थन संगठन, साथ ही साथ गैर-तकनीकी परियोजनाएं जैसे मार्केटिंग अभियान की योजना बनाना।

"सॉफ़्टवेयर आर्किटेक्ट" का प्रयोग विभिन्न तरीकों से भी किया जाता है, लेकिन आम तौर पर बोलते हुए, वे सभी किसी भी पट्टी के प्रोग्राम मैनेजर से कहीं ज्यादा तकनीकी होते हैं। यह आमतौर पर एक तकनीकी नेतृत्व भूमिका है।

1

यदि सॉफ्टवेयर नहीं बेचता है तो आप प्रोग्राम प्रबंधक (और बिक्री/विपणन) से बात कर सकते हैं, अगर सॉफ्टवेयर काम नहीं करता है तो आप सॉफ्टवेयर आर्किटेक्ट से बात कर सकते हैं। प्रोग्राम मैनेजर चीजों के वाणिज्यिक पक्ष पर अधिक सांद्रता है।

संबंधित मुद्दे