Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cw comp1108 1013_mo233_000793120_20151208_172508_1516


Published on

Undergraduate Final Year Project Report
Implementation of a Good Church Finder in Zambia for Evangelical Fellowship of Zambia using a dynamic bulletin board web site (web portal).
NAME: Owen Musenge Muzi

Published in: Devices & Hardware
  • Be the first to comment

  • Be the first to like this

Cw comp1108 1013_mo233_000793120_20151208_172508_1516

  1. 1. 1 | P a g e Undergraduate Final Year Project Report Implementation of a Good Church Finder in Zambia for Evangelical Fellowship of Zambia using a dynamic bulletin board web site (web portal). NAME: Owen Musenge Muzi PROGRAMME: BSc (HONS) COMPUTING STUDENT ID: 000793120 Supervisors: Dr. B Jere and Mr. S Mfune Due date 25/11/2015 A formal proposal for a dissertation that will be submitted in partial fulfilment of the University of Greenwich Bachelor of Science Degree in Computing
  2. 2. 2 | P a g e Table of contents Acknowledgement……………………………………………………………………………………..4 Abstract……………………………………………………...…………………………………………5 Chapter 1 Introduction……………...……………………………….………………………………...6 Overviews…….....………………………………..……………………………………………………7 Background…………….....……………………………………………………………………………7 Scope statement……………………….......…...…………………………………………….…………8 Aim and objectives………………………….……………………….…………………………..……..8 Problem statement and solution…………………......…………………………………………..……..8 Road map…………………………………….……….…………………………………..……………8 Summary……………………………….……………………………………………….……………..9 Chapter 2 …………………………………………………………………………..…....……………..9 Introduction …………………………………………………………………………....……………..10 Literature review correctly done……………………………………………………......…………….11 Critical review……………………………………………………………........……………………..12 Summary…………………………………………………………………......………………………12 Chapter 3 …………………………………………...........................………....……………………..12 Activities, methods and objectives……………………………...……..……....……………………..15 Chapter 4 ……………………………………………………/………….....…………..……………..16 Review of similar systems ……………………………………………......……....………………….16 Chapter 5 …………………………………………………………………………………………….22 Systems analysis……………………………………………………………………....………………22 Chapter 6 Design of system………………………………….....……….…………..………………..28 Chapter 7 Construction and implementation………………………………..……...…………………34 Chapter 8 Tests…………………………………………………………….………………………….55 Chapter 9 …………………………………………………………………………....………………..57 Ethical, social, legal and professional issues………………………..…………….....…………...…..57
  3. 3. 3 | P a g e Chapter 10 ……………………………………………………………………………………………57 Conclusions …………………………………………………………………………….…………….57 References / bibliography list …………………………………………..…………………………….59 Appendices A- G………………………………………………………………………….......………60
  4. 4. 4 | P a g e Acknowledgements My big thanks go to my supervisors Dr Jere and Mr Mfune. I would like to thank my fellow students and management of Zambia centre for accountancy studies. Thanks to my wife too.
  5. 5. 5 | P a g e Abstract The proposed system will help people of Zambia find a good church. Of late there has been an increase in the number of cases around the country of some clergymen involving themselves in unchristian activities and taking advantage of their congregants. This is the dissertation of a project that will help people to find a good church near them in Zambia. This project will be for Evangelical Fellowship of Zambia. This report will address many challenges that are currently be faced by the people of Zambia when it comes to finding a good church with a true pastor. This report will have the introduction of the proposed system, literature review, analysis, design, implementation and legal issues.
  6. 6. 6 | P a g e CHAPTER 1 INTRODUCTION 1.1 Overview I will start with the information I got from members of staff about Evangelical Fellowship Of Zambia, how it start and what is its vision. The Evangelical Fellowship of Zambia (EFZ) is a mother body of Christian denominations, local churches, Para-church organization, mission agencies and individuals. Evangelical Fellowship of Zambia was established for the purpose of providing fellowship among the evangelical missionaries serving in Zambia and makes sure the true gospel and true doctrine of Jesus Christ is preached. This information was provided by Rev Lawrence Temfe board member (2015). 1.2 Background Evangelical Fellowship of Zambia was established in April 1964 for the true gospel of our lord Jesus. The institution has grown from a small group of less than 10 missionaries, to 220 members in December 2011. It also has 5000 points of presence countrywide. With the challenge of fake churches and pastors opening ministries, EVANGELICAL FELLOWSHIP OF ZAMBIA feel mandated to protect the people of Zambia and those coming to visit Zambia. 1.3 Vision: a united body of evangelicals reaching out with the gospel through a holistic ministry. 1.4 Mission: Evangelical Fellowship of Zambia exists to identify, empower and mobilize evangelical churches and mission agencies for the effective evangelization and transformation of Zambia. 1.5 Objectives of Evangelical Fellowship of Zambia  To provide spiritual fellowship and unity.  To provide humanitarian response to disaster situations supported by long-term development interventions.  To provide a prophetic voice in matters of justice and peace.  To empower the poor, marginalized and vulnerable persons and households.  To undertake research on various issues on which basis to provide theological reflection and application.  To maintain the unity of purpose. 1.6 Members Evangelical Fellowship of Zambia member churches and organizations see appendix B:
  7. 7. 7 | P a g e 1.7 Aim of the project study The system will firmly highlight those churches that are registered with the registers of society and Evangelical Fellowship of Zambia. People can search through the system, and the system will show them good churches near them in Zambia by sorting by addresses. This system will be manage by Evangelical Fellowship of Zambia and will contain only churches that are in Zambia. 1.8 Why Evangelical Fellowship of Zambia needs an online system. First of all Zambia is a Christian nation most of Zambians are looking for a credible church to go to. People who visit from other countries need churches that are bible believing churches. Out there are also these fake pastors stealing and sleep with people. This problem is making a lot of people to avoid going to churches. This problem can be solved by use of technologies. Technologies must be used in churches too, Christians must embarrass IT.A web portal can be used to solve this problem. There are a number of problems that can be attributed to having a fake pastor e.g. 1. Not having peoples’ interests at heart. 2. Taking advantage of desperate people in society. 3. Fake Christian doctrines hence and increase in evil and inhumane acts in society such as gender based violence and sexual abuse etc. 1.9 Project scope: The current system Evangelical Fellowship of Zambia is using the file base. It displays the registered churches on the web page not in the database see the list below Appendix B. But the new system will have:  Computer database  User can see churches near them by sorting by addresses  People can see pastor profile and education background of the pastors if any.  Do database updates. 1.10 Problem definition The current system is difficult to use and to tell if the church is registered or the church has a true pastor who has met the standards as stipulated by the laws of Zambia. The proposed system will list from the database the registered churches.
  8. 8. 8 | P a g e 1.11 Solution problem Designing and implementing the good church finder system that will address the current problems being faced by Zambian and visitors to Zambia in finding a good church. 1.12 The roadmap of this report Chapter -1- introduction of problem, organization and the system Chapter 2 literature reviews reading of other materials and books. Chapter 3 project objective, activities and methods Chapter 4 study of similar systems that exists in the world Chapter 5 system analysis and the information required for the creation of the system. Chapter 6 system design shows the blue print of the system. Chapter 7 implementation and programming of the system. Chapter 8 testing of the system and parts of the system. Chapter 9 professionalism and ethics Chapter 10 conclusions References Appendix CHAPTER 2 LITERATURE REVIEW 2.0 Introduction This chapter highlights the information got from other writers that will help with creation and implementation of the good church finder system. Information about methodologies, technologies, DBMS, software development tools. 2.1 Evangelical Fellowship of Zambia The vision of the Evangelical Fellowship of Zambia is “a united body of evangelicals reaching out with the gospel through a holistic ministry” In march 2012 the Evangelical Fellowship of Zambia gathered 230 church leaders comprising of bishops, reverends and pastors in Lusaka and Kitwe during which time the leaders reflected on the
  9. 9. 9 | P a g e state of the nation in the light of their prophetic responsibility of being the salt of the earth and the light of the world (Mathew 5:13-14) One of the concerns among many other concerns is the issue of mushrooming of unregistered churches in many parts of the country. The law of the churches and NGOs act no. 16 of 2009 (‘’act’’) requires all churches and NGOs operating in Zambia to be registered in accordance with the act. Evangelical Fellowship of Zambia has noted with concerns the number of cases around the country of some clergymen involving themselves in unchristian activities and taking advantage of their congregants. Evangelical Fellowship of Zambia wants the good church finder system to be implemented to avoid the increased number of fake pastors. This system will strengthen registration system to make sure all pastors do register churches and that they should all have people s, interest at heart. The chairperson Bish Dr Joe Imakando explained that due to poverty, many pastors are forming churches not to spread the gospel but to enrich themselves. (Taking advantage of people in society). Bishop Ndhlovu writes “there has been a rise in the number of gender based violence cases in the county due to the false gospel being preached by fake churches’’. All churches and organization those which are member of Evangelical Fellowship of Zambia are good and credible churches, Evangelical Fellowship of Zambia studies their doctrine and documentations before accepting them, all the churches in this web portal are credible church and have sound doctrine because EFZ have done the job screening. 2.2 Find suitable technologies During the development of this system I came across a lot of technologies involved in the development of the web system. Below are the most used technologies and the ones I chose to use and reasons for using them. All websites, with the exception of very simple static sties, utilize at least one programming language in addition to HTML for website development. Any site with ecommerce, online registration, CMS, or even simple database integration will need to use some type of programming language in addition to HTML. Some of the more common web development technologies are .NET, PHP, Classic ASP, Cold Fusion, J2EE, PERL etc. However the real question is, which one is best? If you ask this question to three different developers you are likely to get three different answers. Generally the one they develop in is professed to be the best. For me I focus most of my development on Microsoft.NET and PHP. These two technologies were chosen not only because they are probably the two most widely used technologies today, but they cover the two most common platforms. .NET is the most common programming technology for
  10. 10. 10 | P a g e Windows and PHP is the most common web technology for Linux. Along with these two technologies, the databases used are Microsoft SQL Server and MySQL which are the two most widely used databases for web development. These technologies will leave the client with options once the project is complete. In addition, since .NET and PHP are very common web development technologies, existing code modules can be leveraged for most projects saving both time and money during development. PHP and MySQL are free and easy to find so this project been an academic purpose project these will be the best to use. Nowadays sites have to change constantly and provide up-to-date news, information, Stock prices and customized pages. PHP and SQL are two ways to make your site Dynamic. PHP is a robust, server-side, open source scripting language that is extremely Flexible and actually fun to learn. PHP is also cross platform, which means your PHP Scripts will run on UNIX, Linux, or an NT server. MySQL is the standard query language for interacting with databases. MySQL is An open source, SQL database server that is more or less free and extremely fast. MySQL is also cross platform. 2.3 Design pattern 2.4 Introduction to Design Patterns According to Christopher Alexander: “Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice" So a design pattern is a formal description of a problem and its solution. Design patterns must have a simple, descriptive name that can be readily used when referring to the pattern. A pattern should document the problem, its solution and the consequences of using it. 2.5 Front Controller For this project a front controller pattern was used which is where you have a single entrance point for your web application (e.g. index.php) that handles all of the requests. This code is responsible for loading all of the dependencies, processing the request and sending the response to the browser. The front controller pattern can be beneficial because it encourages modular code and gives you a central place to hook in code that should be run for every request (such as input sanitization). The Front Controller pattern is a software design pattern listed in several pattern catalogues. The pattern relates to the design of web applications. It "provides a centralized entry point for handling requests."
  11. 11. 11 | P a g e Front controllers are often used in web applications to implement workflows. While not strictly required, it is much easier to control navigation across a set of related pages (for instance, multiple pages used in an online purchase) from a front controller than it is to make the individual pages responsible for navigation. The front controller may be implemented as a Java object, or as a script in a script language like PHP, Python or Ruby that is called on every request of a web session. This script, for example an index.php, would handle all tasks that are common to the application or the framework, such as session handling, caching, and input filtering. Based on the specific request, it would then instantiate further objects and call methods to handle the particular task(s) required. The alternative to a front controller would be individual scripts like login.php and order.php that would each then satisfy the type of request. Each script would have to duplicate code or objects that are common to all tasks. However, each script might also have more flexibility to implement the particular task required. CHAPTER 3 PROJECT OBJECTIVES ACTIVITIES AND METHODS 3.0 Introduction This is the methodology chapter used to justify the methods employed during the research and the implementation of the project. Below I will highlight the data collection and techniques used. 3.1 To analyse current system in use at EVANGELICAL FELLOWSHIP OF ZAMBIA Activities: 3.1.1 Hold interview with the stakeholders [1.0 day] 3.1.2 Send questionnaires [2.0 days] 3.1.3 Interview the system Administrator [2.0 days] 3.1.4 Read the article about true churches. [3.0 days] Deliverables: User Requirements and Specifications document 3.2 To review similar systems Activities: 3.2.1 Check the existing of similar systems [2.0 days] 3.2.2 Read Literature on existing systems [3.0 days] 3.2.2 Select features to incorporate in new system [1.0 day] Deliverables: section report 3.3 To select a methodology Activities: 3.3.1 Check the existing system development methodologies [2.0 days] 3.3.2 Read Literature of different methodologies [3.0 days] 3.3.3 Compare the Software development Methodologies 3.3.4 Select an existing methodology for the new system [1.0 day] Deliverables: section report 3.4 To design and implement a the new system
  12. 12. 12 | P a g e Activities: 3.4.1 Select hardware and software specification [2.0 days] 3.4.2 Read Literature of different designs [3.0 days] 3.4.2 Select an existing design for system [1.0 day] Deliverables: section report 3.5 To design and implement a database system Activities: 3.5.1 Select appropriate software platforms [2.0 days] 3.5.2 Draw up ERD for Database [2.0 days] 3.5.2 Create Database [2.0 day] Deliverables: database design document and Completed Database 3.6 To evaluate the new System Activities: 3.6.1 Draw up test plan [1.0 days] 3.6.2 Carry out testing [3.0 days] 3.6.3 Correct any errors and retest [3.0 days] Deliverable: Test Plan Test Results Final Product Report 3.2 Development methodology to be used Methodologies help to standardize and guide the implementation of the project. It helps project to be conducted in a well-managed and reliable manner and increase the quality also finish the project in time. 3.3 Introduction In order to achieve goals and planned results within a defined schedule and a budget, a manager uses a project. Regardless of which field or which trade, there are assortments of methodologies to help managers at every stage of a project from the initiation to implementation to the closure. In this tutorial, we will try to discuss the most commonly used project management methodologies. A methodology is a model, which project managers employ for the design, planning, implementation and achievement of their project objectives. There are different project management methodologies to benefit different projects. For example, there is a specific methodology, which NASA uses to build a space station while the Navy employs a different methodology to build submarines. Hence, there are different project management methodologies that cater to the needs of different projects spanned across different business domains. 3.4 Project Methodologies Following are the most frequently used project management methodologies in the project management practice:
  13. 13. 13 | P a g e 1 - Adaptive Project Framework In this methodology, the project scope is a variable. Additionally, the time and the cost are constants for the project. Therefore, during the project execution, the project scope is adjusted in order to get the maximum business value from the project. 2 - Agile Software Development Agile software development methodology is for a project that needs extreme agility in requirements. The key features of agile are its short-termed delivery cycles (sprints), agile requirements, dynamic team culture, less restrictive project control and emphasis on real-time communication. 3 - Crystal Methods In crystal method, the project processes are given a low priority. Instead of the processes, this method focuses more on team communication, team member skills, people and interaction. Crystal methods come under agile category. 4 - Dynamic Systems Development Model (DSDM) This is the successor of Rapid Application Development (RAD) methodology. This is also a subset of agile software development methodology and boasts about the training and documents support this methodology has. This method emphasizes more on the active user involvement during the project life cycle. 5 - Extreme Programming (XP) Lowering the cost of requirement changes is the main objective of extreme programming. XP emphasizes on fine scale feedback, continuous process, shared understanding and programmer welfare. In XP, there is no detailed requirements specification or software architecture built. 6 - Feature Driven Development (FDD) This methodology is more focused on simple and well-defined processes, short iterative and feature driven delivery cycles. All the planning and execution in this project type take place based on the features. 7 - Information Technology Infrastructure Library (ITIL) This methodology is a collection of best practices in project management. ITIL covers a broad aspect of project management which starts from the organizational management level. 8 - Joint Application Development (JAD) Involving the client from the early stages with the project tasks is emphasized by this methodology. The project team and the client hold JAD sessions collaboratively in order to get the contribution from the client. These JAD sessions take place during the entire project life cycle. 9 - Lean Development (LD) Lean development focuses on developing change-tolerance software. In this method, satisfying the customer comes as the highest priority. The team is motivated to provide the highest value for the money paid by the customer.
  14. 14. 14 | P a g e 10 - PRINCE2 PRINCE2 takes a process-based approach to project management. This methodology is based on eight high-level processes. 11 - Rapid Application Development (RAD) This methodology focuses on developing products faster with higher quality. When it comes to gathering requirements, it uses the workshop method. Prototyping is used for getting clear requirements and re-use the software components to accelerate the development timelines.In this method, all types of internal communications are considered informal. 12 - Rational Unified Process (RUP) RUP tries to capture all the positive aspects of modern software development methodologies and offer them in one package. This is one of the first project management methodologies that suggested an iterative approach to software development. 13 - Scrum This is an agile methodology. The main goal of this methodology is to improve team productivity dramatically by removing every possible burden. Scrum projects are managed by a Scrum master. 14 - Spiral Spiral methodology is the extended waterfall model with prototyping. This method is used instead of using the waterfall model for large projects. 15 - Systems Development Life Cycle (SDLC) This is a conceptual model used in software development projects. In this method, there is a possibility of combining two or more project management methodologies for the best outcome. SDLC also heavily emphasizes on the use of documentation and has strict guidelines on it. 16 - Waterfall (Traditional) This is the legacy model for software development projects. This methodology has been in practice for decades before the new methodologies were introduced. In this model, development lifecycle has fixed phases and linear timelines. This model is not capable of addressing the challenges in the modern software development domain. 3.5 Conclusion Selecting the most suitable project management methodology could be a tricky task. When it comes to selecting an appropriate one, there are a few dozens of factors you should consider. Each project management methodology carries its own strengths and weaknesses. Therefore, there is no good or bad methodology and what you should follow is the most suitable one for the project management requirements. Below is methodology I used with its pros and cons: Dynamic Systems Development Model (DSDM) is a subset of agile software development methodology and boasts about the training and documents support this methodology has. This method emphasizes more on the active user involvement during the project life cycle. Dynamic systems development method (DSDM) is an agile project delivery framework, primarily used as a software development method. First released in 1994, DSDM originally sought to provide
  15. 15. 15 | P a g e some discipline to the rapid application development (RAD) method. In 2007 DSDM became a generic approach to project management and solution delivered. DSDM is an iterative and incremental approach that embraces principles of agile development, including continuous user/customer involvement. DSDM fixes cost, quality and time at the outset and uses the MoSCoW prioritisation of scope into musts, shoulds, coulds and won't haves to adjust the project deliverable to meet the stated time constraint. DSDM is one of a number of Agile methods for developing software and non-IT solutions, and it forms a part of the Agile Alliance. In 2007, DSDM was rebranded ‘DSDM Atern’. The name Atern was a shortening of Arctic tern - a collaborative bird.That can travel vast distances and epitomises many facets of the method which are natural ways of working e.g. prioritisation and collaboration. Figure 1: DSDM project phases (Source of Image DSDM Consortium pdf.)
  16. 16. 16 | P a g e CHAPTER 4 STUDY OF SIMILAR SYSTEMS IN THE WORLD There are a lot of similar systems in developed countries that do a similar job but not in Zambia. I have chosen to talk about the 5 below: Figure 2: ChurchFinder
  17. 17. 17 | P a g e Figure 3: A Church Near You A Church Near You, lists every church in the Church of England with accurate maps, contact information, service times and much moreOr one can browse by category. It is the UK’s No.1 online directory for 1,000’s of Christian products and services. Grown from the UK Christian Resources Handbook this online directory gives you access to agencies, businesses and organisations at your fingertips.It helps people to Save time. To Get connected. To Work smart.
  18. 18. 18 | P a g e Figure 4: Find a Church
  19. 19. 19 | P a g e Figure 5: The Church Of Scotland
  20. 20. 20 | P a g e Figure 6: Catholic faith (find a church)
  21. 21. 21 | P a g e Figure 7: Find an evangelical alliance member church CHAPTER 5 SYSTEM ANALYSIS Here we are looking at the current system. This chapter will highlight the information gathered about the current system and the information gathering techniques that was used. System analysis requires to gathered sufficient information about the current system. There are a number of information gathering techniques in place for this project and report. The 4 techniques used are the fisrt 4 then rest were part of want i reseached on:  Questionnaire  Brainstorming  Interviews  Observation  Document Analysis  Focus Group  Interface Analysis  Prototyping  Requirements Workshop  Reverse Engineering  Survey 5.0 Techniques Used in Business Requirements Gathering When it comes to business requirements gathering, various techniques are available. Every technique comes with its own merits and demerits. No project works using one gathering technique but make use of many techniques. 5.1 Gathering Requirements from All Parties Techniques involving visualization of the requirements like storyboards, prototypes, scenarios are helpful when you have a business user who may not be worried about the ins and outs of technical solution or have long attention duration for legalizing the requirements with users to let the analyst drive his discovery efficiently than just reading a document with a prospective user. The requirement gathering techniques may differ from one project to another. Some requirement gathering techniques may prove highly beneficial for you in one project but may not be as productive in the other project or for some other company. Therefore the usefulness of a technique is determined by its need and the kind of advantages it offers in a particular project. There are 10 essential requirement gathering techniques that must be known in order to manage the projects in a better way and run the business successfully are: 1. Brainstorming
  22. 22. 22 | P a g e It is utilized in requirements elicitation to gather good number of ideas from a group of people. Usually brainstorming is used in identifying all possible solutions to problems and simplifies the detail of opportunities. It casts a broad net, determining various discreet possibilities. Prioritization of such possibilities is vital to locate needles in haystack. 2. Document Analysis Document Analysis is an important gathering technique. Evaluating the documentation of a present system can assist when making AS-IS process documents and also when driving the gap analysis for scoping of the migration projects. In today’s world, one will also be determining the requirements that drove making of an existing system- a beginning point for documenting all current requirements. Chunks of information are mostly buried in present documents that assist you in putting questions as a part of validating the requirement completeness. 3. Focus Group A focus group is actually gathering of people who are customers or users representatives for a product to gain its feedback. The feedback can be collected about opportunities, needs, and problems to determine requirements or it can be collected to refine and validate the already elicited requirements. This type of market research is different from brainstorming in which it is a managed process with particular participants. There is a risk in following the crowd and some people think that focus groups are at best unproductive. One danger that we usually end up with is with least common denominator features. 4. Interface Analysis Interface for any software product will either be human or machine. Integration with external devices and systems is another interface. The user centric design approaches are quite effective to ensure that you make usable software. Interface analysis- analyzing the touch points with another external system- is vital to ensure that you do not overlook requirements that are not instantly visible to the users. 5. Interview Interviews of users and stakeholders are important in creating wonderful software. Without knowing the expectations and goal of the stakeholders and users, you are highly unlikely to satiate them. You also have to understand the perspective of every interviewee, in order to properly address and weigh their inputs. Like a good reporter, listening is a quality that assists an excellent analyst to gain better value through an interview as compared to an average analyst. 6. Observation The observation covers the study of users in its natural habitat. By watching users, a process flow, pain points, awkward steps and opportunities can be determined by an analyst for improvement. Observation can either be passive or active. Passive observation is provides better feedback to refine requirements on the same hand active observation works best for obtaining an understanding over an existing business process. You can use any of these approaches to uncover the implicit requirements that are often overlooked. 7. Prototyping Prototyping can be very helpful at gathering feedback. Low fidelity prototypes make a good listening tool. Many a times, people are not able to articulate a specific need in the abstract. They can swiftly review whether a design approach would satisfy the need. Prototypes are very effectively done with
  23. 23. 23 | P a g e fast sketches of storyboards and interfaces. Prototypes in some situations are also used as official requirements. 8. Requirements Workshop Popularly known as JAD or joint application design, these workshops can be efficient for gathering requirements. The requirements workshops are more organized and structured than a brainstorming session where the involved parties get together to document requirements. Creation of domain model artifacts like activity programs or static diagrams is one of the ways to capture the collaboration. A workshop with two analysts is more effective than one in which on works as a facilitator and the other scribes the work together. 9. Reverse Engineering Is this a last resort or starting point? When a migration project is not having enough documentation of the current system, reverse engineering will determine what system does? It will not determine what the thing went wrong with the system and what a system must do? 10. Survey When gathering information from many people: to many to interview with time constraints and less budget: a questionnaire survey can be used. The surveyinsists the users to choose from the given options agree / disagree or rate something. Do not think that you can make a survey on your own but try to add meaningful insight in it. A well designed survey must give qualitative guidance for characterizing the market. It should not be utilized for prioritizing of requirements or features. 5.2 Current system 5.3 Introduction Efz has no IS for management of member churches. The organization has the online presence but it is just a static website. All functions are done manually. The idea of processing things manually has a lot of challenges:  Time consuming  Cost of storage  Cost of managing and maintain physical documents.  Filing manually is prone to error hence miss filling  Members of the public can only access the information by walking to efz(no remote access)  Delay in accessing information means slow in making decisions.  Less security compared to information in the database system.  No automatic generation of reports  There is high level of data inconsistency. 5.4 The proposed system 5.5 Introduction Zambia is facing the challenges of fake pastors and a lot of unregistered churches mushrooming around. These challenges can be resolved by displaying all churches that are registered and have all
  24. 24. 24 | P a g e documentations a church needs to operate and must be a member of efz which has to verify if the doctrine is a sound doctrine.  The benefits of having a good church finder system are that it will be faster for people to find a church to go to without fear.  Making decision on the church one wants will be easier and faster.  Information will be presented on time.  Information will be in a GUI (graphical user interface). This will make it easier for the user to interpret the information.  The proposed system will be more secure than the current system which is manually.  The cost will be reduced in terms of storage and personnel to maintain and file the physical documents. 5.6 Functional and non-functional requirements. Functional: 5.6.1 User (members of the public) functional  View churches  view pastors names and profiles  Ask any question. 5.6.2 Admin functional:  Accounts creation  login to system  Add data to the database.  Delete data from the database  Modify data in the database  Write reports. 5.7 Non-functional:  Efficiency  integrity  Compatibility  Usability  Security  Scalability  Reliability  Portability  Performance.
  25. 25. 25 | P a g e Use case diagrams User (members of the public) use cases User (members of the public) Figure 8: user use cases diagram It is not a must to login for usersView website View Churches View pastors’ profile Asking any questions Search for a good church near the users’ location
  26. 26. 26 | P a g e use case scenario for users (members of the public) actor: member of the public precondition: nil input events from the actor system events & Reponses search for church near by displays a list of all churches sort by address reduces the list to only those near by ask any question response shown leave search page displays home page Admin use cases Admin Figure 9: admin use cases diagram Admin must login Account creation Add records, delete records Edit records and create reports Create administers Backup database
  27. 27. 27 | P a g e use case scenario for admin actor: admin precondition: admin has no account input events from the actor system events & reponses login show interface for creation click create show form login by user and password show filled field done with tasks show message done backup database show message database backup done CHAPTER 6 SYSTEM DESIGN This chapter looks at the design of the system e.g. design diagrams, database design, conceptual, logical schema, site map, and user interfaces.
  28. 28. 28 | P a g e 6.0 Conceptual schema diagram Figure: 10 ERD (conceptual schema diagram) admin CHURCHES PASTORS’ PROFILES Goes WORKS UPDATES userID Password CHURCHEID PastorID
  29. 29. 29 | P a g e 6.1 Logical schema diagram admin table username password level address church table churchID ChurchName PastorID Location Provice pastor table PastorID PastorName PastorProfile PictureOfPastor EducationBackgroungOfAPastor Figure 11: logical schema diagram 6.2 Physical table diagram Figure12: admin table username password level address Figure: 13 church table churchID ChurchName PastorID Location Provice Figure14: pastor table PastorID PastorName PastorProfile PictureOfPastor EducationBackgroungOfAPastor
  30. 30. 30 | P a g e 6.3 Site map Figure 15: site maps Create Account Login Page Information Been displayed Pastors’ profile Churches Etc Index Home page
  31. 31. 31 | P a g e 6.6 User interfaces Figure 16: Login page
  32. 32. 32 | P a g e Figure 17: List of churches with address Figure 18: Pastors’ page
  33. 33. 33 | P a g e CHAPTER 7 CONSTRUCTION OF SYSTEM (ENGINEERING) In this chapter a detailed account of tools and programming languages used will be given. 7.0 Laptop used How to Choose a Laptop For Web Design And Development Figure 19: laptops used.(Lead image source: Quinn Dombrowski) Every craftsman needs a good set of tools. Every carpenter needs a good set of hammers and saws, every blacksmith needs a quality set of anvils and hammers, and every artisan leather crafter needs a sharp set of awls. Web designers and web developers are no different. Every web designer and web developer needs a good laptop to call their own. Because we all have different needs, it’s important to shop around and make a careful and considered choice when choosing a laptop. The wrong laptop may hinder your web development efforts, so it’s important to choose the right one to fit your needs. If you’re a road warrior, for example, you’ll want to look at ultra-portable laptops or portable computers that prioritise battery life and weight, but if you’re a power user, you may want to examine desktop replacements that come with powerful components. This below will provide tips and guidance that helped choose the right laptop for web design and web development. 1. Choosing an Operating System
  34. 34. 34 | P a g e The first thing to do, before even looking at any model is to decide which operating system one would like to use on new laptop. The four most commonly used operating systems for web design and web development are Chrome OS, Windows, Mac OS X, and Linux. Each of them is available on a wide variety of portable computers with varying specifications, and each has their own distinct advantages and disadvantages. Chrome OS (Aka Chromium OS) Chrome OS is the simplest and most straightforward operating system available today. The operating system, created by Google, is very similar to the popular Chrome web browser, except transformed into an operating system. Unlike the other three operating systems listed below, ChromeOS doesn’t have a file browser, and it doesn’t run applications. Instead, all web design development work has to be done through browser- run web apps. For designers and developers who like to code directly in raw HTML and CSS, and don’t like using code editors or interactive development environments, Chrome OS is a fine, albeit limited, choice. Linux Linux is arguably the most difficult to use operating system available today. Many commands need to be entered directly into the command line, which can be rather daunting and unintuitive. Installing apps and making changes to the operating system can be difficult, too. However, despite having a steep learning curve, Linux is arguably the most powerful and customisable operating system available today. It can be customised to match one’s specific needs exactly, allowing one to create one’s own perfect development environment. Perhaps the most ‘user-friendly’ derivation of Linux is Ubuntu which is a free operating system for desktop and mobile devices. Mac OS X Apple’s Mac OS X is a powerful operating system. Aesthetically pleasing, easy to use, and immensely powerful, OS X is quickly becoming the operating system of choice for web designers and web developers with deep pockets. Due to its Unix underpinnings, OS X is excellent for web development, with the built in Terminal providing easy access to tools like git, virtualisation software, and more. Unfortunately, Mac OS X is only available on Apple units, which are often more expensive than those that are manufactured by other companies.
  35. 35. 35 | P a g e Windows Microsoft Windows is the most popular operating system in the world. According to recent statistics, approximately 90% of computers worldwide run the operating system. There is still much debate about whether Windows 8 or Windows 7 is the best. In addition to this the most recent Windows release, has received a lot of criticism. Yet it is still a great, reliable, sturdy operating system. Windows 8.1 is also hoping to address many of the criticisms users have made about Windows 8. The Windows web design and development community is excellent, with many programs and tools available for Windows that aren’t available on other operating systems. Windows is also available on a variety of laptops at different price points, making it the most flexible of the four operating systems listed above. 7.1 Software used 7.1.0Dreamweaver 8 Macromedia Dreamweaver 8 is a professional HTML editor for designing, coding, and developing websites, web pages, and web applications. Whether you enjoy the control of hand-coding HTML or prefer to work in a visual editing environment, Dreamweaver provides you with helpful tools to enhance your web creation experience. The visual editing features in Dreamweaver let you quickly create pages without writing a line of code. You can view all your site elements or assets and drag them from an easy-to-use panel directly into a document. You can streamline your development workflow by creating and editing images in Macromedia Fireworks or another graphics application, then importing them directly into Dreamweaver. Dreamweaver also provides a full-featured coding environment that includes code-editing tools (such as code colouring and tag completion) and language reference material on Cascading Style Sheets (CSS), JavaScript, and ColdFusion Mark-up Language (CFML), among others. Macromedia Round trip HTML technology imports your hand- coded HTML documents without reformatting the code; you can then reformat code with your preferred formatting style. Dreamweaver also enables you to build dynamic database-backed web applications using server technologies such as CFML, ASP.NET, ASP, JSP, and PHP. Dreamweaver is fully customizable. You can create your own objects and commands, modify keyboard shortcuts, and even write JavaScript code to extend Dreamweaver capabilities with new behaviours, Property inspectors, and site reports. 7.1.1Wampserver 5 WAMP5 is an installer for Windows. It installs a complete WAMP solution on your computer. WAMP is for: Windows - Apache - MySQL- PHP5 WAMP5 automatically configures them to work together, wherever you install them on your local drive. WAMP5 comes with a service manager as an icon tray. This manager will allow you to fully control your server and local projects. WAMP5 is not designed for production but as a development environment. With WAMP5, you will be able to create your scripts locally on your computer, test them and then upload them on your production server. During installation, a "www" directory is created in WAMP5's directory. Just put
  36. 36. 36 | P a g e script files (PHP files) in this directory and access your localhost threw an Internet Windows or the service manager (icon tray). 7.1.2 PHPRunner PHPRunner creates set of PHP pages to access and modify MySQL database. Using generated PHP pages users can search, edit, delete, and add data into database. PHPRunner is extremely easy to learn, you can get started in just 10 minutes! Features:  Easy to use wizard-like interface  Generates 100% pure PHP code  Number of search modes  Add, view, edit, and delete pages  Password-protected access to the database Benefits of using PHP Runner are:  Can save you time and money.  Improve functionality of your web site.  Create robust, easy to modify code.  Easy to use, you can generate your first PHP pages in just ten minutes.  No programming required. 7.2 Application architecture For this project a front controller pattern was used which is where you have a single entrance point for your web application (e.g. index.php) that handles all of the requests. This code is responsible for loading all of the dependencies, processing the request and sending the response to the browser.
  37. 37. 37 | P a g e 7.3 front controller. Figure 20: Front Controller Diagram 7.4 Codes for login <?php ini_set("display_errors","1"); ini_set("display_startup_errors","1"); set_magic_quotes_runtime(0); include("include/dbcommon.php"); if(@$_POST["a"]=="logout" || @$_GET["a"]=="logout")
  38. 38. 38 | P a g e { session_unset(); setcookie("username","",time()-365*1440*60); setcookie("password","",time()-365*1440*60); header("Location: login.php"); exit(); } if(!@$_SESSION["MyURL"]) session_unset(); include('libs/Smarty.class.php'); $smarty = new Smarty(); $myurl=@$_SESSION["MyURL"]; unset($_SESSION["MyURL"]); $defaulturl=""; $defaulturl="menu.php"; $strMessage=""; if(@$_COOKIE["username"] || @$_COOKIE["password"]) $smarty->assign("checked"," checked");
  39. 39. 39 | P a g e if (@$_POST["btnSubmit"] == "Login") { if(@$_POST["remember_password"] == 1) { setcookie("username",postvalue("username"),time()+365*1440*60); setcookie("password",postvalue("password"),time()+365*1440*60); $smarty->assign("checked"," checked"); } else { setcookie("username","",time()-365*1440*60); setcookie("password","",time()-365*1440*60); $smarty->assign("checked",""); } // username and password are stored in the database $conn=db_connect(); $strUsername = (string)postvalue("username"); $strPassword = (string)postvalue("password"); $sUsername=$strUsername; $sPassword=$strPassword; $rstemp=db_query("select * from `admin` where 1=0",$conn); if(FieldNeedQuotes($rstemp,$cUserNameField)) $strUsername="'".db_addslashes($strUsername)."'"; else $strUsername=(0+$strUsername);
  40. 40. 40 | P a g e if(FieldNeedQuotes($rstemp,$cPasswordField)) $strPassword="'".db_addslashes($strPassword)."'"; else $strPassword=(0+$strPassword); $strSQL = "select * from `admin` where ".AddFieldWrappers($cUserNameField). "=".$strUsername." and ".AddFieldWrappers($cPasswordField). "=".$strPassword; if(function_exists("BeforeLogin")) if(!BeforeLogin(postvalue("username"),postvalue("password"))) $strSQL="select * from `admin` where 1<0"; $rs=db_query($strSQL,$conn); $data=db_fetch_array($rs); if($data && @$data[$cUserNameField]==$sUsername && @$data[$cPasswordField]==$sPassword) { $_SESSION["UserID"] = postvalue("username"); $_SESSION["AccessLevel"] = ACCESS_LEVEL_USER; $_SESSION["GroupID"] = ""; if(function_exists("AfterSuccessfulLogin")) AfterSuccessfulLogin(); if($myurl) header("Location: ".$myurl); else header("Location: ".$defaulturl); return; } else
  41. 41. 41 | P a g e { if(function_exists("AfterUnsuccessfulLogin")) AfterUnsuccessfulLogin(); $strMessage = "Invalid Login"; } } $_SESSION["MyURL"]=$myurl; if($myurl) $smarty->assign("url",$myurl); else $smarty->assign("url",$defaulturl); if(@$_POST["username"] || @$_GET["username"]) $smarty- >assign("value_username","value="".htmlspecialchars(postvalue("username"))."""); else $smarty- >assign("value_username","value="".htmlspecialchars(refine(@$_COOKIE["username"]))."""); if(@$_POST["password"]) $smarty->assign("value_password","value="".htmlspecialchars(postvalue("password"))."""); else $smarty- >assign("value_password","value="".htmlspecialchars(refine(@$_COOKIE["password"])).""");
  42. 42. 42 | P a g e if(@$_GET["message"]=="expired") $strMessage = "Your session has expired. Please login again."; $smarty->assign("message",$strMessage); $smarty->display("login.htm"); ?> FIGURE 21: CODES FOR LOGIN 705 Code for connecting to the database <?php function db_connect() { global $host,$user,$pwd,$errstr,$sys_dbname,$port; $strhost=$host; if($port && $port!=3306) $strhost=$strhost.":".$port; $conn = mysql_connect($strhost,$user,$pwd); if (!$conn || !mysql_select_db($sys_dbname,$conn)) { trigger_error(mysql_error(), E_USER_ERROR); } return $conn; }
  43. 43. 43 | P a g e function db_close($conn) { return mysql_close($conn); } function db_query($qstring,$conn) { if(!($ret=mysql_query($qstring,$conn))) { trigger_error(mysql_error(), E_USER_ERROR); } return $ret; } function db_exec($qstring,$conn) { return db_query($qstring,$conn); } function db_pageseek($qhandle,$pagesize,$page) { db_dataseek($qhandle,($page-1)*$pagesize); } function db_dataseek($qhandle,$row)
  44. 44. 44 | P a g e { mysql_data_seek($qhandle,$row); } function db_numrows($qhandle) { // return only if qhandle exists, otherwise 0 if ($qhandle) { return @mysql_numrows($qhandle); } else { return 0; } } function db_result($qhandle,$row,$field) { return @mysql_result($qhandle,$row,$field); } function db_affected_rows($qhandle) { return @mysql_affected_rows(); } function db_fetch_array($qhandle) { return @mysql_fetch_array($qhandle,MYSQL_ASSOC); } function db_fetch_numarray($qhandle) {
  45. 45. 45 | P a g e return @mysql_fetch_array($qhandle,MYSQL_NUM); } function db_insertid($qhandle) { return @mysql_insert_id($qhandle); } function db_error() { return @mysql_error(); } function parsevalues($enum) { $values=array(); $i=0; $j=0; $inquot=false; while($i<strlen($enum)) { if($enum[$i]=="'") $nquot=!$inquot; else if(!$inquot && $enum[$i]==',') { $val=substr($enum,$j+1,$i-$j-2);
  46. 46. 46 | P a g e $values[]=str_replace("''","'",$val); $j=$i+1; } $i++; } if($i-$j-2>0) { $val=substr($enum,$j+1,$i-$j-2); $values[]=str_replace("''","'",$val); } return $values; } function db_addslashes($str) { return mysql_escape_string($str); } function db_stripslashes($str) { return stripslashes($str); } function db_addslashesbinary($str) {
  47. 47. 47 | P a g e return "'".mysql_escape_string($str)."'"; } function db_stripslashesbinary($str) { return $str; } /* function IsAutoIncrementField($field) { global $strTableName; if(strpos($_SESSION[$strTableName."_fieldinfo"][$field]["extra"],"auto_increment")===FA LSE) return false; return true; } */ // adds wrappers to field name if required function AddFieldWrappers($strName) { global $strLeftWrapper,$strRightWrapper; if(substr($strName,0,1)==$strLeftWrapper) return $strName; return $strLeftWrapper.$strName.$strRightWrapper;
  48. 48. 48 | P a g e } function AddTableWrappers($strName) { return AddFieldWrappers($strName); } // removes wrappers from field name if required function RemoveFieldWrappers($strName) { global $strLeftWrapper,$strRightWrapper; if(substr($strName,0,1)==$strLeftWrapper) return substr($strName,1,strlen($strName)-2); return $strName; } function RemoveTableWrappers($strName) { return RemoveFieldWrappers($strName); } function db_upper($dbval) { return "upper(".$dbval.")"; } function db_datequotes($val)
  49. 49. 49 | P a g e { return "'".$val."'"; } function db_numfields($lhandle) { return @mysql_numfields($lhandle); } function db_fieldname($lhandle,$fnumber) { return @mysql_fieldname($lhandle,$fnumber); } function db_fieldtype($lhandle,$fname) { for($i=0;$i<db_numfields($lhandle);$i++) if(db_fieldname($lhandle,$i)==$fname) return db_fieldtypen($lhandle,$i); return ""; } function db_fieldtypen($lhandle,$fnumber) { $type=mysql_fieldtype($lhandle,$fnumber); if($type=="blob") { $flags=mysql_fieldflags($lhandle,$fnumber);
  50. 50. 50 | P a g e if(strpos($flags,"binary")===false) $type="text"; } return $type; } function FieldNeedQuotes($rs,$field) { $type=db_fieldtype($rs,$field); $t=strtoupper($type); if($t=="TINYINT" || $t=="SMALLINT" || $t=="MEDIUMINT" || $t=="INT" || $t=="BIGINT" || $t=="YEAR" || $t=="FLOAT" || $t=="DOUBLE" || $t=="DECIMAL" || $t=="NUMERIC" || $t=="REAL" ) return false; return true; } /* function db_fieldnull($rs,$i) { $flags=mysql_field_flags($rs,$i); if(strpos($flags,"not_null")===false)
  51. 51. 51 | P a g e return true; return false; } function db_fieldlen($rs,$i) { return mysql_field_len($rs,$i); } */ /* function IsBinaryType($t) { $type=strtoupper($t); if($type=="TINYBLOB" || $type=="BLOB" || $type=="MEDIUMBLOB" || $type=="LONGBLOB") return true; return false; } function IsDateFieldType($stype) { $type=strtoupper($stype); if($type=="DATE" || $type=="DATETIME" || $type=="TIME" || $type=="TIMESTAMP") return true;
  52. 52. 52 | P a g e return false; } function IsCharType($stype) { $type=strtoupper($stype); if($type=="STRING" || $type=="CHAR" || $type=="VARCHAR" || $type=="TEXT" || $type=="ENUM" || $type=="SET") return true; return false; } function IsTextType($type) { if(strtoupper($type)=="TEXT") return true; return false; } function GetTableInfo() { global $strTableName,$conn; $strSQL = "SHOW Columns from ".AddTableWrappers($strTableName); $rs = db_query($strSQL,$conn); $_SESSION[$strTableName."_fieldinfo"]=array(); while($data=db_fetch_array($rs)) {
  53. 53. 53 | P a g e $_SESSION[$strTableName."_fieldinfo"][$data["Field"]] = array(); $f = & $_SESSION[$strTableName."_fieldinfo"][$data["Field"]]; $type=$data["Type"]; // remove type modifiers if(substr($type,0,4)=="tiny") $type=substr($type,4); else if(substr($type,0,5)=="small") $type=substr($type,5); else if(substr($type,0,6)=="medium") $type=substr($type,6); else if(substr($type,0,3)=="big") $type=substr($type,3); else if(substr($type,0,4)=="long") $type=substr($type,4); if(substr($type,0,4)=="enum") { $f["values"]=parsevalues(substr($type,5,strlen($type)-6)); $f["type"]="enum"; } else if(substr($type,0,3)=="set") { $f["values"]=parsevalues(substr($type,4,strlen($type)-5)); $f["type"]="set"; } else { if($pos=strpos($type," ")) $type=substr($type,0,$pos); // parse field sizes if($pos=strpos($type,"(")) { if($pos1=strpos($type,",",$pos))
  54. 54. 54 | P a g e { $f["size"]=(integer)substr($type,$pos+1,$pos1-$pos-1); $f["scale"]=(integer)substr($type,$pos1+1,strlen($type)-$pos1- 2); } else { $f["size"]=(integer)substr($type,$pos+1,strlen($type)-$pos-2); $f["scale"]=0; } $type=substr($type,0,$pos); } $f["type"]=$type; } $f["extra"]=@$data["Extra"]; $f["key"]=@$data["Key"]; $f["default"]=@$data["Default"]; $f["null"]=@$data["Null"]; } } */ ?> Figure 22: codes for connecting to database
  55. 55. 55 | P a g e CHAPTER 8 SYSTEM TESTING In this chapter we look at system testing undertaken on this system(Good church finder) 8.0 TEST PLAN Scope The document provides the test methods and procedure for the church finder Management System.
  56. 56. 56 | P a g e User Interface Test Code 1 Test Item Look and Feel of the UI for the system Test Purpose To ascertain if the system’s user interface i.e from the login page and all other pages, is user friendly and presentable Prerequisite None Test Procedures Look at all pages Expected Result The UI should be presentable to the specific users. Note:this part partly work Test Result Pass [ ]; Partly pass [ok ]; Fail [ ]; Not- tested [ ] Figure 23: test table for user interface adminTest Code 2 Test Item Creating account Test Purpose To ensure that Admin can be created using form and add records Prerequisite Login details Test Procedures 1. Log in as Admin 2. Enter data in form 3. View created records Expected Result Specification should be created and stored and alert message showing done Note: this part works well Test Result Pass [ ok]; Partly pass [ ]; Fail [ ]; Not- tested [] Figure 24: test table for admn
  57. 57. 57 | P a g e CHAPTER 9: PROFESSIONALISM AND ETHICAL ISSUES. The British computer society BCS in short is a professional body responsible for setting rules and professional standards to direct the behaviors of IT professional in the UK. There are four BCS code of conduct section namely:  Public interest: system developer should work to benefits the public interest.  Professional competence and integrity: the company or person should not claim any level of competence that they do not possess.  Duty to relevant authority: compliance with the relevant authority instruction and the independent bodies should be considered.  duty to the profession: encourage and support fellow member in their professional development. Share knowledge and understanding of IT.  Legal issues, social issues, ethical issues, privacy and security were looked at, while developing this project. The system will be dealing with peoples’ personal information so it is just good profession practices to look at privacy etc. the personal information collected should be protected at all cost. CHAPTER 10 CONCLUSION The critical evaluation of the project is highlighted in this chapter. Future recommendation, strengths and weaknesses of the project also the lessons learnt in the course of this project development. 10.0 Challenges Working on this project was not easy. I faced a number of challenges while working on this project some of these challenges are: Time, at my place of work I did not have any annual leave days left for me to take and the people on contract (us) do not have study leave. So working on this project was not easy at all. Supervision for this projectwas put on Wednesday’s 14:00 hours that made it very difficult for me to leave work and go for consultation classes. But it was not my first time doing this course
  58. 58. 58 | P a g e (final year project) so I used the knowledge from the previous consultation classes I attended the from the last semester. At work in our department from July to December we work late due to the number of transaction in these months. Knocking off usually is 20;30 to 21:00 reaching home very tied. But with the help of red bull I have managed to do this project to this far. Load shedding of electricity also that is going on in Zambia made it very difficult for me to do a good research nevertheless by the grace of God I did want I would. 10.1 Strengths of the system  Security features are working well (login)  All in house feature are working very well(add a record, delete, search, sort, and edit record)  The system as it is, is able to do the work it was designed to do. (help people find a good church near them in Zambia.  I finished on time because a right methodology was applied. I delivered on time. 10.2 Weaknesses of the system. End users’ feedback suggested that the system would be improved in terms of attractiveness, more pictures and other multi-media materials. There need to enlarge the font size and the table size. 10.3 Future developments Due to the limited time that I had to do this project I used the MosCow prioritization, only the must have, should and could have been developed. They are a lot of features I have left. With research this project can be improved on and deployed for real life implementation more robust management modules need to be added. 10.4 Lessons learnt I have learnt of more methodologies than the ones I knew before this project. Time management is the biggest lesson I lean each time I am working on such projects. I also leant that all the course that we do during the course of this degreeprogramme are very important are needed when working on projects like this.
  59. 59. 59 | P a g e List of references (bibliography) 1) 1.Connolly T, Begg C (2003) Database Systems 5th Edition, Pearson Education Limited, Harlow, England. 2) 2. Deitel P, Deitel H, Deitel A (2012) Internet and World Wide Web how to program 5th Edition, Pearson Learning 3) Michaels, David R. "Listening Benefits of Internet Radio Stations". Yahoo Voices. Retrieved 2007-10-28. 4) Richards, Keith. Agile project management: running PRINCE2 projects with DSDM Atern. The Stationery Office, 2007. 5) DSDM Consortium. "DSDM Atern: the Handbook." DSDM Consortium (2008). 6) The DSDM Agile Project Framework manual, 2014 pages 4, 16 7) Moran, Alan (2015). Managing Agile: Strategy, Implementation, Organisation and People. Springer Verlag. ISBN 978-3-319-16262-1. 8) project management tools 9) "Terms and Conditions of Community Membership" (PDF). DSDM Consortium. Retrieved 7 March 2013. 10)
  60. 60. 60 | P a g e APPENDIX A - PROJECT PROPOSAL Undergraduate Final Year Project Proposal Implementation of a Good Church Finder in Zambia for evangelical fellowship of Zambia using a dynamic bulletin board web site (web portal). NAME: Owen MusengeMuzi PROGRAMME: BSc (HONS) COMPUTING STUDENT ID: 000793120 Supervisors: Dr. Jere Mr. Mfune Due date 20/11/2015 A formal proposal for a dissertation that will be submitted in partial fulfillment of the University of Greenwich Bachelor of Science Degree in Computing
  61. 61. 61 | P a g e 1 Overview Evangelical Fellowship of Zambia (EFZ) is a Christian umbrella organization representing Christian denominations, local congregations, mission agencies and para-church organizations working together in providing a united effort for the holistic transformation of Zambia. EFZ achieves this objective through serving the member churches and through direct humanitarian initiatives and sustainable interventions at community level. EFZ carries out various programs in education, health, HIV/AIDS, OVC support, livelihoods, agriculture and food security, entrepreneurship, advocacy and water and sanitation etc. This means that EFZ staffs spend a lot of their time in the field working with communities in various projects. The participating groups include volunteers, community leaders and members of collaborating agencies with children as the primary beneficiaries of a number of programs. In working with the poor and marginalized, EFZ staffs, volunteers and partners regularly come into contact with children. We recognize the weakness and vulnerability of children to abuse and EFZ seeks to prevent this problem through this child protection policy. In this Action Plan, a child is defined as a person under the age of 18 according to the United Nations International Children’s Fund (UNICEF). EFZ staff shall cooperate at all times in the implementation of this policy when carrying out work that involves children or when they come into contact with them. This will ensure the safety, well-being and protection of the children. EFZ shall have one full time staff to lead on child protection and provide awareness of this policy and guidelines among other staff in enforcing it. The officer will take a leading role in sharing the policy with the community leaders in which the fellowship is implementing its development activities. Child protection policy will also be mainstreamed during project formulation to ensure that the needs of the children are addressed. EFZ will ensure that all children, regardless of their age, culture, disability, gender, language, racial origin or ethnicity, physical condition or religious beliefs have the right to protection from abuse at all times. All suspicions and allegations of abuse that are either discovered or reported to EFZ management will be taken seriously and acted upon swiftly and appropriately. 2 Aims To create a dynamic bulletin website system for efz to aid people in Zambia find a good church (a bible believing church registered with registrar of societies and efz).
  62. 62. 62 | P a g e 3 KEY PHRASES:  Church  Pastors  Bishops  Bible  Dynamic  Bulletin  Jesus  Bulletin  Website 4 Objectives 4.1 To analyze current system in use at EFZ Activities: 4.1.1 Hold interview with the stakeholders [1.0 day] 4.1.2 Send questionnaires [2.0 days] 4.1.3 Interview the system Administrator [2.0 days] 4.1.4 Read the article about true churches. [3.0 days] Deliverables: User Requirements and Specifications document 4.2 To review similar systems Activities: 4.2.1 Check the exists of similar systems [2.0 days] 4.2.2 Read Literature on existing systems [3.0 days] 4.2.2 Select features to incorporate new system [1.0 day] Deliverables: section report 4.3 To select a methodology Activities: 4.3.1 Check the existing system development methodologies [2.0 days] 4.3.2 Read Literature of different methodologies [3.0 days] 4.3.3 Compare the Software development Methodologies 4.3.4 Select an existing methodology for the new system [1.0 day] Deliverables: section report 4.4 To design and implement a the new system Activities: 4.4.1 Select hardware and software specification [2.0 days] 4.4.2 Read Literature of different designs [3.0 days] 4.4.2 Select an existing design to system [1.0 day] Deliverables: section report 4.5 To design and implement a database system Activities: 4.5.1 Select appropriate software platforms [2.0 days] 4.5.2 Draw up ERD for Database [2.0 days] 4.5.2 Create Database [2.0 day] Deliverables: database design document and Completed Database 4.6 To evaluate the new System Activities: 4.6.1 Draw up test plan [1.0 days] 4.6.2 Carry out testing [3.0 days] 4.6.3 Correct any errors and retest [3.0 days]
  63. 63. 63 | P a g e Deliverable: Test Plan Test Results Final Product Report 5 Courses Relevant to Project Database Design and Implementation E-Commerce And many more 6 Legal, Social, Ethical and Professional Issues Legal The Data Protection Act 1998 (DPA) is a United Kingdom Act of Parliament which defines UK law on the processing of data on identifiable living people. The Act defines eight data protection Principles. It also requires companies and individuals to keep personal information to them, secure, safe and for the intended purpose only. Social When the project is completed it will obviously have resistance by the people to change. People are used to doing their business in a manual way with the introduction of a new electronic way. The system will complement the work force and not charge the way of doing business. Ethical The privacy of the individual security of data and information should be accuracy of data and Information with regard changing nature of work appropriate information use health and safety law. The work ethics will apply in the system. The non-disclose of information without the rights clears level will be maintained. Professional A professional issue is the conduct defines the standard. The application will be an accurate and non-bias to everyone that has the right details. The system will be able to maintain the high level of professional level. 7 Require Resources  EFZ Employees  Systems Manager  Dreamweaver  Windows 7 32/64 bit operating systems  Laptop  Internet  Internet browser  MYSQL Database  Wamp  EFZ Website 8 PLANNING The success or failure of project depends on how well the project is done. This project has to complete within 60 Days of the start date. See table below for details.
  64. 64. 64 | P a g e Figure 1 Schedule of Work No TASK START DATE END DATE DURATION 1 Data collection and Research 24th July 2015 4st Aug 2015 12 20 3 Requirement Analysis 6nd Aug 2015 18th Aug 2015 10 12 5 System Requirement Specification 4th Sep 2015 7th Sep 2015 3 6 7 System Analysis 8th Sep 2015 18th Sep 2015 10 8 System Design 20th Sep 2015 30th Sep 2015 10 9 System Coding 1st Oct 2015 16th Oct 2015 16 10 Implementation 18th Oct 2015 27th Oct 2015 9 11 Testing 30th Oct 2015 6th Nov 2015 7 12 Evaluation Of The Product 8th Nov 2015 12th Nov 2015 4 13 14 Production Of Project Report 15th Nov 2015 20th Nov 2015 5 15 16 Project Close Up and Submission 20th Nov 2015 20th Nov 2015 1 17 18 9 INITIAL REFERENCES 1.Connolly T, Begg C (2003) Database Systems 5th Edition, Pearson Education Limited, Harlow, England. 2. Deitel P, Deitel H, Deitel A (2012) Internet and World Wide Web how to program 5th Edition, Pearson Learning 3. Michaels, David R. "Listening Benefits of Internet Radio Stations". Yahoo Voices. Retrieved 2007-10-28.
  65. 65. 65 | P a g e APPENDIX B MEMBERS Evangelical Fellowship of Zambia member churches and organizations: 1. Action for Empowerment 2. African Continent Mission 3. Agape International Church 4. Aglow International 5. Angles Gospel Ministries International 6. AOG Aids Desk 7. Apostolic Breakthrough 8. Arise Ministries International 9. Assemblies of God in Zambia 10. Auka Foundation 11. Avondale Christian Church 12. Balm of Gilead Ministries 13. Baptist Fellowship of Zambia 14. Baptist Mission Zambia 15. Baptist Theological Seminary of Zambia 16. Beit Cure Hospital 17. Beteli Mission Ministry Centre (BMMC) 18. Bethany Bible Church Association in Zambia 19. Bethel Baptist Church 20. Bethel Ministries and Assemblies 21. Bethel Restoration Christian Church 22. Bible Gospel Church in Africa 23. Bible Life Ministries
  66. 66. 66 | P a g e 24. Bibleway Ministries Int'L 25. Blessed Christ Ministries 26. Bread of Life Church International 27. Brethren in Christ 28. Bridge International 29. Bridge of Faith Tabernacle 30. Calvary Christian Church 31. Calvary Holy Tabernacle 32. Campus Crusade for Christ 33. Capital Christian Ministries 34. Child Evangelism Fellowship 35. Children's Home Center for Africa 36. Children of the Most High 37. Christ Co-Workers Fellowship 38. Christ Gospel Church Fellowship 39. Christ Liveth Mission 40. Christ Reconciliation Ministry 41. Christian Celebration 42. Christian Alliance for Children 43. Christian Bible Church 44. Christian Community Church 45. Church Family Mission 46. Church of Apostles 47. Church of Christ Matero 48. Church of God Zambia 49. Church of God of Prophecy
  67. 67. 67 | P a g e 50. Church of God World Mission 51. Connerstone City Church 52 Crown of Fire Ministries 53. Deborah Ministries International 54. Deeper Life Bible Church, Lusaka 55. Deliverance Church in Zambia 56. Deliverance Church Ministries to all Nations 57. Destiny Fellowship Inc 58. Disciple of Christ Church 59. Dorothea Mission 60. Dove Christian Fellowship Church 61. Dynamic Soul Saving Ministries 62. Elohim Ministries 63. Emmanuel Fellowship Ministry Int. 64. Eternal Gospel Ministries 65. Envision Outreach Ministries 66. Faith Clinic School of Healing &Counseling 67. Faith in Action Development Foundation 68. Faith Orphanage Foundation 69. Family Life Mission 70. Fellowship Divine Salvation 71. Fellowship of People of Destiny 72. Fishers of Men Ministry 73. Flames of Hope Ministries 74. Flamming Fire of God Ministries 75. Fountain of Life Church
  68. 68. 68 | P a g e 76. Free Methodist Church 77. Full Proof Mission 78. Garden Central Baptist Church 79. Get Ministries International 80. Gift from God Ministries 81. Glory Baptist Church 82. Golden Gate Bible Ministries 83. Good Tidings Ministries 84. Gospel Church (Pentecostal) 85. Gospel Evangelist Team 86. Gospel Outreach Centre 87. Gospel Training Institute 88. Grace Christian Centre 89 Grace Church in Zambia 90 Grace Ministries Mission International 91. Grace Pentecostal Church and Ministries 92. GCPDO Chipata 93. Harvest Ministries 94. Heart of Mercy Ministries 95. Healthcare Christian Fellowship 96. Higher Dimension ECV.Centre 97. His Glory Ministries International 98. HIV/AIDS Technical Support Found 99. Holy Hill Evangelist Ministries 100. House of Joy for Human Care 101. Hurn Zambia
  69. 69. 69 | P a g e 102. Immanual Mercy Outreach Ministries 103. Immanuel's project 104. In-Community Care for Orphans 105 Integrity Worship Center 106. International Baptist Church Woodlands 107. International Needs 108. JabulaNewlife Ministries Intr. 109. Jack Baptist Church 110. Jesus Army 111. Jesus Cares Ministries 112. Jesus Christ Ministries 113. Jesus World Saviour Ministries 114. Jesus Worship Center 115. Joyful Bible Church 116. Jubilee Center 117. Kabwe Chapel 118. Kafue ( Church of God Prophecy) 119. Kamakuti Bible Church 120. Kansas Baptist Church 121. KazaChildrens Home 122. Kingsway Destiny Ministries 123. Kumbaya Ministries 124. KutemwaNdiKusamala 125. Lamb of God Christian Fellowship 126. Latter Rain Ministries 127. Liberty Christian Centre
  70. 70. 70 | P a g e 128. Life Trust 129. Buyantanshi Open Christian Community Schs. 130. Lifeline Community Fellowship Lusaka 131. Living Gospel World Mission 132. Living Rock Fellowship 133. Lookout Centre International 134. Lord's Harvest Ministries 135. Marriage Enrichment Mininstry 136. Matero Church of Christ 137. Matthew 25 ministries international 138. Mennonite Central Committee 139. Mercy Ministries International 140. Messiah Ministries Organisation 141. Miracle Life Family Church 142. Missionary Ventures Zambia 143. Mpongwe Baptist Church 144. Narrow Way Christian Fellowship 145. Navigators Zambia 146. Nehemiah's House of Favour 147. New Beginnings Christian Centre 148. New Birth Ministries 149. New City Of David 150. New Convenant Churches 151. New Divine Church 152. New Hope Bible Church 153. New Life Christian Centre
  71. 71. 71 | P a g e 154. Nyamphande Orphanage 155. New Life Tabernacle 156. Oasis Fellowship 157 Onennss Church International 158 PAOG 159. Pentecostal Good News Bible Church 160. Pentecostal Holiness Church 161. Pentecostal Holiness Church Ngombe Assembly 162. Pilgrim Weslyan Church 163. Praise Christian Centre 164. Prisons Care and Councelling Association 165. Prison Fellowship of Zambia 166. Pro-Christo Global Mission Zambia 167. Queen Beracal Community School 168. Redeemed Baptist Church 169. Redeemed Christian Church of God 170. Redemption Evangelistic 171. Reformed Church in Zambia 172. Renewed Hope Children's Home 173. Repentance Gospel Ministries 174. Restoration Christian Youth Ministry 175. Revival Movement Mission Church Ministries Int 176. River of Life Tabernacle 177. Rivers of Joy Fellowship 178. Royal Family Church
  72. 72. 72 | P a g e 179. Rural Outreach Ministries 180. Salvation Army 181. Scripture Gift Mission Zambia 182. Scripture Union Zambia 183. Shepherd Pentecostal Church 184. Sowers International Zambia 185. Streams of Life Ministries 186. Successful Life Word Ministries 187. Sunnyside Baptist Church 188. Tache Home 189. TCCA 190. Teaching Training and Sending Ministries 191. Tehillah Church Praise 192. The Church of Pentecost 193. The Continuing Anglican Communion 194. The Living Gospel World 195. Tower of Hope Christian Church 196. Trinity Foundation 197. Trinity Ministries 198. True Christian Youth Church 199. True Religion Evangelistic Ministry 200. Triumphant Entry Ministries 201. Turning point Media Ministries 202. Twabuuka Development 203. United Apostles Pentecoast Church 204. United Apostolic Faith Church
  73. 73. 73 | P a g e 205. Upper room Bible Church 206. Vine Life Church 207. Vineyard Christian Center 208 Vineyard Church L/Stone 209. Voice of the Last Days Ministry 210. Word of Faith Assemblies 211. Word of Faith Soul Winning Min 212. Word of Life Church in Zambia 213. Word Teach Evangelistic Ministries 214. World Baptist Evangelist Ministries 215. World Mission Agency Winners Chapel 216. Worldwide Lighthouse Ministries 217. Yaweh Global Ministries 218. Youth for Christ 219. Youth Ministries 220. Youth with a mission 221. ZAFES 222. Zambia Assemblies of God Africa 223. Zambia Baptist Association 224. Zambia Evangelistic Association 225. Zambia Nurses Fellowship
  74. 74. 74 | P a g e APPENDIX C LIST OF ABBREVIATIONS, ACRONYMS AND DEFINITION. 1. Server: refers to host machine. 2. EFZ: Evangelical Fellowship of Zambia 3. Client: refers to the user of the system. 4. Unique key: used to differentiate entries in a database. 5. Boolean : a true/ false notation 6. AJAXNo, not the cleaning products. Asynchronous JavaScript And XML is a web programming technique in JavaScript that enables a portion(s) of a web page to be reloaded from the server without the whole page being reloaded. The data is sent to and from the server using either XML or JSON. What are XML and JSON? Fear not, they’re covered here too. 7. ASCII:The American Standard Code for Information Interchange is one of many character encoding schemes. A character encoding scheme assigns binary codes to characters such as letters, numbers and symbols, so that computers have a way of reading text that we write. For more information on character encoding, we recommend this article by David C. Zentgraf.
  75. 75. 75 | P a g e 8. ASP Active Server Pages was a back-end technology by Microsoft for generating dynamic web pages, which has been replaced now by ASP.NET. ASP files have the file extension .asp. 9. ASPX: aspx is the file extension for files built on Microsoft’s ASP.NET web framework. 10. CGI Common Gateway Interface is a back-end scripting system for websites. 11. CSS Cascading Style Sheets are files which contain a list of rules for how a website should be displayed. CSS controls things like fonts, colours, layout and spacing. 12. CSS3As you may have guessed, CSS3 is meant to mean the third ‘generation’ of CSS. It’s really more of a buzzword than an official version number, and refers to the new abilities added to CSS in recent times, such as animation and photo filters. 13. CSV Comma Separated Values is a format for storing tabular data. 14. DNS:The Domain Name System is what links the domain name you type into your browser address bar, to the IP address where that site is really located. An analogy for explaining DNS is that it serves as the ‘phone book’ of the internet. 15. DOM:The Document Object Model is an important concept in JavaScript. It’s the system JavaScript uses to access the hierarchy of HTML elements on a web page. 16. DTD:The Document Type Definition is a line or two of code at the top of a mark-up language document, like HTML or XML, which defines the language and standard that the document is adhering to. A doctype often looks like this, and is often forgotten: <! DOCTYPE html> 17. ECMAScriptECMAScript is the family of scripting languages to which JavaScript belongs, as well as other languages such as Action Script, used in Adobe Flash. ECMA used to stand for the European Computer Manufacturer’s Association, but it’s no longer considered an acronym. 18. FTP File Transfer Protocol is the system you use for uploading files to a website. 19. GIF Graphics Interchange Format is one of many image formats used on the web. GIFs are unique in that they’re often animated. 20. HTML Hypertext Markup Language is the language that every single web page on the internet is written in. 21. DHTML Dynamic Hypertext Markup Language is somewhat of an old-fashioned term, but it refers to the use of HTML, CSS and JavaScript to create a dynamic, interactive website, as opposed to a static one. 22. HTML5Like CSS3, HTML5 is more of a buzzword than a formal ‘version’ of HTML. It normally refers to the latest specification document and the new abilities that browsers have added to HTML, such as native embedding of video and audio. 23. PHTML.phtml was a file extension used for PHP files, but has fallen out of use. These days the only extension we need to worry about is .php. 24. XHTML Extensible Hypertext Markup Language is a special version of HTML where the document gets read by the browser as XML instead of HTML. 25. An XHTML file has the same .html file extension as normal HTML, but uses a different doctype. These days, you don’t need to worry about a special XHTML doctype, you should use<!DOCTYPE html> instead. 26. HTTP Hypertext Transfer Protocol is the system used by browsers to download web pages and display them on-screen. 27. HTTPS Hypertext Transfer Protocol (Secure) is a secured version of HTTP used by many websites handling personal information, such as banks. 28. IDEAn Integrated Development Environment is software designed for programmers to write, debug and test their code.
  76. 76. 76 | P a g e 29. IEYou know what Internet Explorer is, but you may not know that it’s often referred to as IE for short. 30. JPEG / JPGThis is a file format for images, developed by the Joint Photographic Experts Group. It’s designed for photos and not computer-generated graphics and uses file extensions .jpeg or.jpg. 31. JSAgain, you know what JavaScript is, it’s a front-end scripting language, but it’s also called JS for short. 32. JSON JavaScript Object Notation, pronounced Jason, is a format for storing data. It’s based on JavaScript, but can be used by other languages too. 33. NaN Not a Number is the error you get in a programming language when you try to calculate something like "potato" + 100. 34. OOP Object Oriented Programming is a programming paradigm which is based around the concepts of objects and classes. 35. OSS Open Source Software is software where the source code is freely available for anyone to read and modify. An example of open source software is WordPress. 36. FOSS / FLOSS Free and Open Source Software, or Free, Libre Open Source Software is open source software that’s also free. 37. PDF Portable Document Format is a document format that preserves formatting, often used on the web. 38. PHPA server scripting language originally called Personal Home Page, but renamed to PHP Hypertext Pre-processor. PHP is the most widely used server language on the web. 39. PNG Portable Network Graphics is another image file format used on the web. 40. RoR Ruby on Rails is a popular framework written in the Ruby programming language. 41. SEO Search Engine Optimization is the use of certain on-site and off-site strategies to increase search engine traffic to a website. 42. SQL Structured Query Language is a programming language for creating, editing and deleting web databases. It’s the only language of its kind and is supported by all web database software. 43. MSSQL Microsoft SQL Server is web database software designed for use with ASP.NET. 44. MySQLMySQL is open source web database software designed for use with PHP. 45. SVG Scalable Vector Graphics is a format used a lot on the web for graphics that can be scaled to any size without becoming ‘pixelated’. SVG files are written in the XML language. To learn more about SVG, try this SVG tutorial. 46. TLDA Top Level Domain is a domain name extension such as .com, .net or .org. 47. UI User Interface is the design and appearance of a program or software. 48. URL / URIWhile a Uniform Resource Locator and a Uniform Resource Identifier are not the same thing technically, both are used to refer to the address of a web page. 49. UTF Unicode Transmission Format is another character encoding scheme, more powerful than ASCII. For more information on character encoding, we recommend this article by David C. Zentgraf. 50. UX User Experience is a concept closely related to UI, and is concerned more with the way a user interacts with a program or website. 51. WWW / W3Who doesn’t know that WWW stands for World Wide Web? Well, if you didn’t, you do now. W3 is a bit less common though, also standing for World Wide Web. 52. W3CThe World Wide Web Consortium is the entity that, although it doesn’t own the web, makes important decisions and recommendations regarding it.
  77. 77. 77 | P a g e 53. WYSIWYGA what you see is what you get program is an editor that lets you bypass writing HTML code and simply design a web page as you see it. It writes the HTML itself, however a computer will never be able to write code as well as you can, so it’s best not to use one. 54. XML Extensible Markup Language is a format based on HTML which is used to store data in a hierarchical fashion. It’s a ubiquitous format used both online and offline. APPENDIX D SYSTEM CODES <?php session_cache_limiter("none"); session_start(); $host="localhost"; $user="root"; $pwd=""; $port=""; $sys_dbname="churchfinder";
  78. 78. 78 | P a g e $cCharset = "Windows-1252"; header("Content-type: text/html; charset=".$cCharset); $dDebug=false; $dSQL=""; $tables_data=array(); include("include/locale.php"); include("include/events.php"); include("include/commonfunctions.php"); include("include/dbconnection.php"); define("FORMAT_NONE",""); define("FORMAT_DATE_SHORT","Short Date"); define("FORMAT_DATE_LONG","Long Date"); define("FORMAT_DATE_TIME","Datetime"); define("FORMAT_TIME","Time"); define("FORMAT_CURRENCY","Currency"); define("FORMAT_PERCENT","Percent"); define("FORMAT_HYPERLINK","Hyperlink"); define("FORMAT_EMAILHYPERLINK","Email Hyperlink"); define("FORMAT_FILE_IMAGE","File-based Image");
  79. 79. 79 | P a g e define("FORMAT_DATABASE_IMAGE","Database Image"); define("FORMAT_DATABASE_FILE","Database File"); define("FORMAT_FILE","Document Download"); define("FORMAT_LOOKUP_WIZARD","Lookup wizard"); define("FORMAT_PHONE_NUMBER","Phone Number"); define("FORMAT_NUMBER","Number"); define("FORMAT_HTML","HTML"); define("FORMAT_CHECKBOX","Checkbox"); define("FORMAT_CUSTOM","Custom"); define("EDIT_FORMAT_NONE",""); define("EDIT_FORMAT_TEXT_FIELD","Text field"); define("EDIT_FORMAT_TEXT_AREA","Text area"); define("EDIT_FORMAT_PASSWORD","Password"); define("EDIT_FORMAT_DATE","Date"); define("EDIT_FORMAT_TIME","Time"); define("EDIT_FORMAT_RADIO","Radio button"); define("EDIT_FORMAT_CHECKBOX","Checkbox"); define("EDIT_FORMAT_DATABASE_IMAGE","Database image"); define("EDIT_FORMAT_DATABASE_FILE","Database file"); define("EDIT_FORMAT_FILE","Document upload"); define("EDIT_FORMAT_LOOKUP_WIZARD","Lookup wizard"); define("EDIT_FORMAT_HIDDEN","Hidden field"); define("EDIT_FORMAT_READONLY","Readonly"); define("EDIT_DATE_SIMPLE",0);
  80. 80. 80 | P a g e define("EDIT_DATE_SIMPLE_DP",11); define("EDIT_DATE_DD",12); define("EDIT_DATE_DD_DP",13); define("MODE_ADD",0); define("MODE_EDIT",1); define("MODE_SEARCH",2); define("MODE_LIST",3); define("MODE_PRINT",4); define("MODE_VIEW",5); define("LOGIN_HARDCODED",0); define("LOGIN_TABLE",1); define("ADVSECURITY_ALL",0); define("ADVSECURITY_VIEW_OWN",1); define("ADVSECURITY_EDIT_OWN",2); define("ADVSECURITY_NONE",3); define("ACCESS_LEVEL_ADMIN","Admin"); define("ACCESS_LEVEL_USER","User"); define("ACCESS_LEVEL_GUEST","Guest"); define("DATABASE_MySQL","0"); define("DATABASE_Oracle","1"); define("DATABASE_MSSQLServer","2");
  81. 81. 81 | P a g e define("DATABASE_Access","3"); define("DATABASE_PostgreSQL","4"); $strLeftWrapper="`"; $strRightWrapper="`"; $cLoginTable = "admin"; $cUserNameField = "user"; $cPasswordField = "userid"; $cUserGroupField = ""; $cEmailField = ""; $cFrom = ""; if($cFrom) ini_set("sendmail_from",$cFrom); set_error_handler("error_handler"); ?>
  84. 84. 84 | P a g e Pastor Eddie Chansa Lifeline Community Fellowship Tel: +260 211 285018 Email: / COMMITTEE MEMBER Bishop Edgar Ng’ambi Praise Christian Centre Tel: +260 211 283110 Email: COMMITTEE MEMBER Bishop Joshua H. K. Banda Northmead Assemblies of God Tel: +260 211 239109 Email: COMMITTEE MEMBER Rev. Thomas K. Lumba IN – Network Zambia Tel: +260 211 292663/292786 Email: CHAIRMAN Bishop Joe Imakando Bread of Life Church Int’l Tel: +260 211 220188/245287 E-mail: VICE CHAIRMAN Bishop Peter R. Ndhlovu Bible Gospel Church in Africa Tel: +260 211 214345 E-mail: COMMITTEE MEMBER Pastor John Amoni Deeper Life Bible Church Tel: +260 211 224544 Email:
  85. 85. 85 | P a g e COMMITTEE MEMBER Bishop John Ng’andu Grace Ministries Mission Tel: +260 211 225235 E-mail: EXECUTIVE DIRECTOR Rev. PukutaMwanza Evangelical Fellowship of Zambia Tel: +260 211 292663/292786 Email: APPENDIX F QUESTIONNAIRE 1. What is efz? a. A church b. A school c. A church member body d. A school for pastors 2. Do false pastors exist? a. Yes b. No c. Maybe d. All of the above 3. Do efz protect the people of Zambia from these false pastors if they exist? a. No b. Yes c. Not sure 4. Do efz have a system in place to help or protect the Zambian from going into these false pastors if efz protects the people? a. No b. Yes c. Not sure 5. Do efz have the power to report to the author any pastors who is a false pastor (taking advantage of the people)? a. Yes b. No
  86. 86. 86 | P a g e APPENDIX G FIGURES Fig 1 DSDM project phase Fig 2 church finder ` Fig 3 a church near you Fig 4 find a church Fig 5 the church of scotland Fig 6 catholic faith find a parish Fig 7 find an evangelical alliance member church Fig 8 user use cases diagram Fig 9 admin use cases diagram Fig 10 E-R ( conceptual schema diagram Fig 11 logical schema diagram Fig 12 admin table Fig 13church table Fig 14 pastor table Fig 15 site map Fig 16 user interface (login page) Fig 17 user interface (list of churches with addresses) Fig 18 usre interface ( pastors’ page) Fig 19 laptop used Fig 20 front controller diagram
  87. 87. 87 | P a g e Fig 21 codes for login Fig 22 codes connecting the database Fig 23 test table for user interfaces Fig 24 test table for admin