Featured 1
Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.
Featured 2
Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.
Featured 3
Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.
Featured 4
Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.
Featured 5
Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.
Tuesday, February 5, 2013
Asia political
Friday, February 1, 2013
Fourth Generation Computer Languages
Using SQL you can retrieve data from a database in different formats for various conditions just by specifying the headings you need, where they are stored (tables), and the conditions.
Fig 4.3 compares the differences when instructing a computer using SQL and Visual Basic (Third Generation Language) to retrieve data from a database. The example prints a list of students who have obtained an Avg above 75 from a database. In the Visual Basic example you are required to write all the details on how the data should be retrieved. In the SQL example only the requirements need to be specified.
Thursday, January 31, 2013
Third Generation Computer Languages
High Level languages are relatively easy for people to learn and to program computers. Fig 4.2, shows examples of four programs written in diffe rent high level programming languages which display the message “Hello World” on the computer screen.
If you knew how to speak in Japanese, that would be the best way to carryout your speech. But if you knew English couldn’t you still made the speech? You could by getting help of a translator who is conversant in both Japanese and English. This is exactly how things work in a computer. A translator is used to translate instructions given in a high level language into machine code.
Coming back to the earlier example you could use two approaches to conduct your speech. One way to carry out your speech is for you to speak a few sentences in English and pause allowing the translator to repeat what you have said in Japanese. The second approach is that you could prepare your speech before hand and give awritten copy of it to the translator. You could conduct your speech completely in English. Your Japanese friends would not understand anything you say, but would probably patiently wait till you finish. After you have finished the translator could now repeat your entire speech in Japanese.
These two approaches are used by computers to translate high level language programs to machine. Translator software which uses the first approach are called Interpreters and the latter are known as compilers.
An Interpreter converts a program written in a high level language to machine code as follows.
1. Interpret the next high level language instruction to machine code
2. Execute translated machine code instruction
3. Goto 1st step
the executable file. i.e. by typing the name of the executable file in the command prompt or by selecting the executable using the Windows Task Bar Run command.
There are some high level languages which are special purpose. These languages are intended for writing specific types of programs only. For example COBOL was a language that was used for developing Business type applications. Fortran is used to developing scientific, engineering types of applications. Most of the languages that are used in the software industry fall into the Third Generation Computer Language category..
Wednesday, January 30, 2013
Introduction to Programming
Tuesday, January 29, 2013
Problems in Systems Development
- Estimating cost and time: “What is the best way to estimate the cost and time required by a project?”
- Selecting a project team: “What members must be included in a project team? What type of background and skills are required?”
- Capturing user requirements: “What is the best method to capture user requirements? How to ensure that all requirements are captured? How to ensure that the accuracy of the requirements (that is, requirements captured meets the goals of users)?”
- Using standards: There are many standards and methodologies proposed for system development (such as SDLC). “Which standard/methodology should be used for the project?”
- Choosing design approaches: There may be many design alternatives for a problem. “How do we ensure that the best design choice is made?”
- Coding programs: There are many different programming languages, tools and programming methodologies to develop programs. “How do we ensure that the right tools and languages are used?”
- Testing programs: Programs if incorrectly written can cause errors (sometimes also called “bugs”). “How do we minimize errors in programs? What is the best way to test programs?”
- Maintaining systems: “What is the best way to ensure that the systems are maintained till the end of their life cycle?”
It has been shown that as an organisation’s standard information system development process matures, project delays and costs decrease while productivity and quality increases. The Software Engineering Institute at Carnegie Mellon University (USA) has observed and measured this phenomenon and developed a framework, called the Capability Maturity Model (CMM), to assist all organisations to achieve these
benefits.
The Capability Maturity Model (CMM) is a framework to assess the maturity level of an organisation’s information systems development and management processes and products. It consists of five levels of development maturity.
- Level 1 – Initial: This is sometimes called anarchy or chaos. System development projects follow no prescribed process. Each developer uses his or her own tools and methods. Success or failure is usually a function of the skill and experience of the project team. The process is unpredictable and not repeatable. A project typically encounters many crises and is frequently over budget and behind schedule. Documentation is sporadic or not consistent from project to project and causes problems for those who maintain the system over the life cycle. Almost all organisation start at Level 1.
- Level 2 – Repeatable: Project management processes and practices have been established to track project costs, schedules and functionality. The focus is on project management, not systems development. A systems development process is always followed, but it may vary from project to project. Success or failure is still a function of the skill and experience of the project team; however, a concerted effort is made to repeat earlier project successes.
- Level 3 – Defined: A standard system development process has been purchased or developed, and its use has been integrated throughout the information systems/services unit of the organisation. All projects use a tailored version of the software development process to develop and maintain information systems and software. As a result of using this standardised process for all projects, each project results in consistent high-quality documentation and deliverables. The process is stable, predictable and repeatable.
- Level 4 – Managed: Measurable goals for quality and productivity have been established. Detailed measures of the standard system development process and product quality are routinely collected and stored in a database. There is an effort to improve individual project management based on this collected data. Thus, management seeks to become more proactive than reactive to systems development problems (such as cost overruns, scope creep, schedule delays etc.). Even when projects encounter unexpected problems or issues, the project can be adjusted based on predictable and measurable impacts.
- Level 5 – Optimised: The standardised system development process is continuously monitored and improved based on measures and data analysis established in Level 4. This can include changing the technology and best practices used to perform activities required in the standard system development process, as well as adjusting the process itself. Lessons learned are shared across the organisation, with an emphasis on eliminating inefficiencies in the systems development process while sustaining quality. In summary, the organisation has institutionalised continuous systems development process improvement.
Sunday, January 27, 2013
Systems Development Life Cycle
- Systems Investigation
- System Analysis and Requirements Definition
- Systems Design
- Software Development
- Testing
- Implementation
- Maintenance
- Problems in or opportunities for improving the existing syste
- Objectives of the system investigation
- Overview of the proposed system
- Expected costs and benefits of the proposed system
- Operational feasibility – whether the project can be put into action or operation. This includes considering motivational, logistical and acceptance considerations (such as resistance by users and other ethical considerations).
- Technical feasibility – whether hardware, software and other system components can be acquired or developed to solve the problem.
- Schedule feasibility – whether the project can be completed in a reasonable amount of time.
- Economic feasibility – whether the project is financially viable. Whether the predicted benefits offset the costs and time needed to obtain them.
- Legal feasibility – whether there are laws and regulations that may prevent or limit the system development project.
- Problems in or opportunities for improving the existing system. By having a SIMS in the school, we can keep all student records, staff records, timetables etc. in the SIMS. This can improve the efficiency of the administrative division. For example, some of the objectives of the system may be:
- Release student reports within 2 days of submitting the marks by teachers.
- Student character and leaving certificates provided to students within 2 working days from the time of request.
- Student reports are accessible to students and parents via the Internet.
- Staff attendance and salaries are calculated using SIMS.
- Objectives of the system investigation
- The objectives of the system investigation phase are to evaluate the feasibility and merit of introducing a SIMS to the school. The operational, technical, schedule, economic and legal feasibility is studied. Also, justification for introducing a SIMS to the school is discussed.In our SIMS example, a requirement may be to keep student and staff records in Sinhala and Tamil languages. The technical feasibility study will investigate whether current technology has adequate support for Sinhala and Tamil languages.
- Overview o f the proposed system
- The overview of the proposed system including the main features is discussed. The following diagram illustrates an example of a proposed system.
- Expected costs and benefits of the proposed system
- Since the school currently uses a manual system, the costs must be computed for technology infrastructure, re -organization and training of staff. Then an analysis of whether the benefits outweigh the costs or not must be determined.
and Management System (SIMS)
The design specifications typically cover the following areas:
- Hardware design: All computer equipment including input, processing and output devices with performance characteristics. In our example of SIMS, hardware design includes specification of all hardware requirements (such as computers etc.) and specifying for what purpose the equipment will be used.
- Software design: All software must be specified with capabilities. Certain software may be purchased or others may be developed. All input, output and processing requirements are considered in software design. In our example of SIMS, this includes all software that needs to be purchased (such as Operating Systems, Database Management Systems) and also specifying the software components to be developed (such as Principal, Registrar, Student, Parent interfaces to SIMS, etc.).
- Personnel Design: Positions, job titles and task descriptions are considered in the personnel design. In our SIMS example, we may propose new positions, duties and job titles such as a “System Administrator” etc. and even restructure existing positions.
- Database design: The type, structure and function of the database must be specified. In our SIMS example, this may include the database design that stores the student and staff records.
- Telecommunications and network design: The necessary characteristics of the communications software, media, and devices must be specified. In our SIMS example, this pertains to the school network design that connects the different computer systems.
- Procedures design: All information systems require procedures to run applications and handle problems if they occur. These important policies are captured during procedures design. An important aspect of this step is to design security and backup polices and procedures to minimise the potential for fraud and crime.
- Training requirements: Specifies the training requirements.
- Maintenance requirements: Specifies maintenance requirements for both hardware and software.
- Design Decisions and Alternatives: Major design decisions and alternatives considered are documented.
Software development phase: The specifications produced in the systems design phase provide the input for the Software Development Phase. At this stage, software developers and programmers build and test individual modules of the overall software system. The individual modules are integrated to produce the new system.
Testing phase: Testing Phase proceeds in parallel with the major phases. A broad test strategy is defined at the time the system requirements are identified. Detailed test design takes place during system design, and testing is a part of the software development phase. There are different types of testing that takes place:
- Unit testing: tests individual modules.
- Integration testing: modules are integrated and tested.
- System testing: entire system is tested
- Acceptance testing: verifying users’ test scenarios. This is usually performed at the end of the system development to verify that the system meets users’ requirements.
- Direct implementation: The entire system is replaced with the new system at once.
- Parallel implementation: Both systems (i.e., the new and the old systems) are executed in parallel for a certain defined period of time. This strategy is helpful because of the following:
- Results of the old system can be compared with the results of the new system.
- Failure of the new system at the early stage, does not affect the working of the organisation, because the old system continues to work, as it used to do.
- Phased implementation: The new system is introduced in a phased manner. In this implementation, the new system is installed in parts. Some part of the new system is installed first and executed successfully for considerable time period. When the results are found satisfactory then only other parts are implemented. This strategy builds the confidence and the errors are traced easily.
- Pilot implementation: Pilot implementation allows users to test-drive the solution to make sure it meets both business and technical needs. During a pilot implementation, the solution is installed and configured in the users’ environment for the first time. A pilot implementation provides a snapshot of the same functionality of a full system implementation, generally without the scalability and redundancy found in a full system. To complete the changeover, users must be trained in system operation and any existing old procedures converted to the new system.
The SDLC allows for a large degree of management control. At the end of each phase, a formal review is performed and a decision is made whether to continue, terminate the project or modify and repeat some of the current tasks of the current phase. During the SDLC, documentation is created and this can be useful for system modification later. A major problem of SDLC is that the user does not see a solution until the system is nearly complete. It may result in a system, which does not address the user’s real needs since the development was based on development team’s understanding of the needs. This is quite possible since the user may not necessarily be a computer literate or expert on systems and his expression of requirements may be incomplete and inaccurate resulting in misunderstanding by the development team. SDLC is also inflexible to changing needs of the users. Changes to requirements during system development may not be incorporated. This is because once the systems requirements definition phase is completed, the development team works on other phases without much interaction with the users. If the users’ requirements change during this time, the development team may not be aware or be able to incorporate these new requirements to the system. Even with these shortcomings, SDLC is still a popularly used development methodology for many TPS and MIS systems because of its advantages. Table 3.2 below illustrates some of the advantages and disadvantages of SDLC.
Saturday, January 26, 2013
Information Systems Development
is often the only person who sees the system in totality
Similar to humans, plants and animals, information systems also have a life cycle. An information system also follows a system life cycle – from its development to operation and to final retirement. The system life cycle divides the life of an information system into two stages as follows:
- System development: developing the information system
- Systems operation and support: running the system and supporting it until its retirement.