Tworzenie aplikacji wymaga połączenia twardej wiedzy analitycznej, programistycznej z umiejętnością tworzenia zaawansowanych, lecz jednocześnie prostych w obsłudze rozwiązań, gdzie końcowy użytkownik powie: „wow – ten produkt rozwiązuje moje problemy”. Niezależnie od tego, czy jesteś programistą, analitykiem czy odpowiadasz za stronę biznesową projektu, musisz wiedzieć, że budowanie czegokolwiek ma sens tylko i wyłącznie
wtedy, gdy w centrum wykonywanych działań jest klient i jest to wspólna praca wszystkich zaangażowanych osób. Kończą – a może już skończyły – się czasy, gdy developerzy tworzyli rozwiązanie na podstawie specyfikacji, którą analityk przygotował bez porozumienia, zapisanej na setkach stron dokumentacji. Nic odkrywczego? Niby tak, tylko że to już nie jest agile, scrum, scrumban development… to połączenie świata biznesowego ze światem technologii. To łączenie metodyk zwinnego budowania biznesu w metodykami zwinnego wytwarzania oprogramowania. Nie ma agile bez lean, nie ma backlogu bez zweryfikowanych hipotez... Nawet najlepsze zwinne podejście nie doprowadzi do końcowego sukcesu, jeżeli budowana aplikacja będzie bazowała na wymaganiach, które pozostaną niezweryfikowanymi hipotezami.
W niniejszym artykule opowiem, jak przygotować architekturę wieloplatformowej aplikacji, która działa na urządzeniach mobilnych oraz desktopie. W obecnej wersji wpieramy platformy ios i android oraz Windows 7 (WPF). W przyszłości aplikacja będzie dostosowana także do wymagań Windows 10 (UWP), korzystając z .NET Core oraz prawdopodobnie postanie wersja na Mac Os z wykorzystaniem Xamarin.mac. Architektura ta nie powstałaby
prawidłowo, gdyby nie to, iż klient oraz zespół developerski cały czas skupiał się na tym, aby stworzyć rozwiązanie, które będzie zaspokajało potrzeby użytkowników – to w pierwszym punkcie. Następnie potrzeby klienta – właściciela produktu, a w ostatnim potrzeby zespołu
programistycznego – tak aby rozwój aplikacji mógł przebiegać długofalowo i płynnie. Aby to osiągnąć, już na samym początku trzeba zadać sobie pytanie o to, co chcemy osiągnąć i w jaki sposób. Głównym zadaniem aplikacji CharCRM jest obsługa procesu zamawiania towarów z branży
optycznej. Ze względu na specyficzne know how oraz wymagania biznesowe, których nie spełniało żadne z rozwiązań obecnych na rynku, klient zdecydował się na stworzenie dedykowanej aplikacji.
Zapraszamy do lektury artykułu Tomka Soroki, który ukazal się w sierpniowym Programiście
https://www.leaware.com/pl/blog/1118/architektura-aplikacji-a-wsp%C3%B3%C5%82dzielenie-kodu-mi%C4%99dzy-aplikacjami-dla-platformy-desktopowej-i-mobilnej