Answer the question
In order to leave comments, you need to log in
How to start developing an Information System?
Good afternoon friends!
Preamble/About me:
At the moment I have completed courses in Python (ITMO University in St. Petersburg + a course on edx.org), I have an idea about GitHub, basic knowledge of HTML5 and CSS3 (CodeCademy, HTMLAcademy courses, StackOverflow). JavaScript and jQuery are a common representation. As a graduation project in Python, I made a browser-based card game in python + flask. I protected it on a local PC, I did not have time to implement the network interaction of the players.
Having read plenty of motivating posts, I finally realized that until you create something yourself, you will not acquire the necessary skills.
The minus that I see is development in solitude. Not to feel all the delights of agile, scrum and other methodologies, not to mention the pitfalls.
As a result, I decided to develop an information system for collecting data analysis of network office equipment to perform the following tasks:
Equipment inventory (storage of information on receipt / movement / repairs)
Centralized receipt of information about the state of equipment for prompt ordering and replacement of consumables.
backend:
Answer the question
In order to leave comments, you need to log in
You either get an error from PHP or incorrect JSON. Do not generate JSON manually, there is json_encode.
Vladimir meant that you don’t need to manually collect the json string at all. Try like this:
<?php
$db = mysqli_connect("127.0.0.1", "root", "","main_t");
mysqli_set_charset($db,"utf8");
function getData()
{
$data = [
'cols' => [
[
'id' => '',
'label' => 'Кандидатов',
'type' => 'number'
],
[
'id' => '',
'label' => 'Эффективность',
'type' => 'number'
]
],
'rows' => []
];
$query = "SELECT `stars`,`age` FROM `main_t`";
$res = mysqli_query($db,$query);
while ($row = mysqli_fetch_assoc($res)) {
$data['rows'][] = [
'c' => [
['v' => $row['stars']],
['v' => $row['age']]
]
];
}
return json_encode($data);
}
$data = getData();
echo $data;
?>
1. Make flowcharts (sketches, wireframes) of each application page on paper
2. Type them up
3. Implement gradually the functionality for each of them
Start with the key functionality so as not to get stuck on registration, authorization, password change, access rights, optimization etc.
If you greatly simplify the goal of your project, you will get a simple application for conducting CRUD operations. There are many examples of such applications. Plus a couple of goodies for importing and exporting data from the outside (xsl). For speed and ease of building a UI - some CSS Framework, for personal choice: Bootstrap, Foundation ... Database - if the project is small, then SQLite. Well, a version control system is also a must. I recommend Git. In order to keep up with the times in building Web applications, I advise you to use some kind of front-end framework: Angular, Ember ...
just doing
a github is just version control without it, there is no life,
as I understand it, you already work somewhere and are going to apply this system somewhere, then just sit down and write, make the interface on the bootstrap standard.
heh, I'm writing similar things myself =)
To begin with a description of the most important thing, the equipment.
What equipment do you want to store?
--- Make a list of models, manufacturers,
what parameters will characterize it?
---What are the different parameters of what types.
And here it is necessary to make one of the most important decisions in the field of parameter storage, how it should be presented in the database.
If the parameters are always the same, then one table with the necessary fields, if there are groups of equipment with their own sets of parameters, and there are not many of them and they will not expand, then separate plates describing the parameters of a particular type of equipment. And *drumroll* the most universal case, when each model can have an arbitrary set of parameters, models are created through the constructor, here again there are several options, either organize EAV, or let's store the parameter template and the values themselves in json (it's just convenient in postgres), or the most difficult but also flexible, spacing into separate types in the database of different types of parameters, with custom behavior for each. - to be honest, the implementation of the latter will be enough for you until the end of the year ^^
Actually, for each type of parameters, it will be determined with its features, for example, will you have addresses, if so, it will simply be stored in text or pulled from some database (FIAS is allowed to be screwed), you can only select a house or you can link equipment to a block or street, what if there is no specific address? whether to store geocoordinates?. If you need ip addresses, it's just an ip, or you need to indicate which subnet it belongs to, related to the ip address accounting system itself.
Which fields will be unique, which are mandatory, which are read-only, how to inform the user about these features.
Well, there are all sorts of difficulties, whether the equipment can have topological relationships. Do you need to take into account ports (network electrical, etc.), vlan, clients on equipment, interaction with the equipment itself from the system interface, you can continue for a very long time, and you don’t need most of this ^^ The
question is what do you want to focus on?
If you want to deal with Layout, do not use ready-made frameworks, read about BEM, try less or sass, implement at least a terrible but your own interface, test in different browsers. Then pull a normal css framework, try to customize it for yourself.
It would be a good task to build a RESTapi for your service, with versioning, support for the INFO method ... And taking a good js framework, organize communication between the page and the server through the api.
It is best to get used to the git right away, and it is advisable to try working using
this approach
in fact, different types of indexes in postgre, and yes, try using ORM (with a flag, apparently direct expensive to sqlalchemy).
ps sorry for the confusion =)
Question:
How to start developing an information system?
Hey! In general, what you are told here is correct. I myself am a developer of corporate information systems by education.
Here is a book, I hope it helps you. At least structure your thoughts.
Now in Ozone it is not, but you can find it in other stores.
Good luck!
www.ozon.ru/context/detail/id/3811655
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question