Tuesday, January 25, 2005

تقييم وتحديث دور إدارة الجمعيات الأهلية لدعم وتنمية المشروعات الصغيرة

كلية التجارة وإدارة الأعمال
قسم إدارة الأعمال
تقييم وتحديث دور إدارة الجمعيات الأهلية
لدعم وتنمية المشروعات الصغيرة

Evaluating & Modernizing The
Management’s Role of Non- Governmental
Organizations "NGO'S" in Supporting
& Developing Small Enterprises
بحث مقدم للحصول علي درجة الماجستير في إدارة الأعمـال
إعداد
الباحثة/ هداية الله احمد طموم
تحت إشراف

2004

الفصل الأول
الجمعيات الأهلية


ويشمل هذا الفصل:
المبحث الأول : تعريف وسمات الجمعيات الأهلية.
المبحث الثانى : أهمية ودور الجمعيات الأهلية فى مصر .


المبحث الأول
تعريف وسمات الجمعيات الأهلية
تعد الجمعيات الأهلية التطوعية من أهم صور المنظمات الاجتماعية المعاصرة التى انبثق عنها الفكر الإنسانى المتقدم تعبيراً عن القيم الإنسانية النبيلة كالتكافل والتساند والمشاركة الإيجابية للتخفيف من المعاناة فى مواجهة المشكلات ورفع مستوى معيشة الإنسان والوصول به إلى حياة أفضل.
أولاً: تعريف الجمعيات الأهلية:
وتعانى تعريفات مصطلح Ngo's من التعدد الواضح فى التصنيفات والتشتت فى المعايير وكثرة الأسس التى يقوم عليها التعريف والتى تتراوح ما بين الهيكل والوظيفة.
وفيما يلى بعض التعريفات:
• المنظمات غير الحكومية هى منظمات خاصة تطوعية (Pvo's) تم تأسيسها للمساهمة فى تنمية المجتمع. وهذه المنظمات فى الأغلب غير هادفة للربح وعملها خيرى بعيداً عن الاعتبارات السياسية ولكونها ذات توجه تنموى فإن أعمالها تقوم على أهداف محددة تمثل احتياجات مؤسسيها( ).
• المنظمات غير الحكومية عبارة عن مجموعات أو مؤسسات تعمل بشكل مستقل عن الحكومة سواء أكان بشكل كامل أو شبه كامل، وتتسم أعمالها بالأساس بالإنسانية والتعاونية أكثر من تميزها بسيادة القيم التجارية.
• عرف البنك الدولى المنظمات غير الحكومية "Ngo's" بأنها: منظمات خاصة تقوم بأنشطة لدفع المعاناة، والدفاع عن مصالح الفقراء وحماية البيئة وتحقيق تنمية المجتمع( ).
• تعريف الأمم المتحدة: "المنظمات غير الحكومية"مجموعات طوعية لا تستهدف الربح ينظمها مواطنون على أساس محلى أو قطرى أو دولى. ويتمحور عملها حول مهام معينة يقودها أشخاص ذو اهتمامات مشتركة وهى تؤدى طائفة متنوعة من الخدمات والوظائف الإنسانية وتطلع الحكومات على شواغل المواطنين وترصيد السياسات وتشجيع المشاركة السياسية على المستوى المجتمعى.( )
• مفهوم المنظمات غير الحكومية Ngo's يشمل مجموعات مختلفة ومؤسسات مستقلة جزئيا أو كلياً عن الحكومة وتتسم مبدئياً بالإنسانية والتعاونية بعيداً عن الأهداف التجارية ومصطلح NGO'S" يمكننا أن نعتبره ذو طبيعة خاصة: حيث يمكننا إدراك مفهومه من خلال تحديد الحالات التي لا تندرج تحته( ).
وتضيف الباحثة أن عالم الإدارة المعروف بيتر ف. دراكر قد تناول الجمعية الأهلية ضمن مؤسسات القطاع الثالث ووصفها بأنها مؤسسة تغيير السلوك الإنسانى.( )
والباحثة تقدر هذا التعريف وتعتبره معبراً عن حقيقة لمستها هى بنفسها من خلال هذه الدراسة، حيث لاحظت أن العاملين أو المتعاملين مع الجمعيات الأهلية الداعمة للمشروعات الصغيرة اكتسبوا صفات سلوكية إيجابية هى التفكير الابتكارى، التخطيط، تقدير وإدارة الوقت.
وفى ضوء استعراضنا للمفاهيم المختلفة للـ Ngo’s لا يمكننا أن نغفل التعريف القانونى لتلك المنظمات وهو
"كل جماعة ذات تنظيم مستمر لمدة معينة أو غير معينة تتألف من أشخاص طبيعيين أو أشخاص اعتبارية أو منهما معاً لا يقل عددهم في جميع الأحوال عن عشرة وذلك لغرض غير الحصول على ربح مادى"( ).
ويجدر الإشارة إلى أن غالبية المصطلحات السابقة غير شائعة الاستخدام- وهى كلها تعبر عن مفهوم واحد، وفى غالبية الأحوال يتم التعبير عن هذا القطاع بمصطلح "القطاع الأهلى" ( ).
ثانياً: سمات الجمعيات الأهلية:
تتسم الجمعيات الأهلية بالسمات والخصائص التالية:
(1) لها هيكل رسمى، والعنصر المهم هنا هو اتسام الجمعية بالدوام إلى حد كبير. فوجود جماعة غير رسمية ولظروف طارئة أو مؤقتة لا تعتبر جزء من القطاع الأهلى فى ضوء هذه السمة، بغض النظر عما تقدمه تلك الجماعة من مساهمات للمجتمع.
(2) غير حكومية بمعنى أنه لا يجب أن تكون لها علاقة هيكلية مؤسسية بالحكومة وإن كان بإمكانها الحصول على مساعدات مالية أو فنية من الحكومة.
(3) غير هادفة للربح، ويمكن للجمعية أن تحقق ربح خلال العام، ولكن هذا الربح لا يوزع على مجلس الإدارة وإنما يستخدم فى دعم نشاط الجمعية.
(4) ذاتية الحكم، أى أن الجمعية تحكم نفسها بنفسها عن طريق وجود إجراءات داخلية وليس عن طريق كيانات خارجية.
(5) تطوعية، بحيث تشتمل على درجة من التطوعية فى أنشطة وإدارة المنظمة. وهذا لا يعنى أن كل أو معظم الموارد المقدمة للجمعية يجب أن تكون من خلال إسهامات تطوعية أو أن معظم القائمين عليها يكونوا من المتطوعين.
(6) غير دينية، والمقصود هنا عدم تورط الجمعية فى الدعوة إلى أو تعليم ديانة ما.
(7) غير سياسية، بمعنى أن لا يكون لها تحالفات مع الأحزاب السياسية رغم ما قد يكون لها من مواقف بشأن بعض القضايا السياسية( ).
• ولنا أن نلاحظ فى ضوء ما استعرضناه من سمات وخصائص أنه على عكس الحال مع تعريفات الجمعيات الأهلية المتعددة والمختلفة، يتضح لنا أن سمات هذه الجمعيات تتفق فى أغلب الأحيان ومعظمها.
علاوة على ذلك، وفى ضوء العرض لسمات وخصائص الجمعيات الأهلية، يتضح لنا أن هنالك منظور أوسع يمكننا تناول الخصائص من زاويته ألا وهو "البعد الإستراتيجى" وعليه يمكن بلورة أهم خصائص وسمات الجمعيات الأهلية والتى تنعكس بشكل مباشر على إعداد التخطيط الإستراتيجى لهذه المنظمات كما يلى:
أ - أن إحداث التمكين (بناء قدرات الأعضاء والمجموعات المستهدفة، ودعمها، وتنميتها) هو غاية وليس وسيلة. فالتمكين فى الجمعيات الأهلية هو محور وغاية وهدف ورؤية ورسالة ذات بعد استراتيجى حاكم فى المنظمات غير الحكومية.
ب- أنها منظمات غير هادفة للربح، وحتى لو استهدفت الربح، فإن الربح وسيلة مرحلية يكون عائده موجها نحو تدعيم التمكين للمجموعات المستهدفة.
ج- أنها منظمات قائمة على العمل التطوعي وحرية الانضمام ويشكل فيها العمل التطوعى نصيب ملموس إن لم يكن فى أغلب المنظمات فعلى الأقل يكون هو السمة الأساسية فى العديد من الجمعيات الأهلية. وأن هذا العمل التطوعى يسير بالتوازى مع أولئك العاملين فى الجمعيات وفق علاقة رسمية وقانونية يحكمها عقد العمل.
ومن هنا يصبح جزء من قوة العمل يحكمها فقط مدى الانتماء والالتزام نحو الجمعية (المتطوعون) وجزء آخر يحكمه القانون (العاملون التنفيذيون) وجزء ثالث من المتطوعين الذين يتولون مناصب إدارية فى الجمعية أعضاء مجلس الإدارة) يحكمهم الالتزام والانتماء والقانون.
د - أن هذه المنظمات فى أغلب أحوالها مقيدة بحدود نشاط معين، ونطاق جغرافى لا تتجاوزه، فهى حرة فى حدود قيود معينة توضع منذ بداية تكوينها فى نظامها الأساسى.
هـ- أنها تعمل غالباً فى إطار نظم إدارية مبسطة تتناسب وحجم نشاط محدود وهو أمر قد يعوق فى الكثير من الأحوال توسعها ونموها مما يتطلب تغيير جذرى فى هذه النظم.
و - أن تصميم المنظمة غير الحكومية قائم على أساس قيامها بالدفاع عن مصالح جماعات معنية وحمايتها وتمكينها من اجل حياة أفضل وهو أيضاً قد لا يتوفر فى النوعيات الأخرى من المنظمات.
ز- دور هذه المنظمات اللاحق لإحداث التوازن الهيكلى فى المجتمع والذى ينتج عن حدوث تغيرات فى هيكل الاقتصاد، لتلاحق تأثير هذه التغيرات على مجموعاتها المستهدفة وأعضائها وهو دور لا يقع على عائق المنظمات الأخرى.
ح- أن نمط التنافس فى العلاقات بين المنظمات غير الحكومية التى تعمل فى نشاط نوعى واحد غير قائم ولا يجب أن يقوم فالأساس هو التعاون والتفاعل الإيجابى بينهم.
ط- تخضع هذه المنظمات لنمط التنظيم العضوى القائم على روح الفريق والمسئولية الجماعية.
ى- تعدد مصادر تمويل هذه المنظمات وعدم ثباتها واستقرارها يجعل من مشكلة تعظيم مصادر التمويل لها محور ذات بعد استراتيجى فى حركتها( ).

Thursday, January 13, 2005

Unit Testing and Testability

Overview

A revolution has occurred
in software development over the last few years. From being the poor cousin of
development, despised by those with more interesting and important things to do,
testing— at least, unit testing—has been welcomed into the
heart of the development process. At last, rather than seen as a tedious
requirement of certain processes (for example, to achieve ISO 9001 compliance),
it has been integrated into a highly productive way of working.

I think this is a very important, and very beneficial, change. In
this chapter I’ll try to explain why I attach so much importance to testability,
and why testability considerations should influence how you go about designing
and implementing applications.


Late in 2002 I spent several weeks developing a testing strategy
for a large J2EE project for a major financial institution. I was working
alongside a testing guru, and my remit was to combine my J2EE expertise with his
experience formulating testing strategies for large projects to formulate a
testing strategy covering the entire project lifecycle. I was asked to recommend
changes in development practice where necessary to ensure that the strategy was
applied. I was also to ensure the developers came onboard, and mentor them in
the coding and testing techniques.

I learned a lot.

  • I discovered that my code was much easier to test than
    that of most of the developers on the project. My programming style, described
    in Expert One-on-One J2EE, lends itself to effective
    unit testing. The Spring Framework makes this style easy to practice.

  • I became increasingly convinced of the value of test driven (or test first) development.

  • I became increasingly convinced that EJB is an enemy of
    testability.

  • I reached a better understanding of the goals of unit
    testing.

  • I became more convinced of the value of mock objects in
    unit testing.

  • I reviewed a number of testing tools.


On the negative side, I was reminded how difficult it is to
interest “old school” developers in unit testing or test first development, and
how difficult it is to introduce agile practices into a large, bureaucratic
organization.


EJB Under the Spotlight

Like most of my colleagues, I was excited by the promise
of EJB when it first appeared. I believed it was the way forward for
enterprise middleware. However, I've since revised my opinions, in the light
of my experiences and those of many colleagues.


Much has changed since the EJB specification was conceived:

  • Parts of the specification's design now seem dated.
    For example, dynamic proxies, introduced in J2SE 1.3, call into question the
    container code generation envisaged in the EJB specification and the
    multiple source files needed to implement every EJB.


  • The traditional link between EJB and RMI remoting is
    looking dated, because of the emergence of web services and the recognition
    that EJBs sometimes need only local interfaces. EJB is a heavyweight model
    for objects that don't need to offer remote access.


  • This is a special case of the fact that basing typical
    applications around distributed business objects-the architectural choice
    EJB implements best-has proved problematic.


  • Usage of EJB indicates its strengths and weaknesses.
    Most developers and architects have restricted their use of EJB to stateless
    session beans and (if asynchronous calls are needed) message-driven beans.
    The relative simplicity of the services provided by the EJB container to
    support SLSBs means that the overhead of an EJB container is hard to justify
    in such applications.

  • Although EJB has been around for five years, and its
    use is a given in many J2EE projects, it has become apparent that its
    complexity means that many developers still don't understand it. For
    example, many developer candidates I interview can't correctly describe how
    EJB containers handle exceptions and how this relates to transaction
    management.

  • The EJB specification is becoming more and more
    complex in an attempt to address problems with EJB. It's now so long and
    complex that few developers or architects will have time to read and
    understand it. With specifications, as with applications, the need for
    continual workarounds and constantly growing complexity suggests fundamental
    problems.

  • The complexity of EJB means that productivity in EJB
    applications is relatively poor. A number of tools try to address this, from
    'Enterprise' IDEs to XDoclet and other code generation tools, but the
    complexity still lurks under the surface and imposes ongoing costs.

  • Rigorous unit testing and test driven
    development
    have become increasingly, and deservedly, popular. It's
    become clear that applications making heavy use of EJB are hard to test.
    Developing EJB applications test first requires a lot of
    fancy footwork; essentially, minimization of the dependence of application
    code on the EJB container.

  • The emergence of Aspect Oriented
    Programming
    (AOP) points the way to more powerful-yet potentially
    simpler-approaches to the middleware problems addressed by EJB. AOP can be
    viewed in part as a more general application of the central EJB concepts,
    although of course it's much more than a potential replacement to EJB.

  • Source level metadata attributes, as used in .NET,
    suggest a superior alternative in many cases to the verbose XML-based
    deployment descriptors used since EJB 1.1. EJB 3.0 looks like it's heading
    down that road as well, but it's a way off and will carry a lot of baggage.

Experience has also shown EJB to incur greater cost and
deliver fewer benefits than were initially predicted. Developers have
encountered intractable problems that weren't apparent when EJB first
appeared. Experience has shown that EJB fails to deliver in several areas:

  • It doesn't necessarily reduce complexity. It
    introduces a lot of complexity.

  • The entity bean experiment for persistence has largely
    failed.

  • Applications using EJB tend to be less portable
    between application servers than applications using other J2EE technologies,
    such as servlets.

  • Despite the promises that EJB would prove the key to
    scalability, EJB systems often perform poorly and don't necessarily scale up
    well. Although statistics are hard to come by, anecdotal evidence suggests
    that the overhead of excessive use of EJB necessitates re-architecture or
    causes outright failure in a significant number of projects.

  • EJB can make simple things hard. For example, the
    Singleton design pattern (or alternatives) is hard to implement in EJB.

All of these issues suggest that it's wise to analyze exactly
what the value proposition is before using EJB. I hope to equip you with the
tools to do this effectively and dispassionately.