Wednesday, March 10, 2010

The Mission of Informtion Systems

Initially, IS were simply designed to automate or quickly perform routine tasks. As the mission of early IS were concerned with reliability, efficiency, and system availability. Thus the mission of early IS were primarily at the system level. 

For example Transaction Processing Systems acted as paperwork factories to pay employees, bill customers, ship products and so on. During that era the performance of the IS organizations was defined by efficiency (or productivity) measures such as the percentage of uptime for computer, throughput.

Starting in the 1970s, the mission of an IS were extended to include providing users with needed information. Thus, the notion that information systems should include objectives related to the users’ views and the need to satisfy users was introduced. The focus of IS shifted to producing reports “get the right information to the right person at the right time” for example summary reports for all levels of management. In this era, IS was judged on effectiveness measure.

More recently, the mission of information systems have expanded to include all levels of the organization. Computers no longer simply provide the backbone of information processing for organizations. Computers are changing the fundamental ways that organizations operate. Modern IS are capable of providing numerous organizational benefits including strategic and competitive advantages for the organization (To improve the performance and innovativeness of people in organizations through the use of IT). Aligning IS solutions with business goals and needs as well as building the infrastructure for technology integration are becoming the top priorities for IS activities. Thus, the objectives of information systems are no longer restricted to system and user level, but usually include organizational and strategic level goals as well. 

Ref: Journal of Information Technology Management

Sunday, March 7, 2010

How can the design of software systems improve using an open source strategy?

In recent years, open source development has seen a big push from big technology firms such as IBM, Sun and Google. In general, how can the design of software systems improve using an open source strategy?

The software engineering process involves:
- Defining Requirements
- System-Level Design
- Detailed Design
- Implementation
- Integration
- Field Testing, and
- Support

The Open Source software model supports all aspects of these processes and provides engineers with a methodology to follow in order to produce high quality products implementing client requirements. The models strength rests in the fact that it's supported through a wider user-base than traditional software engineering models. Open Source projects tend to have a single manager, a development team, and an interested user-base. Each have their own individual insight into the requirements solution and the process normally provides a wider tester base for system maintenance issues. The cornerstone of the methodology is that it's based upon a decentralized model that is supported from a large community of developers concerned with producing quality, mature products. Practitioners enjoy the opportunity of writing code, which is the primary motivation for almost all Open Source software development, and as such continually improve the software engineering process.

The Open source models structure improves on the incremental, build-and-fix, and rapid prototype models by creating a cyclic communications path between the project maintainer, development team, and users or debuggers. After the project attracts a development team the maintainer provides them with an initial release for testing and feature additions. The developers, in turn inform the project manager of enhancements and once they have been coded into the application a user base is identified for product testing. The user base also has the opportunity to suggest design flaw corrections and propose new features they would like the maintainer to incorporate into the project. This improved product is then resubmitted to the development team, and this cycle continues until the project has matured into a stable releasable product.

Open Source projects, as with proprietary projects, require a level of requirements analysis and modeling to successfully implement a solution. UML is the definitive approach to building model driven development that incorporates sound processes and robust architectures.

UML defines notations and semantics for the following types of problem solution:
- User Interaction or Use Case Model – describes boundary and interaction between users and the system.
- Interaction or Collaboration Model – describes how objects in the system interact to accomplish tasks.
- Dynamic Model – State charts describe states that classes assume over time. Activity graphs describe the workflow the system will accomplish.
- Logic or Class Model – describes the classes and objects of the system.
- Physical Component Model – describe software, and sometimes hardware, of the system.
- Physical Deployment Model - describes the systems physical architecture and component deployment on system hardware.

UML provides the Open Source software model with the ability to evolve from simple solution applications for personal use to large-scale applications solving industrial size system requirements. Developers are provided model elements, notation, and guidelines conforming to International OMG standards. It's the process that UML provides the development organization that enables them to refocus their development effort toward easy understanding of these complex problems.

http://linuxgazette.net/issue67/gilliam.html

William Kamkwamba: How I harnessed the wind

The Role of the CIO and IT Functions in ERP

How CIO helps higher management (CEOs and CFOs) in an organization to implement ERP systems successfully?

An ERP implementation is a major transformation that an organization undertakes. It impacts almost every aspect of the business and the CIO can play a critical part for a successful implementation in the organization by his abilities as mentioned below:

Leadership qualities and Business system thinking

With leadership qualities CIO can plan strategies, structures, design policies and processes, resource allocation to work on high quality deliverables and train them. Build strong relationships with peers, subordinates and understand the business value for the organization. Be flexible enough to adapt their approaches to the needs of the business. It also means they need stronger communication skills. Take a leadership role in promoting change across the organization. Assess business requirements, decide priorities, estimate effort, estimate implementation timeline, think and plan to integrate business, process and technology.

Relationship building

Communicate with senior executives, department heads, customers and suppliers to develop understanding, trust co-operation among users and IT. Articulate one's ideas to range of individuals, groups and cultures using the most effective communication techniques for each group and develop strong co-ordination between different groups to work together. CIO has the ability to serve, motivate and focus a team and foster collaboration among team members.

Architecture planning and Project Investment

CIO is a technically sound person and capable to create a technical platform required to implement the ERP system. A strong technical foundation acts as baseline for future business needs and solutions. CIO helps higher management to understand the true cost of ownership from initial purchasing and licensing through to ongoing support and functionality expansion. Typically, an initial implementation deploys baseline capability to support business operations and to allow an organization to get used to working with the new system. CIO assist higher management to understand the various phases and content of a multiyear plan so they can ensure budgets and resources are available and to manage organizational change.

Technology fixing and Managing Technology Change

CIO has the problem ability to troubleshoot and come up with error free solutions to business problems. CIO help higher management to identify where their business process need to change or can re-use existing technologies or introduce new ones. CIO provides high level infrastructure assessments and a road map to get from organizations current capabilities to those required in the future.

Implementation Strategies & Risk Management

CIO helps higher management to identify different approaches to implementation like “big bang” approach to small incremental releases approach and when it makes sense to retain or decommission existing systems. Early identification of risks and potential pitfalls is critical to ensure that conflicts do not arise between business strategy and execution of the ERP deployment.

Internet Voting Still Is In Beta

What type of approaches US Government should use to reduce digital divide issue in order to successfully implement I-voting?

The benefits of I-Voting such as increase convenience , accuracy, efficiency enhanced information and access to the disable are outweighed by the negative factors such as inexperienced vendors, users and election personnel, the digital divide, no laws for compatibility, privacy issues and technological issues.
However the technical issues are not the biggest problem. The sociological problem (digital divide) of unequal distribution of equipment and capabilities along demographic lines causes a potentially serious degree of unfairness of I-voting.

The US government should use phased approach to reduce digital divide. First conduct state base surveys using methods like statewide spatial analysis of digital divide to document digital divide related social, economic and demographic dimensions. After that select particular state and develop committee and use these survey reports as roadmap to develop plan, policies to identify primary areas for phase investment, development and implementation method to replace digital divide with digital equity. Create small teams that will follow the action plan in different cities (implement placed based approach) and effective reporting system.

Action plan must include following activities
1) Explain Importance of I-Voting, Provide demos and training regarding digital awareness.
2) Establish an advisory committee to develop guidelines for designing accessible, interactive electronic instructional materials including simulations.
3) Provide information regarding Government subsidies, financial assistance and incentives, regarding technology education and electronic devices.
4) Address infrastructural inequities to assure high-speed connectivity
5) Ensure that access is not hindered by cost
6) Provide educational resources regarding the use and benefits of the Internet
7) Take continuous feedbacks from all people involved or related to digital equity program to improve total program quality.
8) Develop partnership programs to attract different communities (who are actively participating in social work) to help to reduce digital divide. Use or introduce new technologies to spread knowledge regarding e-Government project like Digital TV. Provide e-Government related information through Digital TV, Radio Sessions. Conduct rallies and concerts to promote e-Government program awareness to reduce digital divide.
9) The place-based approach with an eye on social, cultural, economic, racial, and ethnic indicators can provide the best and most measurable results in overcoming the current patterns of digital divide.