file splitter

Upload: nilesh-bhoyar

Post on 03-Mar-2016

220 views

Category:

Documents


0 download

DESCRIPTION

File Splitter

TRANSCRIPT

FILE SPLITTER & JOINER (Encryption & Mail Enabled)

By:

DECLARATION

We hereby declare that this submission is our own work and that, to the best of our knowledge and belief, it contains no material previously published or written by another person nor material which to a substantial extent has been accepted for the award of any other degree or diploma of the university or other institute of higher learning, except where due acknowledgment has been made in the text.

xxxxxxxxxxx

CERTIFICATE

This is to certify that Project Report entitled File Splitter & Joiner which is submitted xxxxxxxx in partial fulfillment of the requirement for the award of degree xxxxxxxxx of xxxxxxx, is a record of the candidate own work carried out by them under our supervision. The matter embodied in this thesis is original and has not been submitted for the award of any other degree.

xxxxxxx (Head of department ) (Asst. Professor)

ACKNOWLEDGEMENT

INDEX

Declaration..iiCertificate...iiiAcknowledgement..ivIntroduction to the ProjectsAbout Project..3

Project ObjectiveIntroduction....4

RequirementsFeasibility Study.........6

Analysis Phase..10

Activity Diagram .11

Sequence Diagram......................................................................................12

Design PhaseObjective of Design.15

Software development Life Cycle .17

Screen Shot .19

Coding Phase 26 Testing Introduction... 28 Purpose of Testing ....28Importance of Testing ....29

Implementation Task and Activities. ...30

Maintenance ...................................................34

Hardware & Software RequirementsHardware Requirements..40 Software Requirements......40

Conclusion.41Bibliography .42

INTRODUCTION

Now a days we all know thats computers are basic necessity of life. A computer makes our works done much faster and with more Accuracy .That is why we are using computers in almost every field of work .In the the today life, as the application of cloud computing is going to popular, we are having some troubles like transferring the data from one place to another.The phenomena of being transferred the data has some aspects of procedures such that the transfer levels. Sometimes many mail service provider have the facility of transferring only certain amount of data. As the achieved limit is very low so some gain the problem of low space. We comes to a problem that sometimes the low internet speed or some connection failure results into the failure of the downloading process.File splitter and joiner is a breaker combiner software that divide big file into several small chunks then you can easily move these small chopped files in limited capacity storage devices like floppy disks, USB and CD/DVD or to send it by email.

PROJECT OBJECTIVE

File joiner allows you to join these splits parts re-establish into original file. File cutter joiner can be used to re-join the divided file back into its original and if you want any document is secure then split them and spared many parts and these spared parts can not read any one with any other tools.

For ensuring the facility of security in our projects we are using some extra features like encrypting the data and then we will decrypt it through proper techniques.In this context , we are using the Java Technology by which we not only devide the large file into small chunks and also will encrypt it for security issues. The Java platform strongly emphasizes security, including language safety, cryptography, public key infrastructure, authentication, secure communication, and access control.The JCA is a major piece of the platform, and contains a "provider" architecture and a set of APIs for digital signatures, message digests , certificates and certificate validation, encryption (symmetric/asymmetric block/stream ciphers), key generation and management, and secure random number generation, to name a few. These APIs allow developers to easily integrate security into their application code. The architecture was designed around the following principles:1. Implementation independence

Applications do not need to implement security algorithms. Rather, they can request security services from the Java platform. Security services are implemented in providers which are plugged into the Java platform via a standard interface. An application may rely on multiple independent providers for security functionality.

2. Implementation interoperabilityProviders are interoperable across applications. Specifically, an application is not bound to a specific provider, and a provider is not bound to a specific application.

3. Algorithm extensibilityThe Java platform includes a number of built-in providers that implement a basic set of security services that are widely used today. However, some applications may rely on emerging standards not yet implemented, or on proprietary services. The Java platform supports the installation of custom providers that implement such services.

Key features:* It support all formats of audio video document application like ZIP, RAR, MP3,WAV, EXE, AVI, DOC, MPG, TXT etc. * It works on Win98/ME/NT/2000/XP/2003/Vista/7, both x32 & x64 platforms. * File breaker and joiner has powerful features and very smart user friendly GUI. * It is very fast, easy, simple and effortless software. * Split break cut divide single file into multiple parts and combine join merge add append multiple files into a single file. * It supports all formats of audio video text images applications and other documents.

REQUIREMENT FEASIBILITY STUDY:

At this stage the clients business needs are analyzed, information about project participants is collected, and the requirements for the system are gathered and analyzed. The clients expectations for system implementation are studied and the proposed solution is offered. During the Feasibility Study stage, the projects goals, parameters and restraints are agreed upon with the client including: Project budget and rules for its adjustment; Project time frame; Conceptual problem solution. The following tasks are performed at this stage: The project feasibility is estimated and the project scope is defined. Risks and benefits are identified; The project structure is elaborated; The project is roughly planned; The next project stage is planned precisely; Cost of the next phase is evaluated precisely and cost of the other phases approximately; Functionality development priorities are defined. System creation risks are estimated. At the end of this phase the following documents are available: Feasibility Report description of the proposed solution and list of high-level functional requirements; Project Structure description of the project organization; Project Plan project schedule; Risks List list of potential project risks and possibilities of their elimination.

The Feasibility Report must be agreed upon and signed by the client. Depending on the customers technology needs the documents name may vary, e.g., Solution Definition. Signing this document means that the client and the project team have a common understanding of the project goals and tasks and have reached agreement on the process for project implementation.Average duration of this phase is about 10% of the total project duration.Types of Feasibility Studies :

The following sections describe various types of feasibility studies.Market and Real Estate Feasibility :

Market Feasibility Study typically involves testing geographic locations for a real estate development project, and usually involves parcels of real estate land. Developers often conduct market studies to determine the best location within a jurisdiction, and to test alternative land uses for a given parcels. Jurisdictions often require developers to complete feasibility studies before they will approve a permit application for retail, commercial, industrial, manufacturing, housing, office or mixed-use project. Market Feasibility take into account the importance of the business in the selected area.

Technology and System Feasibility:

This involves questions such as whether the technology needed for the system exists, how difficult it will be to build, and whether the firm has enough experience using that technology. The assessment is based on an outline design of system requirements in terms of Input, Processes, Output, Fields, Programs, and Procedures. This can be quantified in terms of volumes of data, trends, frequency of updating, etc in order to estimate if the new system will perform adequately or notResource Feasibility:This involves questions such as how much time is available to build the new system, when it can be built, whether it interferes with normal business operations, type and amount of resources required, dependencies, etc. Contingency and mitigation plans should also be stated here so that if the project does over run the company is ready for this eventuality.Cultural Feasibility:In this stage, the project's alternatives are evaluated for their impact on the local and general culture. For example, environmental factors need to be considered and this factors are to be well known. Further an enterprise's own culture can clash with the results of the project.Operational feasibility' Do the current work practices and procedures support a new system. Also social factors i.e. how the organizational changes will affect the working lives of those affected by the system.

Legal Feasibility:Determines whether the proposed system conflicts with legal requirements, e.g. a Data Processing system must comply with the local Data Protection Acts. When an organization has either internal or external legal counsel, such reviews are typically standard. However, a project may face legal issues after completion if this factor is not considered at this stage.Schedule Feasibility:A project will fail if it takes too long to be completed before it is useful. Typically this means estimating how long the system will take to develop, and if it can be completed in a given time period using some methods like payback period.

Economic Feasibility:

Economic analysis is the most frequently used method for evaluating the effectiveness of a candidate system. More commonly known as cost/benefit analysis, the procedure is to determine the benefits and savings that are expected from a candidate system and compare them with costs. if benefits outweigh costs, then the decision is made to design and implement the system.

ANALYSIS PHASESystem analysis includes the three main basic functions that are organizational analysis , analysis of the present system ,functional requirement analysis .To improve an information system , it is necessary to know something , about the organizational ,its management structure , its people , its business activities ,environmental system etc and all the information is gather after doing organizational analysis ,Before designing a new system it is important to studies the present system that will be improved .You have to analyze that how this system uses hardware / software people resources network etc. Functional requirements are not tied to hardware / software, people resource, network but it is the end user information requirements . User interface requirements Storage requirements Control requirements

ACTIVITY DIAGRAM

SEQUENCE DIAGRAMS

Fig- Sequence diagram for splitting.

Fig- Sequence Diagram for joining

Fig: Sequence Diagram for mailing

DESIGN PHASE

The process of software design involves the transformation of ideas into detailed implementation descriptions, with the goal of satisfying the software requirements. To transform requirements into a working system ,designers must satisfy both customers and the system coding person. Once the customer approves the conceptual design, we translate the conceptual design into a much more detailed document, the technical design, that allows system coding person to understand the actual hardware and software needed to solve the customers problem.The conceptual design answers the following questions: Where will the data come from? What will happen to the data in the system?

How will the system look to user? What choices will be offered to users? What is timing of events? How will the reports and screens look like?The conceptual design describes the system in language understandable to the customer. It does not contain any technical jargons and is independent of implementation.By contrast, the Technical Design describes the hardware configuration, the software needs, the communication interfaces, the input and output of the system, the network architecture, and anything else that translates the requirements into a solution to the customers problem.Objective of Design:The specification of a program should obviously be as free as possible of aspects imposed by how the program will work. It is seldom a document from which coding can directly be done.

So design files the gap between specifications and coding; taking the specifications, deciding how the program will be organized, and the methods it will use, in sufficient detail as be directly code able.

The Design needs to be Correct and complete Understandable At the right level Maintainable, and to facilitate maintenance of produced code.

The design phase involves converting the informational, functional, and network requirements identified during the initiation and planning phases into unified design specifications that developers use to script programs during the development phase. Program designs are constructed in various ways. Using a top-down approach, designers first identify and link major program components and interfaces, then expand design layouts as they identify and link smaller subsystems and connections. Using a bottom-up approach, designers first identify and link minor program components and interfaces, then expand design layouts as they identify and link larger systems and connections.

SOFTWARE DEVELEPOMENT LIFE CYCLE:

WATERFALL MODEL:

SPIRAL MODEL:

SCREEN SHOTS

Fig- Main Screen

Fid- Splitter Screen

Fig- File Selection in Splitter Screen

Fig- Task Complete in Splitter Screen

Fig- Joiner Screen

Fig- File Selection in Joiner Screen

Fig- Task Complete in Joiner Screen

Fig- Mailer Screen

CODING PHASE

The input to the coding phase is the design document. During the coding phase, different modules identified in the design document are coded according to the respective module specifications. Therefore we can say the objective of the coding phase is to transform the design of a system, as given by its SDS, into a high level language code and to unit test this code.We have tried to follow all the below specified coding standards: No use of clever or tricky programming. No use of identifier for multiple purposes. Variable must be given a meaningful name. No use of Goto statements. The code should be well documented. Code ReviewCode review for the module is carried out after the module is successfully compiled and the syntax errors eliminated. Normally two types of reviews are carried out- Code walk-throughs: It is an informal code analysis technique. In this technique, after the module has been coded, it is successfully compiled an all the syntax errors are eliminated.The main objectives of code walkthrough are to discover the algorithmic and logical errors. Code inspection: In contrast of code walkthrough, the aim of code inspection is to discover some common types of errors caused due to oversight and improper programming.

This is the list of classical programming errors checked during code inspection: Use of uninitialized variable. Jumps into loops. Non-terminating loops Array indices out of bound Improper storage allocation and deallocation Mismatches between actual and formal parameter in procedure calls Use of incorrect logical operators or incorrect precedence among operators.

TESTINGIntroduction:A primary purpose for testing is to detect software failures so that defects may be uncovered and corrected. This is a non-trivial pursuit. Testing cannot establish that a product functions properly under all conditions but can only establish that it does not function properly under specific conditions. The scope of software testing often includes examination of code , execution of that code in various environments and conditions as well as examining the aspects of code i.e ,what it is doing ,what it is supposed to do and what it needs to correct. In the current scenario of software development, a testing organization may be separate from the development team. Information derived from software testing may be used to correct the process by which software is developed.Software testing methods are traditionally divided into black box testing and white box testing. These two approaches are used to describe the point of view that a test engineer takes when designing test cases.7.1 Black box testing :

Black box testing treats the software as a "black box"without any knowledge of internal implementation. Black box testing methods include: equivalence partitioning, boundary value analysis, all-pairs testing, fuzz testing, model-based testing, traceability matrix, exploratory testing and specification-based testing.

7.2 Equivalence partitioning :

Equivalence class partitioning is a software testing technique that divides the input data of a software unit into partition of data from which test cases can be derived. In principle, test cases are designed to cover each partition at least once. This technique tries to define test case that uncovers classes of errors, thereby reducing the total number of test cases that must be developed.

7.3White box testing :White box testing is when the tester has access to the internal data structures and algorithms including the code that implement these.We designed the test cases for carrying out the white box testing according to the following strategies: Statement coverage Branch coverage Condition coverage

IMPLEMENTATION

In this phase, the system or system modifications are installed and made operational in a production environment. The phase is initiated after the system has been tested and accepted by the user and Project Manager. Activities in this phase include notification of implementation to end users, execution of the previously defined training plan, data entry or conversion, and post implementation review. This phase continues until the system is operating in production in accordance with the defined user requirements.The new system can fall into three categories, replacement of a manual process, replacement of a legacy system, or upgrade to an existing system. Regardless of the type of system, all aspects of the implementation phase should be followed. This will ensure the smoothest possible transition to the organizations desired goal.

TASKS AND ACTIVITIES:

Tasks and activities in the implementation phase are associated with certain deliverables described in section. The tasks and activities actually performed depend on the nature of the project. Guidelines for selection and inclusion of tasks for the Implementation Phase may be found in Chapter 13,Notify users of new implementation:

The implementation notice should be sent to all users and organizations affected by the implementation. Additionally, it is good policy to make internal organizations not directly affected by the implementation aware of the schedule so that allowances can be made for a disruption in the normal activities of that section. Some notification methods are email, internal memo to heads of departments, and voice tree messages. The notice should include:

The schedule of the implementation;a brief synopsis of the benefits of the new system;the difference between the old and new system;responsibilities of end user affected by the implementation during this phase; andthe process to obtain system support, including contact names and phone numbers.

Execute training plan:

It is always a good business practice to provide training before the end user uses the new system. Because there has been a previously designed training plan established, complete with the system user manual, the execution of the plan should be relatively simple. Typically what prevents a plan from being implemented is lack of funding. Good budgeting should prevent this from happening.Install System:

To ensure that the system is fully operational, install the system in a production environment.

After the system has been fielded a post-implementation review is conducted to determine the success of the project through its implementation phase. The purpose of this review is to document implementation experiences to recommend system enhancements and provide guidance for future projects.

In addition, change implementation notices will be utilized to document user requests for fixes to problems that may have been recognized during this phase. It is important to document any user request for a change to a system to limit misunderstandings between the end user and the system programmers.

Revise previous documentation:During this phase, the ICD is revised from the Requirements Analysis Phase. The CONOPS, System Security Plan, Security Risk Assessment, Software Development Document, System Software and the Integration Document are also revised and finalized during the Implementation Phase.

DELIVERABLES:The following deliverables are initiated during the Implementation Phase:Delivered System:After the Implementation Phase Review and Approval Certification is signed by the Project Manager and the System Proponent representative, the system - including the production version of the data repository - is delivered to the customer for the Operations and Maintenance Phase.

Change Implementation Notice: A formal request and approval document for changes made during the Implementation Phase.

The primary configuration control document used to track and control versions of software released to the operational environment. It is a summary of the features and contents for the software build and identifies and describes the version of the software being delivered.

Post-Implementation Review:

The review is conducted at the end of the Implementation Phase. A post-implementation review shall be conducted to ensure that the system functions as planned and expected; to verify that the system cost is within the estimated amount; and to verify that the intended benefits are derived as projected. Normally, this shall be a one-time review, and it occurs after a major implementation; it may also occur after a major enhancement to the system. The results of an unacceptable review are submitted to the System Proponent for its review and follow-up actions. The System Proponent may decide it will be necessary to return the deficient system to the responsible system development Project Manager for correction of deficiencies. Appendix C-34 provides a template for a Post-Implementation Review. ISSUES FOR CONSIDERATION:Once a system has been developed, tested and deployed it will enter the operations and maintenance phase. All development resources and documentation should be transferred to a library or the operations and maintenance staff.

PHASE REVIEW ACTIVITY:During the Implementation Phase Review, recommendations may be made to correct errors, improve user satisfaction or improve system performance. For contractor development, analysis shall be performed to determine if additional activity is within the scope of the statement of work or within the original contract. An Implementation Phase Review and Approval Certification should be signed off by the Project Manager to verify the acceptance of the delivered system by the system users/owner. The Implementation Phase-End Review shall be organized, planned, and led by the Project Quality Assurance representative.

MAINTENANCE

INTRODUCTION:

The term maintenance, when accompanied to software, assumes a meaning profoundly different from the meaning it assumes in any other engineering discipline. In fact, many engineering disciplines intend maintenance as the process of keeping something in workingorder, in repair. The key concept is the deterioration of an engineering artifact due to the use and the passing of time; the aim of maintenance is therefore to keep the artifacts functionality in line with that defined and registered at the time of release. Of course, this view of maintenance does not apply to software, as software does notdeteriorate with the use and the passing of time. Nevertheless, the need for modifying a piece of software after delivery has been with us since the very beginning of electronic computing. The Lehmans laws of evolution [50, 51] state that successful software systems arecondemned to change over time. A predominant proportion of changes is to meet ever changinguser needs. This is captured by the first law of Lehman [50, 51]: A program that isused in a real world environment necessarily must change or become progressively less usefulin that environment. Significant changes also derive from the need to adapt software tointeract with external entities, including people, organizations, and artificial systems. In fact,

What is "maintenance": Not just "fixing mistakes" Any post-delivery modification to an existing system May be corrective, adaptive, perfective, or preventative

CATEGORIES OF MAINTENANCE:

Corrective maintenance: Impractical to exhaustively test a large software system . Therefore reasonable to assume that any large system will have errors . Testing should be thorough for common cases, so errors likely to be obscure. The process of receiving reports of such errors, diagnosing the problem, and fixing it is called "corrective maintenance". Adaptive maintenance: Maintenance Systems don't function in isolation. Typically they may interact with operating systems, DBMS's, GUI's, network protocols, other external software packages, and various hardware platforms In the IT industry any or all of these may change over a very short period (typically six months) The process of assessing the effects of such "environmental changes" on a software system, and then modifying the system to cope with those changes is known as "adaptive "

Perfective maintenance: Users and marketers are never satisfied Even if a system is wildly successful, someone will want new or enhanced features added to it Sometimes there will also be impetus to alter the way a certain component of the system works, or its interface The process of receiving suggestions and requests for such enhancements or modifications, evaluating their effects, and implementing them is called "perfective maintenance"

Preventative maintenance: Sometimes changes are needed for entirely internal reasons Such changes have no direct discernible effect on the user, but lay the groundwork for easier maintenance in the future Alternatively, such changes may improve reliability, or provide a better basis for future development The process of planning such code reorganizations, implementing them, and testing to ensure that they have no adverse impact is known as "preventative maintenance"

Structured vs. Unstructured maintenance: Unstructured maintenance wades straight into the source code and makes changes based on that alone Structured maintenance examines and modifies the original design, and then reworks the code to match it Clearly structured maintenance is a more reliable and (usually) a more efficient process Unfortunately, it's not always possible

Maintenance costs: Surveys in the 80's reveals up to 60% of organizational software effort spent in maintenance Lost opportunities Customer dissatisfaction Overall productivity

Typical problems with instances: Inadequate documentation of software evolution Inadequate documentation of software design and structure Loss of "cultural" knowledge of software due to staff turnover Lack of allowance for change in original software design Maintenance is unglamorous and may be viewed as a "punishment task"

Software maintainability: "The ease with which software can be understood, corrected, adapted, or enhanced." (Pressman) Enhanced by.... ...good initial design and understandable software structure ...comprehensive and accurate documentation (including design documents) ...use of standards (design, language, coding, etc.) ...availability of extensive test cases

Maintenance process: Complex and varied (depends on type of maintenance) In general... ...request (in standard format) ...triage (determine priorities) ...analyze (for cost and consequences) ...design and implement ...test ...document Maintenance side-effects: Any error or undesirable behavior that occurs as a result of modifications to a system Coding side-effects (inadvertent removal of vital code, changes in semantics of code, unexpected changes in execution path) Data side-effects (changes in data structures render older data invalid or incomplete, changes in global constants, changes in data ranges) Documentation side-effects (forgetting to document code or data structure changes, changes not reflected in user manuals or interface)

Reverse engineering : Build a specification and design out of existing code Not just for industrial theft! Legacy systems (what if the supplier no longer exists?) May also be required if original system documentation was lost, poor, or non-existent

Re-engineering: nightmares) Preventative maintenance (prevent foreseen maintenance An extension of reverse engineering Use (or modify) the reconstructed design to generate new and better source code.

TOOLS/PLATFORM USED:JAVA RUN TIME ENVIRONMENT (JRE) User friendly GUI Seperation of work (designing & coding) Written once run anywhere Middle- Tier JAVA APIs Performance Scalability Reliablity

The system specification is the final work produced by the system and requirements engineer. It serves as the foundation for hardware engineering, software engineering, database engineering and human engineering. Once requirements have been gathered explore each requirements in relationship to others, examine requirements for consistency, omissions and ambiguity.

HARDWARE AND SOFTWARE SPECIATION

Hardware Specification It is recommended that the minimum configuration for clients is as appended below:-Suggested Configuration of Windows clients:-Microprocessor : Pentium-2 class processor, 450 megahertz RAM : 64 MB of RAMHard Disk : 8 Gigabytes (GB) on installation drive, which Includes 500 MB on system drive.CD ROM Drive : 52 X CD ROM Drive

Software Specifications :Operating System : Windows 2000/XP/Vista/Seven

CONCLUSION

File joiner allows you to join these splits parts re-establish into original file. File cutter joiner can be used to re-join the divided file back into its original and if you want any document is secure then split them and spared many parts and these spared parts can not read any one with any other tools.

File breaker and file adder is a useful program that enables you to split a large file into small chunks which are easy to be sent and stored. File breaker adder tool can works on win XP, Vista and Win7 platform and both x32 bits and x64 bit platform.

The all parts are gives numbered sequentially. File split join software break divide split cut huge file into several smaller parts of file and combine those chopped parts of file and you get your own original file without data missing in this procedure and in this tool.

File Splitter Joiner Software can be used to split large files into multiple smaller chunks as well as to merge these chunks to get original file. File breaker program breaking large text files or any kind of other files into usable segments so that they can be easily copied to floppy, CD, DVD disks or send via email.

File cutter application break big size files of different file format, and then easily rejoin them in original format without loss of any data and its quality. File split and merge application is an easy to used utility that enables you to split a big file into small pieces which are easy to sent and stored. Program allows you to join and concatenate these split parts together to generate original file.

BIBLIOGRAPHY Books: Cryptography By William Stallings Building J2EE application with RUP by Peter Eeles, Kelli Houston, Wojtek Kozaczynski. http://cs.saddleback.edu mail.youngsvilla.com(as mail server) www.google.co.in www.J4java.com

5