CHAPTER 1
- INTRODUCTION
1.1 OUT LINE OF THE PROJECT
This software application is used as a centralized system for both Indian based and Multinational companies for providing a secured means for establishing their formulas, Holograms for possessing the secured ownership of these items.
This application member can register their company Hologram, logo, formula and other secured information, so someone cannot misuse it or re-own it. Document fraud prevention is an important part of protecting a company’s reputation. Fraud Prevention can occur through a variety of levels and layers. This also provides an option so that the document which has not only the unique hologram, but also the unique number mapped to a hologram representation, which prevents the duplication of those documents thus provides the secured way of document prevention.
Any digitally signed document can also be allotted in the system and saved so that any electronic mail which uses this approved Digital Signature can be sent in a secured way. Any sort of secured documentation can be done by using this application.
Any medical formula which is newly created can be registered in this application so that, any of the duplication of those formulas will be tracked and legal actions will be taken and if any proprietary rights are misused, then the compensation can be provided to the user.
1.2 ORGANIZATION PROFILE
Our Goal is to Meet Your Objectives. The quality of our services and delivered software solutions is always a top priority for JITA. Our focus on quality demands we meet our customer's business objectives over a long period of time. To comply with our software quality standards we use methods established through a range of successful projects for both large and small companies. Our acquired intelligence is shared with the entire JITA programming team.
What JITA Quality Means and what you can expect?
Effective Communication
Our project leaders are in constant communication about software development progress and actively address each customer concern.
On-Time Delivery
We believe that long-term success with our customers begins with on-time product delivery.
Complete Requirements
Our developers start with a general project concept and create a finished software specification package that exactly meets your requirements. Learn more about our software requirements definition services.
Optimal Solution Design
JITA developers create custom solutions to our customers' detailed requirements that maximize business advantages at the best price. Learn more about software solution design included in our services.
Professional GUI design
JITA GUI designs use standard interfaces that are intuitive and user-friendly. Learn more about our GUI design capabilities.
Reliable Security
Protect your existing software solution with our security consulting services.
Quality Programming Code
We deliver tested commented programming code that is easy to maintain, support and extend.
Expected Performance
JITA's design solutions that meet customer's objectives for system load and growth. Application response rate is critical for system usability and reliability and is designed and to handle expected system load at peak hours.
Software Reliability and Maintainability
We ensure that your software solution is easy to support and extend. JITA developers design software solutions that are easy to monitor and update. Learn more about software support and maintenance services.
Sufficient Documentation
We accompany the delivered software solutions with all technical and user documentation required by the customer.
JITA's main target client base is small to medium businesses (SMB) based across the globe. Our long standing in the software development field for multiple clients have made us go through interesting learning experiences in terms of client mindset and understanding. It has also made us realize quickly that :-
- Give what client wants and not what you want
- All clients want to know "how" you do it, but Yes all client wants to know "what" you do to their project
- A single word of mouth of client reference is more stronger than 100 client's testimonials
- Customer (or client) is the reason, the business exists
On that premises, all our efforts starts and end with customer satisfaction and we at times go beyond the call of duty to assist our esteemed customers, and thus benefiting from both tangible and intangible benefits it brings along with it. Our top management is always in direct contact with our clients to ensure that there are no grey areas. After all we have to convince our prospect and clients as to why our service is better than our competition's. To do that listening to client's concern and paramount importance for us to succeed.
1.3 PROBLEM DEFINITION AND DESCRIPTION
This application is mainly used to preserve the rights of secured, Confidential and Non sharing information such as the company’s logo, standards, formulas, company privacy policy information and also medical formulas from misusers. This reliable system has the facility for its users to register such information. After becoming a member of this
application, they need not concentrate on any legal problems. They also have the Legal team and Advisory team to help the users in their business application. This team is also responsible for tracking the misusers.
This application includes the below modules:
(1) – Registering New Users and approval providing
(2) – Centralized data storage.
(3) – Replication or duplication Identification.
(4) - Legal Team and Advisory Team functioning.
(5) Account Renewal.
Registering New Users and approval providing:
This application member can register their company Hologram, logo, formula and other secured information, so someone cannot misuse it or re-own it. The details provided by them are verified by the legal team and after acceptance; an account will be created for the company. Document fraud prevention is an important part of protecting a company’s reputation. Fraud Prevention can occur through a variety of levels and layers. This also provides an option so that the document which has not only the unique hologram, but also the unique number mapped to a hologram representation, which prevents the duplication of those documents thus provides the secured way of document prevention.
Centralized data storage:
Centralized data storage is the effective methodology to effectively and efficiently identify the misusers. As this application is a web based any national or international company can be a member and they can prevent their user secured information globally. When any logo, policy is uploaded in this system, it will be verified by the legal team and after receiving important certification signing (digitally signed) for the below two documents
“No-Objection” and
“Ready to Penalize”
From the client the provided details are uploaded in the server.
Replication or duplication Identification:
After uploading the details to the centralized server, a unique ID is generated for each server upload and further any duplication is available and brought to notice of the legal team even an online intimation can be provided, such detail will be taken into investigation and if proved, an RII – Replication Issue ID will be mapped to the stored object and it will be sent to the legal team.
Legal Team and Advisory Team functioning:
The legal team and the Advisory team discuss the RII – Replication Issue ID
To the to the Client and depending on the severity of the replicated data and the level of usage by them illegally the approximate claim amount will be fixed, will decide the penalty amount to be charged to the misusers. This team also send legal notification to the identified misusers and proceed with further legal actions and claims the finalized amount.
Account Renewal:
The user will have account validity and server storage for a specific duration
If this duration is about to expire the user has an option of renewing their account and any additional service or extra server storage is required. The payment will be based on the type of service opted and according to the legal and advisory teams involved
CHAPTER 2
2. SYSTEM ANALYSIS
2.1 FEASIBILITY STUDY
On the basis of result of the initial study, feasibility study takes place. The feasibility study is basically the test of proposed system in the light of its workability, meeting user’s requirements, effective use of resources and of course the cost effectiveness. The main goal of feasibility study, the cost and benefits are estimated with greater accuracy. Before any user request is to be accepted, it is mandatory to check whether the new system is feasible or not.
It is the second phase of system study. It should depend on initial investigation. It is the most vital point for developing the new system. The objective of feasibility is not to solve the problem, but to acquire an idea of its scope. In the first step, the system met with full detail about user’s demonstrable needs, resource requirements, the problem worth solving and the way the problem can be refined.
The next step is formal, that it is a simple report, detailing the nature and the scope of the proposed solution. It must cover statements of problem, summary of findings and recommendations, details of finding and conclusions. The purpose of feasibility is to gather, analyze and document and data needed to make an informal intelligent decisions regarding a system’s practicability.
The major of the analysis is to see that the development is technically and operationally helpful to the organization or not, basically, the feasibility analysis could be further subdivided as
- Technical
- Operationa
- Economic.
2.2.1 Technical Feasibility
The most important criteria for a system are that it must be technically feasible the proposed new system is going to be part of a much bigger system and hence its implementation are design in such a way that it is going to faster and efficient. The hardware and software requirements for the using this application can be easily acquired. Thus the application is well within the limits of technical feasibility.
The proposed system is introduced in a technically sound environment such that the necessary technology exists with adequate holding capacity and allows future expansions. The system environment is sophisticated.
2.2.2 Operational Feasibility
The client-side has user friendly interface which makes all the operation easy to use, and no extra training is needed in this regard. Since the user will be dealing only with the client-side, the user doesn’t needed to learn extra things and thus lot of time is saved this makes the project operationally feasible.
The request of system development is beneficial only when the new system is operationally feasible i.e., there should be sufficient support to the system. As the proposed system will defintely help all the staff of the company and CEO level, it is found to be feasible.
2.2.3 Economic Feasibility
Any new development is feasible only when it is cost justified. Usually cost benefit analysis is made to find out the savings or the extra amount that would arises on accounting of the new development. Every organization will choose a system only when there is some deduction in the cost for all times. The alternatives for this system have also been considered and the decision on the vitality of performing this system has been realized.
CHAPTER 3
3.1 SOFTWARE DESCRIPTION
. NET Framework
Monitor : Color Monitor
Hard Disk : 40 GB
RAM : 512 MB
Processor : Pentium IV
Port : USB
Service Pack : 2
Operating System : Microsoft Windows XP
3.2 SOFTWARE REQUIREMENTS
Server :IISServer
Tools :Microsoft Visual Web Developer 2005 Express Edition
3.2.1 FRONT END
.NET Framework : 2.0
.NET Version : Visual Studio .NET 2005
Web designing : ASP.NET
Code behind : C#
Client side Script : Java Script
Style Sheet : Cascading Style sheet
3.2.2 BACK END
Microsoft SQL Server 2005
3.3 SOFTWARE DESCRIPTION
. NET Framework
The Microsoft .NET Framework is a software framework for Microsoft Windows operating systems. It includes a large library, and it supports several programming languages which allows language interoperability (each language can utilize code written in other languages.) The .NET library is available to all the programming languages that .NET supports.
.NET is essentially a system application that runs on Windows. The heart of .NET is the .NET Framework. The most important component of the framework is the CLR as the heart and soul of the .NET architecture. Every application written using the Framework depends on the CLR. Among other things, the CLR provides a common set of data types, acting as a foundation for C#, VB, and all other languages that target the .NET Framework. Because this foundation is the same no matter which language they choose, developers see a more consistent environment.
.NET Framework Overview
The CLS is a statement of rules that allow each language to interoperate. For example, the CLS guarantees that Visual Basic’s idea of an integer is the same as C#. Because the two languages agree on the format of the data, they can transparently share the data. The CLS defines not only type information, but also method invocation, error handling, and so forth.
You can define a class in Visual Basic and use it in C#. A method that is defined in C# can be called by Visual Basic or any other language that adheres to the CLS. After an API is learned in one language, then using that API in any other CLS- compliant language is virtually the same.
The middle layer called Application Class Libraries and Services. This layer represents the rich set of libraries and APIs that have been created to support virtually all aspects of programming. Graphical user interface APIs or Windows.Forms, database APIs through ADO.NET, XML processing, regular expression handling, and so forth are all part of this layer.
Visual Studio .NET is an important part of the .NET Framework because it provides a means for the programmer to access the framework at any level. A programmer can use Visual Studio .NET to write code in many supported managed languages, or he can bypass the CLR altogether and write unmanaged code with Visual Studio .NET.
On the left in the figure, you can see the four languages that Microsoft has announced it will provide support for “out of the box.” The ellipsis signifies the other significant and growing set of languages that support the Common Language
Specification (CLS) and are full participants in the .NET Framework. Applications written in any .NET language can use the code in the .NET Framework class library. Among the most important technologies provided in this library are the following:
ASP.NET: Classes focused on building browser-accessible applications.
Windows Forms: Classes for building Windows graphical user interfaces (GUIs) in any CLR-based programming language.
ASP.NET Web Services (also called ASMX): Classes for creating applications that communicate with other applications using Web services.
Enterprise Services: Classes that provide distributed transactions, object instance control, and other services useful for building reliable, scalable applications.
ADO.NET: Classes focused on accessing data stored in relational database management systems (DBMS).
Principal design features
Interoperability
Because computer systems commonly require interaction between new and older applications, the .NET Framework provides means to access functionality that is implemented in programs that execute outside the .NET environment. Access to COM components is provided in the System.Runtime.InteropServices and System.EnterpriseServices namespaces of the framework; access to other functionality is provided using the P/Invoke feature.
Common Runtime Engine
The Common Language Runtime (CLR) is the execution engine of the .NET Framework. All .NET programs execute under the supervision of the CLR, guaranteeing certain properties and behaviors in the areas of memory management, security, and exception handling.
Language Independence
The .NET Framework introduces a Common Type System, or CTS. The CTS specification defines all possible datatypes and programming constructs supported by the CLR and how they may or may not interact with each other conforming to the Common Language Infrastructure (CLI) specification. Because of this feature, the .NET
Framework supports the exchange of types and object instances between libraries and applications written using any conforming .NET language.
Base Class Library
The Base Class Library (BCL), part of the Framework Class Library (FCL), is a library of functionality available to all languages using the .NET Framework. The BCL provides classes which encapsulate a number of common functions, including file reading and writing, graphic rendering, database interaction, XML document manipulation
and so on.
Simplified Deployment
The .NET Framework includes design features and tools that help manage the installation of computer software to ensure that it does not interfere with previously installed software, and that it conforms to security requirements.
Security
The design is meant to address some of the vulnerabilities, such as buffer overflows, that have been exploited by malicious software. Additionally, .NET provides a common security model for all applications.
Portability
The design of the .NET Framework allows it to theoretically be platform agnostic, and thus cross-platform compatible. That is, a program written to use the framework should run without change on any type of system for which the framework is implemented. While Microsoft has never implemented the full framework on any system except Microsoft Windows, the framework is engineered to be platform agnostic, and cross-platform implementations are available for other operating systems. Microsoft submitted the specifications for the Common
Language Infrastructure (which includes the core class libraries, Common Type System, and the Common Intermediate Language), the C# language, and the C++/CLI language to both ECMA and the ISO, making them available as open standards. This makes it possible for third parties to create compatible implementations of the framework and its languages on other platforms.
Common Language Infrastructure (CLI)
The purpose of the Common Language Infrastructure (CLI), is to provide a language-neutral platform for application development and execution, including functions for exception handling, garbage collection, security, and interoperability.
By implementing the core aspects of the .NET Framework within the scope of the CLI, this functionality will not be tied to a single language but will be available across the many languages supported by the framework. Microsoft's implementation of the CLI is called the Common Language Runtime, or CLR.
Memory management
The .NET Framework CLR frees the developer from the burden of managing memory (allocating and freeing up when done); instead it does the memory management itself. To this end, the memory allocated to instantiations of .NET types (objects) is done contiguously from the managed heap, a pool of memory managed by the CLR. As long as there exists a reference to an object, which might be either a direct reference to an object or via a graph of objects, the object is considered to be in use by the CLR. When there is no reference to an object, and it cannot be reached or used, it becomes garbage. However, it still holds on to the memory allocated to it. .NET Framework includes a garbage collector which runs periodically, on a separate thread from the application's thread, that enumerates all the unusable objects and reclaims the memory allocated to them.
The .NET Garbage Collector (GC) is a non-deterministic, compacting, mark-and-sweep garbage collector. The GC runs only when a certain amount of memory has been used or there is enough pressure for memory on the system. Since it is not guaranteed when the conditions to reclaim memory are reached, the GC runs are non-deterministic. Each .NET application has a set of roots, which are pointers to objects on the managed heap (managed objects). These include references to static
objects and objects defined as local variables or method parameters currently in scope, as well as objects referred to by CPU registers. When the GC runs, it pauses the application, and for each object referred to in the root, it recursively enumerates all the objects reachable from the root objects and marks them as reachable. It uses .NET metadata and reflection to discover the objects encapsulated by an object, and then recursively walk them. It then enumerates all the objects on the heap (which were initially allocated contiguously) using reflection. All objects not marked as reachable are garbage. This is the mark phase. Since the memory held by garbage is not of any consequence, it is considered free space. However, this leaves chunks of free space between objects which were initially contiguous. The objects are then compacted together to make used memory contiguous again. Any reference to an object invalidated by moving the object is updated to reflect the new location by the GC. The application is resumed after the garbage collection is over.
The GC used by .NET Framework is actually generational. Objects are assigned a generation; newly created objects belong to Generation 0. The objects that survive a garbage collection are tagged as Generation 1, and the Generation 1 objects that survive another collection are Generation 2 objects. The .NET Framework uses up to Generation 2 objects. Higher
generation objects are garbage collected less frequently than lower generation objects. This helps increase the efficiency of garbage collection, as older objects tend to have a larger lifetime than newer objects. Thus, by removing older (and thus more likely to survive a collection) objects from the scope of a collection run, fewer objects need to be checked and compacted.
CLR-Common Language Runtime Features and Benefits
Common Language Runtime is a heart of the .net framework. It actually manages the code during Execution. The Code that runs under the CLR is called “Managed Code”. The code that is executed under .net runtime gets benefits like cross language inheritance, cross language exception handling, enhanced Security, Versioning and development support, as implified model for component interaction, debugging and Profiling services.
CLR Managed Code Execution Process
• The Process of Compiling and executing managed code is given below When you compile a program written in any of language that target CLR, the compiler translate it into Microsoft Intermediate Language (MSIL) or Intermediate Language (IL). It does not depend on Language and always get translated to IL, This ensures language Interoperability.
• In addition to translating the code into IL, Compiler also produces metadata about the program during the process of compilation. Metadata contains the description of the program such as Classes and interfaces, the dependencies etc.
• The IL and the metadata are linked in an assembly.
• The Compiler creates .EXE or .Dll File.
• When you execute the .exe or .dll file, the code and all the other relevant information from the base class library is sent to the class Loader, who loads the code in memory.
• Before code gets executed, The Just-in-Time (JIT) compiler translates the code from IL to native code (machine code). CLR supplies a JIT compiler for each supports CPU architecture. During the process of compilation, the JIT compiler compiles only the code that is required during execution instead of compiling the complete IL code.
• During JIT Compilation, the code is also checked for type safety. Type Safety ensures that object are accessed in a compatible way. Type Safety also ensures that objects are isolated from each other and are therefore safe from any malicious corruption.
• After Converted to native code, converted code is sent to .net runtime manager.
• The .net runtime manager executed the code, while executed the code, a security check is performed to ensure that the code has the appropriate permission for accessing the available resources.
Features provided by CLR
Some of the features provided by the CLR are as follows:
• Automatic memory management: - The CLR provides the Garbage Collection feature for managing the life time of object. This relives a programmer from memory management task.
• Standard Type System: - The CLR Implement a formal Specification called the Common Type System (CTS).
CTS is important part of rules that ensures that objects written in different language can interact with each other.
• Language interoperability: - It is the ability of an application to interact with another application written in a different programming language. Language interoperability helps maximum code reuse. The CLR provides support for language interoperability by specifying and enforcing CTS and by providing metadata.
• Platform Independence: - The Compiler compiles code language, which is CPU-independent. This means that the code can be executed from any platform that supports the .Net CLR.
• Security Management: - In .net platform, Security is achieved through the code access Security (CAS) model. In the model, CLR enforces the restriction an managed code through the object called “permissions”. The CLR allows the code to perform only that task for which it has permissions. In other words, the CAS model specifies what the
code can access instead of specifies who can access resources.
• Type Safety: - This feature ensures that object is always accessed in compatible ways. Therefore the CLR will prohibit a code from assign a 10-byte value to an object that occupies 8 bytes.
Benefits of CLR
Followings are some of benefits of the CLR
• Performance improvement
• The ability to easily use components developed in other languages.
• Extensible types provided by library.
• New Language features such as inheritance, interfaces etc.
• Complete Object-Oriented design.
• Very Strong Type Safety.
• A good blend of Visual Basic simplicity and c++ power.
• Syntax and keywords similar to c and c++.
• Use of delegates rather than function pointers for increased type safety and security.
Types of JIT : PreJit, Ecno jit, Normal jit
Pre JIT: convert source code to native code in single completion of cycle.Normally this can be done at the time of deployment. Pre -JIT:Compiles whole code once.
Econo JIT: coverts the only called methods to native code however it can be removed when are not required. Compiles code part by part.
Normal JIT: compliled the called methods to native code. In the the methods can be compiles for the first time.For latter calls it can be displayed using cached items. Normal-JIT:Compiles only that part of code when called in cache. When the same methods are called again, the compiled code from cache is used for execution.
The .NET Framework allows you to:
• Apply common skills across a variety of devices, application types, and programming tasks
• Integrate with other tools and technologies to build the right solution with less work
• Build compelling applications faster
The .NET Framework is:
• Common Language Runtime – provides an abstraction layer over the operating system
• Base Class Libraries – pre-built code for common low-level programming tasks
• Development frameworks and technologies – reusable, customizable solutions for larger programming tasks.
SQL Server 2005
Microsoft SQL Server 2005 is a full-featured relational database management system (RDBMS) that offers a variety of administrative tools to ease the burdens of database development, maintenance and administration. In this article, we'll cover six of the more frequently used tools: Enterprise Manager, Query Analyzer, SQL Profiler, Service Manager, Data Transformation Services and Books Online. Let's take a brief look at each:
Enterprise Manager is the main administrative console for SQL Server installations. It provides you with a graphical "birds-eye" view of all of the SQL Server installations on your network. You can perform high-level administrative functions that affect one or more servers, schedule common maintenance tasks or create and modify the structure of individual databases. Query Analyzer offers a quick and dirty method for performing queries against any of your SQL Server
databases. It's a great way to quickly pull information out of a database in response to a user request, test queries before implementing them in other applications, create/modify stored procedures and execute administrative tasks.
Advantages of SQL Server
1. Internet Integration
The SQL Server database engine includes integrated XML support. It also has the scalability, availability, and security features required to operate as the data storage component of the largest Web sites.
2. Scalability and Availability
SQL Server supports features such as federated servers, indexed views, and large memory support that allow it to scale to the performance levels required by the largest Web sites.
CHAPTER 4
4. SYSTEM DESIGN
4.1 DATABASE DESIGN
Database design is the first design in the designing of the system. It forms the bases on which the whole system has to be designed. If the database is carried out well then the design of the modules can be carried out easily without any worry about the data. The main objective of the database design is to structure the data in such a way that is free from the program modules.
Purpose
The purpose of Database Design is to identify the major modules in the software and describe its components and interfaces for each major modules for the users to understand. Database design is a crucial factor in the performance of a package, both in terms of system timings and in the case with which the system can be maintained or modified. The database has been designed based upon the entity relationship data model.
The database has different tables which each table contain the various data needed for the package. Each table designed in the way that the other database can also take the data from this table. One database is located in server and another database is located in all the clients. Some tables are created while the user clicks on some option given in the forms. Those tables are automatically created with the given option or with the help of queries. The manipulation of data is done in the database in the server. So each time when the user enters in the package, the data is updated with the help of the database in the server. This gives all the records without consulting other users.
4.1.1 Database Integrity
It means that the database should be valid at all times and give the user the exact details, which he wants. The integrity of the database can be questioned when there is more that one copy of the data. In such a case the data at all the places should be updated simultaneously so that the database gives the exact information whenever it is queried. thus the system satisfies the database integrity.
4.1.2 Database Independency
This ensures that the data is independent of the application. The application program must be independent of the database. If this is ensured, then the application can be modified in the future without any change to the database. This change also doesn’t affect the other application in the system. Similarly a change made to the database does not affect any programs if data independence is ensured. This database independency is satisfied by the current systems.
UML
4.2 TABLE DESIGN
It is contains a database description for a table such as column name, datatype.
NewUserDetails
Company Name Character Company Name
OwnerName Character Company Owner Name
CompanyRegistrationNo int Company Registration Number
Address Character Company Address
CommunicationNumber int Contact Number
Email Character MailId to Communicate
RequiredService bit Logo / Document / Formula
No-Objection Bit Ensure that the details provided is reliable.
ReadyToPenalize bit Ready to accept if any illegal penalty issued.
DOR Date Date Of Registration
LoginDetails
AccountId Character UserAccountId for Login.
Password Character Account Password
AccountActivationDate date Date in which the account is activated
CurrentDate Date Current Login Date
AccountStatus Bit Account Status – Active / Deactive
DocumentDetails
UserId Character Unique UserId
DocumentId Character Document Unique Identification number
DocumentName Character name of the document to be uploaded.
DocumentSize Int The size of the document uploaded.
Purpose Text The purpose of having that document.
Comments Text Any comments about the documents
Severity Bit The severity of the document.
LogoDetails
UserId Character Unique UserId
LogoId Character Unique logo Identification number
logoName Character Name of the document to be uploaded.
LogoSize double Size of the logo image
ImageType int Image types like JPEG / GIF
Purpose Text Purpose Of the document.
Comments Text Any comments about the document.
Severity Bit Level of severity of the logo usage.
FormulaDetails
UserId Character Unique UserId
FormulaId Character Unique logo Identification number
FormulaDetails Character Details of the formula
DateOfCreation Date Date Of Formula Creation
Purpose Text Purpose of the document
Comments Text Comments about the formula
Severity Bit Severity of the formula usage
AdminDetails
AdminId Character UniqueId of the admin
Name Character Name Of the Admin
AuthorityLevel Bit Level Of Authority
AccountId Character User AccountId
Password Character Login password
Approvaldetails
UserId Character UniqueId of the client
ApprovalId Character The unique approval id.
ApproverId Character The approver id.
Status Bit Approve / Disapproved
ApproverComments text The comments for approval
DateOfApproval Date Date Of Approval
UploadDetails
AdminId Character The unique Adminid
UserId Character The unique clientId.
ObjectId Character Object that is to be uploaded.
LegalAdvisoryTeam
EmpId Character The employee ID
EmpName Character The name of the employee.
Rights int Legal / Advisory
ReportingHead Character The name of their reporting head.
Qualification Character Educational Qualification
4.3 DATA FLOW DIAGRAM
4.4 System Flow Diagram
ER Diagram
4.5 SYSTEM IMPLEMENTATION
DEFINITION: Putting a planned system into action. The stage of systems development in which hardware and software are acquired, developed and installed, the system is tested and documented, people are trained to operate and use the system, and an organization converts to the use of a newly developed system.
During System Implementation
the hardware and software system components are installed;
- the selected software is configured and tested;
- the software may be customised to meet local functional requirements;
- data mapping, cleansing and migration take place;
- reporting requirements are specified and reports produced;
- the whole system is tested before being approved, signed off and becoming a fully operational production system.
System implementation projects are long difficult journeys by which organisations move from an old set of technology to a new one. Coupled with increasingly-dynamic external changes for both inputs and outputs to these systems, most tend to buy systems if they are available. Commercial systems developed for business purposes may demand major changes to traditional administrative approaches and result in cultural clashes
To implement a system successfully, a large number of inter-related tasks need to be carried out in an appropriate sequence. Utilizing a well-proven implementation methodology and enlisting professional advice can help but often it is the number of tasks, poor planning and inadequate resourcing that causes problems with an implementation project, rather than any of the tasks being particularly difficult. Similarly with the cultural issues it is often the lack of adequate consultation and two-way communication that inhibits achievement of the desired results.
Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy.
In computer science, an implementation is a realization of a technical specification or algorithm as a program, software component, or other computer system. Many implementation may exist for a given specification or standard. For example, web browsers contain implementations of World Wide Web Consortium recommended specifications, and software development tools contain implementations of programming languages.
Implementation refers to post-sales process of guiding a client from purchase to use of the software or hardware that was purchased. This includes Requirement Analysis, Scope Analysis, Customizations, System Integrations, User Policies, User Training and Delivery. These steps are often overseen by a Project Manager using Project Management Methodologies set forth in the Project Management Body of Knowledge. Software Implementations involve several professionals that are relatively new to the knowledge based economy such as Business Analysts, Technical Analysts, Solution Architect, and Project Managers.
Implementations is the process of putting new system into use, training users, installing the new application and constructing any files of data needed to use it. It is a process in itself and involves various steps. It is understood that major steps are based on the design specifications. All requirements of the system such as input, processing, output, etc are provided by design specifications.
Depending on the size of the organization involved in using the product and the risk associated with the use, it can be implemented in many ways. Some popular methods of implementation are:
PARALLEL:
In this approach, the new system is installed an operated in parallel with the current system until it has been thoroughly then the current system is cutout. Developers run both the old and the new system together to compare the results.
PHASE-IN:
Developers stop using the old system and begin using the new one. System implementation covers a broad spectrum of activities from a detailed workflow analysis to the formal go-live of the new system. During system implementation organizations may refine the initial workflow analysis that had been completed as part of the requirements analysis phase. With the aid of the vendor they may also start mapping out the proposed new workflow.
The system implementation phase requires the vendor to play a very prominent role. In addition to the workflow analysis it is during this phase that full system testing is completed. Other key activities that would occur during this phase include piloting of the new system, formal go-live and the immediate post implementation period during which any application issues are resolved.
The two types of implementation diagrams provide the solution. With the deployment diagram, you can show how the components of your system are physically related, and with the component diagram, you can show the components in the system are organized.
You can combine the two diagrams if you choose:
Above, the nodes are shown in green and the components in maroon. The nodes represent something upon which a component can run, and components are units of software.
On the diagram, nodes are connected with connections that show the physical path of information in the system. Components are connected with directed dashed lines that represent the communication between components. You can also use lollipop interfaces on components to show that communication is through an interface.
Putting it all Together
The physical diagrams will help with the overall structure and distribution of your system. You can draw component and deployment diagrams separately or combine them as you choose. Also, you need not show the components within the nodes as above, although it helps in the overall understanding of what is executed where.
Report Layout
A report layout consists of three main areas: a page header, page footer, and the body. The body of the report contains the report data. You can add data regions, text boxes, images, rectangles, subreports and visual enhancements to the report layout. Data regions display repeated rows of data from a data source. The page header and footer repeat the same content at the top and bottom of each page of the report. place report items such as images, text boxes, and lines in headers and footers.
To design a report, you open a client report definition (.rdlc) file in graphical design mode and drag report items from the Toolbox to create the report. The design view of the report presents the underlying .rdlc XML file definition of the report.
Visually, the design surface is a rectangular area with an overlay of grid dots to align report items on the layout. Item alignment is important. If items are not aligned, the report rendering process might create extra pages or unexpected white space to accommodate all of the items.
To run a report, report processing combines the report layout information in the .rdlc file with data from the data source, and renders the report in either HTML or Graphical Device Interface (GDI) format. The output format can change the way data is processed and the report is rendered.
The placement of report items in a report is completely freeform, not limited to "bands" of data in a report. can place data regions with different sets of data side-by-side. Certain report items can also contain other report items. For data regions, this means that you can nest groups of data within other groups.
CHAPTER 5
5. SYSTEM TESTING
Software Testing Types:
Black box testing – Internal system design is not considered in this type of testing. Tests are based on requirements and functionality. Testing software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as a specification or requirements document.
White box testing – This testing is based on knowledge of the internal logic of an application’s code. Also known as Glass box Testing. Internal software and code working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions.
White box and black box testing are terms used to describe the point of view a test engineer takes when designing test cases. Black box being an external view of the test object and white box being an internal view. Software testing is partly intuitive, but largely systematic. Good testing involves much more than just running the program a few times to see whether it works. Thorough analysis of the program under test, backed by a broad knowledge of testing techniques and tools are prerequisites to systematic testing. Software Testing is the process of executing software in a controlled manner; in order to answer the question “Does this software behave as specified?” Software testing is used in association with Verification and Validation. Verification is the checking of or testing of items, including software, for conformance and consistency with an associated specification. Software testing is just one kind of verification, which also uses techniques as reviews, inspections, walk-through. Validation is the process of checking what has been specified is what the user actually wanted.
Unit testing – Testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. may require developing test driver modules or test harnesses.
Incremental integration testing – Bottom up approach for testing i.e continuous testing of an application as new functionality is added; Application functionality and modules should be independent enough to test separately. done by programmers or by testers.
Integration testing – Testing of integrated modules to verify combined functionality after integration. Modules are typically code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems.
Functional testing – This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application. Functional test can be defined as testing two or more modules together with the intent of finding defects, demonstrating that defects are not present, verifying that the module performs its intended functions as stated in the specification and establishing confidence that a program does what it is supposed to do.
System testing – Entire system is tested as per the requirements. Black-box type testing that is based on overall requirements specifications, covers all combined parts of a system. Several modules constitute a project. If the project is long-term project, several developers write the modules. Once all the modules are integrated, several errors may arise. The testing done at this stage is called system test. System testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points.
Testing a specific hardware/software installation. This is typically performed on a COTS (commercial off the shelf) system or any other system comprised of disparent parts where custom configurations and/or unique installations are the norm.
End-to-end testing – Similar to system testing, involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.
Sanity testing - Testing to determine if a new software version is performing well enough to accept it for a major testing effort. If application is crashing for initial use then system is not stable enough for further testing and build or application is assigned to fix.
Regression testing – Testing the application as a whole for the modification in any module or functionality. Difficult to cover all the system in regression testing so typically automation tools are used for these testing types.
Acceptance testing -Normally this type of testing is done to verify if system meets the customer specified requirements. User or customer do this testing to determine whether to accept application.
Testing the system with the intent of confirming readiness of the product and customer acceptance.
Load testing – Its a performance testing to check system behavior under load. Testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system’s response time degrades or fails.
Stress testing – System is stressed beyond its specifications to check how and when it fails. Performed under heavy load like putting large number beyond storage capacity, complex database queries, continuous input to system or database load.
Performance testing – Term often used interchangeably with ‘stress’ and ‘load’ testing. To check whether system meets performance requirements. Used different performance and load tools to do this.
Usability testing – User-friendliness check. Application flow is tested, Can new user understand the application easily, Proper help documented whenever user stuck at any point. Basically system navigation is checked in this testing.
Install/uninstall testing - Tested for full, partial, or upgrade install/uninstall processes on different operating systems under different hardware, software environment.
Recovery testing – Testing how well a system recovers from crashes, hardware failures, or other catastrophic problems.
Security testing – Can system be penetrated by any hacking way. Testing how well the system protects against unauthorized internal or external access. Checked if system, database is safe from external attacks.
Compatibility testing – Testing how well software performs in a particular hardware/software/operating system/network environment and different combination s of above.
Comparison testing – Comparison of product strengths and weaknesses with previous versions or other similar products.
Alpha testing – In house virtual user environment can be created for this type of testing. Testing is done at the end of development. Still minor design changes may be made as a result of such testing.
Beta testing – Testing typically done by end-users or others. Final testing before releasing application for commercial purpose.
CHAPTER 6
6. SCREEN LAYOUTS
Login Form
Company Registration
Logo Details
Document Details
Formula Details
Client Replication Details
Admin Upload Details
Admin Approve Client Details
Admin Replication Team Allocation
Admin Team Formation
Sample Code
Login page
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data.SqlClient;
using System.Security.Cryptography;
using System.IO;
using System.Text;
public partial class Login : System.Web.UI.Page
{
SqlConnection sqlcon = new SqlConnection("server=SASI;initial catalog=Stock;integrated security=true");
SqlCommand sqlcmd = new SqlCommand();
SqlDataAdapter sqldata = new SqlDataAdapter();
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
protected void Page_Load(object sender, EventArgs e)
{
LblError.Visible = false;
}
protected void BtnCancel_Click(object sender, EventArgs e)
{
DDLUserType.SelectedIndex = 0;
TxtPassword.Text = "";
TxtCompanyName.Text = "";
TxtUserID.Text = "";
LblError.Visible = false;
}
protected void BtnLogin_Click(object sender, EventArgs e)
{
if (TxtPassword.Text.ToString().Contains(" "))
{
LblError.Visible = true;
}
else
{
sqlcon.Open();
sqlcmd.Parameters.Clear();
sqlcmd.CommandType = CommandType.StoredProcedure;
sqlcmd.CommandText = "LoginCheck";
sqlcmd.Parameters.AddWithValue("@UserType", DDLUserType.SelectedItem.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@CompanyName", TxtCompanyName.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@EmployeeId", TxtUniqueId.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@UserId", TxtUserID.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@Password", TxtPassword.ToString().Trim());
sqlcmd.Connection = sqlcon;
da.SelectCommand = sqlcmd;
da.Fill(ds, "Login");
int Chk = Convert.ToInt16(ds.Tables["Login"].Rows.Count);
if (Chk >= 1)
{
LblError.Visible = false;
}
else
{
LblError.Visible = true;
LblError.Text = "No match in UserId / Password";
}
}
}
}
Stored Procedure
ALTER PROCEDURE [dbo].[LoginCheck]
@UserType nvarchar(50),
@UniqueId nvarchar(15),
@UserId nvarchar(15),
@Password nvarchar(500)
AS
BEGIN
Select * from Login where UserType=@UserType and UniqueId = @UniqueId and UserId = @UserId and UserId = @UserId and Password = @Password
END
Company Registartion
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Security.Cryptography;
using System.IO;
using System.Text;
public partial class CompanyRegistration : System.Web.UI.Page
{
SqlConnection sqlcon = new SqlConnection("server=SASI;initial catalog=HoloLogo;integrated security=true");
SqlCommand sqlcmd = new SqlCommand();
SqlDataAdapter sqldata = new SqlDataAdapter();
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
protected void Page_Load(object sender, EventArgs e)
{
}
protected void BtnSubmit_Click(object sender, EventArgs e)
{
try
{
sqlcon.Open();
sqlcmd.Parameters.Clear();
sqlcmd.CommandType = CommandType.StoredProcedure;
sqlcmd.CommandText = "InsertCompanyRegistration";
sqlcmd.Parameters.AddWithValue("@Companyname", TxtCompanyName.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@CompanyRegistrationId", TxtRegistrationId.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@OwnerName", TxtOwnerName.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@CompanyStartDate", TxtCompanyStartDate.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@Address", TxtAddress.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@CompanyDetails", TxtDetails.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@PhoneNumber", TxtPhoneNumber.Text.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@RequiredService", CBLRequiredService.SelectedItem.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@NoObjection", RBLNoObjection.SelectedValue.ToString().Trim());
sqlcmd.Parameters.AddWithValue("@PenalityReadiness", RBLPenality.SelectedValue.ToString().Trim());
sqlcmd.Connection = sqlcon;
da.SelectCommand = sqlcmd;
sqlcmd.ExecuteNonQuery();
LblInfo.Visible = true;
LblInfo.Text = "Company Registration done successfully";
}
catch (Exception ex)
{
ex.Message.ToString().Trim();
}
}
protected void BtnCancel_Click(object sender, EventArgs e)
{
}
}
CHAPTER 7
7. CONCLUSION AND FUTURE ENHANCEMENTS
7.1 CONCLUSION
The System has been developed and is found working effectively. The developed system is flexible and changes can be made easy as and when required. Reducing the operator’s work by using the flexibility and facility of .NET, the system has been developed in a neat and simple manner.
This Project is also provides permanent account details and separates the service according to the transaction mode and account type chosen. Maintaining the account holder’s transaction records and maintains the security level.
7.2 FUTURE ENHANCEMENTS
We can implement this system using web services, so any other departments such as,
· Server Maintenance.
· Server Performance Tuning
· Effective and efficient Batch Transaction
· Annual Maintenance and Others.
These enhancements will be come with future version of this project. Server Maintenance and Annual Maintenance maintains the details for same as development module. These modules fulfill the needs of job card allocation process, internal review process, external review process, testing process, input management form process.
BIBLIOGRAPHY
REFERENCE BOOKS
Ø ASP.NET Complete reference,“ Mathew Macdonald ”, Published by Tata Macgraw Hill 1999
Ø Beginning ASP.NET 1.0 with Visual Basic .NET , “ David Sussman ” , Published by Tata Macgraw Hill, 2000
Ø The Visual Basic 2005 Complete reference, “ Ron Petrusha ”, Published by BPB
WEBSITE ADDRESS
1. Pro C# 2010 and the .NET 4 Platform [Paperback]
Andrew Troelsen - Author.
2. Effective C# (Covers C# 4.0): 50 Specific Ways to Improve Your C# (2nd Edition) (Effective Software Development Series) [Paperback]
Author- Bill Wagner
3. Professional C# 4.0 and .NET 4 [Kindle Edition]
Author: Bill Evjen, Karli Watson, Christian Nagel, and Morgan Skinner
www.msaccesstips.com
Click here to download full project with source code
0 comments:
Post a Comment