I would consider most of this a matter of opinion, however, one important thing to note is that you should install Windows first. When installing Ubuntu, the Grub2 installer will detect the Windows partition and configure grub to allow you to dual boot. If you install Ubuntu first, then the Windows bootrecord will write over grub during install, and you will have to use a rescue disk to boot back into Ubuntu. I would most likely do like you mentioned, and partition the SSD in half and use half for each OS.
Depending on what kind of space you need for each OS, I would probably dedicated one HDD to each OS. Format one as NTFS for your Windows installation, and format the other EXT4 (or whatever your preference) for Ubuntu. This will ensure that something doesn't get accidentally overwritten when switching between the two OSes.
Windows 10 minimum requirements:
- Processor: 1 gigahertz (GHz) or faster processor or SoC
- RAM: 1 gigabyte (GB) for 32-bit or 2 GB for 64-
- Hard disk space: 16 GB for 32-bit OS 20 GB for 64-bit
- Graphics card: DirectX 9 or later with WDDM 1.0
- Display: 800x600
Ubuntu Desktop 17.04 minimum requirements:
- 2 GHz dual core processor.
- 2 GiB RAM (system memory)
- 25 GB of hard-drive space (or USB stick, memory card or external drive but see LiveCD for an alternative approach)
- VGA capable of 1024x768 screen resolution.