From WikiEducator
Jump to: navigation, search

CIS 50

I'm a student at De Anza college in CIS50 Introduction to Computers, Data Processing, and Applications. i would like to learn more about computers in general and further my education into the C++ language of computers and become capable of basic programing and possibly making a career of it!!! i hope to grasp a better understanding of computers to further my capabilities and use computers to the fullest and be able to control computer functions practically from command prompts.

Information System Lifecycle Project


My Application

my application is for users of Linux based systems. my application is a combination of a file storage application mixed with a mobile desktop application. my application utilizes the cloud type resources for mass file storage containing all desired files the user may need. my application uses the idea of storing necessary files needed to run a Linux based OS on the iPhone, as if it was a USB flash storage device. when your phone is connected to a computer you have the ability to choose your system you would like to run. after the computer runs Linux off your iPhone (as if you ran Linux from any external device) the cloud takes over and provides the files you would like. this is a portable PC app this creates your computer where ever you are by utilizing a desktop computer. this app will be very useful for any kind of technician or anyone who wants an actual computer in front to of them instead of just a mobile desktop app on their phone. there are plenty of mobile desktop apps out there but this is different. mobile desktop apps are slow because of the need to send information through two different firewalls, virus software and anything else that you use to protect your computer. this app creates your computer where ever you are and keeps all your files safe by keeping them on a safe remote cloud storage network that is continuing development and creating highly secure cloud storage.the other problem with mobile desktop is that they need unnecessary software to be installed on every PC you would like to use it on. where the capability of my app is it can be used on any pc without any software and it brings your computer where ever you need it.

short background on Linux OS

Linux is, in simplest terms, an operating system. It is the software on a computer that enables applications and the computer operator to access the devices on the computer to perform desired functions. The operating system (OS) relays instructions from an application to, for instance, the computer's processor. The processor performs the instructed task, then sends the results back to the application via the operating system.

Explained in these terms, Linux is very similar to other operating systems, such as Windows and OS X.

But something sets Linux apart from these operating systems. The Linux operating system represented a $25 billion ecosystem in 2008. Since its inception in 1991, Linux has grown to become a force in computing, powering everything from the New York Stock Exchange to mobile phones to supercomputers to consumer devices.

As an open operating system, Linux is developed collaboratively, meaning no one company is solely responsible for its development or ongoing support. Companies participating in the Linux economy share research and development costs with their partners and competitors. This spreading of development burden amongst individuals and companies has resulted in a large and efficient ecosystem and unheralded software innovation.

Over 1,000 developers, from at least 100 different companies, contribute to every kernel release. In the past two years alone, over 3,200 developers from 200 companies have contributed to the kernel--which is just one small piece of a Linux distribution.

This article will explore the various components of the Linux operating system, how they are created and work together, the communities of Linux, and Linux's incredible impact on the IT ecosystem. Where is Linux?

One of the most noted properties of Linux is where it can be used. Windows and OS X are predominantly found on personal computing devices such as desktop and laptop computers. Other operating systems, such as Symbian, are found on small devices such as phones and PDAs, while mainframes and supercomputers found in major academic and corporate labs use specialized operating systems such as AS/400 and the Cray OS.

Linux, which began its existence as a server OS and Has become useful as a desktop OS, can also be used on all of these devices. “From wristwatches to supercomputers,” is the popular description of Linux' capabilities.

These are just the most recent examples of Linux-based devices available to consumers worldwide. This actual number of items that use Linux numbers in the thousands. The Linux Foundation is building a centralized database that will list all currently offered Linux-based products, as well as archive those devices that pioneered Linux-based electronics. Linux:



concept development

I've been using Linux for the past few months and I'm pretty good with computers, I basically know my way around and can alter my system the way i want it to operate. I've done this simply by research and just looking up how to do stuff.

for awhile now I've been intrigued but computer sciences and computer development. an its pretty obvious computers will be around for a very long time and wont die off anytime soon.

I'm looking further into the operating system of Linux and who all uses it as everyday i use it i look further into the system personally. I've decided on this topic and the development of my application because its something i feel like i can gain something from and learn a greater understanding of.

For my lifecycle project I've decided to develop a application for iPhone and android users. this application if for owners of mobile computing devices such as phones and tablets. My idea for the application is a mix of a few applications that are out in production today. the applications I'm combining are the concepts of USB storage and mobile pc applications such as and teamviewer. these applications are used as methods to view your desktop from anywhere as long as your computer is up and running. another part capability that is necessary for my app is the use of cloud technology in order for file storage.

design specifications

the physical aspects of my design are quite simple, many parts of my design are hidden from view and do not require user interface and don't require the user to do much. the artistic development must be done in order to design the layout of a file system as one like windows explorer. this is just an interface for the user to view files saved on the iPhone. files that are to be used in the booting of Linux on a personal computer by the connection of the iPhone are not visible to prevent tampering and causing problems with the functionality.

the what: the what can be considered the physical appearance of the application its self. this falls to the artistic part of the process and all the app contains is a list of links to open other portions of the app preparing it for connection to either your PC or a public PC and creating your desktop.

the how: the how has to parts one for the Linux PC creator and another for the mobile desktop on the phone.

first the the how for the how for the created desktop, the smartphone acts as if it is a flash storage device and all the user has to do is follow a few simple commands on the screen to boot from a device. the the computer will take over and open Linux from the smartphone's file that doesn't take up any more than a gigabyte on the device. after the computer boots up and an internet connection is established the connection to the cloud is made and the user has all desired file they could use.

second for the mobile desktop interface of the app, this all takes place on the smartphone through a secure connection to your personal computer through a simple instalation of your pc. this instal is necessary in order to connect the smart phone to a PC through the firewall and other protocals within the networks systems. there are many applications out there now for mobile computing and as you can see what needs developed is a simple user interface with navigation tools and the keyboard utilized from the phone.

Development overview

do to the fact there are many mobile computing companies out there as well as cloud computing companies like apple and file safes like barracuda who provide there services and low rates for the storage and functionality of their products there is obviously competition out there but most of these companies do not has programs that can be used with Linux because the still small amount of people who use these systems. the competition can also be used for their storage capabilities instead of building a cloud server house and other necessary hardware needed for the running of my application. the application i am developing will be promoted to other larger companies to use their resources and receive a part of the profit. companies will need to grant rights to their software to develop my application to function with cloud computing with Linux file system. this shouldn't be an issue of compatibility due to the resemble Linux has of apple's Lion OS. man applications utilize the technology of apple. this is the case for my app. my application calls on apples storage to store files. there is a cost to the user for apple's cloud storage but apple does give a small amount of storage to users of apple products. if these resources can be utilized the development of my application is simply up to the developers of the graphics for the application and the hardware is outsourced to other companies besides the servers necessary in order to control the traffic the application will encounter when people are running the app.

Integration and testing

after further development the connection between the computer program that will link the app to the computer while allowing the connection over the computer network and get through the firewall or anything else that would block an external connection. the app will then need prepped for integration this will mean the app will need data or network connection then be able to load a web connection and link with the ip address .the final stage will be the link between the app and program via the web and this will be the ugliest and the part that will need the most troubleshooting and where customer input is needed to figure out what works and doesnt work with the system
testing is difficult for the pc creation portion of the application. this is going to be testing links provided by the app and making sure all those connections are working properly and leading where they need to be.

Deployment and acceptance

the date for deployment will be announced and advertised through Linux and Linux populated website and when the smartphone application is deployed it will be available for download at a low price for a limited time. after the initial period for discounted download the price will go back up to the actual price. the initial sale will act as a promotion for the application and hopefully bring more and more downloads when people begin to use the application. acceptance will come when people begin to use the application and the have the chance to communicate with the company by leaving feedback and ideas for further improvement. the application will also be displayed to larger corporations who deal with development and use linux systems. the reason developers would appreciate this application because it allows them to share files and communicate and work together on a easier basis due to the convenience of the application and the ability to transfer files from one system to another through the cloud. development organizations will be pitched to because of the masses who use Linux systems in development because its a free open source operating system. these promotions will hopefully build a large user base.


if you have a smart phone or any app capable device you will have experienced every application updates from time to time. after in production updates will be released for no cost, and when ever deemed necessary.all improvements will be included with the initial cost of the application. after the application is believed to be running smoothly and no obvious problems the next generation will move into development off of the original plans and developments that are from ideas and alterations to make it more user friendly. these ideas will be heavily user based and reviews of the product and what people need from the product. all will be done in order to keep production (downloads) increasing steadily. the success of the application is based on the customers pleasure and ease of using the product

Retirement and Rollover

due to the fact technology is advancing so quickly and everything becoming outdated in no time at all, the use of the cloud and the technology of mobile computing with the fact of the life of the app should live the length of the use of Linux as a system. Hoping the life of the application would be prolonged because of additions and new capabilities of the app. so with continuous improvements in technology my application will be improve as much as i can until users no longer want or need to use mobile desktops. as long as smartphones use apps and companies are developing using Linux the application will continue to grow with new features and user desired additions to the app. 

design for the future

for the future, the very very far future hardware will be developed for a very high resolution cost effective projector that can connect to a mobile device that can then be used as a keyboard and project the screen on a wall or table or any flat surface. and further development would be that the projection can be touch sensitive so you can use a table as a touch display for superior mobile computing while using the cloud and a data plan to limit the space needed on the device you carry around with you everyday in your pocket.