Planning and Requirement

download Planning and Requirement

of 6

Transcript of Planning and Requirement

  • 8/2/2019 Planning and Requirement

    1/6

    SYSTEM ANALYSIS

    The various activities involved in the planning and requirement phase were

    Study of MVC framework

    Study of PHP

    Study of Android SDK

    Study of Asset Integrity System

    System Environment

    STUDY OF MVC

    The main aim of the MVC architecture is to separate the business logic and application data

    from the presentation data to the user.

    Here are the reasons why we should use the MVC design pattern.

    1. They are reusable : When the problems recurs, there is no need to invent a new solution,

    we just have to follow the pattern and adapt it as necessary.

    2. They are expressive: By using the MVC design pattern our application becomes more

    expressive.

    1). Model: The model object knows about all the data that need to be displayed. It is model who

    is aware about all the operations that can be applied to transform that object. It only represents

    the data of an application. The model represents enterprise data and the business rules that

    govern access to and updates of this data. Model is not aware about the presentation data and

    how that data will be displayed to the browser.

    2). View : The view represents the presentation of the application. The view object refers to the

    model. It uses the query methods of the model to obtain the contents and renders it. The view is

    not dependent on the application logic. It remains same if there is any modification in the

    business logic. In other words, we can say that it is the responsibility of the of the view's to

    maintain the consistency in its presentation when the model changes.

    3). Controller: Whenever the user sends a request for something then it always go through the

    controller. The controller is responsible for intercepting the requests from view and passes it to

    the model for the appropriate action. After the action has been taken on the data, the controller is

    responsible for directing the appropriate view to the user. In GUIs, the views and the controllers

    often work very closely together.

  • 8/2/2019 Planning and Requirement

    2/6

    Benefits of MVC framework

    1. Separation of concerns:

    - The separation the three components, allows the re-use of the business logic across applications.

    - Multiple User Interfaces can be developed without concerning the codebase

    2. Developer specialization and focus:- The developers of UI can focus exclusively on the UI screens without bogged down with business logic.

    - The developer of Model / business can focus exclusively on the business logic implementations, modifications,

    updations without concerning the look and feel and it has nothing to with business logic.

    3. Parallel development by separate teams:

    - Business logic developers can build the classes, while the UI developers can involve in designing UI screens

    simultaneously, resulting the interdependency issues and time conservation.

    - UI updations can be made without slowing down the business logic process

    - Business logic rules changes are very less that needs the revision / updations of the UI.

    4.Multiple view support

    Due to the separation of the model from the view, the user interface can display multiple views of the same data at

    the same time.

    5.Change Accommodation:

    User interfaces tend to change more frequently than business rules. (different colors, fonts, screen layouts, and levels

    of support for new devices such as cell phones or PDAs) Because the model does not depend on the views, adding

    new types of views to the system generally does not affect the model. As a result, the scope of change is confined to

    the view.

    MVC framework in android

    The MVC pattern is already implemented in android.

    user interface is designed in various XML files by resolution/hardware etc.

    resources is designed in various XML files by locale etc. Extend clases like ListActivity, TabActivity and make use of the XML file by inflaters

    create as many classes as you wish for your model

    Study of PHP

    PHP stands for Hypertext Preprocessor and is a server-side language. This means that

    the script is run on the web server, not on the user's browser, so one need not worry about

    http://developer.android.com/intl/de/guide/topics/ui/index.htmlhttp://developer.android.com/intl/de/guide/topics/resources/index.htmlhttp://developer.android.com/intl/de/reference/android/app/ListActivity.htmlhttp://developer.android.com/intl/de/reference/android/app/TabActivity.htmlhttp://developer.android.com/intl/de/reference/android/view/LayoutInflater.htmlhttp://developer.android.com/intl/de/reference/android/view/LayoutInflater.htmlhttp://developer.android.com/intl/de/reference/android/app/TabActivity.htmlhttp://developer.android.com/intl/de/reference/android/app/ListActivity.htmlhttp://developer.android.com/intl/de/guide/topics/resources/index.htmlhttp://developer.android.com/intl/de/guide/topics/ui/index.html
  • 8/2/2019 Planning and Requirement

    3/6

    compatibility issues. PHP is relatively new (compared to languages such as Perl (CGI) and

    Java) but is quickly becoming one of the most popular scripting languages on the internet.

    You can create dynamic web pages with the PHP scripting language. A dynamicWeb page interacts with the user, so that each user visiting the page sees

    customized information. PHP can also be used to create dynamic web pages thatare generated from information accessed from a database.

    You can embed PHP commands within a standard HTML page.

    Another feature that PHP offers is connectivity to most of the commondatabases. PHP also offers integration with various external libraries, which allowthe developer to do anything from generating PDF documents to parsing XML.

    Study of android sdk

    Android is a software stack for mobile devices that includes an operating system, middleware and key

    applications. The Android SDK provides the tools and APIs necessary to begin developing applicationson the Android platform using the Java programming language.

    Android Architecture

    The following diagram shows the major components of the Android operating system. Each section is

    described in more detail below.

    http://developer.android.com/sdk/index.htmlhttp://developer.android.com/sdk/index.html
  • 8/2/2019 Planning and Requirement

    4/6

    Applications

    Android will ship with a set of core applications including an email client, SMS program, calendar, maps,

    browser, contacts, and others. All applications are written using the Java programming language.

    Application framework

    By providing an open development platform, Android offers developers the ability to build extremely rich

    and innovative applications. Developers are free to take advantage of the device hardware, access

    location information, run background services, set alarms, add notifications to the status bar, and much,

    much more.

    Developers have full access to the same framework APIs used by the core applications. The application

    architecture is designed to simplify the reuse of components; any application can publish its capabilities

    and any other application may then make use of those capabilities (subject to security constraints

    enforced by the framework). This same mechanism allows components to be replaced by the user.

    Underlying all applications is a set of services and systems, including:

    A rich and extensible set of Views that can be used to build an application, including lists, grids, text

    boxes, buttons, and even an embeddable web browser

    Content Providers that enable applications to access data from other applications (such as Contacts), or

    to share their own data

    A Resource Manager, providing access to non-code resources such as localized strings, graphics, and

    layout files

    ANotification Managerthat enables all applications to display custom alerts in the status bar

    AnActivity Managerthat manages the lifecycle of applications and provides a common navigation

    backstack

    Libraries

    Android includes a set of C/C++ libraries used by various components of the Android system. These

    capabilities are exposed to developers through the Android application framework. Some of the core

    libraries are listed below:

    System C library - a BSD-derived implementation of the standard C system library (libc), tuned for

    embedded Linux-based devices

    Media Libraries - based on PacketVideo's OpenCORE; the libraries support playback and recording of

    many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC,

    AMR, JPG, and PNG

    Surface Manager - manages access to the display subsystem and seamlessly composites 2D and 3D

    graphic layers from multiple applications

    LibWebCore - a modern web browser engine which powers both the Android browser and an

    embeddable web view

    http://developer.android.com/resources/tutorials/views/index.htmlhttp://developer.android.com/guide/topics/providers/content-providers.htmlhttp://developer.android.com/guide/topics/resources/resources-i18n.htmlhttp://developer.android.com/reference/android/app/NotificationManager.htmlhttp://developer.android.com/reference/android/app/NotificationManager.htmlhttp://developer.android.com/reference/android/app/NotificationManager.htmlhttp://developer.android.com/reference/android/app/Activity.htmlhttp://developer.android.com/reference/android/app/Activity.htmlhttp://developer.android.com/reference/android/app/Activity.htmlhttp://developer.android.com/reference/android/app/Activity.htmlhttp://developer.android.com/reference/android/app/NotificationManager.htmlhttp://developer.android.com/guide/topics/resources/resources-i18n.htmlhttp://developer.android.com/guide/topics/providers/content-providers.htmlhttp://developer.android.com/resources/tutorials/views/index.html
  • 8/2/2019 Planning and Requirement

    5/6

    SGL - the underlying 2D graphics engine

    3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D

    acceleration (where available) or the included, highly optimized 3D software rasterizer

    FreeType - bitmap and vector font rendering

    SQLite - a powerful and lightweight relational database engine available to all applications

    Android runtime

    Android includes a set of core libraries that provides most of the functionality available in the core

    libraries of the Java programming language.

    Every Android application runs in its own process, with its own instance of the Dalvik virtual machine.

    Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in

    the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-

    based, and runs classes compiled by a Java language compiler that have been transformed into the .dex

    format by the included "dx" tool.

    The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level

    memory management.

    Linux kernel

    Android relies on Linux version 2.6 for core system services such as security, memory management,

    process management, network stack, and driver model. The kernel also acts as an abstraction layer

    between the hardware and the rest of the software stack.

    STUDY OF ASSET INEGRITY SYSTEM

    The term Asset here refers to oil and gas.Basically an oil rig is divided into many sectors, and eachsector into sections, sections into elevations and elevations contains components. Each component has a

    unique identification. The components in various sectors are certified, inspected and maintained. This

    system helps the quality manager to identify and reduce safety risks before they escalate, but focusing on asset

    integrity can also play a major role in both achieving operational excellence and extending the life of ageing assets.

    The type of damage that can lead to failure, where it may occur, the frequency of inspections that

    should take place, and appropriate and cost-effective inspection techniques are identified. As a

    result, components with a high probability of failure and subsequent impact are given a higher

    priority for component replacement than items that are of low impact. The entire process results in

    focusing resources on specific assets that are most likely to pose a risk to the facility.

    System environment

    Hardware Specification

  • 8/2/2019 Planning and Requirement

    6/6

    Processor : Intel Core i3 Processor and Above

    RAM : 2.00 GB RAM.

    Secondary Storage : 40 GB Free Space

    2.4 Software Specification

    Operating System : Windows 7

    Front End : ANDROID 4.0

    Server Side Script : PHP

    Back End : POSGRESQL