CSIC 2011( August ) - Computer Society Of India
Transcription
CSIC 2011( August ) - Computer Society Of India
ISSN 0970-647X | Volume No. 35 | Issue No. 5 | August 2011 ` 50/- CSI Communications Knowledge Digest for IT Community An Overview of the Challenges and Promises of Autonomic Computing 6 IT Strategy Nuances ‘What’ and ‘Why’ of Autonomic Computing 13 Overcoming Cellular Connectivity Limitations with M2Blue Autonomic Distributed Data Caching 16 www.csi-india.org Exclusive Interview with Prof. Bjarne Stroustrup, Creator of C++ 22 Programming.Learn(“Perl”) Regular Expressions in Perl 21 CSIC August 2011.indd A Is IT Valued ? 28 Role of HR in Mergers and Acquisitions 31 10 Rules to Reverse the Email Spiral 34 ICT news briefs in July 2011 37 8/6/2011 12:44:45 PM Your information, whether public or private, is not safe to be exchanged Can you risk your information to a Non-Information Security professional ? Hire the Job-Ready IS professional from MIEL Accredited by Computer Society of India(CSI) 1 -Y ear Programme PROGRAMME IN INFORMATION SECURITY MANAGEMENT MIEL M IE EL A Academy d iis tthe h education d tii services i d department t t off MIEL MIEL L e-Security S iitt Pvt. P t Ltd. Lttd an end-to-end L dt d Information I f ti Security S it Solutions company with strong values and a business model that has helped service over 1000 premium National and International clients. In order to bridge the demand-supply gap of Information Security professionals, MIEL’s flagship educational offering, Programme In Information Security Management (PRISM), a one year intensive training program designed to create professionals who have been trained to implement Information Security solutions at an enterprise level. PRISM addresses all components of Information Security (viz. technology, processes & people) . The roll out of PRISM has started and students benefit to get a leap-start to their professional life with rewarding job career prospects in the Information Security domain. This course is accredited by Computer Society of India(CSI) and the students are jointly certified by MIEL an nd C omputer rS ocie ety yo dia (C CSI). and Computer Society off Ind India (CSI). Salient Features of PRISM Conducted by India's premier Academy specializing in Information Security Curriculum designed by subject matter experts. Comprehensive hands-on course with 80% practical exposure. State-of-the-art training infrastructure. Highly qualified ,internationally accredited and experienced instructors with domain knowledge in various disciplines of information Security Soft Skills training programme by specialized trainers to prepare candidates for ccorporate orrp por orratte a ass sssig gn nm men nts. assignments. Student S tuden nt E Expertise xpertiise in n IS SD Domains om main ns • • • • • • • • • Network Security and Information Security Audit Application Security Enterprise Security Architecture Penetration Testing & Vulnerability Assessment Cyber Crime Investigation & Forensics Assurance & Risk Management Information Security Auditing Cloud Computing & Virtualization Managing Business Continuity & Disaster Recovery and many more… Projects P j t /Presentations /P t ti handled h dl d b by Students St d t Dll injection demo User mode rootkit Network sniffer Network packet injector Cryptography Fundamentals –Cryptool exercises Implement Defense in Depth Kerberos-SSO Security Frameworks and Guidelines such as FISMA, COSO, COBIT, SAS 70, SOX, HIPAA, RBI Guidelines and DSCI • Security in Cloud Computing • • • • • • • • View our Students Profiles & Projects on: http://www.miel.in/Educational_Services/summer_batch.html St d t Qualifications: Q liffi tii Student Budding professionals in IS from streams like B.E. B.Tech , MCA, B.Sc. and others in Computer Science ,IT ,Electronics and Communication and are market-ready to join in 1 month. For Details please contact : +91(022) 30096956 / 57 / 9321049908 or Email at: prism@mielesecurity.com MIEL e-Security Pvt. Ltd. AML Centre 1, 4th floor, 8 Mahal Industrial Estate, Off. Mahakali Caves Road, Andheri (E), Mumbai - 400 093, India. Tel.: +91(022) 30096956 / 69 , Fax : +91(022) 26878062 Email : prism@mielesecurity.com URL : www.mielesecurity.com CSIC August 2011.indd B 8/6/2011 12:44:49 PM CSI Communications Contents Volume No. 35 • Issue No. 5 • August 2011 Cover Story Editorial Board Chief Editor Dr. R M Sonar 6 An Overview of the Challenges and Promises of Autonomic Computing Dr. John Strassner Practitioner Workbench 21 Programming.Learn(“Perl”) Regular Expressions in Perl Achuthsankar S. Nair & Parul Tyagi Editors Dr. Debasish Jana Dr. Achuthsankar Nair Resident Editor Mrs. Jayshree Dhere Technical Trends 13 Advisors Dr. T V Gopal Mr. H R Mohan Published by Executive Secretary Mr. Suchit Gogwekar For Computer Society of India 16 ‘What’ and ‘Why’ of Autonomic Computing 22 Exclusive Interview with Prof. Bjarne Stroustrup, Creator of C++ Debasish Jana Ms. Shanta Rangaswamy and Dr. Shobha G. CIO Perspective Research Front Overcoming Cellular Connectivity Limitations with M2Blue Autonomic Distributed Data Caching Brian Dougherty, Daniel Guymon, Douglas C. Schmidt and Jules White 28 31 IT Strategy Nuances Is IT Valued ? Anil V Vaidya HR Role of HR in Mergers and Acquisitions Kishor Bhalerao PLUS Product Showcase : Monitoring Application Delivery with nGenius® and Sniffer® Jayadev Nair ICT@Society : 10 Rules to Reverse the Email Spiral 34 Achuthsankar S. Nair Brain Teaser 35 Debasish Jana Ask an Expert 36 Debasish Jana Please note: CSI Communications is published by Computer Society of India, a non-profit organization. Views and opinions expressed in the CSI Communications are those of individual authors, contributors and advertisers and they may differ from policies and official statements of CSI. These should not be construed as legal or professional advice. The CSI, the publisher, the editors and the contributors are not responsible for any decisions taken by readers on the basis of these views and opinions. Although every care is being taken to ensure genuineness of the writings in this publication, CSI Communications does not attest to the originality of the respective authors’ content. © 2011 CSI. All rights reserved. Instructors are permitted to photocopy isolated articles for non-commercial classroom use without fee. For any other copying, reprint or republication, permission must be obtained in writing from the Society. Copying for other than personal use or internal reference, or of articles or columns not owned by the Society without explicit permission of the Society or the copyright owner is strictly prohibited. 33 Happenings@ICT: ICT news briefs in July 2011 37 H R Mohan On the Shelf! – Book review 38 Dr. Suneeta Sane Call for Papers : National Conference on Emerging Trends in Info. & Communication Tech. Dr. D D Sarma Call for Papers : COMAD 2011 39 39 Balasubba Raman Guruswamy ExecCom Transacts 41 Prof. H R Vishwakarma Know Your Chapters 42 Sushanta Sinha Announcements : CSI Constitution Amendment, Nomination of Dr. N L Sarda and CSI Membership Statistics Report 43 CSI News 44 CSI Communications | August 2011 | 1 CSIC August 2011.indd 1 8/6/2011 12:44:57 PM Know Your CSI Executive Committee (2011-12/13) » President Mr. M D Agrawal president@csi-india.org Vice-President Mr. Satish Babu vp@csi-india.org Hon. Treasurer Mr. V L Mehta treasurer@csi-india.org Immd. Past President Prof. P Thrimurthy profpt@rediffmail.com Hon. Secretary Prof. H R Vishwakarma secretary@csi-india.org Nomination Committee Members (2011-2012) Prof. (Dr.) A K Nayak Mr. P R Rangaswami Mr. Sanjay K Mohanty Region - I Mr. R K Vyas Delhi, Punjab, Haryana, Himachal Pradesh, Jammu & Kashmir, Uttar Pradesh, Uttaranchal and other areas in Northern India. Region - II Prof. Dipti Prasad Mukherjee Assam, Bihar, West Bengal, North Eastern States and other areas in East & North East India Region - III Mr. Anil Srivastava Gujarat, Madhya Pradesh, Rajasthan and other areas in Western India Region - IV Mr. Sanjay Mohapatra Jharkhand, Chattisgarh, Orissa and other areas in Central & South Eastern India Region - V Prof. D B V Sarma Karnataka and Andhra Pradesh Region - VI Mr. C G Sahasarabudhe Maharashtra and Goa Region - VII Mr. Ramasamy S Tamil Nadu, Pondicherry, Andaman and Nicobar, Kerala, Lakshadweep Region - VIII Mr. Jayant Krishna International Members Division-I : Hardware (2011-13) Dr. C R Chakravarthy div1@csi-india.org Division-II : Software (2010-12) Dr. T V Gopal div2@csi-india.org Division-III : Applications (2011-13) Dr. S Subramanian div3@csi-india.org Division-IV : Communications (2010-12) Mr. H R Mohan div4@csi-india.org Division-V : Education and Research (2011-13) Dr. N L Sarda div5@csi-india.org Regional Vice-Presidents Division Chairpersons Important links on CSI website » Structure & Organisation National, Regional & State Students Coordinators Statutory Committees Collaborations Join Now Renew Membership Member Eligibility Member Benefits Subscription Fees Forms Download BABA Scheme Publications CSI Communications* Adhyayan* R & D Projects Technical Papers Tutorials Course Curriculum eNewsletter* Current Issue Archives Policy Guidelines Events President’s Desk ExecCom Transacts News & Announcements archive http://www.csi-india.org/web/csi/structure http://www.csi-india.org/web/csi/structure/nsc http://www.csi-india.org/web/csi/statutory-committees http://www.csi-india.org/web/csi/collaborations http://www.csi-india.org/web/csi/join http://www.csi-india.org/web/csi/renew http://www.csi-india.org/web/csi/eligibility http://www.csi-india.org/web/csi/benifits http://www.csi-india.org/web/csi/subscription-fees http://www.csi-india.org/web/csi/forms-download http://www.csi-india.org/web/csi/baba-scheme http://www.csi-india.org/web/csi/publications http://www.csi-india.org/web/csi/info-center/communications http://www.csi-india.org/web/csi/adhyayan http://www.csi-india.org/web/csi/47 http://www.csi-india.org/web/csi/technical-papers http://www.csi-india.org/web/csi/tutorials http://www.csi-india.org/web/csi/course-curriculum http://www.csi-india.org/web/csi/enewsletter http://www.csi-india.org/web/csi/current-issue http://www.csi-india.org/web/csi/archives http://www.csi-india.org/web/csi/helpdesk http://www.csi-india.org/web/csi/events1 http://www.csi-india.org/web/csi/infocenter/president-s-desk http://www.csi-india.org/web/csi/execcom-transacts1 http://www.csi-india.org/web/csi/announcements CSI Divisions and their respective web links Division-Hardware http://www.csi-india.org/web/csi/division1 Division Software http://www.csi-india.org/web/csi/division2 Division Application http://www.csi-india.org/web/csi/division3 Division Communications http://www.csi-india.org/web/csi/division4 Division Education and Research http://www.csi-india.org/web/csi/division5 List of SIGs and their respective web links SIG-Artificial Intelligence http://www.csi-india.org/web/csi/csi-sig-ai SIG-eGovernance http://www.csi-india.org/web/csi/csi-sig-egov SIG-FOSS http://www.csi-india.org/web/csi/csi-sig-foss SIG-Software Engineering http://www.csi-india.org/web/csi/csi-sig-se SIG-DATA http://www.csi-india.org/web/csi/csi-sigdata SIG-Distributed Systems http://www.csi-india.org/web/csi/csi-sig-ds SIG-Humane Computing http://www.csi-india.org/web/csi/csi-sig-humane SIG-Information Security http://www.csi-india.org/web/csi/csi-sig-is SIG-Web 2.0 and SNS http://www.csi-india.org/web/csi/sig-web-2.0 SIG-BVIT http://www.csi-india.org/web/csi/sig-bvit SIG-WNs http://www.csi-india.org/web/csi/sig-fwns SIG-Green IT http://www.csi-india.org/web/csi/sig-green-it SIG-HPC http://www.csi-india.org/web/csi/sig-hpc SIG-TSSR http://www.csi-india.org/web/csi/sig-tssr Other Links Forums Blogs Communities* CSI Chapters http://www.csi-india.org/web/csi/discuss-share/forums http://www.csi-india.org/web/csi/discuss-share/blogs http://www.csi-india.org/web/csi/discuss-share/communities http://www.csi-india.org/web/csi/chapters * Access is for CSI members only. Important Contact Details » For queries, announcements, correspondence regarding Membership, contact member.services@csi-india.org For any other queries, contact helpdesk@csi-india.org CSI Communications | August 2011 | 2 CSIC August 2011.indd 2 www.csi-india.org 8/6/2011 12:45:30 PM President’s Message M. D. Agrawal From : president@csi-india.org Subject : President’s Desk Date : 1st August, 2011 Dear Friends Hope this finds you witnessing vibrancy in CSI activities. Thanks to CSI activists and our committee members for their efforts and passion. A New Era for ExecCom: CSI statutory committees on Research, Publication, Conference & Finance had deliberations in Bangalore on 23rd July, 2011 during which they came up with innovative strategies and made various recommendations to ExecCom, which was planned immediately thereafter on same day. ExecCom reflected and deliberated on key thrust areas namely, promoting quality education, plans for introduction of short term training programs thereby improving competency level of students, faculty & professionals, promoting fundamentals and research careers through symposiums, partnering with other organizations for organizing research conferences and promoting research journal and transactions. Partnership model for CSI certification programs is another initiative, wherein already four proposals are under progress. Research veteran, Prof. Shyam Sunder, Chief Editor, CSI Computing Journal, has taken the overall responsibility of Chairman of the Publication Committee. ExecCom members presented detailed future plans. Worthmentioning contributors are Past President, Prof. Thrimurthy on Academics and Awards, VP - Mr. Satish Baboo, Convener, Research Committee – Prof. Rajeev Sangal, Publication Committee Chairman - Prof. Shyam Sunder, Div. II Chairman - Dr. Gopal, RVP VII - Mr. Ramaswamy, RVP VI - Shekhar Shastrubudhe, RVP I - Dr Vyas, RVP V - Dr. Sarma, RVP VIII - Mr. Jayant Krishna, RVP II - Dr. Dipti, ASC - Mr. Ranga Raj Gopal, Hon. Secretary - Prof. Vishwakarma, Hon. Treasurer - Mr. V L Mehta, progress on constitutional amendment by Mr. Sawhney, progress on revival of defunct chapters by Dr. Bhatia, RVP III - Mr. Anil Srivastava for CSI IT awards and new thrust in his region, Mr. Bipin Mehta on YITP awards and Prof. Mini on skill development initiatives. Mr. Mahalingam and Prof. Raghavan briefed ExecCom progress on CSI transactions. On the part of ExecCom meetings, thanks to Mr. Ramasamy, Region V and VII regional meetings were also organized to decide plans for these regions. Sincere gratitude to all members for their zealous efforts and painstaking participation in discussions so as to envisage a pristine CSI. We need to build a vibrant team structure with resourceful and committed CSI activists for continuity of services to members. We witness now a new vibrancy in activities of Bangalore Chapter. My special thanks to Team & Chairman Bangalore Chapter. India Shines: It seems befitting of CSI to participate in its limited capacity in effective use of ICT for Nation building exercise and to address socio-economic issues. More than a decade ago, during Mr. Atal Vajpayee’s Government, IT task force made around 29 recommendations, the most important in context being the call for a national campaign for universal computer literacy which talks about countless schemes that will help students, teachers and schools procure computers and promises to have computers and Internet in every school by 2003. The report talks about strengthening IT programs in various universities and about starting SMART schools in each State. Still a good progress is to be realized in this important area. We may have thrust in our plans to promote Computer literary under our Social commitment, this will be fitting contribution of CSI for society and a good success will add pride for CSI Golden Jubilee celebrations in year 2014. Government is in the process of study and formation of the 12th Five Year Plan. Innumerable committees and sub-groups are engaged in defining suitable policies and plans on various aspects of growth and prospects in Information Technology and telecommunication sector. After my interaction with few senior directors at Ministry level, some interest has been shown, to know CSI’s view points especially on policies and plans for E-Innovation and R&D. Current study group for 12th Five Year Plan under R&D calls for recommendations in areas like: 1) Mechanism/strategies - to promote R&D for design-led manufacturing of products, packages and services, and also to suggest mechanisms to widen the R&D base in the country; 2) Strategies - to support technology startup companies and to promote innovation in academic and R&D institutes leading to eco-system for product development; 3) Kinds of incentives and mechanism - for enhancing creation and protection of intellectual property and to identify possible mechanism to increase contribution of R&D exercises carried out in the civilian sector towards specific applications in defense, atomic energy and space. Education and R&D remain still the major thrust areas for growth of ICT industry. Our competitors China and western world is much ahead. We shall consider forming few study groups to explore these areas of thrust and come out with recommendations for government and industry and try to extend help in limited way . An effective collaboration between IT industries, academic and financial institutions and Government agencies may perhaps form the basis for these plans. One option could be that IT industry being the real beneficiary of opportunities in last two decades and availing benefits of good education outreach in India, could come forward to invest heavily in R&D and development of Quality Education. Under leadership of Mr. K V Kamat, Infosys already announced apart from IT services thrust on New Product developments. CSI events shall include necessarily one session on one of these Key issues. Corporate sector is also seeking new directions & advice for effective deployment of technology and for deciding IT Governance Policies and practices. Similar are the requirements for SMEs. Government is on the lookout for effective E-Governance initiatives. It seems feasible to study these sorts of requirements and thus create a repository of Best Practices, which can be a good reference for new entrants. CSI plans on Digital library will meet these aspirations. Thanks to efforts by Prof Mini. Our CIO members shall be requested to share best practices and successful implementations for benefit of others. Knowledge Management & sharing shall become Key thrust area. SIGs and Divisions : Friends, as mentioned in my previous letters, for determining and designing the future plans of CSI and for generating better interest in CSI activities and membership, CSI Communications | August 2011 | 3 CSIC August 2011.indd 3 8/6/2011 12:45:30 PM our plans need to be synchronized with Nation’s priorities and stake holders aspirations and needs. Our E-governance SIG has taken some lead in creating knowledge repository of successful E-governance initiatives. Similar attempts may be done by other SIGs. We shall first decide the relevant list of subjects for starting SIGs. We need to invite few more experts and resourceful persons to direct various special interest groups which shall promote subjects of relevance and start working on policies and standards in respective areas. Truly, healthy functioning of SIG holds a great significance for CSI growth and we need to identify groups and experts to lead these SIGs. These SIGs should invite members from premier IT companies like IBM, TCS, Wipro , Cognizant, Microsoft, premier institutions like IIT, IIITs, major corporate and joined with expert faculty working in Tier II institutes. All our 5 Divisions shall form subcommittees of experts from respective areas and deliberate on new developments and their relevance to industry and thus promote the same through independent on-line publications for benefit of members. My sincere appeal to our Vice President to assist in this matter. CSI Clusters for Education & Research: CSI is having good infrastructure at Mumbai, Hyderabad, Bangalore, Chennai, Kolkatta, Delhi, Coimbatore, Pune, and Ahmedabad. At every place, we have quite a few energetic & knowledgeable members, who would like to contribute for CSI. We shall thoughtfully identify potential areas where each centre can concentrate, design and develop education plans, publications and promote research. It is essential to evolve suitable revenue and partnership model on case to case basis. We shall strive to utilize resources at each location to develop education schemes for respective member segment and plans, which can be replicated at other CSI centers. Our Director Education and HQ shall provide framework and policies for these alignments. By this, load of development could be distributed at various centers. Currently, since Mumbai is running various corporate level workshops, it shall endeavor to develop well structured courses leading to certifications for professionals and corporate users. Other chapters who are involved in similar exercise can collaborate to develop central repository of corporate level courses. Today a definite gap exist for quality education for corporate users and IT professionals. CSI shall fill this Gap. Management and Project plan needs to be put in place. Chennai and Coimbatore Chapters may like to get involved in development of courses for students and faculty. We need to work out schemes for each Chapters and, after discussing with members, equally formulate mechanism and practices for effective governance and control. There are many areas of excellence for these kinds of developments viz. Mobile Computing based courses, especially for inclusive applications, Publications on different subjects, incubation centers, workshops for SMEs, Government etc. Some of the Chapters, the premises of which are located far from the vicinity of industry, it may be worth coming up with plans for CSI Communications | August 2011 | 4 CSIC August 2011.indd 4 relocation in the vicinity of IT industry, so that IT professionals find convenient to attend CSI programs, to be held in CSI premises. For each place, a building committee shall be formed and proposals shall be invited. We have seen benefits of this in Mumbai, where proximity of premises to IT industry attract good participation to technical programs. CSI Plans for Youngsters: Ethos and passions of youngsters has difference. They live in the most contemporary world of new technologies and facilities. We need to capture their interests so that they develop interest in CSI membership. I suggest that at each chapter, we should have a sub-committee of members of below 30 years of age and this sub-committee should be given a mandate to design programs for youngsters. A portion of budget in each chapter may be made available to this sub-committee. This approach is common in most of the other professional societies. Benefits may be immense in future. we would be happy to prepare new leaders for CSI. During the last 3 months, 8 no. new chapters came into existence. My hearty good wishes to members over there. Elections for 52 no. of Chapters were completed. Dr. Bhatia and RVPs deserve appreciations for their hard work. My hearty good wishes to Kochi & Trivandrum Chapter for hosting ACC-2011: International Conferences on Advances in Computing and Communications. Head Quarter in Mumbai will be moving to its new premises shortly at MIDC, Andheri with new facilities of seminar and meeting rooms. This new premises will give a boost to brand image of CSI and offer a corporate and professional environment to our staff and members. We need to invest more in branding and promotion activities. Excellent efforts were put by team: Mr. M R Datar, Mr. Suchit, Mr. Ashish, Ms. Shruti and Mr. Koshy Abhraham to bring up this facility. A corner for CSI library shall offer a distinctive look to facilities. Thanks to Mr. F C Kohli for this nice suggestion. I am happy to share the news that ExecCom has nominated CSI Fellow Prof. N L Sarda, of IIT Mumbai, as Divisional Chairman Education & Research. He has been a staunch supporter of CSI events and programs, and I am sure that with his vast knowledge and involvement, CSI education and research initiatives shall get a new meaning. We whole-heartedly welcome him in ExecCom. Friends, let us look forward to creating a co-vision for CSI and making CSI a vibrant professional body at service to the nation and members at large. Your suggestions, involvement and support will be highly appreciated. Jai hind! With love, M D Agrawal www.csi-india.org 8/6/2011 12:45:31 PM Editorial Rajendra M Sonar, Achuthsankar S Nair, Debasish Jana and Jayshree Dhere Editors Dear Fellow CSI Members: Since April 2011, as part of the rejuvenating exercise of catering rich technical knowledge to the society, we have been presenting you revitalized CSI Communications with changed content and focus. Many eminent stalwarts in their respective fields of expertise have gladly contributed to reach the proceedings of technology blended with theory and practice to our members. Hope you all are enjoying the power packed CSI Communications. We welcome your thoughts and ideas to have a positive feedback to the whole process. We delightfully present you a new issue of CSI Communications with focus on Autonomic Computing. Hippocrates, known to be the father of medicine, made us believe that the human body must be treated as a whole and not just a series of parts. According to him, “The natural healing force within each of us is the greatest force in getting well”. Autonomic Computing talks about self-managed systems with the visionary notion of self-CHOP – systems that can self-configure, self-heal, self-optimize, and self-protect themselves. Autonomic Computing talks about self-managed systems with the visionary notion of self-CHOP – systems that can self-configure, self-heal, selfoptimize, and self-protect themselves. In the last few months, we have got exemplary insights from researchers and practitioners on several frontiers of technology. This month, we present some thoughts from experts in the field of Autonomic Computing for our beloved community. We are privileged to present the thought provoking interesting overview of the challenges and promises of autonomic computing by Dr. John Strassner, CTO, Software Lab, Huawei, USA. He has presented us the way how autonomic systems attempt to automate the management of hardware, software, and network infrastructures. Autonomic computing alleviates the need of human intervention, in turn resulting in reduced operational expenditures, increased dependability and security, and easy adaptation of the resources used to varying workloads. Our Technical Trends section is treasured with an interesting article. This article focuses on what and why of autonomic computing, jointly written by two young ladies Ms. Shanta Rangaswamy and Dr. Shobha G. of R V College of Engineering, Bangalore. One more interesting article focussing on autonomic computing: paradigm shift for software development has been received and we intend to bring it to you in the next issue. Our Research Front is cherished with a very motivating and well written, insightful article on autonomic computing in cellular world by Dr. Brian Dougherty, Dr. Daniel Guymon, Prof. Douglas C. Schmidt and Jules White from Virginia Tech and Vanderbilt University, USA. Their article “Overcoming Cellular Connectivity Limitations with M2Blue Autonomic Distributed Data Caching” focuses on applicability of autonomic computing in memory constrained nature of mobile devices. Dr. Anil Vaidya, in his series of articles on IT strategy, writes in this issue on ‘Is IT Valued?’, discusses important concept of ‘value of IT’ and presents a value addition model. He emphasizes that decision-making processes not just of organizations but even of individuals have undergone major overhaul. HR plays an important role even during the initial decision making process in mergers and acquisitions (M&As). They say ‘if you can’t beat them, join them’. Article in the HR column by Kishor Bhalerao of Persistent Systems brings out this aspect on role of HR in mergers and acquisitions. Programming.Learn(Perl) section of the Practitioners Workbench column deals with regular expressions in Perl. Programming.Tips() section has third and last part of an exclusive interview with Prof. Bjarne Stroustrup, the creator of C++. This part of the interview deals with C++0x Technicalities and Intricacies. As in earlier parts of the interview, the interview texts have been augmented with prologues and epilogues where it was considered necessary to explain the question and the idea behind the question, for the benefit of general readership. All the three parts of the interview are listed in Prof. Bjarne Stroustrup’s homepage http://www2. research.att.com/~bs . As usual there are regular features such as ICT@Society, Brain Teaser, Ask an Expert, On the Shelf (Book Review), Happenings@ ICT and CSI News. We thank all those, who have sent their valuable feedback on the previous issue. Please note we welcome your feedback and suggestions at csic@csi-india.org. And last, but Autonomic computing alleviates the need of human intervention, in turn resulting in reduced operational expenditures, increased dependability and security, and easy adaptation the resources used to varying workloads. not the least, we welcome your contributions in various columns and sections for CSI Communications. In the Product Showcase column, products of NetScout Systems are displayed for your information. Do inform your friends, colleagues and others in the corporate word about Product Showcase column in CSI Communications, so that they can come forward and make use of this subsidized column for enhancing the reach of their ICT related products and services by writing articles about them for the benefit of CSI community. With warm regards, Rajendra M Sonar, Achuthsankar S Nair, Debasish Jana and Jayshree Dhere Editors CSI Communications | August 2011 | 5 CSIC August 2011.indd 5 8/6/2011 12:45:31 PM Cover Story Dr. John Strassner, Ph.D. Chief Technology Officer, Software Lab, Huawei, USA. An Overview of the Challenges and Promises of Autonomic Computing The purpose of autonomic computing is to manage the complexity of networked components and systems. Autonomic computing was first used to manage homogeneous components; later, extensions were defined to manage systems having heterogeneous components of differing capabilities. This article provides a brief introduction to these two types of autonomic computing, and reviews the challenges and opportunities facing each type. I. Introduction The proliferation of different technologies, combined with the ever-increasing complexity of software and more advanced business models, has led to a more complex, networked world. In this world, heterogeneous devices operate using a converged infrastructure to support multiple applications that each has different requirements. Service Providers, Equipment Manufacturers, and other actors deploy the latest technologies in order to gain competitive advantage. This has created a number of challenging problems. The ever-increasing difficulty in managing multi-vendor environments drives costs in human resources as well as software. Most systems require manually-intensive administration and management, which in turn mandates highly skilled, costly, labor-intensive processes, which impact time to market. Most importantly, the business, technical, and even social aspects of systems have increased dramatically in complexity, requiring new technologies, CSI Communications | August 2011 | 6 CSIC August 2011.indd 6 paradigms and functionality to be introduced to cope with these challenges [1]. These increases in complexity have made it almost impossible for a human to manage the different operational scenarios that are possible in current, let alone future, systems. For Autonomic systems attempt to automate the management of hardware, software, and network infrastructures in order to decrease the amount of human intervention required. This in turn decreases operational expenditures, increases dependability and security, and adapts the resources used to varying workloads. | July 2011 | 6 www.csi-india.org CSI Communications 8/6/2011 12:45:31 PM Many people think of autonomic computing as a futuristic academic vision that has no real application. example, customers want personalized services – services that adapt to the current context and task being performed. This requires devices and systems to be cognizant of the needs of the user, any environmental, administrative, or social restrictions on the use of certain functions, the capabilities of the device(s) in use, and other services that can be employed to best satisfy the user. II. Characteristics of Autonomic Systems The purpose of autonomic computing is to manage complexity. The name was chosen to reflect the function of the autonomic nervous system in the human body. The analogy is not exact, as many of the decisions made by the autonomic nervous system of the human body are involuntary, whereas ideally, most decisions of autonomic systems will be delegated to a human-designed governance structure, such as policybased management [2]. However, it is indicative of the general nature of autonomics, which is to offload as many manually intensive tasks from users as possible in order to enable those users to spend their time more productively. By transferring more manual functions to involuntary control, additional resources (human and otherwise) are made available to manage other, more important, processes. IBM, HP, Sun (now part of Oracle), and many other large companies have invested hundreds of millions of dollars each to bring autonomic capabilities to their products. Autonomic systems attempt to automate the management of hardware, software, and network infrastructures in order to decrease the amount of human intervention required. This in turn decreases operational expenditures, increases dependability and security, and adapts the resources used to varying workloads. Autonomic computing enables systems to self-manage their behavior as a function of business goals, user requirements, and environmental conditions, resulting in the automatic (re) configuration of systems in response to changing context. Autonomic systems typically exhibit properties such as selfconfiguration, -optimization, and -healing. However, it is important to realize that these are all benefits, and cannot be realized without knowledge of the system, its users, and the environment in which it is operating. There are two types of autonomic systems. Autonomic Computing focuses on the application and takes the network for granted. Autonomic Networking focuses on the network and takes the applications for granted. However, the future lies in the merging of these two paradigms, which we will call Autonomic Systems. Both types of Autonomic Systems have focused on the development of highly distributed algorithms that provide selfmanagement capabilities (as opposed to more traditional, centralized management approaches). Research has investigated the use of biologically-inspired algorithms and processes. As noted in [3], complex biological systems “tend to exploit decentralized and uncoupled coordination models, relying primarily on environment-mediated local information transfer.” Examples include homeostasis (the property of a system to regulate its internal environment to maintain a stable condition) and stigmergy (a means of indirect coordination, where the effect of an action stimulates the performance of the next action, enabling action to reinforce and build on each other). Many people think of autonomic computing as a futuristic academic vision that has no real application. This is not the case. IBM, HP, Sun (now part of Oracle), and many other large companies have invested hundreds of millions of dollars each to bring autonomic capabilities to their products. While a complete autonomic system does not yet exist, it is important to remember that autonomic technologies form a vital part of many important systems in use today. IBM WebSphere Virtual Enterprise [4] uses autonomic management to provide an enhanced quality of service in dynamic operations and extended manageability for service level management. IBM Tivoli Change and Configuration Management Database [5] automatically tracks IT information, aiding IT staff in understanding the relationships and dependencies between products and their components. IBM DB2 [6] provides self-configuring and self- Sensors retrieve vendorspecific data, which is then converted to a normalized form and analyzed to determine if any correction to the managed resource(s) being monitored is needed. maintaining features, which simplifies memory management and storage management, performance tuning, as well as database maintenance. IBM Tivoli Usage and Accounting Manager automates resource accounting, cost allocation and chargeback billing based on usage of resources. IBM Tivoli Security Operations Manager [7] autonomously analyzes data center information to detect security threats; if a threat is detected, it can optimize and automate the process of incident recognition, investigation and response. HP also uses autonomic principles in its system. [8] describes how an autonomic controller dynamically manages the mapping of virtual machines onto physical hosts using user-defined policies. The advantage of this approach is that software can monitor virtual machine activity and optimize workload placement dynamically, providing significant cost savings. HP’s 3PAR Adaptive Optimization Software [9] is an autonomic storage solution that delivers service level CSI Communications | August 2011 | 7 CSIC August 2011.indd 7 8/6/2011 12:45:34 PM A. Autonomic Computing Approach The fundamental management element of an autonomic computing architecture is a control loop; an example is defined in [13] and shown in Figure 1. Since resources have vendor-specific differences, this architecture assumes that any resource to be managed can be instrumented in a standard way, so that CSI Communications | August 2011 | 8 CSIC August 2011.indd 8 Sensors Autonomic Manager optimization for virtual and cloud data centers to reduce cost while increasing agility and minimizing risk. It uses policy rules to autonomically optimize data storage and movement in accordance with customer quality of service needs. Note that the 3PAR solution has been integrated into many of HP’s storage solutions, enabling users to realize elastic storage with changes in demand. In [10], an autonomic session-based admission control policy is described that adatively adjust web session admission as a function of workload burstiness in order to meet pre-defined user service level objectives. Oracle 11g has several important autonomic features. The SQL Performance Analyzer [11] enables the user to proactively assess the impact of SQL execution to any change in the database. Database Replay [11] enables production workloads to be used on a staging system to test its reliability before it is deployed in production. The automatic database diagnostic monitor (ADDM) [12] provides a near-real-time performance picture of the entire database. It can be run on demand or automatically to look for any performance-related problems. If a problem is detected, it will identify its root causes and make appropriate recommendations for solving it. It has a PL/SQL interface that enables developers to embed ADDM capabilities into their application. ADDM also has an Oracle Enterprise Manager interface for remote diagnosis. an Autonomic Manager can communicate with it in a standard way. This architecture also assumes that each Autonomic Manager governs a set of homogeneous resources (i.e., resources having the same functionality and programmed using the same language). The operation of the control loop is as follows. Sensors retrieve vendorspecific data, which is then converted to a normalized form and analyzed to determine if any correction to the managed resource(s) being monitored is needed (e.g., to correct non-optimal, failed, or error states). If so, then those corrections are planned, and appropriate actions are executed using effectors that translate normalized commands back to a form that the managed resource(s) can understand. Effectors Analyze Plan Knowledge Monitor Managed Element Autonomic Networking has lagged behind Autonomic Computing, both because it started later and because it is inherently more difficult. Sensors Execute Effectors Managed Resources Fig. 1 : Autonomic Computing Control Loop B. Autonomic Computing Successes and Challenges There have been a number of important successes in autonomic computing, such as its incorporation in various commercial products, including tools that provide autonomic capabilities (e.g., in IBM’s DB2 [14], HP’s Systems Insight Manager [15], and Novell’s ZENWorks Orchestrator [16]. In each case, autonomics has been used as one or more technologies that have been inserted into a specific product to provide one or more features. However, to date, an “autonomic server” or “autonomic product” has not been shipped. This reflects the difficulty in building a truly autonomic system. System components that used to be homogeneous, such as CPUs or storage, can now be packaged in virtual machines. Different virtual machines can use different hypervisors that run on different operating systems. While this heterogeneity is still orders of magnitude less than what is found in networks, there are a set of important limitations that this architecture cannot meet that represent real-world problems. First, current management approaches are technology-specific, and do not take business needs into account. For example, data produced by devices, as well as commands issued to devices, are in forms that are unable to express business rules. This is exacerbated when workflowbased orchestration is used to automate business processes, since this demands dynamic translation between business rules and reconfiguration commands that are each defined in different languages, having different syntaxes and semantics. Hence, it is impossible to reconfigure resources in response to new or changed business requirements [1] [2] [3]. This disconnects business stakeholders from people responsible for managing the resources. Second, contextual changes must be sensed, since new management policies could be required when context changes. This in turn may cause one or more control loops to be adapted to ensure that system functionality adapts to meet changing user needs, business goals, and environmental conditions. This requirement implies the ability for the new context to interrupt (or even terminate) the currently running control loop; the architecture shown in Figure 1 does not support this capability. An important example is root-cause analysis, where the system may determine that a particular type of algorithm will not work and needs to terminate it and try a different algorithm. Third, note that the four control loop functions (monitor, analyze, plan, and execute) are serial in nature. This makes it impossible to build a governance mechanism that depends on different parts of a control loop interacting with each other. A classic example of this type of control loop is Boyd’s Observe-OrientDecide-Act (OODA) loop [17]. The goal of an autonomic system is not to replace human operators, but rather to reduce their interaction with the system. www.csi-india.org 8/6/2011 12:45:34 PM Fourth, a single serial control loop is performing two different functions. First, it is monitoring and analyzing data; second, it is reconfiguring one or more managed entities. This assumption will not work for heterogeneous environments, since these two functions are completely different in purpose, method, algorithm, and most importantly, affected entities (e.g., to solve a problem, a device different than the one being monitored may need to be reconfigured, which means that the control loop starts and ends at different places). A simple example is the correlation of different data that have different meanings and importance relative to finding a solutioin. Finally, if devices have vastly different functionality, different programming languages, and different data and command structures, how can such disparate functionality be coordinated to provide appropriate responses with minimal interaction? Is it possible to build a training model to enable the autonomic system to learn? How many mistakes can the autonomic system make, and what is the degree of mistake that can be tolerated? This is a common problem in networked environments, where even standard protocols have different vendor-specific implementations, and consequently, network devices from different vendors implementing the same protocol will have different resource requirements and side effects. These are some of the main considerations that led to a more generic version of Autonomic Computing, called Autonomic Networking. C. Autonomic Networking Approach Autonomic networking has the same goal as autonomic computing. However, while autonomic computing has been focusing on managing homogeneous Context Manager Policy Manager Policies control application of intelliegence Autoromic Manager Control Control Control Control YES Managed Resource Model-Based Translation Analyze Data and Events Determine Actual State Current State= Desired State? NO Ontological Comparison Reasoning and Learning Define New Device Configuration(s) Control Fig. 2 : Simplified FOCALE Autonomic Architecture devices and systems, autonomic networking must deal with three different types of heterogeneity: (1) different devices having different functionality, (2) different devices that use different languages, data, and commands to represent the same concept, and (3) different types of control mechanisms that must be coordinated (e.g., wired and wireless devices are managed using different protocols). Unfortunately, the simple system shown in Figure 1 makes the following assumptions that are typically not valid for network environments. First, the entity being managed can be directly instrumented in a standard way. This is not true in most network devices, as devices define interfaces that provide a view into data that it gathers and enable some, but not all, software functionality to be implemented (e.g., most network equipment manufacturers will not provide direct control over the operating system used in the device). Second, network devices consist of heterogeneous data and languages. A network device usually supports both Command Line Interface (CLI) and management applications built using the Simple Network Management Protocol (SNMP); however, the functionality provided by CLI and SNMP applications is usually different. These two approaches represent the same concept using data and commands that are completely different for different devices. In addition, a single device can support hundreds of different versions of a particular CLI release, tens of different CLI releases, and hundreds of vendorspecific representations of data that are in general not interoperable with how other network device vendors represent the same data. This means that a more powerful and scalable instrumentation approach is needed. Fig. 2 shows a simplified version of the FOCALE autonomic architecture [18], which was designed to support these needs. Multiple networks and network technologies require multiple control planes that can use completely different mechanisms that must be coordinated. FOCALE uses the DEN-ng [19] information model to represent concepts important to the managed environment, and a set of ontologies [20] for reasoning about the facts represented in data models derived from DEN-ng. Models represent facts and simple dependencies. Ontologies represent relationships and semantics that cannot be represented using the Unified Modeling Language (UML). For example, UML doesn’t have the ability to represent the relationship “is similar to” because it doesn’t define logic mechanisms to enable this comparison. Comparison relationships enable the different languages, programming models, and side effects of different systems to be modeled and inferred. A model-driven architecture addresses this through model-based translation [21] [22]. Second, in current environments, user needs and environmental conditions can change without warning. Therefore, the system, its environment, and the needs of its users must be continually analyzed with respect to business objectives. FOCALE uses inferencing to instruct the management plane to coordinate the (re) configuration of its control loops in order to protect the current business objectives CSI Communications | August 2011 | 9 CSIC August 2011.indd 9 8/6/2011 12:45:34 PM of the organization [23] [24]. This is shown in Figure 2 by the connections from the Autonomic Manager to the different control loop elements that are labeled “Control”. Automation of any type requires a consistent way to control elements. FOCALE uses policy rules [2] [25] defined in the DEN-ng model to orchestrate behavior. These rules are made adaptive by using context [1] [24] to represent changes in the network, or in user needs, or even in the business; these context changes in turn trigger a new set of policy rules to take over control of the autonomic system. This enables the services and resources provided by the autonomic system to adapt to these new needs in a consistent, automated manner. The autonomic manager uses these policies to govern each of the architectural components of the control loop, enabling the different control loop components to change the type of algorithm used, the type of function used, and even the type of data to use as a function of context. The use of different control loops is essential for automating different business and management processes. In Fig. 2, the simplified version of FOCALE defines separate control loops for maintenance versus reconfiguration operations. Each control loop can spawn multiple nested control loops to manage vendor-specific systems. Another important reason to use multiple control loops is to protect the set of business goals and objectives of the users as well as the network operators. The implementation of these objectives is different and sometimes in conflict – having a single control loop to protect these objectives is simply not feasible. The reconfiguration process uses dynamic code generation based on models and ontologies [1] [21] [22]. Dynamic code generation enables the autonomic system to adapt to changes while managing the associated complexity of doing so. D. Autonomic Networking Success and Challenges Autonomic Networking has lagged behind Autonomic Computing, both because it started later and because it is inherently more difficult. Market leaders of many different commercial applications, such as network management (e.g., Cisco, Juniper, and IBM), middleware (e.g., CSI Communications | August 2011 | 10 CSIC August 2011.indd 10 IBM and Oracle) and other applications all claim that their products contain autonomic features. While this is true to some degree, as with Autonomic Computing, no network devices or network management products that are completely autonomic in nature have yet been released. The first problem to be solved is, how can an environment be autonomic when the majority of the network is still manually configured? The answer is twofold. First, the goal of an autonomic system is not to replace human operators, but rather to reduce their interaction with the system. In particular, if the autonomic system can perform manually intensive but conceptually simple operations, this enables human administrators to concentrate on more complex problems. Second, an autonomic system can is focused on revenue, not on the type of queuing or other traffic conditioning functions that will be used to support the SLA. Conversely, the network administrator may want to develop Command Line Interface (CLI) commands to program the device, and may need to have a completely different representation of the policy in order to develop the appropriate command changes that might not even mention revenue. Thus, the requirement is for policy to be treated as a continuum, where different policies take different forms and address the needs of different users. Note that unless there is an information model that can be used to relate these different forms of policy to each other, it becomes difficult (if not impossible) to define a set of mappings that transform the data between each type of policy in the continuum. Business View: SLAs, Processes, Guidelines and Goals Standards are urgently needed to ensure the development of interoperable solutions. System View: Device-and Technology-Independent Operation Network View: Device-Independent Technology-Specific Operation Device View: Device and Technology-Specific Operation Instance View: Device-Specific MIBs, PIBs, CLI, etc. Implementation gather and filter data, as well as provide detailed analysis of the data and make recommendations to the human manager. This reduces the workload of the human administrator, and makes the environment appear more “autonomic”. Regarding the problems of Section II.B, the problem of “current management approaches are technology-specific, and do not take business needs into account” is more serious in a network, since multiple technologies for more administrative domains are used. FOCALE responds to this challenge through the use of a Policy Continuum [26], an exemplar of which is shown in Figure 3. The Policy Continuum is used to define a common set of translations between different policy rules, so that the PBNM system can embrace multiple constituencies and help them work together. In particular, each view of the Policy Continuum is optimized for a different type of user that needs and/or uses slightly different information, even though they interact with the same managed entities. For example, the business user wants Service Level Agreement (SLA) information, and Fig. 3 : An Example of the Policy ConƟnuum Third, the sensing of contextual changes, along with adapting the functions of one or more control loop elements, is provided by the use of context-aware policy rules [23] [24]. This enables policy rules that are specialized for specific contexts to be used to govern the functionality of the control loop. Fourth, note that FOCALE uses multiple control loops. In addition, any of the control loops can be interrupted and either be (1) suspended while other control loops run, (2) used to spawn nested control loops, or (3) replaced by one or more control loops. Fifth, the control loops are not serial; rather, they are based on Boyd’s ObserveOrient-Decide-Act control loop [17] but expanded to take into account work from cognitive psychology. In [27], Minsky modeled this using three interacting layers, called reactive (or subconscious), deliberative, and reflective cognitive functions. In [28], revisions to the original FOCALE architecture are defined to reflect these changes. www.csi-india.org 8/6/2011 12:45:34 PM While FOCALE has advanced the state of the art, there are still several important problems to be solved. First, since autonomic systems are based on detailed models and hierarchical state machines, the scale of the overall system, and in particular, the number of interconnecting components can become very large. For example, hierarchical control loops can lead to unexpected and uncontrolled behavior. While there are techniques available to address these problems [29], this in general requires advances in componentized architectures, state automata, and most importantly, standards to support them. Second, work needs to be done to federate different governance models, and resolve conflicts in predictable and consistent ways. Third, metadata must be handled in a scalable and standardized manner. Once this problem is solved, then the larger problem of semantic interoperability and representation needs to be solved, first for representative problems, and second, for large scale deployments. III. Future Challenges of Autonomic Systems FOCALE was built with an emphasis on large networked systems. However, with the advent of cloud computing and other disruptive technologies, a new set of challenges arise that require a tighter integration between application and network management. One of the most important questions is, how will autonomic systems know when to ask for help? This is a complex problem, as it presumes that it is possible to verify that a self-* operation, such as self-configuration, succeeded. The current state of the art cannot verify this in a generic way. For example, consider a conceptually simple task, such as automatic spell checking. This is, in actuality, very difficult, as a spell checker must be able to understand slang and idiomatic expressions as well as formal language. Languages such as English have stylistic guidelines that are not universally agreed on, making detecting problems more difficult. If this simple example is compared to configuring traffic engineering in a network, or finding and fixing the root cause of a problem, or providing real-time analytics feedback, it is quickly apparent that advances must be highly constrained, and learning mechanisms must be improved to dynamically grow the knowledge base of the system. A related question is abstraction. The goal of an autonomic system is to perform manually intensive tasks to decrease the amount of human intervention necessary. However, this has several associated risks. If the intermediate data is deleted, yet the human knows that the recommendation of the autonomic system is wrong, then how will the autonomic system become better? Is it possible to build a training model to enable the autonomic system to learn? How many mistakes can the autonomic system make, and what is the degree of mistake that can be tolerated? These questions point to the issue of trust. How will a human operator develop trust in the autonomic system? Just because it performs correctly ten times in a row does not mean that the next time will be error-free. A final question concerns how autonomic systems can be tested to ensure that they are operating correctly. This must include runtime testing, since the structure and behavior of the system can change at runtime. In [30], Zhang et al. define the concept of a “safe adaption”, which is a change that does not violate the dependencies between components, including not interrupting communications that could result in erroneous conditions. In [31], a framework is described that uses safe adaptation to dynamically validate changes in autonomic systems that occur as a result of the self-management process. In FOCALE, this is done by modelchecking [32]. reason about behavior, another type of representation is needed. FOCALE has used ontologies and first order logic; other approaches are also possible. Fourth, it is of paramount importance that a knowledge representation strategy that is capable of relating data in models to data in ontologies is developed early in the design of the autonomic system. Fifth, context-aware policy rules that can trigger the dynamic generation of code are required in order to reduce the burden of the human administrator. Finally, and most importantly, standards are urgently needed to ensure the development of interoperable solutions. References 1. 2. 3. 4. 5. 6. 7. 8. 9. IV. Summary There are a number of important conclusions that can be made. First, there is a significant difference between creating autonomic systems for homogeneous versus heterogeneous entities, and especially for entities that have different functionality and use different programming models. Second, without the use of a shared information model that can harmonize the different data models that are used in management systems, data will become isolated in separate application silos and data coherency will be lost. Third, since information and data models are not capable of representing the detailed semantics required to 10. 11. 12. 13. 14. J. Strassner, “Autonomic Systems – Theory and Practice”, tutorial at the 12th IEEE/IFIP Network Operations and Management Symposium, Japan, April 2010 J. Strassner, “Policy Based Network Management”, Morgan Kaufman, ISBN 1-55860-859-1 S. Dobson et al., “A Survey of Autonomic Communications”, ACM Transactions on Autonomous Adaptive Systems, vol. 1, no. 2, Dec. 2006, pp. 223-259 http://publib.boulder.ibm.com/ infocenter/wxdinfo/v6r1/index. jsp?topic=/com.ibm.websphere.ops. doc/info/prodovr/codoemodes.html http://www-01.ibm.com/software/ tivoli/products/ccmdb/ http://www.ibm.com/developerworks/ data/library/techarticle/dm0606ahuja2/index.html http://www-03.ibm.com/press/us/en/ pressrelease/23481.wss C. Hyser, B. McKee, R. Gardner, B. Watson, “Autonomic Virtual Machine Placement in the Data Center”, technical report HPL-2007-189, February, 2008 http://h18006.www1.hp.com/ storage/software/3par/aos/index. html?jumpid=reg_R1002_USEN L. Lei, L. Cherkasova, V. Persone, M. Mi, E. Smirni, “AWAIT: Efficient Overload Management for Busy Multi- tier Web Services under Bursty Workloads”, technical report HPL-2010-65, July 2010 http://www.oracle.com/ corporate/analyst/reports/ infrastructure/dbms/ovum-realapplication-testing.pdf http://www.oracle.com/us/ technologies/11g-embeddedwhitepaper-166560.pdf IBM, “An Architectural Blueprint for Autonomic Computing”, v7, June 2005 B. Bläser, W. Gaider, H,-J. Moldowan, “A Practical Guide to DB2 Autonomic Features in SAP Environments”, v1, November 2009 CSI Communications | August 2011 | 11 CSIC August 2011.indd 11 8/6/2011 12:45:34 PM 15. Chris Hyser, Bret McKee, Rob Gardner, Brian J. Watson, “Autonomic Virtual Machine Placement in the Data Center”, HPL-2007-189, February, 2008 16. http://www.novell.com/products/ orchestrate/ 17. J. R. Boyd, “The Essence of Winning and Losing”, 28 June, 1995 18. J. Strassner, E. Lehtihet, N. Agoulmine, “FOCALE – A Novel Autonomic Computing Architecture: extended version”, ITSSA journal, 2007 19. J. Strassner, “Introduction to DEN-ng”, Tutorial for FP7 PanLab II Project, January 21, 2009 20. J. Serrano, J. Serrat, J. Strassner, M. Ó Foghlú, “Management and Context Integration Based on Ontologies, Behind the Interoperability in Autonomic Communications”, 2007 SIWN International Conference on Complex Open Distributed Systems (CODS 2007), Vol. 1, number 4, pp.435-442, Chengdu, China, 22-24 July, 2007 21. www.omg.org/mda 22. K. Barrett, S. Davy, J. Strassner, B. » 23. 24. 25. 26. Jennings, S. van der Meer, W. Donnelly, “A Model Based Approach for Policy Tool Generation and Policy Analysis”, in Proc. 1st IEEE Global Information Infrastructure Symposium, pp. 99-105, 2007. J. Strassner, J.N. de Souza, D. Raymer, S. Samudrala, S. Davy, K. Barrett, “The Design of a Novel Context-Aware Policy Model to Support Machine-Based Learning and Reasoning”, Journal of Cluster Computing, Volume 12, Issue 1, pages 17-43, March, 2009 J. Strassner, S. van der Meer, D. O’Sullivan, S. Dobson, “The Use of Context-Aware Policies and Ontologies to Facilitate BusinessAware Network Management”, Journal of Network and System Management, Volume 17, Number 3, pages 255-284, September , 2009 J. Strassner and D. Raymer, “Implementing Next Generation Services Using Policy-Based Management and Autonomic Computing Principles”, pages 1-15, NOMS 2006, Vancouver, Canada S. Davy, B. Jennings, J. Strassner, “The Policy Continuum – Policy Authoring 27. 28. 29. 30. 31. 32. and Conflict Analysis”, Computer Communications Journal, Elsevier, Volume 31, Issue 13, pages 2981-2995, August 2008 M. Minsky, “The Society of Mind”, Simon and Schuster, New York, 1988 J. Strassner, J. Betser, R. Ewart, F. Belz, “A Semantic Architecture for Enhanced Cyber Situational Awareness”, Secure and Resilient Cyber Architectures Conference, McLean, VA, October 2010 E. Höfig, “Interpretation of Behaviour Models at Runtime – Performance Benchmark and Case Studies”, Ph.D. Thesis, March, 2011 J. Zhang, B. H. C. Cheng, Z. Yang, and P. K. McKinley, “Enabling safe dynamic component-based software adaptation”, Workshop on Architecting Dependable Systems, pages 194–211, 2004 T. King, D. Babich, J. Alava, P. Clarke, R. Stevens, “Towards Self-Testing in Autonomic Computing Systems”, Proc. of the 8th Intl. Symposium on Autonomous Decentralized Systems, pages 41-58, 2007 http://www.cs.cmu.edu/~modelcheck/ n About the Author Dr. John Strassner has over 35 years of experience. He is currently the Chief Technical Officer of the Software R&D Laboratory of the US Division of Huawei, where he leads autonomic system projects for managing cloud, Enterprise, and Service Provider environments. He has served as a Professor of Computer Science and Engineering at the Pohang Univ. of Science and Technology and as a Visiting Professor at Waterford Institute of Technology in Ireland. Before that, he was a Motorola Fellow and Vice President of Autonomic Research at Motorola Labs. Previously, John was the Chief Strategy Officer for Intelliden and a former Cisco Fellow. John is a Distinguished Fellow of the TeleManagement Forum, and is currently the Chairman of the Autonomic Communications Forum. He is the past chair of the TMF’s NGOSS SID, metamodel and policy working groups, along with the past chair of several IETF and WWRF groups. He has authored two books, written chapters for 5 other books, and has been coeditor of 5 journals dedicated to network and service management and autonomics. John is the recipient of the IEEE/IFIP Daniel A. Stokesbury memorial award for excellence in network management, the Albert Einstein award for innovation in autonomic networking, and has authored over 275 refereed journal papers and publications. Congratulations to Tagline Contest Winner! Heartiest congratulations to Mr. Sanjiv Agarwala for winning the CSIC Tagline Contest. His suggested tagline viz. ‘Knowlegde Digest for IT Community’ has been selected as the most appropriate tagline for CSI Communications. The task of selecting suitable tagline turned out to be quite tough as response to the contest was overwhelming. Around 250 emails were received with number of suggested lines crossing 400 or so, considering the entries received on or before 31st May 2011. CSI Communications team would sincerely like to thank all those members, who participated in the tagline contest. About Sanjiv Agarwala Sanjiv is MD & CEO of Oxygen Consulting Services Pvt. Ltd., a firm based out of Pune, India and providing services in Information Security, IT Governance and HR. Sanjiv has rich CSI Communications | August 2011 | 12 CSIC August 2011.indd 12 experience in various areas of information security like ISO27001, Application Security, Business Continuity Management, Data Security and Privacy, Regulatory Compliances, Training, IS audits and Governance. Sanjiv by education is Bachelor of Engg (Comp Science) and is a Certified Information Systems Auditor(CISA), Certified Information Systems Security Professional (CISSP), Certified in Governance of Enterprise IT(CGEIT) and holds many other certifications in security management, IT Governance, Business Continuity, IT Service Management and Quality. He also serves at ISACA USA in boards and committee, serves as President, ISACA Pune Chapter and part of management committee at Computer Society of India,Pune Chapter. He can be reached at ska262001@yahoo.co.in www.csi-india.org 8/6/2011 12:45:34 PM Technical Trends Ms. Shanta Rangaswamy and Dr. Shobha G. Department of Computer Science and Engineering, R.V. College of Engineering, Bangalore-560059, India ‘What’ and ‘Why’ of Autonomic Computing Upon launching the Autonomic Computing initiative, IBM defined its four major properties as: self-Configuring, self-Healing, self-Optimizing and self- Protecting. Introduction: Autonomic computing introduces a new, interesting and promising research field. This term “autonomic” is derived from human biology. Autonomic Computing is similar to the Autonomic Nervous System, which operates subconsciously, without any human intervention. Fig.1 : Human Nervous System An Autonomic Nervous System (ANS) takes care of routine functions like heart rate, blood pressure, hormone production, digestion, etc. An ANS (Figure1) monitors heartbeat, checks blood sugar level and keeps the body temperature close to 98.6°F without any conscious effort on our part. In the same way, self-managing autonomic capabilities of autonomic computing anticipate IT system requirements and resolve problems with minimal human intervention. Autonomic computing proposes to achieve self-management by replacing the human element with software/hardware components. Autonomic Computing (AC) is not a new technology, but a holistic, goal-orientated approach to designing computer systems [1][2]. The goaloriented and holistic approach refers to the fact that AC is not a conventional computer systems project, which can be planned, designed and implemented entirely by a single developer [3], but a visionary approach, where a collection of existing technologies have been grouped together to accomplish a common goal. Therefore, to understand Autonomic Computing, the concepts and ideas behind its goals and holistic approach must first be identified. The primary goal of Autonomic Computing is similar to that of ‘Pervasive Computing’, a concept first proposed by Mark Weiser in 1988 [4]. According to Mark Weiser, pervasive computing is a paradigm of computing, where computers are designed to be as invisible and as unobtrusive to their users as possible. Hence, the ultimate goal of pervasive computing is to create systems, which are “so embedded, so fitting, and so natural, that we use it without even thinking about it” [5]. The holistic approach of Autonomic Computing refers to the fact that besides identifying pervasiveness and self-management as its overall goals, Autonomic Computing does not specify what type of technology will be used to achieve these goals. Any existing technology that exhibits behaviors or partial behaviors of pervasiveness and self-management can be classified as Autonomic Computing. Thus, existing fields such as grid computing, middleware, databases, networking and peer-to-peer applications have all been justified as being a part of Autonomic Computing. Mainsah [2] justifies the importance of this approach in achieving Autonomic Computing by stating that “holistic approach envisages a far greater level of automation than can be achieved by piecemeal advances”. Autonomic Computing, by definition, requires dealing with increasing level of system complexity by replacing the need of its human system administrators. But as the system complexity increases, it proportionally increases the number of human system administrators [6]. Therefore, this method is unsustainable at best, because as the number of IT systems grows exponentially, it will become prohibitively expensive to match the number of system administrators required to handle the complexity of these systems. The potential solution to this problem of increasing system complexity and costs of maintenance is an approach, where the ultimate goal is to create computer systems that can manage themselves while hiding their complexity from the end users [6][7]. Thus, human beings can be freed from the burden of maintenance in order that they can concentrate on achieving higherlevel, business orientated objectives, if the low-level complexities are hidden and removed from the realm of human control. Major properties of AC: IBM introduced the Autonomic Computing initiative in 2001, with the aim to developing self-managing systems. Upon launching the Autonomic Computing initiative, IBM defined its four major properties as: selfConfiguring, self-Healing, self-Optimizing and self- Protecting. This is represented in figure 2. 1. Self-Configuring: Self-Configuration is the ability of the system to perform configurations according to pre-defined high-level policies and seamlessly adapt to change caused by automatic configurations. Systems adapt automatically to dynamically changing environments. 2. Self-Healing: Self-Healing denotes the system CSI Communications | August 2011 | 13 CSIC August 2011.indd 13 8/6/2011 12:45:36 PM ability to examine, find, diagnose and react to system malfunctions. Selfhealing components or applications must be able to observe system failures, evaluate constraints imposed by outside environment, and apply appropriate corrections. Such systems discover, diagnose, and react to disruptions. Self Configuring Self Proteching Autonomic Computing Systems (ACS) Self Healing Self Optimizing Fig. 2 : Self CHOP CapabiliƟes of Autonomic CompuƟng Systems 3. Self-Optimizing: Self-Optimization is the ability of the system to continuously monitor and control resources to improve performance and efficiency. Self-optimization is the capability of maximizing resource allocation and utilization for satisfying user requests. The tuning actions could mean reallocating resources-such as in response to dynamically changing workloads—to improve overall utilization, or to ensure that particular business transactions can be completed in a timely fashion. 4. Self-Protecting: Self-Protection is the ability of the system to pro-actively anticipate, identify, detect and protect itself from malicious attacks from anywhere, or cascading failures that are not corrected by selfhealing measures. The other way of representing these properties of AC could be ‘SelfCHOP’ capabilities. Developers of system components for such systems need to focus on maximizing the reliability and availability of each hardware and software product in order to ensure continuous availability. Autonomic Computing uses the ANS concepts of sensory and motor neurons, analyzing the disturbances and returning to the equilibrium state giving more CSI Communications | August 2011 | 14 CSIC August 2011.indd 14 importance to the “self-management” factor. Sensing an internal or external change, analyzing the change, planning for response and finally the execution – all these are performed by the ANS with adequate knowledge utilized in each phase of maintaining the equilibrium. This self-management approach is considered as major idea behind any Autonomic Systems. Autonomy provides dynamically programmable control and management services to support autonomic configuration and deployment in network centric system. The environment provides application developers with all the tools required to specify the appropriate control and management schemes in order to maintain any quality of service requirement or application attribute/ functionality. (For example: performance, fault-tolerance, security) Different Levels in AC: The growing complexity of computer systems emphasizes the need for developing self-managing autonomic systems. IBM has come up with a very innovative approach to reach autonomic computing system. According to them autonomic computing is an evolutionary process and consists of five levels. The levels are Basic, Managed, Predictive, Adaptive and finally Autonomic [12]. 1. Basic: In basic level, an individual manages different tasks and day-to-day operations. It is a starting point in which individuals or IT professionals manage different tasks such as the setting up of the IT environment, monitoring and making updations. Autonomic computing is the migration of knowledge into the system. It allows system administrators to take the labor-intensive things they do and encode them in a way that the system can do them for the administrator. 2. Managed: At managed level, information is collected from systems through some technologies and tools; that further help to make good and intelligent decisions. This facilitates the system administrator to collect and analyze information more quickly. 3. Predictive: In predictive level, predictions and optimal solutions are provided making the system more intelligent. Here, new technologies are used which correlate different components of a system to initiate pattern recognition, prediction and suggestions for optimal solutions. 4. Adaptive: At Adaptive level, information and knowledge are extracted to initiate various actions automatically. The components use the available information and knowledge of the system to execute different actions automatically. Fig. 3 : Level of Autonomic CompuƟng (as depicted by IBM) www.csi-india.org 8/6/2011 12:45:38 PM 5. Autonomic: In autonomic level, business policies and objectives are monitored and system can change business policies, objectives or both. Through autonomic computing, we achieve minimal human intervention with software or system; maximum use of system resources such as processing power, memory, storage; labor and cost reduction for performing different activities; real-time responsiveness by the autonomic computing environment; and focus by the IT professionals on high value tasks rather than operational tasks. This depiction of Autonomic Computing by IBM is shown in figure 3. Summary and Conclusion: The Autonomic computing Systems can handle routine maintenance tasks such as installation of software, provisioning of new drives, configuration changes and patch installations. These are only a few, but the list can persistently grow. Autonomic computers cannot become aware but close enough to protect themselves, and if `fallen sick’, diagnose and take `medication’. Autonomic computing and “self” systems introduce a very large research area that involves different aspects and several facets of Information Technology. However, this area is not well explored in depth, not yet delineated and final targets are not well identified. Researchers have different and contradictory opinions and ideas about autonomic computing. Autonomic computing is the migration of knowledge into the system. It allows system administrators to take the laborintensive things they do and encode them in a way that the system can do them for the administrator. Autonomic computing systems have the ability to manage themselves and dynamically adapt to change in accordance with business policies and objectives, enabling computers to identify and correct problems before they are noticed by IT personnel. Software industry and IT vendors have large departments devoted to identifying, tracing, and determining the root cause of failures in complex computing systems. Serious customer problems can require teams of programmers to spend several weeks to diagnose and fix, and sometimes the problem disappears mysteriously without any satisfactory diagnosis. Incorporating self-managing capabilities into an IT environment is an evolutionary process. It is ultimately implemented by each organization through the adoption of self-managing autonomic technologies, supporting processes and skills. Moreover, autonomic computing will free IT staffs from detailed routine tasks, allowing them to focus on managing business processes. Thus Autonomic computing is all about shifting the burden of managing systems from people to technologies. Autonomic computing is a grandchallenge of the future in which computing systems will manage themselves in accordance with high-level objectives specified by humans. It is an “Evolution” not “Revolution”. The IT industry recognizes, that meeting this challenge is imperative. Otherwise, IT systems will soon become virtually impossible to administrator. But meeting this challenge is also extremely difficult, and will require a worldwide collaboration among the best minds of academia and industry. References: R. Sterritt, D. Bustard, “Towards Autonomic Computing: Effective Event Management”, Proc. 27th Annual NASA Goddard/IEEE Software Engineering Workshop (SEW-27’02), 5-6 Dec. 2002, pp40-47. E. Mainsah, “Autonomic computing: the next era of computing”, IEE Electronics Communication Engineering Journal, Vol. 14, No. 1 (Feb), 2002, pp2-3. IBM, “An architectural blueprint for autonomic computing”, April 2003. M. Waldrop “Autonomic Computing: The Technology of Self-Management” (available www.thefutureofcomputing. org/), 2003. M. Weiser, “Creating the Invisible Interface.” Symposium on User Interface Software and Technology, New York, NY: ACM Press, 1994. P. Horn, “Autonomic computing: IBM perspective on the state of information technology”, IBM T.J. Watson Labs, NY, 15th October 2001. Presented at AGENDA 2001, Scottsdale, AR. (available http://www. research.ibm.com/autonomic/), 2001. J. O. Kephart, D. M. Chess. “The Vision of Autonomic Computing.” Computer, Jan., 2003, pp41-50. Horn P. Autonomic computing: IBM perspective on the state of information technology, IBM T.J. Watson Labs, NY, 15th October 2001. Presented at AGENDA 2001, Scottsdale, AR (available at http:// www.research.ibm.com/autonomic/); 2001. Kephart J, Chess D. The vision of autonomic computing. IEEE Computing 2003;36:41–50. Ganek AG, Corbi TA. The dawning of the autonomic computing era. IBM System J 2003. Christian M. Garcia-Arellano, Sam S. Lightstone, Guy M. Lohman, Volker Markl, and Adam J. Storm,“Autonomic Features of the IBM DB2 Universal Database for Linux, UNIX, and Windows”, IEEE Transactions On Systems, Man, And Cybernetics—Part C: Applications And Reviews, Vol. 36, No. 3, May 2006 G. Candea, E. Kiciman, S. Zhang, P. Keyani, A. Fox, “JAGR: an autonomous self-recovering application server”, Proc. Int. Conf. on Autonomic Computing (ICAC’03), 25 June 2003, pp168-177. n About the Authors Ms. Shanta Rangaswamy, Assistant Professor, Department of CSE, R.V. College of Engineering is pursuing her Ph.D. from Kuvempu University. Her research areas of interest are Autonomic computing, Self optimization of systems, Data mining and storage centre, Performance Evaluation of systems, Cryptography, and System Simulation. E-mail: shantharangaswamy@rvce.edu.in Dr. Shobha G., Dean, PG Studies, (CSE & ISE) is associated with R.V. College of Engineering since 1995. She has received her Masters degree from BITS, Pilani and Ph.D (CSE) from Mangalore University. Her research areas of interest are Database Management Systems, Data mining, Data warehousing, Image Processing and Network security. E-mail: dean_pgcs@rvce.edu.in CSI Communications | August 2011 | 15 CSIC August 2011.indd 15 8/6/2011 12:45:39 PM Research Front Brian Dougherty1, Daniel Guymon1, Douglas C. Schmidt2 and Jules White1 1 2 Virginia Tech, {brianpd,dguymon,julesw}@VT.edu Vanderbilt University, schmidt@dre.vanderbilt.edu Overcoming Cellular Connectivity Limitations with M2Blue Autonomic Distributed Data Caching The memory constrained nature of mobile devices, such as smartphones, limits the amount of data that can be stored locally. As a result, mobile devices often rely on cellular connections to retrieve application data. Environmental factors, however, can partially or completely restrict cellular connectivity. Autonomic distributed caching mechanisms can be used to allow mobile device networks to self-heal by storing data needed across multiple devices, but cannot be applied without a means to determine if devices are within a given range. Moreover, it is hard to identify the best way(s) of mapping application data to device memory to allow devices to self-heal in spite of limited cellular connectivity. This article provides the following contributions to the study of autonomic selfhealing mobile communication: (1) we present a Bluetooth-driven localization technique that determines the quantity and configuration of devices present within a given range, (2) we provide a system for mapping data across nearby devices allows mobile computing environments to self-heal in response to limited cellular connectivity, and (3) we show this autonomic system can be augmented to handle the dynamic nature of devices entering and leaving ad hoc mobile networks. 1. Introduction Current trends and challenges: Mobile computing devices, such as smartphones, use cellular connections to retrieve information needed by applications. Unfortunately, cellular connectivity can be lost or restricted by environmental factors, such as physical barriers, or by a lack of cellular coverage [1], [2]. A promising means for constructing reliable mobile computing environments therefore involves implementing autonomic devices [10] that can self-heal in response to environmental changes, such as slow or unreliable cellular connections. Autonomic computing is computing paradigm in which systems have the ability to self-manage without intervention by an outside entity [6]. One potential benefit CSI Communications | August 2011 | 16 CSIC August 2011.indd 16 of autonomic systems is the introduction of self-healing properties. Systems with self-healing capabilities are able to remain functional by reconfiguring or repairing themselves in response to system faults, potentially increasing their fault-tolerance and reliability. Memcached [5] is a promising mechanism that could be applied to create an autonomic mobile computing environment in which devices can selfheal in response to limited cellular connectivity. Memcached is a distributed data caching mechanism that uses hashing to map data to multiple computing nodes. When data stored with Memcached is needed, a requesting node can use the hash function to retrieve data either locally, if a local copy exists, or from another node that it has been stored on. Fig. 1 shows how mobile computing environments could use autonomic distributed caching mechanisms like Memcached to implement self-healing communications [1]. Introducing autonomic properties, such as self-healing, can allow mobile networks to continue to function in spite of limited cellular connectivity by storing application data on the device. Resourceconstrained mobile devices, however, often cannot store the complete set of data needed by applications. Since multiple devices often use the same application, data could be distributed between devices so that collectively, most or all application data is stored across devices. This approach can reduce the need for data requests across the cellular network, thereby allowing devices to www.csi-india.org 8/6/2011 12:45:39 PM Fig. 1 : Overcoming Weak Cellular ConnecƟvity with Mobile Autonomic Distributed Data Caching execute autonomically in the absence of cellular connectivity. Open problem Applying autonomic distributed caching to add self-healing communication in mobile computing systems. There are several issues that currently prevent the use of Memcached to implement self-healing communication in mobile networks. First, Memcached must know the devices available in a distributed system[12], which is relatively simple in environments where stationary devices are added/ removed before execution. A mechanism is therefore needed to autonomically determine the profile of devices that are present in a mobile network so Memcached can execute. Moreover, the devices present in a given mobile network change over time. Devices may physically enter a network by coming in range of other devices or exit the network by going out of range, crashing, or running out of power [8]. Any autonomic distributed caching mechanism that allows a mobile network to function despite limited connectivity must self-heal in response to new devices entering or exiting the network. Solution approach Autonomic mobile distributed data caching with M2Blue This article presents Mobile Memcached with Bluetooth (M2Blue), which is an autonomic distributed data caching mechanism aimed at mobile computing environments with limited or no cellular connectivity. M2Blue uses Bluetooth, or if available, a wireless network, to automatically detect devices present within a predefined range in the event of reduced cellular connectivity. An augmented version of Memcached is then applied to map application data across devices. Devices use Bluetooth or a wireless network to read cached data instead of transmitting requests to a cellularly connected server, thereby minimizing the need for cellular connections. autonomously supporting the dynamic entry or exit of devices from mobile networks despite limited cellular connectivity. 2. Challenges of Applying Autonomic Distributed Caching Mechanisms to allow Mobile Networks to Self-heal This section summarizes the challenges of implementing self-healing communication in autonomic distributed caching mechanisms to allow mobile computing environments to self-heal in A promising means for constructing reliable mobile computing environments therefore involves implementing autonomic devices that can self-heal in response to environmental changes, such as slow or unreliable cellular connections. This article provides the following contributions to autonomic self-healing in mobile distributed systems: We provide an innovative approach for automatically determining the profile of distributed mobile computing environments, We present an algorithmic technique for applying autonomic distributed data caching to mobile computing environments so systems can selfheal in response to limited cellular connectivity, and We provide mechanisms for periods of limited cellular connectivity. Data transmission between devices cannot require the use of a cellular connection. Even if the profile of a mobile device network is known, devices must be able to exchange data with each other to take advantage of autonomic distributed data caching. Transmitting data over a cellular connection, however, may not be possible due to increased latency as a result of diminished signal strength. An alternative communication protocol, therefore, must be used to transmit data wirelessly. Ideally, this protocol would not require additional hardware. CSI Communications | August 2011 | 17 CSIC August 2011.indd 17 8/6/2011 12:45:39 PM Autonomically determining devices present within a physical range must be done at runtime. Unlike stationary nodes, the number of mobile devices in a network within a range can be hard to predict. Determining which devices are present is exacerbated when locations where cellular connectivity becomes weak or limited are not known a priori. Memcached, however, requires knowledge of devices available for storing data to determine an appropriate hash function. Autonomic mechanisms must be developed that can routinely determine the profile of mobile device networks autonomically so Memcached can be applied. Devices that later enter/exit the mobile network should be able to participate in autonomic distributed data caching. Many factors can cause the number of devices in a mobile network Any autonomic distributed caching mechanism that allows a mobile network to function despite limited connectivity must self-heal in response to new devices entering or exiting the network. is preloaded with a background service that periodically checks cellular connectivity. As devices move away from cellular towers and signal fades, cellular connectivity becomes incrementally weaker and drastically increases in latency. Once a predefined threshold of reduced connectivity is reached, a device, referred to as the initiator, will begin the self-healing process by autonomically invoking the begin command. The initiator uses Bluetooth to detect the presence of nearby devices and then transmit a packet containing its device ID and a list of detected device IDs to The devices present in a given mobile network change over time. Devices may physically enter a network by coming in range of other devices or exit the network by going out of range, crashing, or running out of power. to change, e.g., devices may move out of range with each other, crash, break, or run out of power and turn off, removing any previously cached data. Devices entering the network, however, should be able to access previously cached data on the devices that remain. Any autonomic distributed caching mechanism must therefore be augmented to handle the dynamic nature of mobile networks. 3. Using Mobile Distributed Caching with M2Blue to Selfheal in Response to Limited Cellular Connectivity Mobile Memcached with Bluetooth (M2Blue) is an autonomic distributed data caching mechanism we created to (1) allow mobile devices continued access to data by using autonomic distributed caching to self-heal in the event of limited cellular connectivity and (2) provide a mechanism for caching data that can selfheal to function despite the entry/exit of devices from the network. This section describes the sequence for preparing, securing, and commencing autonomic distributed caching with M2Blue. 3.1 Autonomically Preparation of Devices to Self-heal the server over the cellular connection. Upon receiving this information, the server will reply to the initiator with a packet containing the public key and a hash function. The initiator will then use Bluetooth to broadcast the public key and hash function to all discovered devices, creating a mobile network profile that can be used in conjunction with autonomic distributed caching to allow self-healing in the face of limited connectivity. 3.2 Secure Self-healing with Public/ Private Key pairs Upon receiving packets from all devices, the server begins the server-side M2Blue protocol. First, when a request for data is received, the server uses a predefined policy (i.e., request frequency) to determine if the data associated with the key should be written to the distributed cache by the device. If so, the server produces a string, referred to as the data tag, that concatenates the key sent by the device, the data associated with the key from the server, and an expiration timestamp for the data. This string is then encrypted with the server’s private key and transmitted to the device with the key and requested data. If the data should not be cached then only the key and data are transmitted to the device. 3.3 Autonomic Device Modes: Read/Write/Store For the M2Blue protocol, a device can perform 3 different caching operations– write, read, and store–as described below. 3.3.1 Write Operation The write operation defines how data is written into the autonomic distributed cache when the key, data, and data tag are received by a device from the server. First, the key is applied to the hash function received from the initiator to determine the destination device ID and memory location for storage. Each device also receives an alias table listing all device IDs from the initiator during preparation. The alias table is used to determine if another device is now handling the storage of the data for the device ID determined by hashing the data key. Once a request to store data is received by the destination device, the data and the data tag is stored in the appropriate location. If the destination device is not detected, then the request is forwarded to the initiator. If the initiator cannot detect the device, then the device is removed from the alias table of the initiator, which is then broadcasted to all other devices. For example, consider a mobile network consisting of four devices. After the preparation and data caching begins, Device 2 leaves the network. Upon attempting to store data to Device 2, the requesting device will not be able to detect the device and will forward the request to initiator device. The initiator will attempt to detect the device, fail to detect it, and then update its alias table so that all data being stored to Device 2 will now be stored to another specific device, such as Device 3, and then broadcast the table to all other devices. Upon receiving Relative localization with Bluetooth is the process of determining which mobile devices are present within a certain physical range. Prior to being fielded, each device CSI Communications | August 2011 | 18 CSIC August 2011.indd 18 www.csi-india.org 8/6/2011 12:45:42 PM Providing mobile networks with the autonomic ability to self-heal in the event of limited cellular connectivity is hard. The dynamic nature of mobile networks, with devices entering and exiting unpredictably, makes it hard to apply self-healing communication with autonomic distributed caching mechanisms. the new alias table, the requesting device will now look up Device 2 in the alias table and determine that Device 3 is the new location for data intended for Device 2. 3.3.2 Read Operation The read operation allows a device requesting data to access autonomically cached data, thereby potentially avoiding additional requests to the server across the cellular network. When the requesting device requires a data, the key representing that data, such as a variable name, is applied to the hash function received from the initiator to determine the destination device ID and address where the requested data would be stored in the distributed cache. The destination device ID is checked in the alias table to determine if another device is now handling the storage for that device ID. A request is then sent over Bluetooth to the appropriate destination device for the requested data which then transmits the data and data tag stored at the requested location back to the device. The data tag is then decrypted using the public key to determine that the data corresponds to the correct key and has not expired. If the device is not detected the request is forwarded to the initiator. The initiator either forwards the request to the destination device and replies back with the data and data tag or determines the device is no longer present, updates the alias table accordingly, and broadcasts the table to all other devices. If the data is not retrieved from the distributed cache, the device must hold until a cellular connection can be made. 3.3.3 Store Mode While all devices should be able to read from and write to the cache, all devices are not always used to store cached data. This state is represented as Boolean variable named store mode. Each device involved in the preparation phase of M2Blue has store mode set to true by default, allowing it to store data. New devices that join the network after data has been cached may cause the network to grow larger than specified in the hash function generated during the preparation phase. These devices, however, could be used later to store data in the event of other devices leaving the network. For example, the hash function generated by the server accounts for 5 different devices. If a new device joins and increases the number of devices to 6, the new device by default will not be in store mode, but will be able to read and write to the cache after making a request for the hash function, public key, and alias table from the initiator. If one of the other devices leaves the network, the new device can change store mode to true, update the alias to take the exited device’s place, and then broadcast the new alias table to all devices. Anytime the alias table is updated any data cached to the original device is no longer available. 4. Related Work This section compares our distributed caching technique for mobile devices with Memcached and Bluetooth localization. Distributed caching techniques. Memcached is a distributed memory object caching mechanism designed to accelerate dynamic web applications by using a shared hash table to distribute data between multiple processes so that changes made by one process can be simultaneously seen by another [5]. Lerner tested the fusion of Memcached and Ruby on Rails by showing Memcached could reduce unnecessary server traffic [9]. Harris demonstrates Memcached execution time consistency in [7] by showing that the execution time of onethousand consecutive cache accesses are relatively equal. Many websites, such as Live Journal, Twitter, and Wikipedia, use multiple instances of Memcached on multiple servers to handle hundreds of website visits per second [5]. Our M2Blue mechanism differs from Memcached in several ways. In particular, Memcached is designed for cache handling on servers for websites, whereas M2Blue is used for mobile devices. Likewise, M2Blue provides self-healing properties for autonomically responding to periods of time where there is a decrease in cellular connectivity, which is a useful feature in autonomic computing where distributed systems must adapt to unpredicted changes. Relative localization with Bluetooth. Relative localization with Bluetooth is the process of determining which mobile devices are present within a certain physical range. Cheung et al. [3] present a Bluetooth localization technique that uses beacons and smartphones to determine the location of the smartphone. These beacons dynamically change signal strength based on the physical layout of an environment. Fisher et al. used off-theshelf Bluetooth beacons and a mobile client device to achieve +/- 1-meter accuracy by using phase difference calculations of the beacons and running the received beacon signals through a low-pass filter [4]. Our M2Blue mechanism uses Bluetooth to determine devices that are present, allowing us to execute the distributed caching algorithm without requiring additional hardware. Further, M2Blue is designed to autonomically apply distributed caching in response to limited cellular connectivity. This autonomic feature of self-healing in response to service availability allows M2Blue to remain robust despite limited connectivity. 5. Concluding Remarks Providing mobile networks with the autonomic ability to self-heal in the event of limited cellular connectivity is hard. The dynamic nature of mobile networks, with devices entering and exiting unpredictably, makes it hard to apply selfhealing communication with autonomic distributed caching mechanisms. Our M2Blue autonomic distributed caching mechanism helps mobile networks overcome these challenges and self-heal Mobile devices are excellent platforms for using sensors, such as GPS and accelerometers, to capture physical data, making them ideal for location-specific applications. New cache-based removal policies should be investigated... CSI Communications | August 2011 | 19 CSIC August 2011.indd 19 8/6/2011 12:45:42 PM despite limited cellular connectivity. Based on our work with M2Blue thus far, we have learned the following lessons pertaining to self-healing, autonomic mobile computing environments: Detecting the presence of nearby devices does not require additional hardware. Knowledge of the number and type of devices available is essential for autonomic distributed data caching. The M2Blue technique uses Bluetooth to effectively determine the presence of surround devices. Since Bluetooth comes preloaded on the majority of smartphones, such as the Google Android and Apple iPhone, no additional hardware is required to begin caching with M2Blue. Responding to fluctuating network size is hard. M2Blue uses Bluetooth to detect the presence of devices and alias tables to alter the destination of read-/write operations as devices leave the network. The impact of deciding which device to handle the exited devices cache responsibilities should be investigated. Mobile networks use geo-location specific data. Mobile devices are excellent platforms for using sensors, such as GPS and accelerometers, to capture physical data, making them ideal for location-specific applications. New cache-based removal policies should be investigated and applied to M2Blue that take into account the geographic origin of cached data. References 1. 2. 3. 4. G. Anandharaj and R. Anitha. A distributed cache management architecture for mobile computing environments. In Advance Computing Conference, 2009. IACC 2009. IEEE International, pages 642– 648. IEEE, 2009. Y. Chen and H. Kobayash. Signal strength based indoor geolocation. In IEEE International Conference on Communications, volume 1, page 436, 2002. K. Cheung, S. Intille, and K. Larson. An inexpensive bluetooth-based indoor positioning hack.Proc.UbiComp06 Extended Abstracts, 2006. G. Fischer, B. Dietrich, and F. Winkler. Bluetooth indoor localization system. In Proceeding Workshop onPositioning, Navigation and Communication, pages CSI Communications | August 2011 | 20 CSIC August 2011.indd 20 147–56, 2004. B. Fitzpatrick. Distributed caching with memcached. Linux journal, 2004(124):5, 2004. A. Ganek and T. Corbi. The dawning of the autonomic computing era.IBM Systems Journal, 42(1):5–18, 2003. A. Harris. Distributed caching via memcached. Pro ASP. NET 4 CMS, pages 165–196, 2010. D. Johnsort. Routing in ad hoc networks of mobile hosts. In Mobile Computing Systems and Applications, 1994. WMCSA 1994. First Workshop on, pages 158–163. IEEE, 1994. R. LERNER. Memcached integration in 5. 6. 7. 8. 9. » 10. 11. 12. rails.Linux Journal, 2009. F. Saffre, J. Halloy, M. Shackleton, and J. Deneubourg. Self-organized service orchestration through collective differentiation. Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions on, 36(6):1237–1246, 2006. K. Wong. Geo-location in urban areas using signal strength repeatability. Communications Letters, IEEE, 5(10):411– 413, 2001. P. Xiang, R. Hou, and Z. Zhou. Cache and consistency in nosql. In Computer Science and Information Technology(ICCSIT), 2010 3rd IEEE International Conference on, About the Authors Dr. Brian Dougherty is a Research Scientist in the Bradley Department of Electrical and Computer Engineering at Virginia Tech. He received his BS in Computer Science from Centre College, his MS and PhD from Vanderbilt University. Dr. Dougherty’s research investigates the development of mobile cyber-physical applications, automated techniques for configuring DRE systems and automatically scaling cloud computing applications to meet quality of service guarantees. Dr. Douglas C. Schmidt is a Professor of Computer Science at Vanderbilt University. He has published 10 books and more than 475 technical papers covering a wide range of software-related topics, including patterns, optimization techniques, and empirical analyses of objectoriented frameworks and domain-specific modeling environments that facilitate the development of distributed real-time and embedded (DRE) middleware and mission-critical applications running over data networks and embedded system interconnects. In addition to his academic research, Dr. Schmidt has led the development of ACE and TAO, which are are DRE middleware frameworks used successfully by thousands of companies and agencies worldwide in many domains, including national defense and security, datacom/telecom, financial services, medical engineering, and massively multiplayer online gaming. Dr. Schmidt received B.S. and M.A. degrees in Sociology from the College of William and Mary in Williamsburg, Virginia, and an M.S. and a Ph.D. in Computer Science from the University of California, Irvine (UCI) in 1984, 1986, 1990, and 1994, respectively. Dr. Jules White is an Assistant Professor in the Bradley Department of Electrical and Computer Engineering at Virginia Tech. He received his BA in Computer Science from Brown University, his MS and PhD in Computer Science from Vanderbilt University. His research focuses on developing mobile cyber-pysical systems using smartphones, designing power-efficient communications middleware for smartphones, and applying search-based optimization techniques to the configuration of distributed, real-time and embedded systems. Daniel Guymon is a Research Assistant for the Mobile Applications, Genetic optimizatioN, and cloud coMputing (MAGNUM) group in the Bradley Department of Electrical and Computer Engineering at Virginia Tech. He received his BS in Computer Engineering from Virginia Tech in 2010. Daniel’s research examines mobile cyber-physical system development, smartphone security, and localization techniques for mobile devices. www.csi-india.org 8/6/2011 12:45:42 PM Practitioner Workbench Achuthsankar S. Nair* & Parul Tyagi** * Editor, CSI Communications ** Centre for Bioinformatics, University of Kerala Programming.Learn(“Perl”) » Regular Expressions in Perl Sharp string matching is a core strength of Perl. The following code snippet finds “me” in “Welcome” $a = “Welcome”; if ($a =~ /me/) { print “Found”; } else { print “Not Found”; } If the standard name $_ is used instead of $a, the matching can be done without specifying the string name. This is of course a bit odd and takes time to adjust to ! $_ = “Welcome”; if ( /me/) { print “Found”; } else { print “Not Found”; } An ‘s’ gets substitutions done. “color” get substituted with “colour” in the following snippet $a = “The rainbow is colorful. How beautiful are those colors !”; $a =~ s/color/colour/; print $a; A ‘g’ at the end of the command as in $a =~ s/color/colour/g gets all instances of color substituted. An ‘I” can be used to ignore case, as in $a =~ s/COLOR/colour/i. Of course you can combine them as in $a =~ s/COLOR/colour/ig The translation feature, tr, can be used in the same way as in ‘s’. In addition, it permits regular expressions in the substitution. This makes it powerful. A case conversion can be achieved by a tr statement that calls for substitution of all lower case by uppercase, stated in a standard manner: $a = “To be or not to be”; $a =~ tr/[a-z]/[A-Z]/; print $a; What is the standard manner ? Well, here is a list: Here is a program that you can tinker with to learn regular expressions. It picks words from an array @a, which match a given pattern. #!/usr/local/bin/perl @a=( ‘abc123’, ‘a’, ‘aa’, ‘aaa’, ‘aaab’, ‘arabia’, ‘1964’, ‘the truth’, ‘specialise’); foreach $i (@a) { if ($i =~ /a/) {print “$i\n”} } You can modify this easily to read from a text file (You may also convert it into a counting program which will count the instances of all words matching a particular pattern). All the examples given below may be tried out using this program: /aa/; /aaa/; /a.a/; /^a/; /^ar/; /a$/; /a*/; /li[s/z]e/; / [0-9]/; /[a-zA-Z]/; /[az]{3}[0-9]{3}/; /[a-z]+/; /a./; /a?/; ^$; a You can just paste these expressions one by one in place of /a/ in the code snippet above. Ideally you should predict the result before running the programs. Match Pattern Explanation . Match anything [ ] Match with anything inside the [ ] | OR [a-z], [0-9] etc Match anything in the range * Match zero or more times the preceding char + Match one or more times the preceding char ? Match one or zero times the preceding char {n} Match n times the preceding char {n,} Match at least n times the preceding char {n,m} Match at least n, but not more than m times the preceding char ^ Match the beginning of the line $ Match the end of the line What is your “regular expression”? Here we see “regular expressions” from Kathakali: Tranquility (Shaantha), Surprise (Adbhutha), Disgust (Bheebhatsa), Compassion (Karuna), Fear (Bhayaanaka) and Courage (Veera) Courtesy of Krishna Mohan, http://www.drkrishi.com n CSI Communications | August 2011 | 21 CSIC August 2011.indd 21 8/6/2011 12:45:44 PM Practitioner Workbench Debasish Jana Editor, CSI Communications Exclusive Interview with Prof. Bjarne Stroustrup, Creator of C++ Prof. Bjarne Stroustrup is the creator of the most popular programming language, C++. He is the living legend, he is the maestro. His book “The C++ Programming Language” is the most widely read book of its kind and has been translated into 19 different languages around the world. In addition to his five books, Stroustrup has published more than a hundred of academic and popular papers. Bjarne was born in Aarhus, Denmark in 1950. He received his Candidatus Scientiarum (Master’s degree) in Mathematics and Computer Science from the University of Aarhus, Denmark in 1975. He obtained his Ph.D. in Computer Science from University of Cambridge, England in 1979 for work on the design of distributed systems. He designed and implemented C++ while a researcher in AT&T Bell Lab’s Computer Science Research Center and was the head of AT&T Lab’s Large-scale Programming Research department, from its creation until late 2002. Stroustrup was elected member of the National Academy of Engineering in 2004. He is a Fellow of the ACM and an IEEE Fellow. He currently works at Texas A&M University, United States, as a Distinguished Professor where he holds the College of Engineering Chair in Computer Science. CSI Communications | August 2011 | 22 CSIC August 2011.indd 22 www.csi-india.org 8/6/2011 12:45:45 PM Part 3 of 3 C++0x Technicalities and Intricacies Prelude C++0x (pronounced “see plus plus oh ex”) is the new standard for the C++ programming language (earlier and existing standard is C++98 or ISO/IEC 14882, published in 1998 and minor amendment was done in 2003 as C++03). In their March 2011 meeting, the C++ Standards Committee voted C++0x (N3290) to Final Draft International Standard (FDIS) status. The final specification is expected to be published sometime in mid-2011 The implementation of the new standards (to be known as C++11 or C++2011) is already well underway in the GCC, Visual C++, and other C++ compilers. C++ is a general-purpose programming language with close-to-machine fundamental semantics, suitable for kernel and systems programming with a mission of being a better C, supporting data abstraction, object oriented programming and generic programming. C++ is used in a very wide range of applications and for systems programming: http://www2.research.att.com/~bs/applications.html. C++0x aims to improve C++ as a language for systems programming and library building with ease of learning while at the same time remaining fully backward compatible. C++0x is going to have nice features like uniform initialization, move semantics, lambda’s as first-class elements, automatic type deduction, and a simplified for statement. Also there are atomics, a defined memory model, and support for thread-level concurrent programming. On concurrency support in C++0x Prologue (Debasish Jana): With heterogenerous and varied platforms (both hardware architecture and operating systems), writing portable programs remains a challenge. As of C++98 and its ammedment as of C++03, C++ faced varied portability issues. For example, size of integer (int) type data was 2 on 16-bit machine, 4 on 32-bit machine, 8 on 64-bit and so on. Also, for character strings, the size of a single character could be one or two bytes depending on the language of character set (English, Japanese) it represents. Added to that, for parallel processing, concurrency support, threads, semaphores used to depend on infamous posix libraries or platform dependent operating system specific calls making a source code written in C++ not portable across platforms. One way to make portable code was to define platform specific calls within the block of #ifdef for example #ifdef WIN32 // win32 specific code #else #ifdef LINUX //linux specific code #endif #endif Also, web support, multicore architecture support all cause problem to support portability. Debasish Jana: Earlier C++ standards did not have language level portable support for concurrency, multicore, web development, how do the new standards aim to cope up with this? Bjarne Stroustrup: We have to distinguish between the various application areas: Concurrency is used in many forms and in many contexts. For example, C++11 provides direct support for system-level concurrency, but does not provide direct support for web development; that’s the domain for libraries and domain specific languages. I would have liked to provide standard support for distributed computing, but we did not have the resources to get such facilities into the standard, so (as ever) C++ provides support for programming in a single address space. What’s new is that the support for threads, locks, etc. is standard and type safe. Also, we now have a precise specification of the memory model. There is also a set of primitives for lock-free programming so that programmers can build their own libraries to support alternative views of concurrency. Most of the concurrency parts of the new standard are already available today. ... C++11 provides direct support for systemlevel concurrency, but does not provide direct support for web development; that’s the domain for libraries and domain specific languages. On threads in C++0x Prologue (Debasish Jana): In C++98 and C++03, threads were CSI Communications | August 2011 | 23 CSIC August 2011.indd 23 8/6/2011 12:45:47 PM supported not as part of the language but part of the operating system calls available with the operating system specific libraries. Multithreading and concurrency helps to run multiple portions of code in parallel to the execution of the other portions of code. In case we have the hardware support for multiple processors (multicore) or just a single CPU (single core), then in the former case, the code can run in parallel in true sense, and in later case, oerating system uses a concept of time sharing where mutiple tasks are interleaved within same processor to offer a pseudo form a multiple tasking. Whatever be the case, we have to identify the function that should run concurrently as part of a thread executing in parallel. C++ supports threads in a single address space. Anything involving multiple address spaces must be done with higher-level libraries that are not part of the standard. Threads are considered as lightweight process, where a two threads share the same address space within the parent process. This means, the code area, heap area, global memory area are all shared, and the stack area are different for each thread so as to separate the execution control and local data that gets stored within stack. Debasish Jana: How will the new C++ support threads running on different address spaces and on different processors in muticore machines? Will we be able to run multicore threading yet portable across platforms? Bjarne Stroustrup: C++ supports threads in a single address space. Anything involving multiple address spaces must be done with higher-level libraries that are not part of the standard. There is no standard mechanism for exchanging data between threads in different address spaces. For that, you’ll have to use one of the existing inter-process communication libraries and probably each system’s native processes. Bjarne Stroustrup: Obviously, we must avoid data races in both cases. My best advice is to avoid shared data whenever possible and use locks when we have to share data. So, rely on data passed as parameters to threads, local (stack) memory, and non-shared free store. When that’s not feasible, the standard provides mutexes, locks, and condition variables, so that all the usual techniques can be used. For example: X my_data; mutex my_mutex; // mutex used to avoid // data races for my_data void my_fct() { // potentially running in // several threads lock lck(my_mutex); // acquire mutex my_data.foo(); // use the shared data } // lck’s destructor implicitly // releases my_mutex We use RAII (“Resource Acquisition Is Initialization”) to minimize errors leading to non-released resources. The standard provides several kinds of mutexes (e.g. recursive mutexes and timed mutexes) and an operation to simultaneously acquire several mutexes. Epilogue (Debasish Jana): To avoid racing and surprises in accessing shared variables, any access (read or write) to the shared variables must be mutually exclusive so that no two threads can access the same variable in read-write mode. This is done by locking through mutex semaphores. Earlier, semaphore support was through the operating system specific library, now the support is given in the language level for increased and enhanced portability across platforms. C++ has a bias towards systems programming: It combines a direct and efficient model of the machine with very flexible and general abstraction mechanisms, allowing zerooverhead abstraction. On thread-safe synchronization in C++0x Prologue (Debasish Jana): In C++98 and C++03, threads running in same address space share the global data area of the parent process. As such, all static data and shared variables are shared across threads of same process as well. This puts a challenge on the synchronization of the shared data, because while one thread may try to acess the shared variable, the other thread may try to modify this, resulting in a race condition. My best advice is to avoid shared data whenever possible and use locks when we have to share data. So, rely on data passed as parameters to threads, local (stack) memory, and non-shared free store. Debasish Jana: How will the new standard deal with synchronization of thread-safe dynamic concurrent initialization and cleanup of static variables as shared variables? CSI Communications | August 2011 | 24 CSIC August 2011.indd 24 On passing value or exception from dying thread in C++0x Prologue (Debasish Jana): The execution of a thread may terminate normally when the execution reaches the end of the function, irrespective of the execution point of the other threads. The scheduling of threads is always unpredictable, as it depends on the operating system, thus, we have no clue to know how far the thread has executed. The thread may not have been started, or may have been midway during execution, or it could have finished normally, or worst case, the thread has terminated abnormally when the thread has been abruptly stopped. Debasish Jana: If a thread abnormally terminates because of a runtime exception, how do the other threads know about this and cope up (in new C++0x standard)? Bjarne Stroustrup: You can “transfer” a value or an exception from one thread to another. The mechanism for that is called a future. This is the one C++0x mechanism that is not part of the conventional threads and locks system level of concurrency. www.csi-india.org 8/6/2011 12:45:47 PM Say that I have a task (function or function object) f that I’d like to invoke with arguments x1 and x2 so that it will run concurrently with my thread. This can be done like this: future<double> x = async(f,x1,x2); // run f(x1,x2) concurrently // do other work double d = x.get(); late, making it hard to give decent diagnostics, but at least they are caught before the program starts running. Here, I have assumed that f returns a double; if it doesn’t, the code won’t compile. The get() potentially waits for the task to finish and if f fails and signals that failure by throwing an exception, then the call to get will throw that exception. The async function is one of the ways that the standard library provides to invoke a function to run in a separate thread and return its value or exception to a caller. On language features and design philosophy of C++ in general When I write a program of any size it is not a choice of OOP vs. GP vs. C-style; for the most appropriate abstractions and the best performance, I have to use a set of features and techniques that cross those classification boundaries. On allowed types in templates in C++0x Prologue (Debasish Jana): Templates are nice things in C++ to provide generic programming support. Through template, we provide parameterized classes or functions so that we write the class or function be supported for a variety of data types, and the data type passed as an argument. For example, to support vector<int> or vector<char>, we write the class vector as a parameterized class or template. However, in many cases, we see that the generic program may fail to a specific case because of the fact that a particular function or operator is not provided for that particular type making it fail to support for a particular type. Debasish Jana: One major problem with generic programming is that the templates don’t tell about the permissible or allowed types that can be passed. Any suggestion on that? Bjarne Stroustrup: We worked hard to solve that problem, but didn’t come up with a sufficiently good solution. We need an easier-to-use and faster-to-compile design than the one we had for C++0x. I’m trying to do a thorough re-think of that, but I’m not ready to commit to even a definite direction for a design. Look for my research papers over the next couple of years. I suspect that semantic requirements will play a bigger role than they did in the past. One of the historic strengths of objectoriented programming was exactly that it was an attractive label – sometimes hiding irreconcilable differences among its proponents. Please also remember that even though the error messages caused by mistakes in generic code can be spectacularly bad, templates support real-world uses of generic programming rather well – spectacularly well in some cases as compared to alternatives in other languages. Also, type errors may be caught C++11 does improve the support for generic programming significantly despite our failure to address that specific important problem. Debasish Jana: Every language has its own philosophy which also evolves and adapts over time. However, C++ preaches about philosophy very tightly blended in the applicability of the language. That philosophy includes more object orientation, also procedural, more so in terms of programming with proper algorithmic footprint. Your views on that. Bjarne Stroustrup: Language features exist to support design philosophies. However, a language designer cannot anticipate all programmer needs, so a language design has to aim for generality. In particular, I am strongly against deliberately crippling features to prevent “bad code.” In general, we don’t know what will be “bad code” in a few years or in an unanticipated application area. The advantage of specialized languages is that their designers can make far stronger assumptions about the use of their languages and the background of their users than designers of generalpurpose languages. What I say on this topic is primarily relevant to general-purpose languages and in particular to C++. C++ has a bias towards systems programming: It combines a direct and efficient model of the machine with very flexible and general abstraction mechanisms, allowing zero-overhead abstraction. ...the main point is that we cannot classify this program as “object oriented”, “generic”, or “traditional” even though it uses the classical characteristic language features for using each “paradigm.” What we see here is a synthesis that elegantly and efficiently incorporates all. I want to get beyond the “multi-paradigm”/hybrid view of C++. When I write a program of any size it is not a choice of OOP vs. GP vs. C-style; for the most appropriate abstractions and the best performance, I have to use a set of features and techniques that cross those classification boundaries. I still don’t have a snappy label for what I do, but the central idea is to provide a direct and efficient mapping of my application ideas to machine resources. That was also the aim of the pioneers of object-oriented and generic programming; it was only later – in the hands of less thoughtful and less experienced people – that the distinctions between techniques became characterized in terms of language features and simplistically discussed in terms of good vs. bad. I’m working on getting from philosophical statements like those in the previous paragraph to practical rules and good examples. You can actually find a fair bit of that in TC++PL3, PPP, and my articles and interviews about style over the years, but I must develop a clearer and more consistent statement and find a simple label. One of the historic strengths of object-oriented programming was exactly that it was an attractive label – sometimes hiding CSI Communications | August 2011 | 25 CSIC August 2011.indd 25 8/6/2011 12:45:47 PM irreconcilable differences among its proponents. So, consider the following C++11 program: struct Point { // traditional C-style struct int x, y; // … }; struct Shape { // traditional OO abstract base class virtual void draw() = 0; // pure virtual function virtual void move(Point to) = 0; virtual pair<Point,Point> box() = 0; // bounding box // … virtual ~draw() {}; }; // classical class hierarchy class Circle: public Shape { public: Circle(Point,int); // data, overriding functions, … }; // classical class hierarchy class Triangle: public Shape { public: Triangle(Point,Point,Point); // data, overriding functions, … }; constexpr Point Origo {0,0}; constexpr Point P2 {50,100}; constexpr Point P3 {100, 30}; // classical parameterized container type vector<Shape*> vs { new Circle{Origo,20}, new Triangle{Origo,P2,P3}, new Circle{{-10,200},20}, new Triangle{{-400,0},P2,{-200,200}}, // … }; int main() { sort(vs.begin(), vs.end(), // generic algorithm [] (Shape* p, Shape* q) { return p->box().first.x <q->box().first.x; } ); for (Shape* p: vs) delete p; } How would I know (without likelihood of mistake) what is a suitable type to hold the sum of elements from U and V? With auto, I don’t have to know because the compiler already does. Here, I’m showing off a few C++11 features. Note the initialization of the vector of Shape pointers, the range-for loop, and the lambda CSI Communications | August 2011 | 26 CSIC August 2011.indd 26 specifying the sorting criterion. However, the main point is that we cannot classify this program as “object oriented”, “generic”, or “traditional” even though it uses the classical characteristic language features for using each “paradigm.” What we see here is a synthesis that elegantly and efficiently incorporates all. On auto detection of a type from an initializer Prologue (Debasish Jana): C++ is based on strong type theory where every data defined within the program must have a valid type with strict compile-type binding. For example, we have int i = 5; to declare and define a variable i as integer (int) initialized to 5. We may have void * pointer which can point to any typed pointer, for example, char ac[10]; // array of 10 characters void *ptr = NULL; // placeholder pointer ptr = (char *) ac; // ptr points to start address of ac I think we should look serious at a simpler-touse and simpler-to-implement concept design as the premier way of improving our support for generic programming. We may have also a superclass (or base class) pointer pointing to a subclass (or derived class) pointer, such as, class A{}; class B: public A{}; A *pa; pa = new B(); // left side is a base class pointer // right side is a derived class pointer C++0x is bringing out a nice feature of deducing of a type from an initializer. Earlier, in C (but not ISO C++), we had the concept of “implicit int,” i.e. if we dont provide return type of main or any other function, for example, g(){} // implicitly means int g(){} However, implicit int was not supported for declaring of data in any place within the program, not even while passing arguments. But, now we have auto in C++0x, lets explore. Debasish Jana: C++ 0x is supporting a feature of determining the type of a data automatically from the initializer or usage. For example, auto x = 5; will automatically determine that x is of type int, from its initializer. What is the advantage of this feature? Is it because of the fact the type is either difficult to write in specifically or it is a mean to support generic programming in a better way? Bjarne Stroustrup: The key strength of auto is that it allows you to avoid redundancy. Consider int x = 5; Here we say that x is an int and that we initialize it with the int with www.csi-india.org 8/6/2011 12:45:47 PM the value 5. Here, that’s only a minor convenience, but consider: void f(map<string,pair<int,int>>& m) { for (map<string,pair<int,int>>::iterator p = m.begin(); p!=m.end(); ++p) // ... } This is pretty ugly compared to void f(map<string,pair<int,int>>& m) { for (auto p = m.begin(); p!=m.end(); ++p) // ... } The compiler knows the type of m, so we don’t need to tell it again (and possibly get it wrong). The compiler also knows the value_ type of the map, so we could even write: void f(map<string,pair<int,int>>& m) { for (auto& x: m) // ... } The pressure for change should come from the community rather than from within the standard committee. And these are examples where we actually know the type. In more complicated generic code, knowing the type isn’t always easy. Consider a somewhat simplified example: template<class U, class V> void f(U& u, V& v) { for(int i=0; i<u.size(); ++i) { auto tmp = u[i]+v[i]; // … } } How would I know (without likelihood of mistake) what is a suitable type to hold the sum of elements from U and V? With auto, I don’t have to know because the compiler already does. Please remember that sometimes redundancy is a good thing: it helps catching errors. Therefore I recommend the use of auto only in restricted scopes. I hope and expect that auto will be relatively rare for namespace variables. If a function gets so long that auto becomes a source of confusion, the proper response will usually be to shorten the function. On Wishlist Debasish Jana: Finally, your C++ wishlist, please. Bjarne Stroustrup: Quality C++0x implementations. People learning to use C++0x idiomatically. Better static analysis tools to cope with high-end applications. Oh, you meant new language features and library components! We only just finished the C++11 standard. I have not had time for calm thought about future long-term needs, so I can only mention some preliminary personal thoughts. I think we should look serious at a simpler-to-use and simpler-to-implement concept design as the premier way of improving our support for generic programming. In general, we should focus language improvements on support for abstraction (rather than directly supporting specific end-user needs). I think we should look at multi-methods (e.g. see Peter Pirkelbauer, Yuriy Solodkyy, and Bjarne Stroustrup: “Open MultiMethods for C++” , Ref. URL: http://www.research.att.com/~bs/ multimethods.pdf, Proc. ACM GPCE’07) and I think we should look into what would be needed to support multiple address spaces. The change should be fundamental rather than serving a current fashion. For libraries, I’d like to revisit the various ideas about distributed computing and in general look for ways to provide standardlibrary support for higher-level concurrency models. I’d also like to see some better support for linear algebra, but that may be selfish and frivolous. The pressure for change should come from the community rather than from within the standard committee. The change should be fundamental rather than serving a current fashion. Only a library that has been designed, implemented, and used by a community has a chance of becoming a standard library component. I think it will be important to look for major improvements rather than more small “convenience features” and focus on library design. On Final Good wishes for the fan club, the learners, the educators, the practitioners of C++ the community at large Debasish Jana: I have been learning and preaching C++ for more than two decades now and I don’t have any doubt whatsoever about the fact that C++ is the most brilliant language ever made. I am personally delighted to know the C++0x taking its final shape and being released in this year as part of the compiler supports. On behalf of C++ community at large, and from my personal admirer viewpoint, sincerest very special thanks to you, Prof. Stroustrup, for spending so much time for showing us the way through this exclusive interview, giving a chance to hold the torch of the glory and success of C++ in making more and more robust, resilient and adaptable softwares. Bjarne Stroustrup: Thanks, Debasish, for giving me an opportunity to explain about C++11. I’m looking forward to many new and even more exciting applications. Only a library that has been designed, implemented, and used by a community has a chance of becoming a standard library component. The entire series of all three parts of the exclusive interview with Prof. Bjarne Stroustup is also listed under Interviews link at his n home page: http://www2.research.att.com/~bs/ CSI Communications | August 2011 | 27 CSIC August 2011.indd 27 8/6/2011 12:45:47 PM CIO Perspective Anil V. Vaidya Adjunct Professor, S. P. Jain Institute of Management & Research Doctor of Business Administration (UK), MBA (USA), B.Sc.(Tech), B.Sc., CISA, CISM, anvvaidya@gmail.com IT Strategy Nuances » Is IT Valued ? The first article in this series brought out the nuances of IT strategy. The next three articles addressed three aspects of IT Strategy viz. strategy management, organization and technology. This article focuses on the important concept of ‘value of IT’ and presents a value addition model. IT value has been a topic of discussion in the CIO circle for a long time now. Value creation, computation and its demonstration have been the challenges faced by CIOs. The CIOs and IT professionals have tried various ways to prove the worth of IT, in terms of contribution to businesses at different levels. In the real world, a product or service is valued only as much as its perceived worth; matching expectations is considered the minimum requirement. IT arena has been immensely dynamic and is ever changing. In turn, the expectations gallop ahead never to be completely fulfilled, resulting in gaps. This article offers valuation examples and ways of valuing the involvement of IT. IT Value - usage of information and transformation Information management (IM) is the management of processes and systems that create, acquire, organize, store, distribute and use information (Detlor, 2010 p. 103). IM is not about managing technology but about managing processes that generate and use information. McAfee and Brynjolfsson (2011) reported from their research of 330 US companies that most data-driven companies had 4% higher productivity and 6% higher profits than the average. Transformational characteristics of information technology and systems have been at the forefront, especially with the rapid spread of internet usage. Decisionmaking processes not just of organizations but even of individuals have undergone major overhaul. Consumers have a much wider spectrum of alternatives and a lot more information available. “IT CSI Communications | August 2011 | 28 CSIC August 2011.indd 28 has contributed significantly allowing customers to make informed choices” said a CEO. There are enough examples of IT companies offering transformational service consulting. Weill et al (2010) of MIT CISR offer a value framework that shows ‘Distinctive Digitization’ as one of the four management commitments of top-performing firms. While delivering IT value to business, the CIOs have also assumed a new active role in transforming organizations. Gupta (2011) believes that CIOs will be the new change agents for organizations. In the organizational history, although the roles of political, religious and social opinion leaders and change agents have been recognized, that of the technological change agents are yet to be fully investigated. At this juncture, it is important to acknowledge that the path towards the new state must be well thought of, besides knowing the goal of transformation with absolute clarity. The efforts to integrate suppliers and customers into IT systems are well known. Taking this a step further, the organizations now strengthen the cocreation of products and services alongwith business partners. Co-creation is highly valued in marketing circles and IT is the enabler for attaining this goal through its collaboration services and the connectivity of virtual teams. Hicks (2007 p. 234) advocates the application of lean management principles. The principles of lean involve eliminating waste and ensuring value flows. There has been an increasing flow of so-called information generation in the corporate world. In the real world, there are processes introduced and followed that keep churning the data and generate so called information that conforms to the principles of diminishing returns. The information management professionals need to focus on two areas: statutory/ regulatory requirements and decision inputs. Some IT value examples The role of IT services has changed from being merely a cost-innovator to a co-creator. Jayadevan and Sabharwal (2011) describe the Philips IT strategy of pyramid structure with the base layer as cost innovation and next an enabling layer. The topmost layer is IT as cocreator, where IT is increasingly involved in the products, the services and business model. The two top layers have become more important to support growth. The Traffic Management Centre (TMC) set up by Bangalore traffic police helps to reduce traffic violations and decongest arterial roads using simple IT solutions. The target set is to reduce congestion by 30% in central areas, reduce accidents by 30% and to improve parking management. Technology is being used for management and compliance through improved effective policing (Jayadevan, 2011). The RFID-based ubiquitous third party logistic (3PL) system was promoted to apply a collaborative business model to the field operation of warehouses and distribution centers. Kim et al (2008) offer a Korean case study, where the company achieved Transformational characteristics of information technology and systems have been at the forefront, especially with the rapid spread of internet usage. Decision-making processes not just of organizations but even of individuals have undergone major overhaul. www.csi-india.org 8/6/2011 12:45:47 PM a distinct competitive advantage through innovative information technology, which has enabled it to create an uncontested market space, electronic logistics business. In the process, the company identified future customers. Jutras (2010) reported from her research that on manufacturing ERP implementation, best-in-class companies benefited by: 1. 20% reduction in operating costs 2. 18% reduction in administrative costs 3. 22% reduction in inventory costs 4. 17% improvement in complete and on-time shipment 5. 18% improvement in manufacturing schedule Technology cycle and value responsibility IT management concepts embedding IT-Business alignment, involvement of business managers and management of IT project portfolio help in promoting value generation. During a discussion a consultant elaborated the concept of ’technology cycles‘. The consultant stressed that the technology cycle has been one of 50/60 years, made up of the ‘Innovation’ phase and the ‘Value creation’ phase. The first phase was of innovations that lasted for last thirty years when the technologists invented new products. It was the novelty that attracted people during that period. Miller (2009 p. 9) supports this view of technology change followed by emergence of new solutions. During the next thirty years of the ‘value creation phase’ technologist need to prove the value created by the innovations that they have been making. The businesses will emphasise the value of technology rather than its innovativeness. Norman (1998) proposed that customers now look for solutions and convenience rather than for technology. He offered this picture (figure 1) to indicate two periods: The value creation function of IT has been well recognized by researchers and corporations alike. Peppard (2007) acknowledged the difficulty faced by CIOs in delivering value on account of the organization structures, mindset, authority patterns and processes. In their attempt to create value, the CIOs work on their IT organizations and restructure those from time to time e.g. setting up relationships management function within The CHASM Relative % of Customers Early Majority Late Majority Early Adopters Laggards Innovators Time Customers want technology and performance Customers want solutions and convenience Source: Adapted from Norman (1998) Fig. 1 : Early adopters and laggards IT. He has identified the core issue as ‘how to generate value through IT without having access or authority over necessary knowledge and resources’. There is a definite shift from ‘IT as enabler’ to ‘IT as value creator’. The direction change clearly brings into focus the mindset change from technology performance to value creation. Peppard (2007) announced “we are possibly addressing the requirement to generate business value through IT in an inappropriate fashion”. He further stated, “seeking to improve the performance of the IT function is likely to achieve little”. Often the businesses view the IT function as a black box that is supposed to meet the business requirements. The value creation being addressed solely internally by IT function is unlikely to achieve the required level. While the expectation and attempt to create value through IT function is certainly important, the businesses do not get involved or share the responsibility of value creation. Peppard (2007) has identified the six competencies that are required for value creation: creating strategy, defining the IT capability, delivering IT supply, implementing solutions, exploiting information, defining the IS contribution. Importantly all these competencies do not reside within IT i.e. the knowledge and skills underpinning each of these competencies are not located solely in IT functions. We need the business functions to work closely with IT to create value. IT value addition model IT value creation may be achieved through various means such as: cost reduction, process support, business improvement, strategic contribution, revenue growth. Aspirational, experienced and transformational capabilities of IT have been in discussion for a while now. These capabilities can be best described through the role of IT as “business support”, “business enabler”, “business partner” and “business creator”; the last being the direct “value creation” role. Under “business creator” formulation, corporates have structured separate organizations for conducting business in IT arena. Wipro, Tata, L&T, for example, are known to have succeeded in their IT ventures. In recent years, we know that larger data centers of even nonIT companies are gearing up to provide cloud services. Such examples fit in very well into the MIT concept of “Value Center” built from four sources of value. There are others that refer to such activity as top of IT value pyramid. While it is the top of the pyramid that many may desire, CSI Communications | August 2011 | 29 CSIC August 2011.indd 29 8/6/2011 12:45:47 PM IT value addition model Transition Value creator Supporter Enabler CSI Communications | August 2011 | 30 CSIC August 2011.indd 30 Creator Value Enabler Supporter Partner Enabler Supporter Pillars Fig. 2 IT players directly interact with cloud service providers and acquire necessary services they will be part of value chain. IT organizations, which have traditionally been service providers/enablers, will need to compete with such users in future. While closing this discussion, it may be worth reconsidering – why do we discuss the value of IT? We rarely do the same for other services; why not carry on with the good work instead of spending efforts in proving the ‘value’? In any case, in the world of today and of tomorrow, no one can be without “IT”. Bibliography The future ChannelWorld (2010) predicts that 20 percent of non-IT Global 500 companies will be cloud service providers by 2015. The easy availability and accessibility of cloud computing services will extend the role of IT decision making to users. This represents yet another opportunity for IT organizations to redefine their value proposition as service enablers — with either consumption or provision of cloud-based services (ChannelWorld Bureau, 2010). As non- Contributors Stack Value creator it is extremely important to recognize the IT role in the other three areas. The figure 2 here depicts the transition from earlier concepts of “value stack” to “value pillars” to “value contributors”. It is vital to appreciate that the businesses vary in IT value addition methodologies. The “stack” indicates a kind of hierarchy, which may not be the right perspective for every business. The “pillars” connote a sort of support structure to be built on. The “contributor” representation offers a more comprehensive picture of multiple ways of value addition. As an example, one may consider remote patient monitoring field in healthcare. The very nature of “remoteness” requires IT to be contributing through direct partnering in business. In a way this is true for all transactions done from a distance, be it sale of books or orders for flowers or transfer of funds. During the early days, IT strategy followed business strategy, and it was derived from business strategy. However, with the technological advances, IT is becoming integral part of business, as in financial sector, making strategy development a two-way process between IT and Business. The “enabling” role of IT has contributed immensely in functions such as supply chain and manufacturing. One can hardly manage a global supply chain without underlying IT infrastructure. The computer aided design has been in vogue for well over two decades. Similarly, the R&D laboratories can hardly function today without IT enablement. The financial and HR functions were the early adopters of IT to “support” their tasks and activities. ChannelWorld Bureau (2010) Gartner reveals top predictions for IT organizations for 2011 and beyond ChannelWorld.IN November 30 accessed on March 21, 2011 at 11:45 AM IST from http://www. channelworld.in/news/gartner-revealstop-predictions-it-organizations-andusers-2011-and-beyond-40622010 Detlor, B. (2010) Information management International Journal of Information Management 30: 103-108 Gupta, M. (2011) CIOs: New champions of transformation The Economic Times 9 June 2011: 14 Hicks, B. (2007) Lean information management: Understanding and eliminating waste International Journal of Information Management 27:233-249 Jayadevan, P. and Sabharwal, S. (2011) It is a co-creator today, not just costinnovator The Economic Times March 15: 4 Jayadevan, P. (2011) Managing traffic through technology The Economic Times March 17: 4 Jutras, C. (2010) ERP in manufacturing 2010: measuring business benefits and time to value Aberdeen Group Kim, C., Yang, K. and Kim, J. (2008) A strategy for third party logistics system: A case analysis using the blue ocean strategy The International Journal of Management Science 36: 522-534 McAfee, A. and Brynjolfsson, E. (2011) What makes a company good at IT? The Wall Street Journal April 25, 2011 Miller, D. (2009) Business focused IT and service excellence British Computer Society UK Norman, D. (1998) The life cycle of a technology: Why it is so difficult for large companies to innovate Nielsen Norman Group Report accessed on March 5, 2010 from http://www.nngroup.com/reports/ life_cycle_of_tech.html Peppard, J. (2007) The conundrum of IT management European Journal of Information Systems 16:336-345 Weill, P., Ross, J. and Quaadgras, A. (2010) Achieving superior business value from digitization: The MIT CISR value framework MIT Center for Information Systems Research 8(X) n www.csi-india.org 8/6/2011 12:45:47 PM HR Kishor Bhalerao Sr. Vice President – Human Resources at Persistent Systems Ltd. Role of HR in Mergers and Acquisitions HR plays an important role even during the initial decision making process in an M&A. When a company is acquiring some other organization, then the choice of action or inaction remains with the acquiring company, while the company that gets acquired, generally does not have much say in the decision making. HR Checklist for M&A Competition is the industry buzzword these days, and it is what drives mergers and acquisitions (M&A). They say ‘if you can’t beat them, join them’. related issues need to be considered and so it is important to keep employees’ emotions and aspirations in mind. HR, therefore, has a role to play considering the people factor. What is M & A? When an M&A is in process, employee-related issues need to be considered and so it is important to keep employees’ emotions and aspirations in mind. A merger is like a union, where both the parties are convinced that their interests will be better served by creating a single organization. While in an acquisition, the dominant player takes over an organization and functions as a single organization to enjoy better advantage. Mergers and acquisitions have been taking place even before IT companies came on the horizon. In the early years, M&A were prominently seen in Europe. Globalization has also thrown many challenges and opened up possibilities. It has given new meaning to merger and acquisition by creating win-win situations for all concerned. Over a period of time, the mechanism and reasons for mergers and acquisitions have changed. Acquisition now happens for varied reasons – securing marketing rights, gaining patents, controlling business in different geographies, procuring products etc. At the same time, partial merger or acquisition is possible as well. Goals of M & A Originally it was perceived that mergers or acquisitions had only financial implications. The new realization is that the human aspect cannot be overlooked. When an M&A is in process, employee- Process of M & A From a decision making position, the most important thing while acquiring, is to ascertain that the merger or acquisition will be a business viable proposition. The objective of this activity should be the growth of business. Further considerations are affordability and cost. Once the intent is established and you think that objective can be met over a period of time, you create the proposal. In my opinion, this is the time when HR comes into the picture and remains in the picture even post the merger. At every stage, HR has a role to play. The postmerger processes are just as important as the pre-merger requirements. Once HR gets engaged, it may take 3 to 6 months to finalize and settle all the HR requirements of the organizations involved. But this again is a generic estimate. This assessment also depends on other factors related to the companies that are merging or the company that is being acquired. Considering this multifaceted activity, creating and maintaining a checklist of activities to be done is necessary. A consultant may assist you in creating the checklist, but I would suggest one should make one’s own Do’s & Don’ts list. While making a checklist, an eye for detail is very important. Each person involved, be it finance, HR or legal must have his own checklist. It is not possible to really go further without a checklist. Role of HR in M & A HR plays an important role even during the initial decision making process in an M&A. A checklist will help in ascertaining the presence or absence of certain checkpoints. Also the HR person has the option of raising a red flag in case there are any issues. The cultural differences surface prominently postmerger. One of the first things to do would be to find out if there are any people related liabilities e.g. pending court cases. Second thing is to find out whether the company has made any commitment to the people for payments in future. You would like to acquire the organization with a clean slate. You expect the organization to settle the people related deals before you acquire its ownership. So you need to find out the situation as you really would want to buy the assets and not the liabilities. Many times we find that the liabilities are hidden. So you need to go in depth and find out the liabilities - if any. Thirdly, is the organization compliant? Is the company fulfilling the employee related legal and statutory compliances? If the company is not compliant, are there any future threats arising out of the non-compliance? It may CSI Communications | August 2011 | 31 CSIC August 2011.indd 31 8/6/2011 12:45:47 PM not be possible to find out the position only by superficial examination. The HR person is required to do due diligence. It may involve interviewing people and also carrying out document verifications. The HR person needs to find out the necessary details. It is like interviewing a candidate and if required look into the organizations background and conduct the verifications, and even post –interview background verification. This process is very important, the HR persons needs to get into the organization, meet people, talk to them, ask for documents, and be convinced that everything is in place. Getting into the depth of the matter is very important. The analogy of a new daughterin-law coming to the house can be given here. It is the responsibility of the family to make this daughter-in-law comfortable in the house. They are well settled, while she is new to the house. Cultural Aspects Culture is indeed a very important facet of any organization. It takes a long time to change it. If a company acquires an organization with a similar culture there is a big advantage. As in this case, the company doesn’t have to spend time and energy to bring in much change. Or else, the merger of cultures needs to take place. Cultural merger has to be a smooth merger and a battle of two cultures should be avoided. Unification of two cultures to evolve a common work and desirable culture is important. In case of two different cultures, it is necessary for the organization to really think about the post-merger cultural policy they are willing to adopt. You need to plan to create the desired culture; otherwise it is quite likely that the merged culture may be undesirable. Planned efforts and careful handling is required to create a » culture taking the best of both the merging organizations. The merger of two cultures takes the most time. Merger of technology is faster, merger of geographical boundaries is faster, creating a joint hierarchy is faster, but cultural merger takes its own time. Post merger Responsibility of HR It is the responsibility of the acquiring organization to follow some etiquettes. The psychology of the employees needs to be handled very sensibly. It is very important to create a sense of win-win situation at every level of the organization. A feeling of ‘we have acquired you’ should not prevail. Normally, in such a situation, the employees should be asked not to refer to it as ‘acquisition’, although in reality it may be so. It could be referred to as a merger so as to give the acquired employees a feeling of parity. To maintain sensitivity is of immense importance. You have to really understand the psychology of people, provide moral support to them, handle the feeling of uncertainty that they might have and make them comfortable. The analogy of a new daughter-in-law coming to the house can be given here. It is the responsibility of the family to make this daughter-in-law comfortable in the house. They are well settled, while she is new to the house. Extend a helping hand and make her comfortable. Only then can you expect her to merge in the family culture. Cultural sensitivity post merger So, initially the acquiring organization has more responsibility than the organization, which is getting acquired. Later on, all will be treated at par in the merged organization. The individual identity of the earlier organization should gradually melt away. At the same time – carrying the analogy further, the daughterin-law has to really accept the new house as her house and not keep referring to her Mayaka. That is very important. It requires effort from both parties to create a cohesive atmosphere. The role of HR is to make a merger successful. HR opposing the M &A HR can strongly oppose an M &A for two basic reasons. First reason could be that the organization being acquired has a history of union related problems such as lack of industrial peace or a negative history of labour and industrial relations (IR). Second reason could be the cultural incompatibility and the extent to which people need to be re-trained. Changing attitudes takes quite some time and efforts. Additionally if the culture of the organisation being acquired does not match desirable work culture, it will negatively impact the culture of the acquiring organization. In such situations, HR could recommend to withdraw the M&A. When a company acquires human resource/human capital, it is for the purpose of the talent or competence enhancement. So if you find that the employees do not have that type or extent of talent and competency you require, then you need to really rethink about acquiring the manpower. Conclusion The role of HR starts from the stage of conception of the idea. HR should advise the decision maker about the feasibility of merging the manpower. Due diligence should be done to ensure there are no hidden pitfalls. In extreme conditions it needs to warn the decision maker of the negative consequences before the activity is started. Post-merger, it is the responsibility of HR to ensure a smooth merging of the two cultures. Most importantly, it is the formation of a new desirable culture. The ‘daughter-in-law’ coming to the family should be accepted as part of the family and therefore the role of HR is indispensible in this activity. (Disclaimer: The views expressed in this article are strictly the personal views of the author.) n About the Author Kishor drives the Human Resources function at Persistent Systems. Persistent is a global software product development company with a team of 6,500 spread across 22 cities and 3 continents. Kishor brings in over 35 years of experience in the HR field including over 25 years as Head-HR with a number of prestigious, blue-chip multinationals including Mastek & Tata Infotech etc. His knowledge, experience coupled with his dynamic HR initiatives has influenced the growth of the various companies he has worked in. Under Kishor’s leadership companies like Mastek went on to receive recognition from the Carnegie Mellon University to become the “first company in the world” to achieve P-CMM Level 3 certification. Kishor has earned his Masters degree in Personnel Management with a graduation in Psychology. CSI Communications | August 2011 | 32 CSIC August 2011.indd 32 www.csi-india.org 8/6/2011 12:45:48 PM Product Showcase Jayadev Nair General Manager, NetScout Systems India Pvt. Ltd. Monitoring Application Delivery with nGenius® and Sniffer® In today’s enterprise, the reliability and performance of the IT infrastructure directly impacts business success. Networks carry time-sensitive financial transactions, lifesaving patient records, valuable manufacturing orders and critical call signaling / voice data. Network outages or application degradations often result in financial loss, delays in treatments, customer dissatisfaction or call outages. The ability to monitor the performance of applications on the network and the delivery of services therefore has become crucial in enterprises. NetScout Systems has been a pioneer in the Remote Monitoring (RMON) technology with 26 years history of expertise in network and application monitoring. They offer a range of products for management and monitoring of IP networks for Enterprises, Service Providers and other similar class of users. NetScout products have proven their value by providing comprehensive monitoring for more than 20,000 enterprise customers worldwide. The flagship product in the NetScout nGenius product suite is the nGenius Performance Manager (PM). It is a highlyscalable network and application performance management solution designed to help you minimize service disruptions due to performance problems on complex, global networks. It provides the early warnings and in-depth visibility you urgently need to evaluate and troubleshoot network and application performance issues and ultimately reduce MTTR (Mean Time To Recover). The real-time and historical reporting opens a window into how the business uses the network and reveals the interrelationship of the many applications and end users across the network. It is designed specifically to cover the key components of performance management, namely: • Application monitoring • Application profiling & • Network convergence Response time analysis • Troubleshooting • Network monitoring • Bandwidth capacity planning • Comprehensive reporting of network status daily, weekly, monthly or customized The nGenius Performance manager system offers a user friendly browser based access to the entire product feature set. Deployed across the network, nGenius Infinistreams capture and analyze real-time IP traffic flows. It can also leverage NetFlow and sFlow data sources for analysis. nGenius Infinistream While the nGenius Performance Manager is ideally suited to large complex global networks, NetScout also provides solutions to the Small and Medium Business sector. This solution set is offered under the brand name of “Sniffer”, a name which by its pervasive use around the globe has become a synonym for Packet Analysis. The Sniffer Portable Professional and the Sniffer Global are two offerings under this brand. While the Sniffer Global Analyzer is an Enterprise level tool, the Sniffer Portable Professional Analyzer is a best-in class, single-user portable analyzer for network and application troubleshooting. It provides network managers, field technicians and engineers with software to perform on-demand monitoring, packet capture and troubleshooting for wired and wireless network segments. The Sniffer Analyzer is the ideal tool for rapid response to network and application issues on location in the field. Rich Expert modes assist users in quickly identifying errors during packet-level analysis for a wide range of protocol decodes. Sniffer analyzers also deliver intuitive, easy-to-use dashboards and network views of 10/100/1000 Ethernet and wireless 802.11 a/b/g/n network statistics, all in one tool. For more details call +91-20-6608 0200 or visit www.netscout.com nGenius Performance Manager leverages robust and pervasive packet flow data collected by a comprehensive family of nGenius Intelligent Data Sources called nGenius Infinistreams. Jayadev Nair is the General Manager of NetScout Systems India Pvt Ltd. located in Pune. He has more than 20 years of experience in network management and related fields. He was instrumental in setting up the India operations of NetScout Systems Inc in 2001 and has been heading the office in Pune since 2003. He holds an MS in Computer Science from the University of Massachusetts, Lowell, a B E (Hons) in Electrical and Electronics Engineering from BITS, Pilani and a Business Management certificate from IIM Calcutta. If you want to display your ICT product or service in this column, please write to csic@csi-india.org CSI Communications | August 2011 | 33 CSIC August 2011.indd 33 8/6/2011 12:45:48 PM ICT@Society Achuthsankar S Nair Editor, CSI Communications The following charter is from: http://emailcharter.org/ (The copyright is acknowledged). Here is the site’s crisp preface: We’re drowning in email. And the many hours we spend on it are generating ever more work for our friends and colleagues. We can reverse this spiral only by mutual agreement. Hence this Charter... 10 Rules to Reverse the Email Spiral 1 Respect Recipients’ Time 6. Tighten the Thread This is the fundamental rule. As the message sender, the onus is on YOU to minimize the time your email will take to process. Even if it means taking more time at your end before sending. 2 Short or Slow is not Rude Let’s mutually agree to cut each other some slack. Given the email load we’re all facing, it’s OK if replies take a while coming and if they don’t give detailed responses to all your questions. No one wants to come over as brusque, so please don’t take it personally. We just want our lives back! 3 Some emails depend for their meaning on context. Which means it’s usually right to include the thread being responded to. But it’s rare that a thread should extend to more than 3 emails. Before sending, cut what’s not relevant. Or consider making a phone call instead. Celebrate Clarity 7 Don’t use graphics files as logos or signatures that appear as attachments. Time is wasted trying to see if there’s something to open. Even worse is sending text as an attachment when it could have been included in the body of the email. 8 Start with a subject line that clearly labels the topic, and maybe includes a status category [Info], [Action], [Time Sens] [Low Priority]. Use crisp, muddle-free sentences. If the email has to be longer than five sentences, make sure the first provides the basic reason for writing. Avoid strange fonts and colors. 4 Attack Attachments Give these Gifts: EOM NNTR If your email message can be expressed in half a dozen words, just put it in the subject line, followed by EOM (= End of Message). This saves the recipient having to actually open the message. Ending a note with “No need to respond” or NNTR, is a wonderful act of generosity. Many acronyms confuse as much as help, but these two are golden and deserve wide adoption. Quash Open-Ended Questions It is asking a lot to send someone an email with four long paragraphs of turgid text followed by “Thoughts?”. Even well-intended-but-open questions like “How can I help?” may not be that helpful. Email generosity requires simplifying, easy-to-answer questions. “Can I help best by a) calling b) visiting or c) staying right out of it?!” 9 Cut Contentless Responses You don’t need to reply to every email, especially not those that are themselves clear responses. An email saying “Thanks for your note. I’m in.” does not need you to reply “Great.” That just cost someone another 30 seconds. 10 Disconnect! 5 Slash Surplus cc’s cc’s are like mating bunnies. For every recipient you add, you are dramatically multiplying total response time. Not to be done lightly! When there are multiple recipients, please don’t default to ‘Reply All’. Maybe you only need to cc a couple of people on the original thread. Or none. CSI Communications | August 2011 | 34 CSIC August 2011.indd 34 If we all agreed to spend less time doing email, we’d all get less email! Consider calendaring half-days at work where you can’t go online. Or a commitment to emailfree weekends. Or an ‘auto-response’ that references this charter. And don’t forget to smell the roses. www.csi-india.org 8/6/2011 12:45:51 PM Brain Teaser Debasish Jana Editor, CSI Communications Crossword » Test your Knowledge on Autonomic Computing Solution to the crossword will appear in the next issue. Send your answers to CSI Communications with subject line ‘Crossword-SolutionCSIC August 2011’at email address csic@csi-india.org. 1 2 CLUES ACROSS 3 4 1. 5 To identify attacks and accommodate defensive responses (11) Fundamental building block of AC (8) Important task in autonomic computing (10) Science of control and communication (11) A formal representation of knowledge (8) Type of system often considered as analogous to AC (7) Control from attacks (10) A function of cognitive psychology (12) A Network Management Protocol (4) system that can learn and change (8) A range of self-discovery, awareness and analysis capabilities (12) Quality level of performance of service (3) Property of a system to regulate its internal environment (11) Core of autonomic computing (9) 3. 6. 7. 9. 11. 6 7 8 9 12. 15. 18. 20. 21. 10 11 12 13 23. 24. 14 15 25. 16 DOWN 17 18 19 20 21 22 23 24 25 2. 4. 5. 7. 8. Access criteria of a system (8) Important task within Boyd’s control loop (6) Task within Boyd’s control loop (7) Important criteria to manage (13) Name of a philosopher that resembles acronym of self optimization and self-configuration in wireless networks (8) 10. Goal of better utilization of resources (12) 13. Desired Level of service (3) 14. Organization that initiated autonomic computing (3) 16. Correction of faults (7) 17. Key task in success of autonomic computing (6) 19. Timing criteria to measure performance (8) 21. Concept that helps autonomic computing (2) 22. Acronym for Boyd’s control loop (4) Solution for July 2011 1 2 C S I 3 N G O 6 8 N A B A S Sir, Sir, if under autonomic system it has auto heal facility like our human body, does it mean that in this computing system, the phrase “garbage in garbage out” gets redundant? Mr. Vivek Gupta (Reader, IES-IPS Academy, Department of Computer Science and Engineering, Indore) for getting all correct answer to July month’s crossword. 7 W 9 E A V I A B S T R E N C C 13 S I P O T N E 25 U B R D I 23 U 26 A D A E C A T P R 31 E L L T I N A 23 S V U B C I L C I I T S E C A I T S T A I O R O M E R T Y S E G 21 S T A T B 29 L O N 27 E V O I N R O A T U I F A 32 F L T U L A T E 34 E E T V I S T I M M U R A G A C O N D E M P L 20 14 G 18 E 28 S 33 10 T P V C A H A C 16 E E 19 E M A R R 17 T T P I O 24 S T U P F 5 T O N U M L T R E 4 11 12 15 E H E T 30 Congratulations to S L E A F E L CSI Communications | August 2011 | 35 CSIC August 2011.indd 35 8/6/2011 12:45:53 PM Ask an Expert Debasish Jana Editor, CSI Communications Your Question, Our Answer “Wise men talk because they have something to say; fools, because they have to say something.” ~ Plato Data stored as a private member within a class cannot be accessed by a non member function (data abstraction), only a friend function can access it. But, using return statement, a private value can be taken in main() without use of friend function. Sir, how can I answer this? Does this violate data abstraction, or, is this a significance of private vicinity? Sumith S, Senior Lecturer, Dept. of Computer Applications, Sree Narayana Institute of Technology, Kollam, Kerala Data abstraction involves the formulation of representations (structure and behavior) by focusing on common publicly accessible behavioral characteristics that a set of objects offer, by putting them in a class. Encapsulation involves the packaging of representations by focusing on the hiding of details to facilitate abstraction, where specifications are used to describe what an entity (class) is and what an entity does and implementations are used to describe how an entity is realized. Data hiding philosophy says to partition the program so that data (structure) is hidden in modules providing services (behavior) such that users of the service shouldn’t know the underlying implementation. Internal representation can be accessed from internal implementation and not by the users of the modules. The object’s data attributes define the current state of an object. The current state of the object can be manipulated only by calling the publicly accessible function interfaces or methods. A Note that, there are three member functions. The member function, getSize returns a copy of the size, as such is innocent and non-damaging. The second member function, getChars is potentially dangerous, as it exposes the internal pointer, and the caller may, by intention or not, damage the content. The third member function, overloaded getChars, with two arguments, is another variant where you take the container and size of the container from the caller in terms of arguments, and copy the private data to the caller’s container, thus preventing from direct access to the private member. Jayshree Dhere added: This shows a classic example of difference between “Programming Paradigms” and liberties that actual language implementations allow. So it is left to the wise judgment of a developer how best to use certain paradigm without falling prey to programming pitfalls or to use programming freedom in adroit manner. Hope that answers your question and concern. to trace or find out the person who hacks into our Q How facebook account or any social networking sites? Rahul Samant, Name and affiliation not given it a Facebook account, or any other social networking site A Beor any website, in general, these can be hacked. Attacks can be through phishing (camouflaging fake websites as real ones and taking sensitive data), keylogging (recording keystrokes by an agent or remote spy software), social engineering (retrieving answer of security questions or password by direct querying the prey) or by hacking primary email address. There is no automated software to track such activities. In terms of accessibility, private members of a class are accessible only to members within the class and friends of that class. Like members, friends grant explicit access right. As such, a friend function that is not a member of a class, can access the members of that class that granted friendship. However, when you return a private member from within a class, you essentially should return a representation of the internal structure and not the private member itself. Let’s take an example of a skeleton String class: class String { char *pData; // null terminated character array int size; // size of the array with the null terminator public: .... int getSize(){return size;} char *getChars(){return pData;} int getChars(char *szText, int szTextSize) { strncpy(szText, pData, szTextSize – 1); szText[szTextSize -1] = ‘\0’; } }; CSI Communications | August 2011 | 36 CSIC August 2011.indd 36 IP addressees of the hacker can often be tracked from huge log files available with the ISPs, or to find out the owner of IP address (provided it’s a fixed IP). There is a tool named netstat that can tell you all incoming and outgoing network connections. This tool is available on Unix, Unix-like, and WindowsTM operating systems. You can keep an eye on who are trying to connect to your machine to catch the intruders. Prevention is better than cure. Protecting your machine through firewalls and other means could be better way to prevent such attacks and surprises. Send your questions to CSI Communications with subject line ‘Ask an Expert’ at email address csic@csi-india.org www.csi-india.org 8/6/2011 12:45:54 PM Happenings@ICT H R Mohan Chairman, Div. IV CSI, AVP (Systems), The Hindu, Chnenai. Email: hrmohan.csi@gmail.com ICT news briefs in July 2011 The following India specific ICT news and headlines during the period 1 - 25 July have been compiled from various news & Internet sources including the financial daily and The Hindu Business Line. Voices & Views Gartner predicts global IT services to reach $846 billion in 2011, a 6.6% increase from 2010. The computing and hardware segment will see the maximum growth with spending forecast to grow 11.7% in 2011. According to Kaspersky, 7% of all 45 lakh botnet computers that became victims globally are in India. The US tops the list with 28%, followed by India at 7% and the UK at 5%. India’s spend on IT is expected to grow to over $50 billion in the next five years from the current $29 billion due to startup eco-system and growth of MNC R&D centres. According to Gartner, the global spending on gaming will increase by 10.4% to exceed $74 billion in 2011 from $67 billion in the past year. The gaming-software component will represent $44.7 billion in 2011. HP estimates that India will throw up a 120 billion pageopportunity in 2014 from the 80 billion pages being printed now. The outsourced ‘testing’ market, which was virtually nonexistent in 1998, grew to $10 billion by 2010 – A. V. Asvini Kumar, MD, Thinksoft, Chennai According to the Nasscom report on the software testing industry, the total workforce in this market increased from 31,000 people in 2006 to 63,000 people in 2010, growing at 18.73 per cent CAGR. The total workforce requirement will be 2,68,000 by 2020. According to Gartner, the Indian IT services market is expected to grow by 18%, from $7.6 billion in 2010 to $9.5 billion in 2011. This could cross the $15-billion mark by 2014. Media vertical is seen as one of the future growth engines for the IT industry, with some estimates pegging the opportunity at $17-20 billion by 2020. IT Manpower, Staffing & Top Moves “You cannot go on forever…I wish you let me enjoy life the way I want to,” Mr. Ratan Tata tells shareholders who were keen that he continues at the helm of the Tata Group. Wipro has helped the Bangalore Police in unearthing a recruitment fraud by arresting a gang that had handed out fake offer letters to aspiring candidates for jobs at Wipro by collecting a cash of about ` 2 lakh each. TCS has become the first Indian software services company to employ over two lakh staffers with an active staff count of 2,02,190 where as IBM and Accenture, employed 4,26,751 and 2,25,000 as on Mar 31, 2011 iGATE-Patni to recruit 7,400 employees in the financial year 2011-12. Smaller IT firms see ‘scarcity of quality engineers’ Telecom The Govt. has set up a telecom network testing centre at an estimated cost of ` 60 Cr. at IISc Bangalore in a bid to address security concerns arising out of importing gear from foreign countries. The DoT has prepared a ` 30-crore plan to deploy IPv6 across the country by Mar 2012. The plan includes setting up trial laboratories and training modules to create awareness of IPv6. After the Simputer and several low-cost PCs and laptop versions getting into the market, DRDO plans to get its own version ready by Dec. 2011. The DoT will soon get powers to take back spectrum from operators who are not using it. BSNL launches Net telephony services. Telecom Commission approves the proposed national optical fiber network (NOFN) to be set up at a cost of ` 20,000 crore for offering broadband services in rural areas. Company News: Tie-ups, Joint Ventures, New Initiatives Microsoft’s Office 365 – cloud-based product, offering business productivity solutions will now be available in India at $2 a user for a month onward. Tata DoCoMo ups SMS, STD call rates; others Telcos to follow the suit. China-headquartered Huawei Technologies plans to offer its 4G solutions to support broadband operators in India by Dec. 2011. The defence Laboratory – Anurag – has joined hands with the IIT Jodhpur to design and develop a low-cost laptop. Moser Baer unveils water-resistant USB drive. Intel India plans to start work on creating products based on the 14-nanometre (nm) process some time later this year or next year. Google’s Transit and Google Maps to offer travel tips on mobile and make the travel in the city much easier and save time. Three major telecom players – Vodafone, Idea Cellular and Bharti Airtel – have entered into agreement to provide panIndia 3G services. For ` 12,999, one can now learn to assemble a tablet computer and own it. Jetking Infotrain is offering ‘Do-ItYourself’ courses to those interested in assembling tablet PCs. General GSM is 20 years old. Mr Harri Holkeri, then Prime Minister of Finland, made the world’s first GSM call on July 1, 1991 in Helsinki. Today, GSM subscribers worldwide exceed 4.4 billion and still counting. The International Telecom Union (ITU) has announced a global Application Challenge to create innovative applications for Internet TV or Internet Protocol Television. The best app would get about ` 4.5 lakh. One can register by Sept. 16 and n submit apps by Sept. 23. CSI Communications | August 2011 | 37 CSIC August 2011.indd 37 8/6/2011 12:45:55 PM On the Shelf! Dr. Suneeta Sane Professor and Dean R & D, VJTI, Mumbai Book Review » COMPUTER GRAPHICS: Algorithms and Implementations Book Title : Computer Graphics: Algorithms and Implementations Author : Mukherjee D. P., Jana Debasish ISBN : 978-81-203-4089-3 Printed Pages : 640 Print Edition Price : ` 395/- ADOBE Digital Edition Price : ` 395/Publisher : PHI Learning Computer Graphics is one of the basic courses taught at undergraduate and post-graduate levels like BE/BTech Computer Science, Information Technology, M.Sc. (Computer Science/IT) and Computer Applications (BCA/MCA). It has been observed that Computer Graphics textbooks provide the application development and implementation part of the subject in a cryptic manner. The books essentially come under the distinct categories of Computer Graphics textbooks and Programming Language textbooks. However, the practitioners need more details from CSI Communications | August 2011 | 38 CSIC August 2011.indd 38 the programming perspective, as there are assignments, which involve programming work. This leaves a wide gap between the two types of book users. There are very few books that cater to this need and the present book tries to cover this gap. This Book is essentially intended to be a supportive material for the students and programmers, who are learning Computer Graphics as a first course in the curriculum. Book covers many topics considered at the core of Computer Graphics. The topic wise coverage may be given as follows – The book begins with the evolution of Windows operating system with its GUI features, which made it a de facto Operating System for universal usage. Specifics of DLL libraries have been discussed in detail. The overview of Visual Studio, IDE and Windows programs along with program description of each component developed can help the learner to understand the topic well. The two-dimensional geometric transforms like translation, rotation, scaling have been explained in a novel manner with the help of programs and use of corresponding multiple windows to show the visual effect of the same. Corresponding to each program developed an object diagram of each module is given so that it gives clear functionality of each process written. Topics like line drawing, circle drawing, curve drawing, filling and clipping algorithms are covered separately individual chapters covering standard elementary algorithms, along with the implementations to emphasize in application development view. A complete chapter is devoted for three-dimensional graphics, which specify the two-dimensional displays for three-dimensional objects. The standard three-dimensional transformations are discussed in detail with implementation. Z - Buffer and ray tracing algorithms implementation is given in lucid manner for hidden surface removal. A CD has been provided along with the book for learners to use. The book is targeted to beginners groping in dark while writing code. The book serves the intended purpose and is useful as a support material for novice students of the discipline. The life of the learner is made very easy. However, if learner is not made to slog initially, then the expectations for laid out procedures is imperative and does not bring out best in a programmer. n www.csi-india.org 8/6/2011 12:45:55 PM Call for Papers 1. Dr.D D Sarma Director, Guru Nanak Institute of P.G. Studies, Ibrahimpatnam, Hyderabad 2. Balasubba Raman Guruswamy Professor, Kathir College of Engineering, Coimbatore 1. National Conference on Emerging Trends in Information & Communication Technologies 14-15th Oct., 2011 at Guru Nanak Institutions, Ibrahimpatnam, Hyderabad Organised by: Guru Nanak Institutions, Ibrahimpatnam, Hyderabad, in association with Computer Society of India, Div. IV & CSI- Hyderabad Chapter The objective of this National Conference is to provide a forum to discuss and debate on the cutting-edge technological computing areas of Information & Communication Technologies. The conference will feature peer-reviewed technical papers for presentation, stimulating keynote talks from experts in the relevant areas and posters. The sub-areas include and not limited to: 1. Network and Application Security 5. Mobile Enterprise Applications, 2. Priority based information retrieval 6. Application Development, 3. Neural Networks, Cloud Computing, Web Mining 7. Enterprise application and social Networking. 4. Mobile, Wireless pervasive Computing and protocol 8. Sustainability, Data Warehousing and Data Mining Papers should be prepared in the format of CSI Communications. All papers will be peer reviewed. Extended versions of a few selected research papers will be published in the Conference Proceedings. e-mail your papers to: csignis@gmail.com Important dates: Last date for paper submission : 15.09.2011 Notification of acceptance : 30.09.2011 For details, please contact: Dr. D D Sarma Convener, Director, Guru Nanak Institute of P.G. Studies, Ibrahimpatnam, Hyderabad E-mail: csignis@gmail.com • Website: www.gurunanakinstitutions.org OR Mr. H R Mohan Chairman. Div. IV, CSI, hrmohan@gmail.co 2. COMAD 2011 The 17th Conference on Management of Data December 19-21, 2011 — IIITB Bangalore, India For close to two decades, the International Conference on Management of Data has been the premier database conference hosted in India. The first COMAD was held in 1989, and it has been held on a nearly annual basis since. COMAD’s technical program has always had a significant international component, with about 30% of papers from researchers outside India. The 17th COMAD will be held during December 19-21, 2011 at IIIT Bangalore, India. We have an exciting program with the following keynote speakers having confirmed their participation: • Prof. Marianne Winslett, Univ. of Illinois – Urbana Champaign (UIUC) and Director, Advanced Digital Sciences Center, Singapore, ACM Fellow • Prof. Volker Markl, Chair of Database Systems and Information Management (DIMA), Technical University Berlin (TU-Berlin) • Prof. Kamal Karlapalem, Head of Centre for Data Engineering, International Institute of Information Technology, Hyderabad, India (IIITH) Call For Papers COMAD 2011’s scope includes all areas in the data management space including Database Management Systems, Web and Information Retrieval, and Data Mining. Submission of original research contributions as well as proposals for demonstrations, tutorials, industrial presentations, and panels are invited. This year’s program will have a special “Work in Progress” track designed as a forum for presenting ongoing work and getting feedback. The accepted submissions in this track will be presented as posters. To ensure wide visibility for the material published at the conference, arrangements will be made with ACM SIGMOD for including the proceedings of the conference in the SIGMOD on-line archives. Two awards, for Best Paper and Best Student Paper, will be presented at the conference. Important Dates Research Papers Industrial Papers, Demo and Panel Proposals Work In Progress Papers Tutorial Proposals Notification to Authors Camera-ready Copies Early-Bird Registration Conference August 20, 2011 September 24, 2011 October 22, 2011 December 3, 2011 December 19-21, 2011 For further details, visit: http://2011.comad.in/ CSI Communications | August 2011 | 39 CSIC August 2011.indd 39 8/6/2011 12:45:57 PM CSI Communications | August 2011 | 40 CSIC August 2011.indd 40 www.csi-india.org 8/6/2011 12:45:57 PM ExecCom Transacts 1. 2. 3. 4. 5. 6. Prof. H R Vishwakarma Hon. Secretary, Computer Society of India secretary@csi-india.org ExecCom approval for formation of 8 new Chapters: The ExecCom in its meeting at Bangalore during 23-24 July approved the formation of 8 new chapters proposed by respective Regional Vice Presidents and recommended by the Hon. Secretary and Chairman of the Membership Committee. The proposed chapters are at Region 1 (Jammu), Region 3 (Sagar and Satna), Region 5 (Mangalore, Hubli and Tirupati), Region 7 (Sivakasi and Karur). Membership Development: For the first time in last several decades, we witnessed a significant increase in the individual membership by over 19% (April-July 21011). The institutional membership recorded a growth of 25% in academic and 21% in non-academic categories respectively during the period. Detailed membership statistics can be viewed on http:// www.csi-india.org/web/csi/membership-statistics. The CSI National and Chapters Elections- 2012-13/201214: The National Nominations Committee by headed Prof. AK Nayak has geared up to conclude the election process by 15th December 2011 as stipulated in the CSI constitution and bye-laws. The Chapters elections will be conducted along with the national elections using electronic voting process. Thanks to the efforts of Dr. S.C. Bhatia 52 out 69 chapters could complete election process resulting into the formation of chapter management committees for the year 2011-12 while the other chapters are being guided by the respective RVPs to form the ad hoc management committees for the year 2011-12. Identification of over 40 Potential New Chapters: The CSI Membership Committee headed by Prof. H.R. Vishwakarma with the help of Chapters Revamping Committee Convener Dr. SC Bhatia has identified over 40 potential new chapters in different regions including the unrepresented states and union territories. The members and stakeholders across India are requested to extend their fullest support and cooperation towards realizing the aforesaid goal. Any specific suggestions may please be communicated to hq@csi-india.org with cc to secretary@csi-india.org. CSI National/Regional/State Student Conventions: The team of CSI Regional and State Student Coordinators headed by Mr. Ranga Rajagopal, National Student Coordinator has been striving to prepare an aggressive and highly forward looking action plan for hosting student conventions across India. Any specific suggestions may please be communicated to Mr. Ranga Rajagopal nsc@csi-india.org with cc to director. edu@csi-india.org and secretary@csi-india.org. CSI Annual Resource Guide: There are several suggestions to bring out an Annual Resource Guide along with the CSI Annual Report for the benefit of members and stakeholders. Chapters, Student Branches and Members at large are requested to submit best technical papers presented in various CSI events, power-point slides/reference materials of seminars, workshops and tutorials, Research outcomes, Case studies involving development/deployment of ICT in socially relevant sectors and especially catering to the needs of unrepresented geographical areas and segments of society, including how far CSI Programmes could help promote growth of ICT. The submissions may also include surveys to assess the reach and effectiveness of CSI programmes including membership development. The innovative and path-breaking initiative taken by members and stakeholders would be especially appreciated. The proposals may please sent to csi.research@csi-india.org with cc hq@csi-india.org. The History of Computing in India and Role of CSI: The professional societies such as CSI follow a paradigm of Innovate-Associate-Resonate-Communicate cycle for serving the members and larger interests of inclusive growth. As we approach the Golden Jubilee of CSI, members across nation are requested to share the achievements and contributions of CSI and its chapters, student branches and members at large. 8. Strategies for Chapter Sustainable Development: The CSI membership committee members have shared a serious concern about the chapters’ sustainable development. There are instances when even the chapters at major cities could not be sustained. As such, it is essential to adapt strategies such as Mentoring of New Chapters by past ExecCom members and senior members over there, Seeking government/ industry support for revival of defunct chapters, Provisioning of budgetary support for C category chapters, Conducting Region-wise Orientation programmes for New Office Bearers of the Chapters, focused outreach programmes to bring Business, Industry, Government, Academia, Research and Consultancy sectors into CSI’s fold, Sharing of Resources (including infrastructure, human resources and learning experiences) among CSI chapters and between CSI and its partners. 9. Proposal of CSI Digital Library: Several members have suggested to strengthen CSI Publications and to launch Digital Library. Apart from concerted efforts towards enhancing productivity, quality and reach of CSI periodicals, there is also strong need to publish proceedings of CSI events. Prof. Mini Ulanat, CSI National Skill Development Convener has been entrusted with the responsibility of preparing an action plan for Digital Library. 10. Recognition/Appreciation for OC/PC Chairs: There are suggestions to recognize the efforts of members across India who have contributed significantly in organizing national/international events of CSI. There is a proposal to honour such members-contributors during the CSI Annual Convention. CSI chapters, student branches and members at large may send their invaluable inputs and suggestions to secretary@csi-india.org and vp@csi-india.org on or before 15th October 2011. 11. Proposal for CSI National Resource Centres: As India’s largest national ICT professional society, the CSI has been striving to provide strategic and technological leadership to a wide spectrum spanning business, industry, government, academia, research and consultancy. With view to consolidate achievements and enhance its value-added services to various stakeholders, there are suggestions from the members across India to work towards realizing 6 CSI national Resource Centres at Mumbai (Business), New Delhi (Industry), Hyderabad (Govt.), Chennai (Academia), Kolkata (Research) and Bangalore (Consultancy). These proposed National Resource Centres could mentor the projected membership base of over 100 chapters, 1000 student branches, 10000 institutional members and 100000 members. Suggestions and inputs for these may please sent to the secretary@csi-india.org and hq@csi-india.org on or before 15th October 2011. 7. CSI Communications | August 2011 | 41 CSIC August 2011.indd 41 8/6/2011 12:45:59 PM Know Your Chapters Sushanta Sinha Kolkata Chapter Chairman CSI Kolkata Chapter conventions and international and national conferences like COMAD 1993, EAIT 2006, RDHS 2008, EAIT 2011 is worth mentioning. Proceedings of EAIT2006, CSI 2006, RDHS 2008, EAIT 2011 were published by Elsevier, Tata McGrawHill, Macmillan and IEEE Computer Society respectively. Papers published in EAIT 2011 have been digitally avaiable in IEEE Xplore and IEEE CS Digital Library. Brief History: Among the oldest CSI Chapters, Kolkata Chapter started its journey way back in 1965. The first Annual Convention of CSI was held soon after, in December 15 at Indian Statistical Institute. The legacy of that date is still being remembered by celebrating it every year as ‘Computer Day’. Today, when we look back with a sense of pride and nostalgia of last five decades, its glorious past has enabled us to move on with fast changing time. Thanks to the vision, initiative and tenacity of our predecessors like Prof Jogabrata Roy, Mr. J V Rangarao, Prof D Dutta Majumder, Mr. N K Roy, Mr. Amal Roy, to name a few. Late Prof. Jogabrata Roy of Indian Statistical Institute was the first Chairman of the chapter and a source of inspiration for all. Current Chairman and Contact Details: • 1050/1, Survey Park, Udayan UV-36-01A, P.O. Santoshpur, Kolkata - 700075 Membership No. 00091536 033-24161489 / 9830551724 sushanta.sinha@tcs.com Major Milestones: Besides the first Annual Convention in 1965, CSI-KC organized Annual Conventions in 1978, 1986, 1990 (Silver Jubilee Convention), 1994, 2001 and 2006. Hosting the Eastern Regional Conference (ERC’99 of CSI) Since 1999, CSI Kolkata Chapter have been successfully organizing CSI Young IT Professional Awards and many of the candidates of Eastern Regional contest became national Champions. Over the years, Kolkata Chapter hosted series of National and International conferences like Research and Development in National Conference on Research and Development in Hardware and Systems (CSI-RDHS 2008), and International Conference on Emerging Application of Information Technology (CSI-EAIT 2006, 2011) worth mentioning. Other Achievements: CSI-KC is the first chapter in India with own premises at the heart of the city (inaugurated in 1988) and own library (inaugurated in 1989) during the Chairman-ship of Mr. P B Ghosh. Kolkata Chapter publishes a Monthly Newsletter “Hard Copy” and distributes to CSI Kolkata Chapter members. This Chapter Newsletter has been the recipient of CSI awards several times. The proceedings published on the occasion of annual Mr. Sushanta Sinha Future Plan and Vision: Immediate plan includes hosting of Annual National Convention in 2012. The entire team is looking forward tor an outstanding show this time. CSI Kolkata Chapter intends to organize quality programs in the niche technology areas involving practitioners as well as academicians. CSI Kolkata Chapter has announced two very promising program in July-August, 2011: two-day workshop on role of computing for better governance and another as one-day seminar on mobile application development awareness focusing iPhone, Objective C, Android and Java. CSI Kolkata Chapter does not want to forget its commitment of reaching to the masses in the society with those kind of programs, where the under-privileged community can get the benefit of computer knowledge and value education. Focus is also given to self-sustaining programs like Summer Training, which generates adequate revenue to meet-up the operational cost of the society. Involving students in CSI activities will be a major focus this year. n A New Column “Know Your Chapters” in the CSI Communications: With a view of sharing the success stories and best practices of some of our vibrant chapters, a new column “Know Your Chapters” is being introduced in the CSI Communications with immediate effect. The Chapters’ Chairpersons and senior members are requested to send their contributions and suggestions on the above to csic@csi-india.org with cc to hq@csi-india.org and secretary@csi-india.org. – Prof. H R Vishwakarma CSI Communications | August 2011 | 42 CSIC August 2011.indd 42 www.csi-india.org 8/6/2011 12:45:59 PM Announcements CSI Constitution Amendment Mr. Lalit Sawhney, Chairman, Constitution Amendment Review Committee, has informed that the committee is in the process of considering amendments to the CSI Constitution to help the society meet expectations of its stakeholders, better fulfill its role, meet its avowed objectives and grow faster. The committee has discussed some ideas and would like to invite members to study the Discussion Note, available on the CSI website at http://www.csi-india.org/web/csi/carc-2011-12 and provide suggestions by e-mail on cac@csi-india.org before August 31, 2011. Nomination of Dr. N L Sarda as Division Chairman, Education & Research Dr. Nandlal L Sarda of IIT, Mumbai, has been nominated as Divisional Chairman, Education & Research, CSI as per ExecCom resolution on 23rd July, 2011, for year 2011-12 and 2012-13. Dr. Sarda is a Professor in the Department of Computer Science and Engineering at IIT Mumbai (Bombay). He was Dean of Academic Programmes, IIT Bombay, from October 2001 to September 2004. In this capacity, he coordinated with IIT’s Senate and its various Academic departments for creating, revising, operationalizing and supervising IIT’s academic programmes. He has been appointed in October 2004 as Professor-in-Charge for Innovation and Entrepreneurship, in which role he coordinates with the Society for Innovation and Entrepreneurship (SINE) hosted by IIT Bombay. For more details, please visit www.cse.iitb.ac.in/~nls Under his able leadership, CSI is looking forward to reaching new frontiers in the fields of Education and Research. CSI Membership Statistics Report State and Chapter wise Membership Statistics Report-as on 28th July 2011 Voting Members Student Members Total Members 272 4880 1070 717 7282 5907 4307 1535 798 2402 1600 13509 818 2741 13899 49536 16250 63435 7330 9943 2613 18521 21448 2927 REGION-I REGION-V REGION-I REGION-V REGION-I REGION-V REGION-II REGION-VI REGION-II REGION-VI REGION-II REGION-VI REGION-III REGION-VII REGION-III REGION-VII REGION-III REGION-VII REGION-IV TOTAL REGION-IV TOTAL REGION-IV TOTAL For detailed report of Region, State and Chapterwise Membership Statistics, visit http://www.csi-india.org/web/csi/membership-statistics CSI Communications | August 2011 | 43 CSIC August 2011.indd 43 8/6/2011 12:45:59 PM CSI News From CSI Chapters » Please check detailed news at: http://www.csi-india.org/web/csi/chapternews-August2011 SPEAKER(S) TOPIC AND GIST INDORE (REGION III) Dr. Prabhu Jhingran, Dr. Suresh Jain, Dr. Durgesh Mishra 23 April 2011 : National Conference “Recent Trends in Computational and others Intelligence (RTCI – 11)” “Some techniques within computational intelligence are often counted as artificial intelligence techniques. Yet, there is a clear difference between these techniques and traditional, logic based AI techniques. Typical artificial intelligence techniques are top-tobottom, where the structure of models, solutions etc. is imposed from above. Computational intelligence techniques are generally bottom-up, where order & structure emerges from an unstructured beginning.” Courtesy - Computing Intelligence Group, Amsterdam Dr. Jhingran said that Compuational Intelligence is very important for the telecast purposes, and the action replay of cricket and other important tasks could be possible with the recent technologies of computational intelligence. Dr. Jain was gave a lecture on data mining and its role in computational intelligence. Dr. Mishra delivered a lecture on computational intelligence and networking. UDAIPUR (REGION III) Dr. S Reisman, Dr. Dharm Singh, Dr. Y C Bahtt 5 May 2011 : Motivational and Expert Series of Lectures Dr. Reisman spoke about access, use and importance of IEEE e-resources. Dr. Dharm Singh spoke on Wireless Internet Access: Technologies and Securities in rural areas. He said that reliable connectivity is a prerequisite for successful penetration of IT into rural areas. Dr. Y C Bahtt spoke on e- Agriculture, wherein he assessed the potential of IT under two heads - one as a tool for direct contribution to agriculture productivity and other as indirect tool for empowering farmers to take informed and quality decisions which will have positive impact on the way agriculture and allied activities are conducted. ParƟcipants aƩending lectures Mr. Agarwal, Mr. R N Mathur, Dr. S S Rathore, Dr. R 17-19 May 2011 : First CSI Rajasthan State and National Conference on C Purohit, Ms. Pokharna, Dr. Dhaka, Mr. S M Oswal & “Better Life in Rural Communities with ICTs – WTISD 2011” Mr. Manoj Agarwal said that ICT is an increasingly interesting platform not others just for developers, but also for common people. Mr. R N Mathur spoke about importance of NKN Connectivity and said University is going to be connected using 1 GBPS broadband connectivity. Dr. R C Purohit spoke about importance of ICTs in agriculture domain and said that advanced IT technologies will improve rural network connectivity. Ms. Deepika Pokharna presented ICT applications in Education, Agriculture and Healthcare. She said that BSNL and HCL Infosystems will be working together on National Broadband Penetration Program (NBPP), a nationwide initiative to accelerate IT proliferation in rural India. Dr. Pooam Dhaka stated that the Inaugural Session: (L to R) Dr. Dharm Singh, Dr. M L Kalara, Ms. ICTs do play an important role in disseminating wide range of information. Deepika Pokharna, Mr. Manoj Agarwal, Mr, RN Mathur, Dr. RC Mr. S M Oswal demonstrated latest instruments used in rural exchange and Purohit, Dr. S S Rathore, Dr. R S Shekhawat, Dr. Y C BhaƩ urban exchange for network connectivity. VADODARA (REGION III) Mr. Kejal Shah Mr. Kejal Shah delivering a talk on SOA CSI Communications | August 2011 | 44 CSIC August 2011.indd 44 11 June 2011 : An Expert Lecture on “SOA – Service Oriented Architecture” Mr. Kejal Shah started his talk with history of application development and the development methodologies, starting from PC based stand alone applications to evolution of the Web based applications, to the use of Web Servers, use of application servers for development of Web Applications, use of Web Services, and then SOA. Mr. Shah cleared several doubts, including the distinction between using the Web Services based architecture, which is more of a point to point, vs. the use of ESB (Enterprise Service Bus) and Services Repository, which allows any business process to interact and use the services. www.csi-india.org 8/6/2011 12:46:00 PM SPEAKER(S) TOPIC AND GIST BANGALORE (REGION V) Dr. K Balaveera Reddy, Mr. Satish Sangameshwar, 23-25 June 2011: Faculty Development Program on “Emerging Technologies” Mr. Shashidar Ramareddy, Mr. Navaneet Nagarajan, The Program focused on recent trends and advances in fields of Cloud Mr. Prateek Dubey and Mr. Achindra Bhatnagar Computing, High Performance Computing, Mobile Computing, Robotics and Microsoft Visual Studio. Mr. Sangameshwar informed that Microsoft offers free access to software under Microsoft dream park, Microsoft Student tech clubs, Microsoft Student partners, Microsoft Imagine Cup-Global Level student Project competition and Microsoft Faculty Connection-Resource sharing. Mr. Ramareddy discussed about basic definition of Robot, different types of Robots and its applications. He spoke about tools available for writing robotic application using Visual Programming Language, Visual Simulation Environment 2008, X-box for gaming development. Mr. Nagarajan talked about Mobility and its significance for Educators, features of Windows phone compared to other phones and about Microsoft Business Space. He also discussed concepts of Cloud Computing and Microsoft Product Office 365. Mr. Dubey spoke about Visual Studio/Web Matrix development and (L to R) Mr. Iqbal Ahmed welcoming the delegates. demonstrated Website design using Web Matrix Seated: Dr. K Balaveera Reddy, Mr. T.Sabapathy, Mr. SaƟsh Mr. Bhatnagar talked about concepts of High Performance Computing Sangameshwar & Prof. H S Ramesh Babu and Microsoft tools like Windows Compute Cluster server 2003 and HPC Server 2008. HYDERABAD (REGION V) Mr. D K Jain, Mr Raju L Kanchibhotia, Dr. Sameen 18 June 2011 : FOSS Forward-2011 One-day Workshop on “Open Source Fatima, Dr. K Lal Kishore, Mr. Gautam Mahapatra Technologies” Mr. D K Jain spoke about importance of FOSS technologies and informed how CDAC is establishing National Resources Centre for Free/Open source System (NRCFOSS). He also spoke about involvement of CDAC in formulating Indian Operating System called Bharat Operating Systems Solution (BOSS) and success in the implementation of BOSS in several Organizations. Workshop in collaboraƟon with CDAC, Hyderabad Dr. Sameen Fatima shared his experience on FOSS and its need and importance in education and research. Demo of BOSS and e-learning technologies in open source such as Learning Management System, Content Management System, Learning Content Management System with web based technologies were also held. Mr. S Chandra Girish, Team lead, Sagar Soft India Ltd. 10 July 2011 : Workshop on “Android” Mr. S Chandra Girish covered following topics in his talk • The available mobile operating systems and their development languages and IDE’s • Anatomy of Android Application Development • Overview of Android development environment with a demo • Overview of other Android development tools • Signing and packaging Android Native Mobile Application. • Debugging Android application • Deployment in phone and Few live examples. Mr. S Chandra Girish delivering a talk on Android CSI Communications | August 2011 | 45 CSIC August 2011.indd 45 8/6/2011 12:46:01 PM GOA (REGION VI) Dr Anand Bariya, Tekshala, Banaglore 22-24 May 2011 : Workshop on “Introduction to Programming” This workshop was specially conducted for school students from STD IX onwards and who did not had any background in programming. It was conducted using “Processing” language. The focus was on learning graphics oriented features of programming initially and then understanding basic constructs of programming language. The sessions were conducted in computer laboratory of Goa University. Dr Vijayendra Kamat giving cerƟficate to a parƟcipant of the workshop. Dr. V V Kamat , Dr Anand Baria , Mr. Shripad Khedeker and Mr. Ramrao Wagh are also seen in the photograph. PUNE (REGION VI) Suresh Thiagarajan, Service Architect, Start Run Training 22-24 May 2011 : Inauguration of Newly Renovated Training Facility Academy The Training Hall is named as “Dr. A K Pathak Memorial Hall” in the fond memory of past President of CSI Dr. A K Pathak, who has contributed significantly to the CSI Pune Chapter activities. The newly renovated training facilities will be extensively used for conducting various training workshops and seminars for the benefit of CSI members and IT community at large. Dr. Vijay Bhatkar inauguraƟng the A K Pathak memorial hall. Also seen are Shekhar Sahasrabudhe, Deepak Shikarpur, Mrs Pathak, Rajendra Erande, Arun Tavildar and Rahul Pore. COCHIN (REGION VII) Ms. Manjusha Devi and Ms. Mini Ulanat 14 May 2011 : Training Programme on “Computer Education & Awareness for Children from State-run Schools” This program’s objective was to increase awareness of ICT role amongst rural children and to bridge the gap between quality of education received by them and city students. Students were well versed in basic operations and were aware of many open source packages including open office. The talk was oriented towards Ethical usage of computers, Cyber security and Cyber safety and latest advances in the field. Classes were handled in vernacular medium. Credit goes to IT@school project of Kerala Govt for remodeling conventional teaching methods in classrooms with ICT. COIMBATORE (REGION VII) Senior academicians from Anna University, PSG College 3 July 2011 : Free Orientation Programme on “How to face Anna University of Technology, etc. Engineering Counselling” The orientation programme for aspiring engineering students was held 8th successive year. The objective of this programme was to provide a platform for parents and students to listen to and interact with senior academicians. The academic experts guided students on Anna University Single Window Engineering Admission process and provided clarity about queries regarding choice of branches/colleges and latest industry and placement trends. DisƟnguished academicians at the programme CSI Communications | August 2011 | 46 CSIC August 2011.indd 46 www.csi-india.org 8/6/2011 12:46:03 PM From Student Branches » http://www.csi-india.org/web/csi/chapternews-August2011 SPEAKER(S) TOPIC AND GIST TRUBA COLLEGE OF ENGINEERING AND TECHNOLOGY (TCET), INDORE (REGION-III) Prof. R P Singh, Prof. Rajkamal, Dr. Himanshu Mishra, Dr. 28 – 29 April 2011 : Two-days Workshop on “Green IT for e-Pragati” Parag Kulkarni, Dr. Gore, U K Gupta and others Prof. R P Singh urged people not to destroy forest and to be aware of global warming and climate changes. He spoke about how human being is causing damage to environment. Prof. Rajkamal spoke about the way green IT can be implemented in the industry by tuning both hardware and software to cater to the needs of Green IT. InauguraƟon in progress RAGHU COLLEGE (AFFILIATED TO JNTU, KAKINADA), DAKAMARRI, DIST. VISAKHAPATANAM (REGION-V) Mr. Prabhakar Manohar Divecha 12 July 2011: Technical Talk on “Database Management Systems” The speaker discussed about the Data Base Management System and Relational data base management system and explained about the role of Database Management in an organization. He also briefed about security in database, and data migration. Topics like SAN, NAS were also discussed. Various backup/restore utilities such as EXPORT/IMPORT, SQL Loader etc. were demonstrated. SecƟon of audience GMR INSTITUTE OF TECHNOLOGY (GMRIT), RAJAM, SRIKAKULAM, AP (REGION-V) Mr. Anand from Nihon Comm. Sol. Pvt. Ltd 23 June 2011 : One day Seminar on “Qualnet Simulator” Mr. Anand explained and demonstrated the Qualnet Simulator. QualNet is a network simulation tool that simulates wireless and wired packet mode communication networks. QualNet supports simulation of thousands of network nodes. QualNet offers unmatched platform portability and interface flexibility. QualNet runs on sequential and parallel Unix, Windows, Mac OS X and Linux operating systems. Mr. Anand with Mr. J Vasudeva Rao (SBC) and Mr. M SaƟsh GOGTE INSTITUTE OF TECHNOLOGY (GIT), BELGAUM, KARNATAKA (REGION-V) 7 May 2011 : Workshop on “vCloud Computing and Spring Framework” The workshop provided student delegates hands-on experience on cloud computing and spring framework. Around 10 experts on cloud computing, led by Shri Ajay Chaudhary and Shri Gopal Srinivasan interacted with the student community and shared their technical knowhow on cloud computing. Session in progress CSI Communications | August 2011 | 47 CSIC August 2011.indd 47 8/6/2011 12:46:06 PM SPEAKER(S) TOPIC AND GIST JAWAHARLAL DARDA INSTITUTE OF ENGINEERING & TECHNOLOGY (JDIET), YAVATMAL (REGION-VI) Dr. Mrs. Archna M Rajurker, Head CSE Department, 10 February 2011 : Expert Lecture on “Image and Video Retrieval from MGM’s College of Engineering, Nanded Multimedia Databases” Dr. Mrs. Rajurkar spoke about Digital Image Processing. Prof. N P Jawarkar, Head EXTC department, B.N.C.O.E, Pusad 14 February 2011 : Expert Lecture on “Speech Processing” Prof. N P Jawarkar spoke about fundamentals & latest developments in this subject. Prof. A P Bodkhe, Dr. N K Chaudhari and others 5 March 2011 : National Conference on “Exalt IT” Various events such as Paper Presentation (UG and PG), Project Presentation, Blind C Programming, Web Page Designing, T-Shirt designing, Poster Presentation etc were organized. Orators in their speeches described IT as a super power that has done miracles in the world of communication, uncovering dangerous plots against human society and uniting us against them to shatter such plots. It has equally played a very powerful role in spreading advancements in science and technology happening in every corner of the world. Prof. Pradip Jawandhiya, Dr. G R Bamnote, Prof. A P Bodkhe, Dr. Avinash Kolhatkar Dr. N K Chaudhari, Prof Rajkishor Tugnayat, Prof. Sandip Lambade, Prof. C M Sedani Prof. Makrand Shahade, Nishant Waghmare Dr. G R Bamnote and Dr. Mohd. Atique 11 March 2011 : Expert Lectures on “Real Time Database” and “Open Source Software” Dr. G R Bamnote spoke about fundamentals & latest developement in Database Systems. Dr. Mohd. Atique talked about basics of Open Source Software’s and different types of available software. KLN COLLEGE OF ENGINEERING (KLNCE), POTTAPALAYAM, TAMILNADU (REGION-VII) Prof. R T Sakthidaran, Prof. G Ramesh, Mrs. S Amudha 5 July 2011 : FOSS Workshop on “8th Ubuntu for All” and Mrs. M Ragini of IT The workshop helped in creating awareness on FOSS, Ubuntu OS, GSS (C, C++ programming environment), MySQL and BOUML (CASE Tool) among the students. Prof. Sakthidaran speaking during the workshop MEPCO SCHLENK ENGINEERING COLLEGE (MEPCO), SIVAKASI (REGION-VII) M Shunmugaraj (JRF) of ECE department 6-7 July 2011 : Workshop on “Matlab and Image Processing” M. Shunmugaraj talked about the coding involved in MATLAB and gave a general view on the image processing. He also gave a gist of project we could refer to in image processing. He displayed many videos related to image processing and the way they are conceded out. Mr. Shunmugarajan delivering a speech on MATLAB programming Please send your event news to csic@csi-india.org. Low resolution photos and news without description of gist will not be published. Please send only 1 photo per event, not more. Kindly note that news received on or before 20th of a month will only be considered for publishing in CSIC issue of the following month. CSI Communications | August 2011 | 48 CSIC August 2011.indd 48 www.csi-india.org 8/6/2011 12:46:08 PM CSI Calendar 2011-12 Date Satish Babu Vice President& Chair, Conference Committee, CSI Event Details & Organisers Contact Information August 2011 Events 26 August 2011 One day workshop on “Social Media Risk” CSI Mumbai Chapter info@csimumbai.org , csimumbai@vsnl.com 27 August 2011 Madhya Pradesh State CSE/IT HODs Meet on ICT Education CSI Bhopal Chapter Mr. Vivek Dhawan ceo.smriti@gmail.com Dr. Rajeev Shrivastava shrivastava_rajeev@yahoo.com Mr. Anil Shrivastava Rvp3@csi-india.org One day workshop on “Software Effort Estimation Function Point” Analysis and its Applications, Based on latest release 4.3.1 CSI Mumbai Chapter info@csimumbai.org csimumbai@vsnl.com One day workshop on “RFID – NFC Technology: Its Physics, Not Magic” CSI Mumbai Chapter info@csimumbai.org csimumbai@vsnl.com C’ Programming and Computer Awareness at S R Group of Institutions CSE Campus, Jhansi (UP) & CSI Jhansi Chapter Prof. (Dr.) A K Tripathi dr.aktripathi@gmail.com 28 August 2011 September 2011 Events 7-9 Sept. 2011 IAMA-2011: International Conference on Intelligent Agent & Multi-Agent Systems. enquiry@iama2011.org.in Rajalakshmi Engineering College, CSI Chennai Chapter, IEEE computer Society AND Artificial http://www.iama2011.org.in Intelligence Association of India 15-16, Sept. 2011 ReSYM-11: Research Symposium on Pervasive Computing and its Underlying Technologies TIFAC-CORE, Dept. of CS, Velammal Engg. College, CSI Div. IV & Chennai Chapter, IEEE CS Dr. A Balaji Ganesh resym11@gmail.com 17-18 Sept. 2011 Exhibition of Computer & Allied Products ECAP 2011 CSI Goa Chapter Mr. Santosh Kamat santoshkamat.goa@gmail.com 22-25 Sept. 2011 2nd International conference of bioinformatics IFIP-TC 5 and Computer Society of India Dr. Datta or Dr. Kamal Raj Pardasani kamalrajp@rediffmail.com 23-24 Sept. 2011 28th CSI National Student Convention Godavari Institute of Engineering and Technology, Rajahmundry Mr. P Ramesh Babu ramesh.giet@gmail.com Prof. M L Saikumar rsc5@csi-india.org Mr. Ranga Rajagopal nsc@csi-india.org National Conference at SR group of Institutions on “Recharges Advancement in Mechanical Prof. (Dr.) A K Tripathi Engineering ‘Yantrik Gyan Dhara”’ dr.aktripathi@gmail.com CSE Campus, Jhansi (UP) by CSI Jhansi Chapter 29 Sept. 2011 Science Quiz for 9th and 10th the students of Jhansi district SR Group of Institutions, CSE Campus, Jhansi (UP) & CSI Jhansi Chapter Prof. (Dr.) A K Tripathi dr.aktripathi@gmail.com October 2011 Events 14-15 Oct 2011 Emerging trends in Information and Communication Technologies Guru Nanak Institutions, Ibrahimpatnam, CSI Div. IV and Hyderabad Chapter Dr. D.D. Sarma, H.R. Mohan ddsarma18@yahoo.com hrmohan.csi@gmail.com National Conference on Civil Engineering “The New Era of Construction Engineering ‘Nirman Prof. (Dr.) A K Tripathi Samiksha’” dr.aktripathi@gmail.com SR Group of Institutions, PG Campus, Jhansi (UP) by CSI Jhansi Chapter 14-16 Oct. 2011 NCIPMC-2011:: National Seminar on IP Multimedia Communications IEI, CSI SIG-WNS, e-Agriculture, CTAE and TINJR Udaipur Dr. Dharm Singh dharm@mpuat.ac.in www.mpuat.ac.in 16 Oct. 2011 YITP Contest for Region V CSI Visakhapatnam Chapter s_paramata@vizagsteel.com Please visit http://www.csi-india.org/web/csi/csi-eventcalendar for detailed calendar of all future events. CSIC August 2011.indd 49 8/6/2011 12:46:09 PM Licenced to Post Without Prepayment MR/TECH/WPP 241/WEST/09-11 Registered with Registrar of News Papers for India - RNI 31668/78 Regd. No. MH/MR/WEST-76-2009-11 If undelivered return to : CSI, 122, TV Indl. Estate, Mumbai - 400 030 CSI Young IT Professional Award 2011 The National competition for young IT professionals is an event conducted annually instituted by CSI in the year 1999 to encourage Researchers, IT professionals, Academicians, Consultants, Entrepreneurs and IT Practitioners in an Organization, or as individuals in service/ support/ training function in the field of Information Technology. The competition aims at involving young IT professionals in the quest of innovation in IT and provides them an opportunity to demonstrate their knowledge, professional prowess and excellence in their profession. Awards Comprise of: Trophy and Certificate to winning team/individual and prize as under: Themes: The winners of the regional contest will qualify for competing in the final national round. Hardware: Hardware development, Cloud implementation Software: Information Security, Artificial Intelligence, BFSI, Manufacturing, Retail, Multi lingual applications, Applications for rural development, Medicine or Health care Equipment’s. Applications: Multi lingual applications, Applications for rural development, Medicine or Health care Equipment’s, Fashion industry / art, Public transport, BFSI, Manufacturing, Retail, Gaming. Communications: Telecom, Mobile computing Education and Research: E-learning, Animation Industry Criteria: The most outstanding technology project of any kind, completed during the year 2010 / 2011 (project duration could be of 2-3 years from the start date) within an organisation will be judged for following criteria by the selection committee: Criticality of IT Usage Improvement of Customer Service Innovation, Return on Investment Quality of management Impact on organisation and society Category National Awards Regional YITP award (For each region) Winner ` 50,000/- ` 25,000/- 1st runner up ` 25,000/- ` 15,000/- Special mention ` 15,000/- ` 10,000/- Host Chapters for Regional Contest Region-I Ghaziabad Region-II Region-IV Raipur Region-V Kolkata Region-III Ahmedabad Visakhapatnam Region-VI Pune Region-VII Tiruchirappalli Schedule: Schedule for the application submission dates, regional and national rounds will be announced shortly on CSI Website. The National round will be held at one of the chapters. CSI National Young IT Professional Award will be presented on the same day. How to apply: Nominations should be made in the prescribed format available on the CSIwebsite: www.csi-india.org or www.csinationalawards.org/yitpawards2011. html on or before the last date of submission for the specific region to the Regional Convener. The nomination process is described in the prescribed format. Entry Fee: Category Non CSI Member Eligibility: Individual ` 3,000 ` 2,000 Any individual below 35 years of age (on 31st March, 2011) who are either working professionals, entrepreneurs or researchers and has made significant innovation in the areas of research, academics, IT applications and services to bring improvement in service, support and training in the field of Information Technology. Participants can be from CSI Institutional members, Business organizations, Research Institutes and Interns from incubation centres of universities. Only those individual with minimum of 3 years and maximum 12 years of experience can participate in this competition.A team of maximum 3 members meeting all the eligibility criteria can be nominated. Nominations should be supported by the organisation to which the applicants are attached. Applications nominated by any CSI Fellow are also eligible. The project which is nominated should be original and not published prior to the event. Team of three members ` 5,000 ` 4,000 Additional team member ` 2,000 ` 1,000 CSI-National YITP Committee, 2011 • Mr. M D Agrawal, President CSI • Dr. P Thrimurthy, Chairperson, CSI Awards Committee • Mr. Bipin Mehta, Fellow, CSI, Convener-YITP Awards • Mr. R K Vyas, RVP – Region-I • Prof. Dipti Prasad Mukherjee, RVP – Region-II • Mr. Anil Srivastava, RVP – Region-III • Mr. Sanjay Mohapatra, RVP – Region-IV • Prof. D B V Sarma, RVP – Region-V • Mr. C G Sahasarabuddhe, RVP – Region-VI • Mr. Ramasamy S, RVP – Region-VII CSI Member Selection Process: Regional Contest: In the Regional Round, short-listed individual / teams will make oral presentations followed by Q&A in the presence of selection committee on the day of contest. National Round: The National Award will be contested by Winners of the regional contest. No changes can be made between the regional contest and national contest. The judging at the national level will be done by a representative panel of eminent IT professionals, practitioners and academicians. The decision of the selection committee will be final and binding. CSI YITP Regional Convener, 2011 & Host Chapter Region-I (Ghaziabad) : Mr. Vijay Rastogi, Chairman CSI, Ghaziabad Chapter Region- II (Kolkata) : Mr. Sushanta Sinha , Chairman CSI, Kolkata Chapter Region-III (Ahmedabad) : Shri N. R. Diwanji, Past Chairman, Ahmedabad Chapter Region-IV (Raipur) : Prof. Abhaya K Samal, Hon. Secretary, Raipur Chapter Region-V (Visakhapatnam) : Dr. B G Reddy Region-VI (Pune) : Dr. Shubhangi Kelkar, Chairperson, Pune Chapter Region-VII (Tiruchirappalli) : Prof. Dr. Maluk Mohammed, Prof. S. Ravimaran, Hon. Secretary – CSI Tiruchirappalli Chapter For further details Contact: CSI HQ YITP Cell Computer Society of India Samruddhi Venture Park Unit no 3, 4th Floor Marol Industrial Area Andheri (E) Mumbai – 400 093 Email: yitpawards@csi-india.org Web: www.csi-india.org Published by Suchit Gogwekar for Computer Society of India at 122, TV Indl. Estate, S K Ahire Marg, Worli, Mumbai-400 030 • Tel.: 022-2493 4776 Email : hq@csi-india.org Printed at GP Offset Pvt. Ltd., Mumbai 400 059. CSIC August 2011.indd 50 8/6/2011 12:46:09 PM