Sunday, June 22, 2014

Macro Management in Program Management

MICRO and MACRO perspectives of Program Management are quite different and Complimentary .
In this blog I would try just focus on Macro Aspect of Management to help achieve Project Management goals.

“Macro” comes from the Greek word for large. Macro-management comes with lot of questions to be answered for.
Not all of these may be answered in one go. Rather I would like to emphasize on the points important in achieving
overall objectives of macro management.
Following points emphasis the Macro-Management Technique


1) Educating the employee about the VISION of the Organization
It is a crucial factor whether the organization has a Proper vision or not. Well the word Proper is significant as it covers not only the business objectives of the organization but also the Personal aspirations of the Employee; also it is very important to have a balance. Ensuring this point is essentially going to  turn a corporate structure into a harmonious and well-organized group of equal contributors working towards a common objective.

2) SMART Objectives
This is a well defined Management Term set to ensure Quantifiable Goals. SMART stands for Specific, Measurable, Attainable, Relevant, Time-bound. I think there is no need to explain each of these, but the important point is WHERE to apply these values and HOW. HOW is a pure Project Management Technique we come across from various sources but to answer WHERE -it is in various Knowledge Areas of Project Management  like Integration, Scope, Time, Cost, Quality, Human Resource, Communication, Risk, Procurement and Stakeholder Management.

3) Trusting the Employees
Once someone told “You’ll always miss 100% of the shots you don’t take” . Fully trusting your employees might seem like a big risk, but truth is to be told, employees thrive (Only) in trust based environments. Frustration can build up when knowledgeable and qualified employees are powerless to take immediate action.
Having trust in employees will not only engage them in their regular responsibilities but encourage them to use there power in more creative, innovative and productive way
.

4) Cross-Mentoring
Different people have different capabilities, one can be strong in a specific area and the others can be skilful in a different areas . I believe Cross mentoring in an a organization can achieve a lot . And this point becomes crucial for people having leadership qualities and leading an organization by engulfing the trust in each and everyone by allowing them to share their skills and knowledge .

Well there may be a number of major minor points which may be added into it but if we follow at least these points then the following Words of Horace apply here --- "What's well begun is half done."

Sequence of steps need to follow for implementing SSO

HOW DOES SSO WORKS THEROTICALLY

Step 1 > Client issues the first request in the session (no user/password/whatsoever)

Step 2 >Server reads this and says 'I don't know who you are, bring me some identification information' (technically it sends some header)

Step 3 >Browser once got such a response issues a connection to the AD server (it includes Kerberos server implementation) and obtains some identification information

Step 4 > Browser issues a request to your web server a ticket (identification information in security jargon) to the web server.

Step 5 > Web server reads and parses this ticket, talks by itself to the kerberos server and ensures that the ticket is valid and correct.

Step 6 > Web Server allows the client to connect, the username is accessible from the request, you can store it on HttpSession if you want.

 usually the web-server part is application specific and as such it is implemented with the help of java web filter + some configurations may be required on the application server side .

although We can implement this stuff by ourself, we'll probably prefer to use some thirdparties.(like OPENSSO , CAS etc)
The things become complicated when you're using a lot of web servers for your application, trying to set up cross domain authentication and so forth.

I would recommend you to take a look on CAS

Its basic idea is to delegate the authentication related stuff (that involves working with kerberos or whatsoever) to the dedicated server, so instead of talking directly to the kerberos server your web server redirects the user to the cas server and it manages the authentication by itself.

Technically you drop a couple of jars with web filter implementation, define your filter, deploy and set up the CAS server with the details of the available kerberos server and it should work :)


implementing CAS at java applications
https://wiki.jasig.org/display/CASC/CAS+Client+for+Java+3.1

more to read >
https://wiki.jasig.org/display/CASUM/Home
http://blogs.xtivia.com/home/-/blogs/configuring-liferay-6-1-ee-as-saml-identity-provider-and-service-provider?p_p_auth=RyQYHIH7