Proceedings of the 4th National Conference; INDIACom-2010 Computing For Nation Development, February 25 – 26, 2010 Bharati Vidyapeeth’s Institute of Computer Applications and Management, New Delhi
Software Design Pattern For E-governance Solution Framework Ajay D. Parikh Sr. Lecturer, Dept. of Computer Science, Gujarat Vidyapith, Ahmedabad Gujarat, India E-Mail:
[email protected] ABSTRACT This paper presents a concept of e-governance solution framework based on software design pattern. A design pattern based framework can solve many problems by providing a reusable common structure for building an application. Design Patterns provides generic, reusable designs that solve problems at the design level. The design & development of complex egovernance solution poses significant challenges. E-governance solution framework based on design pattern simplifies the task of developing, deploying and managing complex e-governance solution. This frame work comprises of ready to use libraries and modules of e-governance processes. It is well-suited for use in an object-oriented language. It also provides ready to use design pattern templates for commonly used e-governance services. This framework will minimize the writing of program code and maximize the reusability of the design and knowledge. This specialized e-governance solution framework will support to develop e-governance solution with better quality, common architecture, higher reliability and minimum maintenance. While playing a pivotal role in e-governance, the framework shall very much remain within the bounds of the system. This paper explores the how and which software design pattern will be useful to develop a specialized e-Governance framework. We have used well known GOF design patterns for this study.
most industries, around 85% of the processes are same across departments within the Government organization. A similar fraction of the processes can be expected to be similar across different government solutions. 1 In this case, improving software design & development process is one of the challenges for the e-governance solution providers. To overcome these challenges, I have proposed software design pattern for design pattern based e-governance framework in this paper. This framework enables solution designers and developers to make design and development process simple. Designer can reuse their knowledge again and again to provide the solution for the similar type of the problems occurs frequently. Such a framework should provide flexibility to incorporate new requirement in the existing egovernance solution with minimum efforts. Using this proposed framework solution designer provide generic, reusable designs that solve problems at the design level. Developer can develop the robust, scalable and extensible solution using ready to use classes, methods & templates. Object oriented technique gives a firm base to the software design pattern. So software developer can gain the advantages of their knowledge of most popular object oriented technology. Proposed e-governance framework is based on GOF design pattern ideology.
KEY WORD e-governance, framework, software design pattern, GOF, object oriented. Architecture, e-district
2.0 E-GOVERNANCE One of the objectives of the governance is to provide sustainable services to everyone and make citizen life peaceful. As an example, an online service provided by the passport department for the new / renewal of passport, is currently a leading e-governance application in India.
1.0 INTRODUCTION In the last one decade most countries of the world have undergone a metamorphosis, especially in the methods of governance. India is not an exception and our country too has undergone significant changes where governance is concerned. Both the central and state governments of India have accepted this new mode – e-governance. This new style of governance has the common man at the central focus. Information dissemination is a key aspect of e-governance. However, there are certain issues to be addressed in e-governance, much like the earlier style of governing. The government processes are highly complex and changing very fast. Day by day number of users and services are increasing drastically. In this situation to incorporate the new requirements in the existing e-governance solution is a headache. To address an individual government agency requirement solution provider has to customize existing product. Some time it affects the performance of the existing solution. Extendibility and scalability are serious issues. In
At present, the applicant visits the regional passport web site, fill up & submit the form online, and citizen gets submission ID and date for personal meeting at regional office along with a photograph, proof of residence, proof of date of birth, and fee. The clerk processes the application form manually. The applicant typically has to wait in the office for several hours before completing the new/ renewed passport process. Besides the inconvenience to the applicant, applicant has to complete the home department process for criminal record(s) and address proof verification separately. Another example of an online service that can be provided by the transport department for the renewal of driving licenses. The applicant visit the regional transport office, fill up the renewal form, and submits the form to the clerk, along with a photograph, proof of residence, proof of date of birth, and fee. The clerk processes the application
Proceedings of the 4th National Conference; INDIACom-2010
form manually. The applicant has to wait in the office for several hours before receiving the renewed driving license. Besides the inconvenience to the applicant, previous traffic violations are not properly verified, and there is no provision for easy management of expired license records.[1] These both e-governance solutions are different but the most of the processes are similar, like Fill up and verify the form for new /renewal application. Documents verification. Fee/ Payment. A. Government Departmental Process Table -1 Show some of the process similar across the different government department. No
Process
1
Address Verification
2
Purchase Approval Process Leave Approval Process Charge/Fees Calculation and Receipt generation Process
3 4
Similar across the Departments Passport (New/Renewal) Driving License New/Renewal School Admission Loan Application (Bank or Financial Institute) Traffic violation record verification Insurance Business to Insured vehicle Common across the govt. departments Common across the govt. departments Driving License Fee
Tourism Academic Inst. (School /Colleges) Hospital Property Tax Table -1 B. Different Governance Processes and Common Behavior At the same time I have also observed that there are common behaviors among the processes across the departments and within the department also. Table -2 describe processes across government department and its behavior. No
Processes
Department
1
Package Tour Fees Calculation Process
Tourism Department (State Govt.) Behavior :- In Package Tour some of the charges are fix or known as basic charges while
some of the charges depends on customer choice like hotel charges(AC/NON-AC etc), food charges (Veg/Non-Veg etc) i.e. Optional 3 Driving License State Transport Dept. (State Fee calculation Govt.) Behavior :- Basic license fees is fixed plus additional fees depends own options like owner , commercial driver license, license for additional vehicle ,etc So total fees very from client to client 4 School Fees Education Dept. (State/Cent/ calculation Govt.) Behavior: - Tuition fee are same for all student of a particular std. but total fees depends on the options selected by a students. Options are sports, music, drawing (extra activity) etc. 5 Property Tax Municipal corp./Village/District calculation Panchayat Behavior :- Area wise property tax rate is same for carpet area but additional charges are depends on use of property, user category (own/tenant ) Table -2 This leads me toward not only a code or component reusability but also a reusability of design and knowledge. To provide a robust and economical solution of the above all problems, in this paper I explore GOF software design pattern for eGovernance framework. This paper is a step towards the design pattern based e-Governance framework. 3.0 SOFTWARE DESIGN PATTERN AND E-GOVERNANCE FRAMEWORK Design patterns are a series of familiar usages and constructions utilized throughout system design 2 . It is not a solution in itself. Pattern can have many different implementations. Pattern is a language independent; it is nothing but a strategy that can be implemented in many different programming languages. Design pattern is a very good way to use a common language. It can improve the documentation and maintenance of existing systems by providing an explicit specification of class, object interactions and their underlying intents. Design patterns can be easy to reuse across different program and solution also. Design pattern based E-governance frame work is a partially built subsystem for solving the e-governance problems. We can apply design patterns to any application domain, making design patterns more general than framework3. E-Governance framework provides basic building blocks and ready to use classes. Using theses blocks and readymade classes developer can easily developed the e-Governance solution according to
Software Design Pattern For E-governance Solution Framework
the government requirement. Framework is a limited solution that helps you to solve particular kind of problems. EGovernance framework is a physical piece of code and classes which are strategically collaborating with each other with minimum coupling and maximum co-heritance. Basic building blocks of E-governance framework are based on design pattern. So right design patterns are required at a right place to built egovernance fretwork.
common parts of the concepts and terms that are necessary to running the government services as a whole e.g., accounts, tour management, transport and Hotel booking department 4 iii. Government Service Domain Layers Service domain contains the core concepts for the services as a whole, which provides abstract class by identify the core or common parts of the concepts and terms that are necessary to running the government services as a whole.
A. High Level architecture of e-district 4.0 DESIGN PATTERN FOR PACKAGE TOUR AND SCHOOL FEES CALCULATION E-district Application
Citizen Access Points
Gov.
Utility Services
Middleware Common Service Online
INTERNE T
Back-end Digitization
Other Department
Health Police Tourism Education Transport
Figure -1 e-district Model Figure-1 Show the High level of architecture for e-Governance Application (E-District model) proposed by department of information technology government of India 3 . In the above e district model we can use design pattern based e-governance framework for other department application as well as for middleware also. In context to the e-district model Figure -2 shows a part of the layers architecture consist of application layer, service section layer and domains layers for the global e-governance system. B. Layer architecture of e-governance Framework Transport Application Layer
Tourism Health
Govt. Service Section layer Services offered by a Government
A. Scenario of package tour System Government tourism department arranges the package tour regularly. In package tour, some of the options are common for all customer, so customer has no choice for that, but some of the options are there which can be can selected by the customer as per their liking. Options like number of days, places of visit in a package are fixed, but customer can have a options for hotels, food, vehicles etc. so that total amount of the package tour may very form the customer to customer. Table -3 show the objects involved in the package tour System. No 1
Object Package Tour
2
Tour
3
Options
Table -3 Object in Package Tour System B. Scenario of School fees System Schools fee is again divided in two main parts, one part is fix like tuition fees, terms fees etc. and another part has options like, indoor game, outdoor game, dance, music etc. A total fee amount is varies form student to student. Table -43 shows the objects involved in the school fees System. No 1
Object School Fee
2
Basic Fees
3
Options
Govt.Service Domain Layers
Figure -2 Part of e-governance framework layer architecture i. Application Layer. Application layers provides context to support application like Transport, Tourism, Health, etc ii. Government Service Domain layer Service domain contains the core concepts for the services as a whole, which provides abstract class by identify the core or
Type Abstract class which include common functionality. Concert class derived from the package tour class Concert class
Type Abstract class which include common functionality. Concert class derived from the Fee class Concert class
Table -4 Object in School fees System C. Common Behaviour of the System Both the system has a common behaviour that it extends the functionalities by attaching additional responsibility to concrete
Proceedings of the 4th National Conference; INDIACom-2010
class by selecting the options at a run time. So our goal is to allow classes to easily extend to incorporate new function with out modifying exiting code. 5 GOF Decorate Design pattern is the appropriate design pattern for this application. Decorate design pattern attaches additional responsibility to an object dynamically. Table-5 and Table-6 show the one to one mapping of application objects with its equivalent objects in decorator design pattern. Similarly this pattern can be applied to driving license fee calculation application, property tax calculation and many more application also. No
Application Object
1
Package Tour
2
Tour (concert class derived from Package tour ) Tour Decorator Options (Hotel, Food, transportation etc.) Table-5
3 4
No
Application Object
1
School Fee
2
Basic Fees- tuition fees (concert class derived from Package tour ) Fee Decorator Options (Sports, Music etc.) Table 6
3 4
Decorate Design Pattern Object Abstract class (Interface ) Concert component Decorator Concret decorator Figure – 3 Iconic class diagram of tour Decorator
Decorate Design Pattern Object Abstract class (Interface ) Concert component
Decorator Concret decorator
Figure -3 shows the iconic way of class diagram. Package Tour is an interface and classes like Saurashtra, SardaraSarover etc. are concrete class implementing Package Tour Interface. Tour Decorator is again an abstract class with implements Package Tour Interface, So it is a Decorator class .Available all options like Hotel, Vehicle, Food are all concrete class of Decorator class. Decorator concrete class extending the functionality of Package Tour with the help of Decorator class.
5.0 OBSERVER DESIGN PATTERN FOR VARIOUS GOVERNMENT APPLICATIONS A. Government Resolution. (GR) Government resolutions are important orders and decisions of the government. Government sends a copy of resolution to its concern department(s) and departmental offices. If any amendment(s) are their in the GR then they again notify the concern department(s). B. Election Result Broadcasting Service Election Commission of India is responsible for direction and control of the preparation of electoral rolls. It also handles elections to the Parliament and the Legislature of every State and to the offices of President and Vice-President of India. Election is a very elaborate process. Due to the huge electorate mandates the election is to be conducted in a number of phases. Announcement of the result is a part of the whole election process. It targets candidates, political parties, electronics media, newspaper and ultimately citizen also. C. Weather forecasting Natural calamity is again one of the areas where government constantly keeps watching. That is why messages related to weather forecasting are very important to farmer, fisherman and citizen also. In above all application government is publishing some information which is observed by subscriber. Here publisher and subscriber are independent of each other. Subscribers are notified by the publisher regarding updates.
Software Design Pattern For E-governance Solution Framework
D. Role of Observer Design Pattern The GOF observer pattern provides an object design where subjects and observers are loosely coupled. This allows us to build flexible OO systems that can handle changes, because they minimize the interdependency between objects. The only thing the subject knows about an observer is that it implements a certain interface. We can add new observers at any time. We never need to modify the subject to add new types of observers. We can reuse the subjects or observers independently of each other. Change to either the subject or an observer will not affect the other. 6
«interface» Subject attach() detach() notify()
Election Data attach() detach() notify()
*
«interface» Observer update()
CurrentConditionsDisp layupdate() display()
«interface» DisplayEleme nt display()
StatisticsDispl ayupdate() display()
ForecastDispl ayupdate() display()
Figure-4 Observer Design pattern for Election Result broadcasting service
6.0 APPLICATION OF CHAIN OF RESPONSIBILITY DESIGN PATTERN A. Scenario of purchase & loan request approval Either it is purchase approval or loan approval, whenever you demands institute's money, you need get approval from your higher, or your heigher’s boss. As an applicant you don’t have to know about who will approve it. Each higher level has his/ her own powers, according to that they approved, reject or send it to higher, let’s say the leadership chain. Here more than one person handles a request without their knowing each other, pass the request to leadership chained until it has been handled. Loan approval system is very similar to the above one. GOF chain of responsibility system is best fit for the same. B. Role of Chain of Responsibility Pattern One request should be handled by more than one object. Don't know which object should handle a request; probably more than one object will handle it automatically. As it reduces coupling so it is very flexible to handling a request. Figure -5 class diagram show the chain or responsibility in University purchase system. In the leadership chain highest authority is purchase committee and lowest is head of the department.
Figure -5 class diagram of University purchase system. 7.0 CONCLUSION While concluding this paper enables computerisation of the traditional form of governance and establishment of egovernance system in such a manner that future changes and alterations can easily be incorporated by the software developers, designers and will construct such a design pattern which will be used to solve problems with similar behavior. In addition to this the knowledge derived by this can be used repeatedly. To make e-governance successful, computerization of government departments and their functions is not enough. Where ever necessary re-engineering of the system should be carried out to link all different government departments with each other to ensure a healthy and easy exchange of information. Then only the decision making process will be quickened and better and the objective of e-governance will be achieved. To establish specialize e-Governance framework, strategic approach using design pattern for e-Governance should be utilized. To develop specialize e-Governance framework based on design pattern, we have to harvest more and more domain specific design pattern for e-Governance and it should be utilized as basic building blocks for E-governance. There will be maximum cohesion and minimum coupling between the different components of this specialized eGovernance framework. This will provide access of static and dynamic part of object oriented program. 8.0 FUTURE SCOPE Future frame work comprises of developed ready to use classes and model of e-Governance processes. This will help to control the flow of information. This frame work will minimize the writing of program code and will maximize the reusability of the components. The developer of e-Governance application has to write the program code only to establish the correct relation ship among different components. Thus, this approach of specialized e-Governance framework will support to develop e-Governance software with better quality, common architecture, higher reliability and minimum maintenances. While playing a pivotal role in e-governance, the framework shall very much remain within the bounds of the system.
Proceedings of the 4th National Conference; INDIACom-2010
9.0 REFERENCES [1]. Mittal, P A, Kumar, M, Mohania Nair, M, Et al A framework for eGovernance solutions IBM Journal of Research and Development. [2]. Chih-Hung Chang, William C. Chu, Nien-Lin Hsueh, Chorng-Shiuh Koong “A Case Study of Pattern-based Software Framework to Improve the Quality of Software Development”, Proceedings of the 2009 ACM symposium Computing, Year of on Applied Publication: 2009 ,ISBN:978-1-60558-166-8. [3] State Mission Mode Project e-district , Study Report on Assessment of the Model e-districts, pub. By Department of Information technology Government of India ,page no 29. [4] Fach, P.W , “Design Reuse through Frameworks and Patterns”, IEEE Software On page(s): 71 - 76 Sept.-Oct. 2001 Volume: 18 Issue: 5. [5] Eric Freeman, Elisabeth Freeman ,“ Head First Design Pattern “ ,O’REILLY Nov 2005. [6] Ajay Parikh, Prof. Bharat V. Buddhdev. “E-Governance Solution Based on Observer Design Pattern “National Conference on architecture Future IT Systems (NCAFIS’2008). [7] Framework Development for Large Systems,” Comm. ACM, vol. 40, no. 10, Oct. 1997, pp. 52–59. [8] Dirk Baumer, Dirk Riehle, Wolf Siberski, and Martina Wulf, “The Role Object Pattern. [9] Gamma, E.; Helm, R.; Johnson, R.; and Vlissides, J. (2004) Design Patterns: Elements of Reusable ObjectOriented Software. Reading, Addison-Wesley Professional Computing Series. [10] Freeman Eric, Freeman Elisabeth, Sierra Kathy, Bates Bert (2004) Head First Design Patterns, Publisher,SPD.
Continued from Page No. 42 6.0 CONCLUSION Within businesses, switching to green technology is one of today's hottest changes. This shift to green technology is of multiple benefits. Those benefits can positively affect our return of investment making the switch all worth it. Apart from economic returns, it is a help to the environment as its use will reduce the already big pile of resource waste. Green technology helps us save money. Most eco-friendly technology devices are energy- efficient, which means that they consume lesser energy. And in a business, that translates to less electricity to pay for. Green technology also refers to personal fulfilment. Knowing that we have helped save the planet while earning something out of it is a very wise move that creates a sense of nobility and fulfilment. 7.0 FUTURE SCOPE Green technology being new area more research needs to be done so that it could be beneficial both to the entrepreneurs and to the environment. Entrepreneurs should shift to this technology so as to save the ecosystem and also raise their profits. Scientists and researchers should invent new applications of green technology and thus attract more entrepreneurs. 8.0 REFERENCES [1] Paper # 18937,”The Greenhouse Effect”, 1991, http://www.academon.com/lib/essay/greenhouseeffect.html. [2] Paper # 17757,”Carbon Dioxide & Greenhouse Effect”,1989,http://www.academon.com/lib/essay/greenho use-effect.html. [3] C.McKay, “Greenhouse and Anti-greenhouse”, Astrobiology magazine,Titan ,11/03/05. [4] J.Hackler and J P.Holdren “Walking The Talk And Walking The Walk At The Woods Hole Research Center”, Journal of Green Building, Volume 3, Number 1, Winter 2008. [5] Sanderson, George F. , “ Climate change: the threat to human health”,The Futurist ,March 1, 1992. [6] Urbanist, “7 Modern Wonders of Green Technology: Conceptual and Actual Ecological Designs of the Future”, http://weburbanist.com/2008/06/09/modern-wonders-ofgreen-technology [7] http://www.ipcc.ch/ipccreports/ar4-wg1.htm
Software Design Pattern For E-governance Solution Framework