Quantcast
Channel: Visual Studio General Questions forum
Viewing all articles
Browse latest Browse all 21115

C#: Building a SOFTWARE SOLUTION from scratch to finish

$
0
0

Hello good people of MSDN. I have a VERY SIMPLE REQUEST... (Here goes)

I'm trying to build an Application (from scratch, custom specs) that allows the user to manage, organize and keep track of books that are available in a library. This system is to be made use of in environments such as personal library, public library, any situation that requires/involves the constant movement of BOOKS.

Now, I have presented a solution to the client which works OKAY but there has been a SUDDEN CHANGE of heart, now the client wants the solution to be implemented quite differently. The solution that I BUILT is basically an ASP.NET C# Application that runs LOCALLY so it opens up in the browser (IIS installed and all that) for the user to make use of the Application. Now when I want to have the entire Application to FUNCTION on another system I simply copy the Database, the Application folder (that has all the files in it) place it in the IIS Directory... ... (So as not to waste your PRECIOUS TIME). To access the Application we simply open up the BROWSER enter localhost/the Application's URL...

The client, first of all does NOT want the BROWSER in the mix of things (ANYMORE !!!); secondly, does not want to have to go through all of this process of COPYING FILES INTO LOCATIONS, IIS etc etc in order to get the solution to WORK/OPERATE on another/several other computers. The client wants to be able to have an EXECUTABLE INSTALLATION file that when clicked installs a SOFTWARE APPLICATION that opens up in its own WINDOW ENVIRONMENT without the help/assistance of the BROWSER !

This is my PREDICAMENT there's NO TIME... I need to AT LEAST present a working prototype in less than 24hrs!

So my questions are:
1.) Is there anyway for me to convert my ASP.NET C# Web Application into an installable client software without losing any of the components that make it work?
2.) If I have to build the ENTIRE Application into a WinForms PROJECT (I'm using VS 2010) can I STILL MAKE USE of the DATABASE I used for the ASP.NET C# Application?
3.) I don't want to have to DUMP my SQL SERVER DATABASE (as it is) to start creating a DB using something else like MS Access. Do I have a choice?

I have included with this post a Notepad doc that details the sketch of what I am HOPING to ACHIEVE. I would Appreciate it if anyone can (KINDLY) take it up and create according to the SPECIFICATIONS included in the doc. I have tried to be very DETAILED and DESCRIPTIVE in the doc to make it easy for  the DEVELOPER to FOLLOW THROUGH. Can it be done?

(If ANYONE can take it up and provide the solution it would be a good thing because it would ALWAYS be available to other DEVELOPERS who can read through the CODE and become better C# PROGRAMMERS and better at using Visual Studio. As this is a VERY REAL LIFE SCENARIO coders can LEARN from the SITUATION).


At the end of the whole CODING PROCESS I intend to BUILD the Source to become a SINGLE EXECUTABLE FILE that will INSTALL the Application on the clients system. If anyone can PROFFER (and MAYBE RENDER) a SOLUTION that's ACCURATE, SPEEDY, RELIABLE to me, I would be grateful!

The Software is to be used in a school. Students are only going to REQUEST for books, RETURN the books that they collected. They are NOT BUYING books!


Working/Functional Prototype
************************

(The PROTOTYPE I hope to present REALLY SOON should be CAPABLE of the FOLLOWING)

1. Navigate/Move through the different Forms/GUI Screens when the appropriate buttons are clicked
2. Interact with the DB (to some extent) and carry out (for now)TRANSACTIONS like adding books, viewing list of books, delete book, Register Student (other DB operations can be included much later)
3. When the Application is LAUNCHED a Splash Screen is displayed introducing the Application (while the Application is loading), then when it's done Loading, the Application opens to present the Start Screen
4. An EXECUTABLE INSTALLATION FILE that can be used to conveniently INSTALL the Application on multiple systems... Just in-case it is to be installed on a computer system that's not Windows OS, I'd like for it to carter to dependencies appropriately.

PLEASE ANYONE that chooses to ASSIST (based on the SPECIFICATIONS) should KINDLY include the DETAILS of how the result was ACHIEVED so at least I can read through and understand the Application and conveniently make suitable/any necessary modifications (should the CLIENT require that I do so). eg Step by step instructions on how to get the whole SOURCE CODE into INSTALLATION FILE, Setting up the Splash Screen, how the DB is made to connect to the front end GUI (eg ODBC, OLE DB that type of stuff)... etc etc

I'm trying to keep the prototype VERY SIMPLE so I can ACHIEVE something TANGIBLE in this short space of time then LATER any SOPHISTICATION can be included.

PS: I have done MY VERY BEST to plan out the Application Logic. So it should be easy to just READ over the Notepad docs I'm including here... As a pointer (should YOU decide to ASSIST) it would be FASTER to START with the WinForms, then MOVE to CREATING the DB, afterwards LINK THEM...

Thank YOU ALL.

*************************************************************************************************

*************************************************************************************************

*******************************************************
BELOW IS INFO ABOUT THE DATABASE STRUCTURE *
*******************************************************

BookStore Database (Tables)
******************************
Books
Students
UsersRequest
BooksReturned



Information and instructions about the diff tables in the database
********************************************************************
Books: this holds information about all the books available in the store
Students: this holds info about the students that come in to request for books
UsersRequest: for the admin to see at one glance requests from every student
BooksReturned: for the admin to look at info about the different books returned by the students.



Books table (attributes/colomns)
**********************************
BookTitle
Author
Edition
ISBN
CategoryName


Students table (attributes/columns)
*****************************************
reg no
FName
LName
MName


UsersRequest table (attributes/columns)
******************************************
reg no
FName
LName
BookTitle
Author
Edition
ISBN
CategoryName


BooksReturned (attributes/columns)
*************************************
reg no
FName
LName
BookTitle
Author
Edition
ISBN
CategoryName



*********************************************
INTERPRETATIONS OF DB COLUMN NAMES
*********************************************
FName = First Name of the student
LName = Last Name of the student
reg no = Registration Number of the student at the school
Author = The authorn of a book
Edition = EG 1st Edition, 2nd Edition that kinda thing
ISBN = The Standard Book Number of the book
CategoryName = EG Computer Science, Applied Robotics

**********************************************************************

BELOW IS WINFORMS PLAN: FRONT END

**********************************************************************

There are just gonna be 5 GUI Components (FOR NOW). The ENTIRE APPLICATION WINDOWS should be in the range 700px by 700px (width by height).

Forms/GUI Instances
**********************
1. Start/Welcome Screen
2. List of books
3. Administration
4. Relase Notes
5. Splash screen



Start/Welcome Screen
************************
When the Software Application is launched and the Software is done loading this is the FIRST screen that the user sees. This Screen presents the users with options to carry out certain actions. Also it presents some brief/summary information to the user in a presentable manner.

Options include: Administration, View list of books, Relase Notes

Brief/Summary of information include: Total no of books in store, Total no of new books added



List of books Screen
*********************
When the user clicks on this action link from any where in the Software Application this page comes up. It displays a complete list of the books that are available in the store and also relevant info about the books. It reads DIRECTLY from the Books table inside the Database and presents the info in a tabular format. It also provides the user with certain options to carry out some actions.

Options include: Request book (button beside every book item)


Administration Screen
************************
The Administration Screen is segmented into several Areas that allow the operator to carry out individual/independent tasks. On this Screen the operator of the system has options to carry out many vital tasks as regards the Application. Rather than having to present many different Screens, all the control/Administrative tasks of this Aplication are included here on this ONE Screen.

Options/Segments include: Add book(s), Delete book(s), View list of books, View books requests, View books returned, View all Students, Request for book(s), Register Student, Return books
(All of these Options can be done/carried out on this one screen without having to bring many different screens to do the different tasks)

>>Add book(s) Area
*******************
This area FEEDS info DIRECTLY INTO the Books DB. To accept Data input into the Application this has following text boxes: Book Title, Author, Edition, ISBN, Category Name

>>Delete book(s) Area
*********************
Presents the options for deleting a book. It also relates DIRECTLY with the Books table in the DB. It presents the list of books as they are available in the Books DB and places a DELETE action button for EVERY book so that when this button is clicked it removes the book from the Books DB.


>>View list of books
*******************
This will simply bring up the list of books Screen since already we have a screen for this.


>>View books requests
**********************
This reads DIRECTLY from the UsersRequest table and just presents the info to the user in a tabular form.

>>View books returned
**********************
This reads DIRECTLY from the BooksReturned table and just presents the info to the user in a tabular form.

>>View all Students
******************
Lists out all the students that are registered in the Application System. It READS DIRECTLY from the Students table. This area is used by the Admin/Operator of the Application to view a List of all the Students that have had transactions with the Application.

>>Request for book(s) Area
**************************
This area relates DIRECTLY with the UsersRequest table in the DB. It FEEDS in Data into the UsersRequest table. This area allows the admin to collect info of the student that's requesting for the book. It provides texboxes such as: First Name, Middle Name, Surname, RegNo, BookTitle

>>Register Student Area
***********************
This area relates DIRECTLY with the Students table in the DB. It FEEDS in Data into the Students table. This are allows the admin to input info of students that are new to the system.
In other for the Admin to keep track of NEW students who are coming in to request for books this area is very important. It allows the Admin to register a new student so that the student can now request for books.

There are text input fields on this Screen that allow the Admin to collect certain infomation about the student and feed it into the Students table of the DB. Textboxes inculde: First Name, Middle Name, Last Name, RegNo


>>Return books Area
********************
This area relates DIRECTLY with the BooksReturned table. It FEEDS Data into the BooksReturned table. Textboxes include: Book Title, Author, ISBN, First Name of student, Last Name of student



Release Notes Screen
***********************
This Screen has three tabs that contain their own individual MESSAGES. The tabs are: Version, Known Issues

Version
********
Refers to the version of the Application. This tab provides info about the version of the Application

Known Issues
**************
Known problems with the Software Application



Splash Screen
***************
A very simple/ moderate graphic (nothing fancy)to introduce the Application


Viewing all articles
Browse latest Browse all 21115

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>