<commit_before>\chapter{Baggrund og problemstilling}

En administrativ problemstilling kan løses på mange forskellige måder. Alt an på, hvilket problem det er. I vores tilfælde er det et reservationsystem, som de fleste kender fra diverse biograf hjemmesider, som er blevet stillet til opgave, og hvor Bookie er én mulig løsning.
\\\\
Der er visse brugsscenarier: En kunde skal kunne bestille så mange billetter, vedkommende har lyst til. Disse billetter skal være knyttet til vilkårlige eller bestemte sæder - de skal kunne vælges af ekspedienten. Udover dette, skal ekspedienten kunne fjerne, ændre og tilføje reservationer. Det skal være muligt at vælge én bestemt forestilling, vilkårlige forestillinger, ét bestemt tidspunkt og vilkårlige tidspunkter i løbet af den periode de forskellige forestillinger bliver vist.
Der er en chance for, at der ikke er nok billetter til den valgte forestilling, eller at der ikke er en forestilling på det valgte tidspunkt. Disse problemer kan visuelt afkodes af brugergrænsefladen.
\\\\
Der er taget det valg, at bruge et klient-tungt system, som inkluderer at det godt kan bruges uafhængigt af den centrale server. Der er ikke et behov for forbindelse til hverken en server eller et netværk. Størstedelen af data er placeret lokalt, og  bl.a. fordi vi får givet, at biografen kun skal have én billetluge og tillader ikke reservationer over nettet. Løsningen behøver ikke at håndtere samtidige opdateringer, hvor SQLite er en optimal database, som vi gør brug af.



%Her gives en omtale af den problemstilling (administrativ, biologisk, økonomisk, . . .) som programmet behandler, og der opstilles krav til programmet. Der skal være baggrund og forklaring nok til at man kan forstå hvad det er programmet skal gøre, og hvordan det kan gøre det: formler der skal beregnes, osv. Her kan være henvisninger til relevant faglig litteratur. I en større opgave kan dette afsnit opdeles i flere afsnit, f.eks. Baggrund (hvad er problemområdet?) og Problemformulering (hvad skal programmet kunne?).<commit_msg>Problemstilling.<commit_after>\chapter{Baggrund og problemstilling}





En ekspedient skal kunne betjene billetlugen og telefonen i en mindre biograf. Opgaven er stillet sådan, at ekspedienten skal kunne betjene begge former for kundehenvendelse uden brug af eksterne midler. Dette indeholder forskellige ting som en reservation skal kunne inkludere, men ikke selve salget af billetterne. Et softwaresystem udvikles til at løse kravene og i vores tilfælde er "Bookie" blevet resultatet.

Der er visse brugsscenarier: En kunde skal kunne bestille så mange billetter, vedkommende har lyst til. Disse billetter skal være knyttet til vilkårlige eller bestemte sæder - de skal kunne vælges af ekspedienten. Udover dette, skal ekspedienten kunne fjerne, ændre og tilføje reservationer. Det skal være muligt at vælge én bestemt forestilling, vilkårlige forestillinger, ét bestemt tidspunkt og vilkårlige tidspunkter i løbet af den periode de forskellige forestillinger bliver vist.
Der er en chance for, at der ikke er nok billetter til den valgte forestilling, eller at der ikke er en forestilling på det valgte tidspunkt. Disse problemer kan visuelt afkodes af brugergrænsefladen.

Der er taget det valg, at bruge et klient-tungt system, som inkluderer at det godt kan bruges uafhængigt af en server. Der er ikke et behov for forbindelse til hverken en server eller et netværk. Al dataen er placeret lokalt, og  bl.a. fordi vi får givet, at biografen kun skal have én billetluge og tillader ikke reservationer over nettet. Løsningen behøver ikke at håndtere samtidige opdateringer, hvor SQLite er en optimal database, som vi gør brug af. SQLite, i forhold til MYSQL og PostgreSQL



%Her gives en omtale af den problemstilling (administrativ, biologisk, økonomisk, . . .) som programmet behandler, og der opstilles krav til programmet. Der skal være baggrund og forklaring nok til at man kan forstå hvad det er programmet skal gøre, og hvordan det kan gøre det: formler der skal beregnes, osv. Her kan være henvisninger til relevant faglig litteratur. I en større opgave kan dette afsnit opdeles i flere afsnit, f.eks. Baggrund (hvad er problemområdet?) og Problemformulering (hvad skal programmet kunne?).
{'fraction_non_alphanumeric': 0.03415783274440518, 'fraction_numerical': 0.0, 'mean_word_length': 4.872752420470262, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7530279', 'n_tokens_mistral': 1472, 'n_tokens_neox': 1383, 'n_words': 633}